gamecreator, тогда предлагаю исключить тебя из списка дилетантов: мне явно потребуется больше.
Поясняю: я - нуб. Впрочем, я делаю все, что от меня зависит, чтобы изменить ситуацию.
Кроме того, я элементарно не представляю, что, где и как искать.
Например, до пояснения, что имеет смысл искать по дефу, я вообще не мог ничего. Еще чуть большему научился, когда Берс объяснил, что есть еще штука под названием "стек вызовов".
Но и сейчас мой метод туп и безобразен: открыв стек вызовов, я тупо ставлю точку останова на первый из адресов. Продолжаю выполнение и смотрю, когда произойдет останов. Если точка останова не подходит, возвращаюсь к адресу дефа и снова открываю стек вызовов. Ставлю точку останова на следующий адрес. Снова смотрю на то, когда происходит останов, и то ли это, что нужно. И вот так вот перебираю все адреса в стеке вызовов. Пока что их мало, благо я пока изучаю лишь небольшие окошки (например, окно найма). Но что я буду делать, когда адресов в стеке вызовов будет больше, я даже не представляю.
baratorch, как вот ты, например, искал адрес, отвечающий за цвет кнопки журнала? Я так понимаю, что идут вычисления в духе "а каков же цвет у этого игрока??", итог сохраняется в регистр, а потом уже из регистра присваивается значение. Но мне от этого ни горячо, ни жарко, поскольку я не знаю:
1. Как найти этот адрес.
2. Какой именно из них менять.
Ad exemplum. Вот ищу я славный момент, когда же у нас запускается окошко найма существ во внешнем жилище. Иду этим путем. И что же? Результат для точек останова сразу на три или четыре адреса - один: при первом же запросе к окошку срабатывает точка останова. И бес его знает, какой из адресов мне нужен.