В ручную. Скопируй примерное количество байт - штук 20 к примеру и выбрав в СЕ в поиске "Массив байт" проверить их... Не забыв кубик поставить - копируемая при записи. Я просто что заметил - если СЕ не находит рядом в районе + - 20 байт от нужного места нужный сигнатуры, а не находит он из за повтора байт (где то ещо подобное есть) то он выдаёт подобную ошибку.
Вот после как найдешь нужные байты в поиске массива - погляди между ними разницу. Вот эта разница и будет отличием уникальных байт.
Я не так давно для Gta sa +150 байт выше брал ну такие совпадения были. И разница была между ними только в джампе в 1 байте. В одном месте прыжок был + 3 а в другом уже более.. Вот это и была разница в сигнатуре. Не окажись этого джампа - пришлось бы больше байт брать и сверять уже. Надо найти в общем разницу совпадающими сигнатурами.
На сколько я помню, в aobscanmodule можно указывать откуда начинать поиск .Если код динамически выделяется, то можешь использовать точку входа или же глобальную переменную указывающую на начало модуля, чтобы в своем скрипте в сигнатуре динамически получать откуда начинается модуль и искать необходимые тебе инструкции, думаю такой вариант должен избавить тебя от проблемы с перезапуском CЕ/трейнера.
Отключать за некоторое время до смены уровня, либо найти какой-нибудь триггер в конце уровня и использовать его для отключения скриптов,могу предположить, что игра динамически выделяет память под код на каждый уровень, типа 0x400000 на первом уровне, 0x500000 на втором и т.д.рандомно. Ещё вариант есть, но мне надо знать адреса выглядят как game.exe/game.dll + 0x или просто адрес?
Call of Duty Modern Warfare Remastered
Просмотреть файл
Бесконечная жизнь.
Максимальная точность.
Скорострельность оружия.
Без перезарядки оружия.
Без отдачи оружия.
PS:
Запускаем сначала игру, а потом инжектор от имени администратора... Выбираем dll - указываем процесс игры и жмем инжект.
Demo:
Автор
LIRW
Добавлен
04/21/17
Категория
Трейнеры для PC игр