-
Постов
83 -
Зарегистрирован
-
Посещение
-
Победитель дней
10
Тип контента
Профили
Форумы
Загрузки
Блоги
Сообщения, опубликованные Alexander-mx
-
-
Делаю трейнер для just cause2, хотел сделать чтобы нажимая на нумпад0 включались бесконечные патроны, еще раз нажимал выключались, проблема в том что не выключается функция.
void Ammo
{
bool Ammos = false;
Ammos = !Ammos;
if (GetAsyncKeyState(VK_NUMPAD0))
{
for(;;Sleep(10))
WriteProcessMemory(handle,(PBYTE*)(0x2EB21334),&ammo,4,0);
}
if(!Ammos)
{
return;
}
} -
Всем привет, вот установил эту игру и появилась идея взломать длину крюка. Режим отладки VEH. Искал 1 0 где можно и где нельзя прицепиться, адрес статический, но при установке бряка игра вылетает. Какие еще могут быть идеи?
И ещё вопрос, надо ли включать DBVM если буду использовать режим ядра? Просто система поддерживает, в биосе включил эту функцию, но когда включаю в CE DBVM компьютер виснет.
-
WriteProcessMemory почитай на msdn
-
Первый раз записывал на BandiCam, так что извините за плохое качество.
-
Судя по всему они пытались найти явный вызов функции IsDebuggerPresent, но это не удалась, поэтому они просто стали искать строку IsDebuggerPresent а когда нашли, так и оказались в нужном коде. Всё это очень легко делается, если есть опыт в реверсинге приложений. Могу посоветовать этот ресурс - http://tuts4you.com/...oad.php?list.17, сам сейчас буду практиковаться там.
IsDebuggerPresent легко находится, я про первый участок кода. За ресурс спасибо, позже гляну.
00D2C253 |. 8D85 BCFDFFFF LEA EAX,DWORD PTR SS:[EBP-244]
00D2C259 |. 8945 08 MOV DWORD PTR SS:[EBP+8],EAX
00D2C25C |. 8B45 08 MOV EAX,DWORD PTR SS:[EBP+8]
00D2C25F |. CC INT3
00D2C260 |. 64:8F05 00000000 POP DWORD PTR FS:[0]
00D2C267 |. 83C4 08 ADD ESP,8
00D2C26A |. 5E POP ESI
00D2C26B |. 8BE5 MOV ESP,EBP
00D2C26D |. 5D POP EBP -
Спасибо, интересно просто узнать как автор темы нашел именно этот участок кода. Ну да ладно тему можно закрывать.
-
Нашел на форуме CE тему как отключить защиту, но не понимаю как найти первый участок кода.
http://forum.cheatengine.org/viewtopic.php?t=545113&sid=ae13532792c94d04b446173547c1c9d9
- 1
-
В том то и дело если ставить на чтение то чтение происходить постоянно... То есть 1 раз стрельнул а инструкция обратилась 100500 раз....
Как у кодера на видео не выходит он 1 раз пальнул 1 раз обратилась... Тут по 500 раз обращается...
Ну не все же игры будут так же просто ломаться, как на примерах.
-
В общем на ohk берешь ставишь бряк на чтение на свои жизни, на иструкцию ставишь Find out what adresses, стреляешь в врага, если адрес появляется, значит эта инструкция отвечает за жизни противника, дальше скрипт пишешь.
хм а если у врагов тоже эта инструк mov [ecx+10],(float)9999 тогда ты и их не убешь и себя ) так как у вас хп будет 9999
вот для этого надо скрипт что у тебя было хп 9999 а у них 0 )
ну это можно и проверить)
-
commis этож инструкция сравнения? Или я чего то не догоняю.... Была такая инструкция. Но я решил не трогать. Можете дать заготовку на God и One-hit-kill с любыми адресами... Я сам додумаю.
Просто шаблон дайте, мне так легче понять что откуда и куда
[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)
newmem:
mov [ecx+10],(float)9999
originalcode:
comiss xmm0,[ecx+10]
jb FC3_d3d11.RunGame+6347D5
exit:
jmp returnhere
"FC3_d3d11.dll"+6394A9:
jmp newmem
nop
returnhere:
[DISABLE]
dealloc(newmem)
"FC3_d3d11.dll"+6394A9:
comiss xmm0,[ecx+10]
jb FC3_d3d11.RunGame+6347D5За здоровье врага отвечает другая инструкция, так что OHK делай сам, если что на сайте много примеров, да и помогут если что.
-
Просто из кода видно, что ты используешь не ту инструкцию. Ссылку на тему дал, там скрипт для Far Cry 3, как пример пусть будут и сделай под себя.
-
Простите создал 2 темы.. Прошу 1 удалить.
#750 так и надо писать? Я в синтаксисе асемблера не разобрался что значит # и почему отказывается работать с float хотя xmm этож float регистры. Да и еще. Тут такая фишка что xmm очень капризный если менять значение из вне, то он даже если сработало условие ставить глобально(то есть все будут бессмертными). mov [esi+10] значение обнуляется если засоввывать через mov
Если я чего-то недопонимаю объясните пожалуйста.
Статью прочитал, но там нету того что нужно именно мне... А именно One-Hit-kill... Хотя бы заготовка...
жизни у тебя хранятся в float если не ошибаюсь, записывать надо mov [esi+10], (float) 750. Если значение dword (4 байта) тогда mov [esi+10], #750 . xmm вообще не менять. Скорее ты нашел не ту инструкцию, она должна выглядеть так comiss xmm0,[ecx+10] и только тогда будет работать бессмертие.
-
2-й код
newmem
cmp byte ptr [esi+B8],4 // сравниваем ID игрока
je hack //если правильно прыгаем в hack
movss [esi+10],xmm0 //оригинальная инструкция
jmp returnhere
hack:
movss [esi+10],xmm0//оригинальная инструкция
mov [esi+10],(float)750 // меняем значение (число просто пример)
jmp returnhereа вообще там не было сравнения ID игроков как я помню.
http://forum.gamehac.../1830-far-cry-3
вот темка на сайте, посмотри и поправь свой скрипт
-
По ссылке которую дал ZOCKIR, видно что гравитация это константа которая каждый раз подгружается в игру при запуске, тут скорее всего оли надо искать.А дальше добавляешь в СЕ адрес и пишешь скрипт.Жаль нет под рукой гта, проверил бы.
-
Попробуй поискать неизвестное, например на земле ищешь неизвестное, в воде(когда плывешь) изменилось и т.д. Наверное есть инструкция сравнения на земле ты, в воздухе или в воде.
-
Сначала бы написал название игры.
-
Наблюдается вылет CE, при сканировании поинтеров в появившемся окошке сохранения результатов когда создаешь новую папку.
-
Очки улучшения у меня не получилось взломать в dead island, наверное в этой так же. Лучше взломай уровень сразу убьешь 3-х зайцев(увеличится атака, уровень взломаешь и очки опыта) Через ollydbg можно сделать максимальный уровень ~65000, а не 60, значения рядом лежат.
-
С днюхой
Xipho
-
сейчас скачаю, попробую взломать.
-
у меня вообще с первой миссии вылиты при активации скрипта, но добовляет патронов работает скрипт, только вылеты каждые 5-10 сек с игры
Попробуй в aob поставить галочки на тест байтов и оригинальный код в байтах
-
Так после двух миссий начались вылеты.
-
Такая же проблема с бессмертием и бесконечной энергией, все работает весь уровень, только при переходе на другой уровень игра вылетает.
Разобрался, инструкция игры меняется на примере энергии
такой был участок кода на одном уровне.
mov edx,[edx+esi+88]
imul edx,edx,70
fld dword ptr [edx+esi+88] <<<<<
fstp dword ptr [esp+88]
fld dword ptr [esp+7C]
fld dword ptr [esp+88]А вот участок кода на другом
mov edx,[esi+1B8]
imul edx,edx,70
fld dword ptr [edx+esi+88] <<<<<
fstp dword ptr [esp+88]
fld dword ptr [esp+7C]
fld dword ptr [esp+88]из-за смены инструкции происходит вылет
-
В фар крае бессмертие делается и без фильтра, наверное ты не ту инструкцию используешь.
Функция трейнера
in Создание трейнеров в специальных студиях
Опубликовано
Как сделать функцию, которая определяет изменилось значение или нет, и если изменилось написать текст в консоле. Чтобы не записывало в консоль одинаковые значения.