Объявления |
---|
Друзья, если не получается зарегистрироваться, напишите на почту vdv_forever@bk.ru. Я оторву свою задницу от всех дел и обязательно Вас активирую! Добро пожаловать на геройский форум! |
Re: База данных IDA от void17Разобрал функцию:
Это для примера. Названия переменных брал интуитивно, опираясь на игровой опыт. Вот это, конечно же, не мешало бы перевести в "хитпоинты": stack_full_health2 = *(p_Flags - 14) * *(p_Flags + 15) - *(p_Flags - 11); Но функция для примера и для небольшого обсуждения о том, что можно исправить, чтобы она выглядела лучше. |
Re: База данных IDA от void17Короче, вот это return army_health_2 * fight_value_mod / (army_health + army_current_health); должно быть:
fight_value_mod / (1 + stack_current_health / army_current_health), если математически. Главное, не запутаться во всех этих присваиваниях переменных Цитата: Это лучше в первый пост, чтобы ссылка не потерялась. |
|
Re: База данных IDA от void17Now that you are using IDA 7.6 (available since earlier, but was not well documented) it is time to learn about shifted pointers:
* right-click flags and click convert to struct ... * select army or whatever you named it (I dislike army and armyGroup, I'm using CombatStack) * enter 84 in Pointer shift value in the bottom left Much better: |
Re: База данных IDA от void17And how to fight variables which mean the same thing (e.g. side, side0, side1, ...)? I hate them Is there a way to name all of them just "Side" for the sake of human understanding?
|
|
Re: База данных IDA от void17Shift+F to force a new variable. (when the same variable is re-used for several meanings)
It still gets messy, but sometimes during decompilation it helps. Duplicate names aren't possible sadly =\ |
Re: База данных IDA от void17Also I hate when the compiler uses arguments (e.g. a2 in the example above) as variables. I guess it wouldn't do that if they were const. It's very confusing.
|
Re: База данных IDA от void17AlexSpl писал(а): Я обычно делаю так: Var, _Var, Var_, _Var_ и т.д. |
Re: База данных IDA от void17Цитата: Это лучше в первый пост, чтобы ссылка не потерялась. А вы тоже присоединитесь к серверу |
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1