Привет!А что значит вот этот отрывок кода? function Obzor_AOB() pause() results=AOBScan("F3 0F 7E 8E A0 00 00 00 F2 0F 59 C1 66 0F D6 86 A0 01 00 00 8B 4B 44 BA 80","+X-W-C") unpause() if (results~=nil) then count=stringlist_getCount(results) if (count==1) then pmAddress=getAddress(stringlist_getString(results,0)) else
object_destroy(results) results=nil end
end object_destroy(results) results=nil debugState = 0 ONdebugger(pmAddress) end
1. Ставит процесс игры на паузу. 2. Находит сканером сигнатур все адреса, где встречается такая-то цепочка байт. 3. Возобновляет процесс игры. 4. (Тут я не совсем уверен) Если результаты есть (что-то нашлось) - считает, сколько их. 5. Если "сколько" - это 1, то берёт этот адрес и записывает в отдельную переменную. 6. Иначе (если ничего не нашлось или результатов много) - уничтожает переменную для хранения результатов. 7. Повторяет это же, если нашлось, но выходя из другой ветки условия (получив адрес). 8. Ставит брейкпоинт на найденный адрес.
Вроде так, я с LUA не знаком, так что где-нибудь могу и ошибаться.
Не люблю мат и низкий уровень грамотности. Чем конкретнее поставите свой вопрос и чем лучше он будет выглядеть - тем большая вероятность на мой ответ. :)
Привет Кенг. Как использовать сигнатуры в чит энджине?
ОтветитьУдалитьПривет!
УдалитьВ СЕ есть клёвая функция под названием aobscan(). Ей надо скормить цепочку байт, выдаст адрес этих байт в файле. Юзается примерно так:
address = aobscan("AB BC CD EE");
Подробнее можно в справке к СЕ посмотреть.
Спасибо, разобрался что к чему.
УдалитьПривет!А что значит вот этот отрывок кода?
Удалитьfunction Obzor_AOB()
pause()
results=AOBScan("F3 0F 7E 8E A0 00 00 00 F2 0F 59 C1 66 0F D6 86 A0 01 00 00 8B 4B 44 BA 80","+X-W-C")
unpause()
if (results~=nil) then
count=stringlist_getCount(results)
if (count==1) then
pmAddress=getAddress(stringlist_getString(results,0))
else
object_destroy(results)
results=nil
end
end
object_destroy(results)
results=nil
debugState = 0
ONdebugger(pmAddress)
end
1. Ставит процесс игры на паузу.
Удалить2. Находит сканером сигнатур все адреса, где встречается такая-то цепочка байт.
3. Возобновляет процесс игры.
4. (Тут я не совсем уверен) Если результаты есть (что-то нашлось) - считает, сколько их.
5. Если "сколько" - это 1, то берёт этот адрес и записывает в отдельную переменную.
6. Иначе (если ничего не нашлось или результатов много) - уничтожает переменную для хранения результатов.
7. Повторяет это же, если нашлось, но выходя из другой ветки условия (получив адрес).
8. Ставит брейкпоинт на найденный адрес.
Вроде так, я с LUA не знаком, так что где-нибудь могу и ошибаться.
Ага спасибо:)Чет написал вроде работает:)
УдалитьПривет!И последнее вот в этой строке звездочки что значат?:)
Удалитьresults=AOBScan("E8 * * * * 83 C4 08 8B CB 8B 5D E8", "-W-C+X")
Звёздочки - это пропуски, значит что байт в этом месте может быть любой.
Удалитьдай исходник всего этого сканера
ОтветитьУдалить