Цитата:
army::adjust_damage() не перепутаешь: она только из army::DamageEnemy() вызывается.
Хаха, сейчас присмотрелся, и дейтсвительно, это не та сигнатура Что ж, первый блин вышел комом, зато второй получится экзешником (надеюсь)
Объявления | ||
---|---|---|
Друзья, если не получается зарегистрироваться, напишите на почту vdv_forever@bk.ru. Я оторву свою задницу от всех дел и обязательно Вас активирую! Добро пожаловать на геройский форум! |
Re: База данных IDA от void17Перенёс сигнатуры. Вечером залью базу снова.
Цитата: army::adjust_damage() не перепутаешь: она только из army::DamageEnemy() вызывается. Хаха, сейчас присмотрелся, и дейтсвительно, это не та сигнатура Что ж, первый блин вышел комом, зато второй получится экзешником (надеюсь) Последний раз редактировалось AlexSpl 29 ноя 2021, 14:54, всего редактировалось 1 раз.
|
Re: База данных IDA от void17Если так, то ладно, хорошо, спасибо. Но я все равно проверю. Реально, перенос сигнатур нужно очень аккуратно и внимательно производить.
Расскажите, что за сегодня сделали. Поместите потом в changelog |
Re: База данных IDA от void17Цитата: Я и говорю. Без моей проверки лучше не делать перенос и изменение сигнатур, я очень тщательно перепроверяю. Доверьте дело профессионалу так сказать Когда-нибудь, когда руки дойдут, я пропишу гайд. А пока пишите так:
Последний раз редактировалось void_17 29 ноя 2021, 15:00, всего редактировалось 1 раз.
|
Re: База данных IDA от void17Цитата: Не помешает Но я ещё не смотрел декомпилят Гидры. С ним легче будет. |
Re: База данных IDA от void17Так, меня сбила с толку сигнатура public: long army::DamageEnemy(army *,int *,int *,bool), но это не функция 0x443C60:
Вот моя сигнатура: int __thiscall army::DamageEnemy(army *this, army *enemy, int *damage, bool canShoot, bool fSimulation, int hexDistance, int fireShieldDmg). И по количеству выталкиваемых из стека аргументов совпадает. Последний раз редактировалось AlexSpl 29 ноя 2021, 15:13, всего редактировалось 1 раз.
|
Re: База данных IDA от void17Завтра посмотрю и исправлю, если что-то не так с сигнатурами.
upd: Иногда аргументы одной и той же функции в SoD и RoE разнятся, бывает. |
Re: База данных IDA от void17AlexSpl, RoseKavalier написал скрипты.
Заходите в дискорд и смотрите инструкцию! Наша работа будет проще |
Re: База данных IDA от void17Кажется, я разгадал загадку функции 0x443560. Это функция-враппер для army::ComputeAttackerDamageBonuses(). Всё, что она делает, вызывает army::ComputeAttackerDamageBonuses() и дополнительно считает бонусы к урону для Dread Knights и Ballista (двойной урон). А судя по вызову Random() в army::ComputeAttackerDamageBonuses() в RoE, бонусы к урону для Dread Knights и Ballista считает сама эта функция. А ещё у 0x443560 аргументы полностью совпадают. Назову 0x443560 army::ComputeAttackerDamageBonuses() а army::ComputeAttackerDamageBonuses() переименую в army::ComputeAttackerDamageBonuses2().
|
Re: База данных IDA от void17Лучше не делайте так. Пишите army_ComputAttackDamageBonusesWrap или типо того. Я таким образом маркирую те функции, которые написали уже в SoD, но сигнатуры в RoE этой функции нет, чтобы не запутаться потом.
|
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1