Опкоды из Intel-ловской документации
Instruction_Set_Reference.pdf
64-ia-32-architectures-software-developer-vol-2a-manual.pdf
64-ia-32-architectures-software-developer-vol-2b-manual.pdf
Auto Assembler
Там же вставки C-языка
{$CCODE playerbase=RCX newhealth=RBX}
int isplayer=*(*int)(playerbase+0xb8);
if (isplayer)
newhealth=100000;
else
newhealth=0;
{$ASM}
Руководство по C языку (https://www.geeksforgeeks.org/c-programming-language/)
Там же вставки Lua языка
{$LUACODE playerbase=RCX newhealth=RBX}
if readInteger(playerbase+0xb8)==1 then
newhealth=100000
else
newhealth=0
end
{$ASM}
Руководство по Lua (https://www.lua.org/manual/5.4/)
Lua классы в CE (https://wiki.cheatengine.org/index.php?title=Cheat_Engine:Lua)
Wiki:
MD5_CHEKING вручную\-- Функция для ручного вывода md5 ранее подключенного процесcа. Для установки MD5_CHEKING
PrintMd5CurrentProcess()
function onOpenProcess(processid)
reinitializeSymbolhandler()
local md5Process = GetMd5Process(processid)
PrintMd5Process(process, md5Process)
local isSupportedVersion = CheckingMd5CurrentProcess(md5Process)
local lineResult = isSupportedVersion and 'Is supported version.' or 'Is not supported version.'
if not isSupportedVersion then
speakEnglish(lineResult, false)
messageDialog('Error', lineResult, mtError, mbClose)
end
end
ce_md5.lua
md5 - это алгоритм некоторой суммы байтов exe-шника. Позволит точно идентифицировать exe-шник, для которого будет сделана .CT таблица с указателями или сигнатурами.
В случае несоответствия будет показан диалог сообщения и звуковое оповещение проговаривания текста ошибки.
Будет необходимо проверять md5, чтобы смещения у структур точно не поменялись.
Попробуйте сами себя добавить в группы.
Можно написать здесь для создания новой группы
Можно сравнить два проекта lazarus новый и старый через программу контроля версий. Их много. Затем изменения перенести в новые исходники по тому же принципу
Ты можешь через CE
Есть открытые SDK игровых движков вот с ними делать dll попроще. Движки, например, UnreaEngine, CryEngine, Unity и другие. Остальные движки, закрытые - там api нужно описывать(восстанавливать) вручную через IDA. Это будет интересно. DLL ки удобно позволят рулить всей иерархие инстансов в runtime. Хотя это можно в теории и через lua делать...
Посмотрим. Как дела разгружу. Очень много дел. Переезд, ремонт, закупки... Пока очень мало времени. Может чат сделаем в бущем на телеграмме или дискорде
Да, просто давно делает большие таблицы на fearlessrevolution.com и cheatengine.org.
Входит в группу Talents. Всех, кто входит в Talents можно каждый пост читать и узнать, что-то интересное. Они делятся своим опытом, исходниками, знаниями.
Конечно, CE дело в целом не ограничивается. Есть другие программы(reclass, компиляторы dll, инжекторы dll...). Есть другие подходы типа восстановления части исходников, создания описания к API, создании модификаций(модов). Но CE, скорее всего, попроще и это влияет на численность CE сообщества. На CE можно сделать быстрее большие ct таблицы. Ct файлы в виде xml разметки компактны, ими можно делиться, добавлять совместно новые опции.
В данном случае она для тестов. Для отключения и включения. Если не нужна, то можно и удалить
Я буду пока редко отвечать в течении недель двух-трех. Дел много.
Пользователь @Pitronic написал в Защита Трейнера:
Готово. Зацени трейнер с защитой от vlad2 по десяти бальной шкале.
tutorial-i386_test.rar
Ты можешь сам свою работу по 10 бальной шкале оценить, взяв другой трейнер. Я не знаю как оценивать.
На virus total куча срабатываний по пончтнвм причинам. Я бы не стал запускать без виртуалки, хотя и на ней тоже может бвть фортель. Сам можешь не знать, что там.
Незашифрованная таблица CT, на мой взгляд предпочтмтельнее для обучения программированию или привлечения к программипованию. Вот пример простенький и без щащиты
Этой файл открывается cheat engine и обычно он не защифрован и текстовый. Его можно открыть cheat engine вручную или программно. Если CE закрывается в диспечере задач, значит либо специвльно, либо из-за ошибки.
Рекомендации
Я изменил свое мнение по поводу цепочек указателей. Они позволяют сделать CT компактным и удобным при правке значений больших структур в таблице CE. Мы же не хотим 5-10 опций и столько же сигнатур с АА, а хотим наверно сотню другую опций и хотим чтобы CT файл не разрастался. Для этого лучше использовать только указатели и изменение данных по ним.
Конечно, это просто субъективные рекомендации. Можно делать разными способами. Как мне кажется, что чем короче таблица, чем меньше кода и чем короче указатели, тем проще её править для других версий игр.
tutorial-i386_4.ct
Пробуй для двух шагов. Комментарии, к сожалению, некогда писать
проверь место на жестком диске есть или нет.
попробуй вызвать ceregreset.exe и запустить ce и скрипт
попробуй переименовать перезаписать папки win32 и win64
Cheat Engine 7.5.rar
Проверь файл подкачки.
Проверь жесткий диск на битые сектора или на исправность.
если из этого ничего не получится пиши на форум CE, потому что я не знаю.
Пишут, что скрипт надо переписать.
Проверь alloc или загугли allocate neaby.