Перейти к содержанию

Рекомендуемые сообщения

Всем привет!

на днях увлекся темой "бессмертия" и "убийства с одного удара"!

Появилась проблемка... когда функция отнимания хп = movss - она не дает сделать убийство с одного удара. т.к. просто не компилируется :(

Собственно вопросик: Я что то делаю не так, или же на movss нельзя сделать выше перечисленные функции?

Ссылка на комментарий
Поделиться на другие сайты

покажи как ты скрипт написал

вот мой старый скрипт посмотри его и сделай вывод, что можно сделать) http://forum.gamehacklab.ru/topic/2224-deadpool-v10-steam-rip-10000000-dp-godmode-onehitkill/

Ссылка на комментарий
Поделиться на другие сайты

покажи как ты скрипт написал

вот мой старый скрипт посмотри его и сделай вывод, что можно сделать) http://forum.gamehac...ode-onehitkill/

я лох :( похоже со скриптом дерьмо...

Вот код:

[ENABLE]

alloc(newmem,2048,"Tutorial-x86_64.exe"+314ED)

label(returnhere)

label(exit)

newmem:

cmp [rbx+14],1

je exit

movss [rbx+08],xmm2

exit:

jmp returnhere

"Tutorial-x86_64.exe"+314ED:

jmp newmem

returnhere:

[DISABLE]

"Tutorial-x86_64.exe"+314ED:

movss [rbx+08],xmm2

dealloc(newmem)

==============================

когда зменяю xmm2 на 0 - не компилируется (((

Ссылка на комментарий
Поделиться на другие сайты

One Hit Kill у вас немного не верный.

Если значение "[rbx+14]" = "1", то сразу идёт идёт прыжок на "returnhere" без выполнения инструкции "movss [rbx+08],xmm2". Получается, что враги мрут с 1 тычка, но и вы бессмертный.

Поэтому скрипт должен выглядеть так:


[ENABLE]
alloc(newmem,2048,"Tutorial-x86_64.exe"+314ED)
label(returnhere)
label(originalcode)

newmem:
cmp [rbx+14],1
je originalcode //Если значение [rbx+14] = "1", т.е. это игрок,
//то выполняем оригинальный код.
//Если же [rbx+14] ≠ "1", то это враги,
mov [rbx+08],0 //значит мы меняем значение их здоровья на 0 и тут не нужно
//писать ещё раз "movss [rbx+08],xmm2".
jmp returnhere //после этого прыгаем в returnhere и всё.
originalcode: //Оригинальный код
movss [rbx+08],xmm2
jmp returnhere

"Tutorial-x86_64.exe"+314ED:
jmp newmem
returnhere:

[DISABLE]
"Tutorial-x86_64.exe"+314ED:
movss [rbx+08],xmm2
dealloc(newmem)

Ссылка на комментарий
Поделиться на другие сайты

ANT' timestamp='1382903650' post='15791']

One Hit Kill у вас немного не верный.

Если значение "[rbx+14]" = "1", то сразу идёт идёт прыжок на "returnhere" без выполнения инструкции "movss [rbx+08],xmm2". Получается, что враги мрут с 1 тычка, но и вы бессмертный.

Поэтому скрипт должен выглядеть так:


[ENABLE]
alloc(newmem,2048,"Tutorial-x86_64.exe"+314ED)
label(returnhere)
label(originalcode)

newmem:
cmp [rbx+14],1
je originalcode //Если значение [rbx+14] = "1", т.е. это игрок,
//то выполняем оригинальный код.
//Если же [rbx+14] ≠ "1", то это враги,
mov [rbx+08],0 //значит мы меняем значение их здоровья на 0 и тут не нужно
//писать ещё раз "movss [rbx+08],xmm2".
jmp returnhere //после этого прыгаем в returnhere и всё.
originalcode: //Оригинальный код
movss [rbx+08],xmm2
jmp returnhere

"Tutorial-x86_64.exe"+314ED:
jmp newmem
returnhere:

[DISABLE]
"Tutorial-x86_64.exe"+314ED:
movss [rbx+08],xmm2
dealloc(newmem)

спасибо за код)

ANT' timestamp='1382903650' post='15791']

Получается, что враги мрут с 1 тычка, но и вы бессмертный.

ну я как бы эту цель и преследовал. бессмертие и убийство с одного удара :)

Ссылка на комментарий
Поделиться на другие сайты

народ пробовал тоже сделать хиткил ну он не работает либо у всех хп полно либо у всех малой

cmp dword ptr [eax+6D8],1 -- 1 это в 4 байта идет или оно не влияет роли ?

[ENABLE]

//code from here to '[DISABLE]' will be used to enable the cheat

alloc(newmem,2048)

label(returnhere)

label(originalcode)

label(exit)

newmem: //this is allocated memory, you have read,write,execute access

cmp dword ptr [eax+6D8],1

je originalcode

originalcode:

mov [eax+000002DC],1

//cvtsi2ss xmm0,[eax+000002DC]

exit:

jmp returnhere

"BatmanOrigins.exe"+959C9C:

jmp newmem

nop

nop

nop

returnhere:

[DISABLE]

//code from here till the end of the code will be used to disable the cheat

dealloc(newmem)

"BatmanOrigins.exe"+959C9C:

cvtsi2ss xmm0,[eax+000002DC]

//Alt: db F3 0F 2A 80 DC 02 00 00

Ссылка на комментарий
Поделиться на другие сайты

там же в инструкции указано - cmp dword ptr, стало быть, это четыре байта. Далее, в твоем скрипте после сравнения ничего не делается. И, наконец, если все стали бессмертными - ищи ID игрока. Как это делать - на форуме есть и видео, и обсуждения.

Ссылка на комментарий
Поделиться на другие сайты

бывает еще сам просто так умираю )

там же в инструкции указано - cmp dword ptr, стало быть, это четыре байта. Далее, в твоем скрипте после сравнения ничего не делается. И, наконец, если все стали бессмертными - ищи ID игрока. Как это делать - на форуме есть и видео, и обсуждения.

а я что искал не ид игрока ? )) вот ид игрока [eax+6D8]

Ссылка на комментарий
Поделиться на другие сайты

Как я уже говорил, в твоем скрипте после сравнения ничего не происходит. Это раз. Поправь скрипт, сделай его, как следует, а затем уже смотри. Если ситуация повторится - значит, ты нашел неверный ID игрока

Ссылка на комментарий
Поделиться на другие сайты

Как я уже говорил, в твоем скрипте после сравнения ничего не происходит. Это раз. Поправь скрипт, сделай его, как следует, а затем уже смотри. Если ситуация повторится - значит, ты нашел неверный ID игрока

так ? если я так делаю то я сам умираю сразу даже шагу не сделаю ) а враги живи


newmem:
cmp dword ptr [eax+7E8],1
je originalcode
mov [eax+000002DC],0

originalcode:
cvtsi2ss xmm0,[eax+000002DC]




exit:
jmp returnhere

Ссылка на комментарий
Поделиться на другие сайты

А тебе нужно наоборот, так? В таком случае, тебе условие прыжка надо поменять. Подсказываю:

je originalcode надо поменять на jne originalcode. Это элементарные вещи, их нужно знать.

Ссылка на комментарий
Поделиться на другие сайты

Я делал скрипт без фильтра к этой игре.Тока герой бессмертен.


newmem:
mov dword ptr [edi+000002DC],#900
mov dword ptr [edi+000002e0],#900

originalcode:
cmp dword ptr [edi+000002DC],00

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.