Исследование условия связанного со спавном
1. Нашел адрес патронов
2. Поставил брейкпоинт
3. Выкинул из рук Калаш с этими патронами
4. Увидел инструкцию, которая срабатывает когда что-то выкидываешь.
Решил зацепиться за эту инструкцию.
Либо спавн до инструкции, либо после.
Сделал трейслог из рутины на этой инструкции и второй — в рутину, которая срабатывала постоянно, когда ничего не выкидывали (маркеры слева на сриншоте снизу).
Поставил кнопкой бряки на все инструкции ветвления
Снимал бряки, когда в игре ничего не делал по F5
Затем, когда прерываться перестал. Оказался на том месте на скриншоте. Там уже идет ветвление, когда выкидываешь.
Сделал трейслог из рутины на этой инструкции и второй — в рутину, которая срабатывала постоянно, когда ничего не выкидывали.
Получается что-то типа этого условия
cmp [[edi+00048704]+10],[[edi+00048704]]
Если предмет из рук не выкидывается на сцену, то условие истины и происходит прыжок. Если оружие было викинуто, то в правой части другое значение. Затем левая и правая где-то дальше обнулятся.
------------------
Что я хочу сделать. Разобраться с поиском условий по ветвлениям, которые изменяют [[edi+00048704]+10] и [[edi+00048704]], делать это по аналогии как было описано выше. Для начала, для спавна не запускать поток на его функции, а поменять данные, которые проверяют условия (где-то по рутине), чтобы предметы сами из рук выкидывались. Пока так.
5 Комментариев
Рекомендуемые комментарии
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти