Fixer Опубликовано 27 октября, 2013 Поделиться Опубликовано 27 октября, 2013 Всем привет!на днях увлекся темой "бессмертия" и "убийства с одного удара"!Появилась проблемка... когда функция отнимания хп = movss - она не дает сделать убийство с одного удара. т.к. просто не компилируется Собственно вопросик: Я что то делаю не так, или же на movss нельзя сделать выше перечисленные функции? Ссылка на комментарий Поделиться на другие сайты Поделиться
doc9009 Опубликовано 27 октября, 2013 Поделиться Опубликовано 27 октября, 2013 покажи как ты скрипт написал вот мой старый скрипт посмотри его и сделай вывод, что можно сделать) http://forum.gamehacklab.ru/topic/2224-deadpool-v10-steam-rip-10000000-dp-godmode-onehitkill/ Ссылка на комментарий Поделиться на другие сайты Поделиться
Fixer Опубликовано 27 октября, 2013 Автор Поделиться Опубликовано 27 октября, 2013 покажи как ты скрипт написалвот мой старый скрипт посмотри его и сделай вывод, что можно сделать) http://forum.gamehac...ode-onehitkill/ я лох похоже со скриптом дерьмо...Вот код:[ENABLE]alloc(newmem,2048,"Tutorial-x86_64.exe"+314ED)label(returnhere)label(exit)newmem:cmp [rbx+14],1je exitmovss [rbx+08],xmm2exit:jmp returnhere"Tutorial-x86_64.exe"+314ED:jmp newmemreturnhere:[DISABLE]"Tutorial-x86_64.exe"+314ED:movss [rbx+08],xmm2dealloc(newmem)==============================когда зменяю xmm2 на 0 - не компилируется ((( Ссылка на комментарий Поделиться на другие сайты Поделиться
doc9009 Опубликовано 27 октября, 2013 Поделиться Опубликовано 27 октября, 2013 так не заменяй) сделай так:movss [rbx+08],xmm2mov [rbx + 08], 0 Ссылка на комментарий Поделиться на другие сайты Поделиться
Fixer Опубликовано 27 октября, 2013 Автор Поделиться Опубликовано 27 октября, 2013 так не заменяй) сделай так:movss [rbx+08],xmm2mov [rbx + 08], 0 фух!!! спасибо, помогло!))) Ссылка на комментарий Поделиться на другие сайты Поделиться
SER[G]ANT Опубликовано 27 октября, 2013 Поделиться Опубликовано 27 октября, 2013 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 newmemreturnhere:[DISABLE]"Tutorial-x86_64.exe"+314ED:movss [rbx+08],xmm2dealloc(newmem) Ссылка на комментарий Поделиться на другие сайты Поделиться
Fixer Опубликовано 27 октября, 2013 Автор Поделиться Опубликовано 27 октября, 2013 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 newmemreturnhere:[DISABLE]"Tutorial-x86_64.exe"+314ED:movss [rbx+08],xmm2dealloc(newmem)спасибо за код)ANT' timestamp='1382903650' post='15791']Получается, что враги мрут с 1 тычка, но и вы бессмертный. ну я как бы эту цель и преследовал. бессмертие и убийство с одного удара Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 31 октября, 2013 Поделиться Опубликовано 31 октября, 2013 народ пробовал тоже сделать хиткил ну он не работает либо у всех хп полно либо у всех малой cmp dword ptr [eax+6D8],1 -- 1 это в 4 байта идет или оно не влияет роли ?[ENABLE]//code from here to '[DISABLE]' will be used to enable the cheatalloc(newmem,2048)label(returnhere)label(originalcode)label(exit)newmem: //this is allocated memory, you have read,write,execute accesscmp dword ptr [eax+6D8],1je originalcodeoriginalcode:mov [eax+000002DC],1//cvtsi2ss xmm0,[eax+000002DC]exit:jmp returnhere"BatmanOrigins.exe"+959C9C:jmp newmemnopnopnopreturnhere:[DISABLE]//code from here till the end of the code will be used to disable the cheatdealloc(newmem)"BatmanOrigins.exe"+959C9C:cvtsi2ss xmm0,[eax+000002DC]//Alt: db F3 0F 2A 80 DC 02 00 00 Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 31 октября, 2013 Поделиться Опубликовано 31 октября, 2013 там же в инструкции указано - cmp dword ptr, стало быть, это четыре байта. Далее, в твоем скрипте после сравнения ничего не делается. И, наконец, если все стали бессмертными - ищи ID игрока. Как это делать - на форуме есть и видео, и обсуждения. Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 31 октября, 2013 Поделиться Опубликовано 31 октября, 2013 бывает еще сам просто так умираю )там же в инструкции указано - cmp dword ptr, стало быть, это четыре байта. Далее, в твоем скрипте после сравнения ничего не делается. И, наконец, если все стали бессмертными - ищи ID игрока. Как это делать - на форуме есть и видео, и обсуждения.а я что искал не ид игрока ? )) вот ид игрока [eax+6D8] Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 31 октября, 2013 Поделиться Опубликовано 31 октября, 2013 Как я уже говорил, в твоем скрипте после сравнения ничего не происходит. Это раз. Поправь скрипт, сделай его, как следует, а затем уже смотри. Если ситуация повторится - значит, ты нашел неверный ID игрока Ссылка на комментарий Поделиться на другие сайты Поделиться
boss Опубликовано 31 октября, 2013 Поделиться Опубликовано 31 октября, 2013 Как я уже говорил, в твоем скрипте после сравнения ничего не происходит. Это раз. Поправь скрипт, сделай его, как следует, а затем уже смотри. Если ситуация повторится - значит, ты нашел неверный ID игрокатак ? если я так делаю то я сам умираю сразу даже шагу не сделаю ) а враги живи newmem:cmp dword ptr [eax+7E8],1je originalcodemov [eax+000002DC],0originalcode:cvtsi2ss xmm0,[eax+000002DC]exit:jmp returnhere Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 31 октября, 2013 Поделиться Опубликовано 31 октября, 2013 А тебе нужно наоборот, так? В таком случае, тебе условие прыжка надо поменять. Подсказываю:je originalcode надо поменять на jne originalcode. Это элементарные вещи, их нужно знать. Ссылка на комментарий Поделиться на другие сайты Поделиться
ZOCKIR Опубликовано 31 октября, 2013 Поделиться Опубликовано 31 октября, 2013 Я делал скрипт без фильтра к этой игре.Тока герой бессмертен.newmem:mov dword ptr [edi+000002DC],#900mov dword ptr [edi+000002e0],#900originalcode:cmp dword ptr [edi+000002DC],00 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения