LIRW Опубликовано 4 октября, 2016 Поделиться Опубликовано 4 октября, 2016 Lost Castle (x64) Просмотреть файл Бессмертие. Бесконечный супер удар. Легкие убийства. PS: Легкие убийства не включать без опции Бессмертия. Так как в урон записал 1000 и любого противника можно убивать сразу (Босса с двух ударов) в предыдущем обновлении это работало только с врагом, а теперь работает и со мной - так что не включать без Бессмертия. В бессмертие я записал 1000 000 так что там не как не убьют даже при таком уроне в 1К Игра просто какая то на юнити что ли в перемушку с AE и фильтр загружать от куда либо с непостоянно работающих инструкций - это лишние проблемы при активации опций. В общем игра не стоит того, что бы с ней сидеть. Да и всё наверное уже её прошли давно - так как она короткая. Автор LIRW Добавлен 04.10.2016 Категория Трейнеры для PC игр Ссылка на комментарий Поделиться на другие сайты Поделиться
LIRW Опубликовано 7 октября, 2016 Автор Поделиться Опубликовано 7 октября, 2016 Так вышло обновление 13 уже на игру и что бы мне каждый раз не обновлять трейнер, а видать кто то интересуется игрой - то снял урок, а то есть как сделать бессмертие, убийство с одного удара и супер способность. Урок был сделан так спонтанно и кто хоть чуточку понимает, думаю разберется что я там и зачем делал. Вот исход скрипта уже готового - осталось только флаги добавить в скрипт к нему и всё. Так как игра на какой то движке (Подобие юнити) то активируем всё после маленькой траты. То есть на пример ударили вас, активировали скрипт - использовали супер способность и так же активировали скрипт. Активация скрипта с убийством и бессмертием. - без флагов. 2 флага будут в видео и можно посмотреть как их дописывать. Скрытый текст [ENABLE] aobscan(Pointer,48 63 50 14 48 8B 46 58) // should be unique alloc(newmem1,$1000,Pointer) label(return1) label(Player) newmem1: mov [Player],rax movsxd rdx,dword ptr [rax+14] mov rax,[rsi+58] jmp return1 Player: dd 0 Pointer: jmp newmem1 db 90 90 90 return1: registersymbol(Pointer) registersymbol(Player) aobscan(BasePlayer,48 63 51 14 41 2B D6) // should be unique alloc(newmem,$1000,BasePlayer) label(code) label(return) label(Health) label(Enemy) label(FlagHealth) label(FlagEnemy) registersymbol(FlagHealth) registersymbol(FlagEnemy) newmem: Health: cmp [FlagHealth],0 je code cmp [Player],rcx jne Enemy mov dword ptr [rcx+10],#1000 mov dword ptr [rcx+14],#1000 jmp code Enemy: cmp [FlagEnemy],0 je code mov dword ptr [rcx+14],(float)0 code: movsxd rdx,dword ptr [rcx+14] sub edx,r14d jmp return FlagHealth: dd 0 FlagEnemy: dd 0 BasePlayer: jmp newmem db 90 90 return: registersymbol(BasePlayer) [DISABLE] BasePlayer: db 48 63 51 14 41 2B D6 Pointer: db 48 63 50 14 48 8B 46 58 unregistersymbol(Pointer) unregistersymbol(Player) unregistersymbol(FlagHealth) unregistersymbol(FlagEnemy) unregistersymbol(BasePlayer) dealloc(newmem) dealloc(newmem1) { // ORIGINAL CODE - INJECTION POINT: 100ED5F6 100ED5D1: 83 39 00 - cmp dword ptr [rcx],00 100ED5D4: 48 63 40 24 - movsxd rax,dword ptr [rax+24] 100ED5D8: 4C 8B F7 - mov r14,rdi 100ED5DB: 44 2B F0 - sub r14d,eax 100ED5DE: 49 8B C6 - mov rax,r14 100ED5E1: 85 C0 - test eax,eax 100ED5E3: 0F 8E 58 00 00 00 - jng 100ED641 100ED5E9: 49 8B 8F C8 00 00 00 - mov rcx,[r15+000000C8] 100ED5F0: 48 8B C1 - mov rax,rcx 100ED5F3: 83 39 00 - cmp dword ptr [rcx],00 // ---------- INJECTING HERE ---------- 100ED5F6: 48 63 51 14 - movsxd rdx,dword ptr [rcx+14] 100ED5FA: 41 2B D6 - sub edx,r14d // ---------- DONE INJECTING ---------- 100ED5FD: 48 8B C8 - mov rcx,rax 100ED600: 48 83 EC 20 - sub rsp,20 100ED604: 83 38 00 - cmp dword ptr [rax],00 100ED607: 49 BB 00 2D AA 03 00 00 00 00 - mov r11,0000000003AA2D00 100ED611: 41 FF D3 - call r11d 100ED614: 48 83 C4 20 - add rsp,20 100ED618: 49 8B 87 C8 00 00 00 - mov rax,[r15+000000C8] 100ED61F: 48 8B C8 - mov rcx,rax 100ED622: 33 D2 - xor edx,edx 100ED624: 48 83 EC 20 - sub rsp,20 } А это супер способность - или как там она в игре значится "Skill" Скрытый текст [ENABLE] aobscan(Skill,F3 0F 11 AF 98 00 00 00 F3) // should be unique alloc(newmem,$1000,100F87A3) label(PlayerSkill) label(code) label(return) newmem: code: movss xmm5,[PlayerSkill] movss [rdi+00000098],xmm5 jmp return PlayerSkill: dq (float)25 Skill: jmp code db 90 90 90 return: registersymbol(Skill) [DISABLE] Skill: db F3 0F 11 AF 98 00 00 00 unregistersymbol(Skill) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: 100F87A3 100F877A: 75 2F - jne 100F87AB 100F877C: 0F B6 44 24 18 - movzx eax,byte ptr [rsp+18] 100F8781: 85 C0 - test eax,eax 100F8783: 74 26 - je 100F87AB 100F8785: F3 0F 10 87 98 00 00 00 - movss xmm0,[rdi+00000098] 100F878D: F3 0F 5A C0 - cvtss2sd xmm0,xmm0 100F8791: F3 0F 10 4C 24 10 - movss xmm1,[rsp+10] 100F8797: F3 0F 5A C9 - cvtss2sd xmm1,xmm1 100F879B: F2 0F 58 C1 - addsd xmm0,xmm1 100F879F: F2 0F 5A E8 - cvtsd2ss xmm5,xmm0 // ---------- INJECTING HERE ---------- 100F87A3: F3 0F 11 AF 98 00 00 00 - movss [rdi+00000098],xmm5 // ---------- DONE INJECTING ---------- 100F87AB: F3 0F 10 87 98 00 00 00 - movss xmm0,[rdi+00000098] 100F87B3: F3 0F 5A C0 - cvtss2sd xmm0,xmm0 100F87B7: F3 0F 10 8F 8C 00 00 00 - movss xmm1,[rdi+0000008C] 100F87BF: F3 0F 5A C9 - cvtss2sd xmm1,xmm1 100F87C3: F3 0F 10 97 90 00 00 00 - movss xmm2,[rdi+00000090] 100F87CB: F3 0F 5A D2 - cvtss2sd xmm2,xmm2 100F87CF: F2 0F 59 CA - mulsd xmm1,xmm2 100F87D3: F2 0F 5A E9 - cvtsd2ss xmm5,xmm1 100F87D7: F3 0F 11 6C 24 08 - movss [rsp+08],xmm5 100F87DD: F3 0F 10 4C 24 08 - movss xmm1,[rsp+08] } Так ну и само видео с учебным как бы сказать пособием для тех кто хоть чуть чуть понимает в этом деле. Готовая таблица для тех кто в обще не шарит. Lost Castle_.CT 2 Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения
Пожалуйста, войдите, чтобы комментировать
Вы сможете оставить комментарий после входа в
Войти