Garik66 Опубликовано 2 декабря, 2017 Поделиться Опубликовано 2 декабря, 2017 Предыдущая тема (2013 г.) по этой игре. СкриптЫ: Numpad 0 Resources: Скрытый текст { Game : BHero2.exe Version: Date : 2017-12-01 Author : Garik66 This script does blah blah blah } [ENABLE] {$LUA} getAddressList().getMemoryRecordByID(16).Color=0x0008000 PlaySound(findTableFile([[Activate]])) {$ASM} aobscanmodule(resources,BHero2.exe,8B 4D 0C 8B 10) // should be unique alloc(newmem,$1000) label(code) label(return) label(flag) registersymbol(flag) registersymbol(resources) newmem: mov ecx,[ebp+0C] cmp [flag],4 je code inc [flag] mov edx,[eax] add edx,#100000 mov [eax],edx code: mov edx,[eax] jmp return flag: dd 1 resources: jmp newmem return: [DISABLE] {$LUA} getAddressList().getMemoryRecordByID(16).Color=0x00000ff PlaySound(findTableFile([[Deactivate]])) {$ASM} resources: db 8B 4D 0C 8B 10 unregistersymbol(flag) unregistersymbol(resources) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "BHero2.exe"+4D341 "BHero2.exe"+4D325: C1 E1 08 - shl ecx,08 "BHero2.exe"+4D328: 8B 91 50 AB 57 00 - mov edx,[ecx+BHero2.exe+17AB50] "BHero2.exe"+4D32E: 89 15 B8 F2 6B 00 - mov [BHero2.exe+2BF2B8],edx "BHero2.exe"+4D334: 8B E5 - mov esp,ebp "BHero2.exe"+4D336: 5D - pop ebp "BHero2.exe"+4D337: C3 - ret "BHero2.exe"+4D338: 55 - push ebp "BHero2.exe"+4D339: 8B EC - mov ebp,esp "BHero2.exe"+4D33B: 83 EC 08 - sub esp,08 "BHero2.exe"+4D33E: 8B 45 08 - mov eax,[ebp+08] // ---------- INJECTING HERE ---------- "BHero2.exe"+4D341: 8B 4D 0C - mov ecx,[ebp+0C] "BHero2.exe"+4D344: 8B 10 - mov edx,[eax] // ---------- DONE INJECTING ---------- "BHero2.exe"+4D346: 3B 11 - cmp edx,[ecx] "BHero2.exe"+4D348: 0F 84 A0 00 00 00 - je BHero2.exe+4D3EE "BHero2.exe"+4D34E: 6A 00 - push 00 "BHero2.exe"+4D350: 6A 00 - push 00 "BHero2.exe"+4D352: 6A 00 - push 00 "BHero2.exe"+4D354: A1 88 5A D4 02 - mov eax,[BHero2.exe+2945A88] "BHero2.exe"+4D359: 50 - push eax "BHero2.exe"+4D35A: 68 94 86 55 00 - push BHero2.exe+158694 "BHero2.exe"+4D35F: 6A 13 - push 13 "BHero2.exe"+4D361: 8B 4D 14 - mov ecx,[ebp+14] } Numpad 1 God Mode: Скрытый текст { Game : BHero2.exe Version: Date : 2017-12-01 Author : Garik66 This script does blah blah blah } [ENABLE] {$LUA} getAddressList().getMemoryRecordByID(26).Color=0x0008000 PlaySound(findTableFile([[Activate]])) {$ASM} aobscanmodule(God,BHero2.exe,8B 91 54 AB 57 00 89 15 * * * * 8D) // should be unique aobscanmodule(Mana,BHero2.exe,8B 88 50 AB 57 00 89 0D) alloc(newmem,$1000) label(newmem1) label(code) label(code1) label(return) label(return1) label(ID_hero) registersymbol(ID_hero) registersymbol(Mana) registersymbol(God) newmem: cmp ecx,0001F900 je @f cmp ecx,0001E900 je @f cmp ecx,00026C00 je @f cmp ecx,0002A300 je @f jmp code @@: mov [ID_hero],ecx @@: mov [ecx+BHero2.exe+17AB54],#1000 code: mov edx,[ecx+BHero2.exe+17AB54] jmp return newmem1: cmp ecx,[ID_hero] je @f mov [ecx+BHero2.exe+17AB50],0 jmp code1 @@: mov [ecx+BHero2.exe+17AB50],#1000 code1: mov ecx,[eax+BHero2.exe+17AB50] jmp return1 ID_hero: dd 0 God: jmp newmem db 90 return: Mana: jmp newmem1 db 90 return1: [DISABLE] {$LUA} getAddressList().getMemoryRecordByID(26).Color=0x00000ff PlaySound(findTableFile([[Deactivate]])) {$ASM} God: db 8B 91 54 AB 57 00 Mana: db 8B 88 50 AB 57 00 unregistersymbol(ID_hero) unregistersymbol(Mana) unregistersymbol(God) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "BHero2.exe"+A6419 "BHero2.exe"+A63ED: 83 C4 14 - add esp,14 "BHero2.exe"+A63F0: 83 7D B8 03 - cmp dword ptr [ebp-48],03 "BHero2.exe"+A63F4: 0F 84 20 01 00 00 - je BHero2.exe+A651A "BHero2.exe"+A63FA: 8B 15 3C E1 6A 00 - mov edx,[BHero2.exe+2AE13C] "BHero2.exe"+A6400: C1 E2 08 - shl edx,08 "BHero2.exe"+A6403: A1 1C 79 A0 00 - mov eax,[BHero2.exe+60791C] "BHero2.exe"+A6408: 3B 82 54 AB 57 00 - cmp eax,[edx+BHero2.exe+17AB54] "BHero2.exe"+A640E: 74 7A - je BHero2.exe+A648A "BHero2.exe"+A6410: 8B 0D 3C E1 6A 00 - mov ecx,[BHero2.exe+2AE13C] "BHero2.exe"+A6416: C1 E1 08 - shl ecx,08 // ---------- INJECTING HERE ---------- "BHero2.exe"+A6419: 8B 91 54 AB 57 00 - mov edx,[ecx+BHero2.exe+17AB54] // ---------- DONE INJECTING ---------- "BHero2.exe"+A641F: 89 15 1C 79 A0 00 - mov [BHero2.exe+60791C],edx "BHero2.exe"+A6425: 8D 45 CC - lea eax,[ebp-34] "BHero2.exe"+A6428: 50 - push eax "BHero2.exe"+A6429: 6A 04 - push 04 "BHero2.exe"+A642B: 6A 3B - push 3B "BHero2.exe"+A642D: 8B 4D C8 - mov ecx,[ebp-38] "BHero2.exe"+A6430: 83 C1 40 - add ecx,40 "BHero2.exe"+A6433: 51 - push ecx "BHero2.exe"+A6434: 6A 03 - push 03 "BHero2.exe"+A6436: 8B 15 38 5B D4 02 - mov edx,[BHero2.exe+2945B38] } { // ORIGINAL CODE - INJECTION POINT: "BHero2.exe"+A64A9 "BHero2.exe"+A6481: 50 - push eax "BHero2.exe"+A6482: E8 D3 7F FA FF - call BHero2.exe+4E45A "BHero2.exe"+A6487: 83 C4 20 - add esp,20 "BHero2.exe"+A648A: 8B 0D 3C E1 6A 00 - mov ecx,[BHero2.exe+2AE13C] "BHero2.exe"+A6490: C1 E1 08 - shl ecx,08 "BHero2.exe"+A6493: 8B 15 58 7A A0 00 - mov edx,[BHero2.exe+607A58] "BHero2.exe"+A6499: 3B 91 50 AB 57 00 - cmp edx,[ecx+BHero2.exe+17AB50] "BHero2.exe"+A649F: 74 79 - je BHero2.exe+A651A "BHero2.exe"+A64A1: A1 3C E1 6A 00 - mov eax,[BHero2.exe+2AE13C] "BHero2.exe"+A64A6: C1 E0 08 - shl eax,08 // ---------- INJECTING HERE ---------- "BHero2.exe"+A64A9: 8B 88 50 AB 57 00 - mov ecx,[eax+BHero2.exe+17AB50] // ---------- DONE INJECTING ---------- "BHero2.exe"+A64AF: 89 0D 58 7A A0 00 - mov [BHero2.exe+607A58],ecx "BHero2.exe"+A64B5: 8D 55 CC - lea edx,[ebp-34] "BHero2.exe"+A64B8: 52 - push edx "BHero2.exe"+A64B9: 6A 04 - push 04 "BHero2.exe"+A64BB: 6A 3B - push 3B "BHero2.exe"+A64BD: 8B 45 C8 - mov eax,[ebp-38] "BHero2.exe"+A64C0: 83 C0 47 - add eax,47 "BHero2.exe"+A64C3: 50 - push eax "BHero2.exe"+A64C4: 6A 03 - push 03 "BHero2.exe"+A64C6: 8B 0D 38 5B D4 02 - mov ecx,[BHero2.exe+2945B38] } Numpad - OHK: Скрытый текст { Game : BHero2.exe Version: Date : 2017-12-02 Author : Garik66 This script does blah blah blah } [ENABLE] {$LUA} getAddressList().getMemoryRecordByID(35).Color=0x0008000 PlaySound(findTableFile([[Activate]])) {$ASM} aobscanmodule(OHK,BHero2.exe,8B 91 54 AB 57 00 89 15) // should be unique alloc(newmem,$1000) label(code) label(return) registersymbol(OHK) newmem: cmp ecx,[ID_hero] je @f mov [ecx+BHero2.exe+17AB54],0 jmp code @@: mov [ecx+BHero2.exe+17AB54],#1000 code: mov edx,[ecx+BHero2.exe+17AB54] jmp return OHK: jmp newmem nop return: [DISABLE] {$LUA} getAddressList().getMemoryRecordByID(35).Color=0x00000ff PlaySound(findTableFile([[Deactivate]])) {$ASM} OHK: db 8B 91 54 AB 57 00 unregistersymbol(OHK) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "BHero2.exe"+4D192 "BHero2.exe"+4D172: 8B 55 84 - mov edx,[ebp-7C] "BHero2.exe"+4D175: 52 - push edx "BHero2.exe"+4D176: 68 00 01 00 00 - push 00000100 "BHero2.exe"+4D17B: 6A 00 - push 00 "BHero2.exe"+4D17D: 8B 85 70 FF FF FF - mov eax,[ebp-00000090] "BHero2.exe"+4D183: 50 - push eax "BHero2.exe"+4D184: E8 EF 71 FD FF - call BHero2.exe+24378 "BHero2.exe"+4D189: 83 C4 1C - add esp,1C "BHero2.exe"+4D18C: 8B 4D AC - mov ecx,[ebp-54] "BHero2.exe"+4D18F: C1 E1 08 - shl ecx,08 // ---------- INJECTING HERE ---------- "BHero2.exe"+4D192: 8B 91 54 AB 57 00 - mov edx,[ecx+BHero2.exe+17AB54] // ---------- DONE INJECTING ---------- "BHero2.exe"+4D198: 89 15 B4 F2 6B 00 - mov [BHero2.exe+2BF2B4],edx "BHero2.exe"+4D19E: 8B 45 AC - mov eax,[ebp-54] "BHero2.exe"+4D1A1: C1 E0 08 - shl eax,08 "BHero2.exe"+4D1A4: 8B 0D B8 F2 6B 00 - mov ecx,[BHero2.exe+2BF2B8] "BHero2.exe"+4D1AA: 3B 88 50 AB 57 00 - cmp ecx,[eax+BHero2.exe+17AB50] "BHero2.exe"+4D1B0: 0F 84 7E 01 00 00 - je BHero2.exe+4D334 "BHero2.exe"+4D1B6: 8B 55 AC - mov edx,[ebp-54] "BHero2.exe"+4D1B9: 52 - push edx "BHero2.exe"+4D1BA: E8 48 68 00 00 - call BHero2.exe+53A07 "BHero2.exe"+4D1BF: 83 C4 04 - add esp,04 } Numpad 2 Experience: Скрытый текст { Game : BHero2.exe Version: Date : 2017-12-02 Author : Garik66 This script does blah blah blah } [ENABLE] {$LUA} getAddressList().getMemoryRecordByID(39).Color=0x0008000 PlaySound(findTableFile([[Activate]])) {$ASM} aobscanmodule(level,BHero2.exe,89 15 BC F2 6B 00) // should be unique aobscanmodule(experience,BHero2.exe,8B 88 7C AB 57 00 89) alloc(newmem,$1000) label(newmem1) label(code) label(code1) label(return) label(return1) label(Plus) label(flag1) label(Level) registersymbol(experience) registersymbol(level) newmem: cmp ecx,[ID_hero] jne code mov [Level],edx cmp [BHero2.exe+2BF2BC],edx je code mov [flag1],1 code: mov [BHero2.exe+2BF2BC],edx jmp return newmem1: cmp eax,[ID_hero] jne code1 cmp [flag1],1 jne code1 mov ecx,[Level] inc ecx cmp [ID_hero],0001F900 jne @f imul ecx,ecx,453 dec ecx jmp Plus @@: cmp [ID_hero],0001E900 jne @f imul ecx,ecx,437 dec ecx jmp Plus @@: cmp [ID_hero],00026C00 jne @f imul ecx,ecx,441 dec ecx jmp Plus @@: cmp [ID_hero],0002A300 jne code1 imul ecx,ecx,431 dec ecx Plus: mov [eax+BHero2.exe+17AB7C],ecx mov [flag1],0 code1: mov ecx,[eax+BHero2.exe+17AB7C] jmp return1 flag1: dd 1 Level: dd 0 level: jmp newmem db 90 return: experience: jmp newmem1 db 90 return1: [DISABLE] {$LUA} getAddressList().getMemoryRecordByID(39).Color=0x00000ff PlaySound(findTableFile([[Deactivate]])) {$ASM} level: db 89 15 BC F2 6B 00 experience: db 8B 88 7C AB 57 00 unregistersymbol(experience) unregistersymbol(level) dealloc(newmem) { // ORIGINAL CODE - INJECTION POINT: "BHero2.exe"+4CDE5 "BHero2.exe"+4CDBD: E8 B6 75 FD FF - call BHero2.exe+24378 "BHero2.exe"+4CDC2: 83 C4 1C - add esp,1C "BHero2.exe"+4CDC5: 8B 55 AC - mov edx,[ebp-54] "BHero2.exe"+4CDC8: C1 E2 08 - shl edx,08 "BHero2.exe"+4CDCB: 8B 82 7C AB 57 00 - mov eax,[edx+BHero2.exe+17AB7C] "BHero2.exe"+4CDD1: A3 A8 F2 6B 00 - mov [BHero2.exe+2BF2A8],eax "BHero2.exe"+4CDD6: 8B 4D AC - mov ecx,[ebp-54] "BHero2.exe"+4CDD9: C1 E1 08 - shl ecx,08 "BHero2.exe"+4CDDC: 33 D2 - xor edx,edx "BHero2.exe"+4CDDE: 66 8B 91 3C AB 57 00 - mov dx,[ecx+BHero2.exe+17AB3C] // ---------- INJECTING HERE ---------- "BHero2.exe"+4CDE5: 89 15 BC F2 6B 00 - mov [BHero2.exe+2BF2BC],edx // ---------- DONE INJECTING ---------- "BHero2.exe"+4CDEB: 8B 45 AC - mov eax,[ebp-54] "BHero2.exe"+4CDEE: C1 E0 08 - shl eax,08 "BHero2.exe"+4CDF1: 8B 0D AC F2 6B 00 - mov ecx,[BHero2.exe+2BF2AC] "BHero2.exe"+4CDF7: 3B 88 44 AB 57 00 - cmp ecx,[eax+BHero2.exe+17AB44] "BHero2.exe"+4CDFD: 0F 84 E9 00 00 00 - je BHero2.exe+4CEEC "BHero2.exe"+4CE03: 6A 00 - push 00 "BHero2.exe"+4CE05: 6A 00 - push 00 "BHero2.exe"+4CE07: 6A 00 - push 00 "BHero2.exe"+4CE09: 8B 15 88 5A D4 02 - mov edx,[BHero2.exe+2945A88] "BHero2.exe"+4CE0F: 52 - push edx } { // ORIGINAL CODE - INJECTION POINT: "BHero2.exe"+4CD4E "BHero2.exe"+4CD2E: 51 - push ecx "BHero2.exe"+4CD2F: 6A 08 - push 08 "BHero2.exe"+4CD31: 68 00 02 00 00 - push 00000200 "BHero2.exe"+4CD36: 8B 55 A8 - mov edx,[ebp-58] "BHero2.exe"+4CD39: 81 C2 08 08 00 00 - add edx,00000808 "BHero2.exe"+4CD3F: 52 - push edx "BHero2.exe"+4CD40: E8 8A 83 02 00 - call BHero2.exe+750CF "BHero2.exe"+4CD45: 83 C4 1C - add esp,1C "BHero2.exe"+4CD48: 8B 45 AC - mov eax,[ebp-54] "BHero2.exe"+4CD4B: C1 E0 08 - shl eax,08 // ---------- INJECTING HERE ---------- "BHero2.exe"+4CD4E: 8B 88 7C AB 57 00 - mov ecx,[eax+BHero2.exe+17AB7C] // ---------- DONE INJECTING ---------- "BHero2.exe"+4CD54: 89 0D A8 F2 6B 00 - mov [BHero2.exe+2BF2A8],ecx "BHero2.exe"+4CD5A: 8B 55 AC - mov edx,[ebp-54] "BHero2.exe"+4CD5D: C1 E2 08 - shl edx,08 "BHero2.exe"+4CD60: 33 C0 - xor eax,eax "BHero2.exe"+4CD62: 66 8B 82 3C AB 57 00 - mov ax,[edx+BHero2.exe+17AB3C] "BHero2.exe"+4CD69: 50 - push eax "BHero2.exe"+4CD6A: 8B 0D 54 94 48 03 - mov ecx,[BHero2.exe+3089454] "BHero2.exe"+4CD70: 51 - push ecx "BHero2.exe"+4CD71: 68 64 E5 70 00 - push BHero2.exe+30E564 "BHero2.exe"+4CD76: FF 15 68 82 51 00 - call dword ptr [BHero2.exe+118268] } Видео: Табличка: BHero2.CT 4 Ссылка на комментарий Поделиться на другие сайты Поделиться
Aztec2012 Опубликовано 7 марта, 2021 Поделиться Опубликовано 7 марта, 2021 Для Battle Of The Heroes 2 без аддона Echo Of War подойдёт? Ссылка на комментарий Поделиться на другие сайты Поделиться
Xipho Опубликовано 7 марта, 2021 Поделиться Опубликовано 7 марта, 2021 6 часов назад, Aztec2012 сказал: Для Battle Of The Heroes 2 без аддона Echo Of War подойдёт? Возьми да проверь. Или ты предлагаешь автору снова игру качать и ставить, чтобы тебе ответить на вопрос? Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 8 марта, 2021 Автор Поделиться Опубликовано 8 марта, 2021 16 часов назад, Aztec2012 сказал: подойдёт? Ответил на Тюбе Ссылка на комментарий Поделиться на другие сайты Поделиться
Aztec2012 Опубликовано 10 марта, 2021 Поделиться Опубликовано 10 марта, 2021 В 07.03.2021 в 22:29, Xipho сказал: Возьми да проверь. Или ты предлагаешь автору снова игру качать и ставить, чтобы тебе ответить на вопрос? В 08.03.2021 в 08:05, Garik66 сказал: Ответил на Тюбе Проверил. Не работает с 4 героями из оригинала которые выбираются в меню выбора героев после нажатия кнопки Оригинал. Автор таблицы об этом не знал. Причина - взлом делался по ID героя, а ID 4 оригинальных героев в скрипте нету. И хорошо бы добавить взлом очков или характеристик т.к. в игре автолевелинг врагов. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 10 марта, 2021 Автор Поделиться Опубликовано 10 марта, 2021 2 часа назад, Aztec2012 сказал: Проверил. Пересмотрел свое видео - там все понятно объяснено. как сделать скрипт. (как найти ID героев, какие адреса являются рабочими) Сомневаюсь. что разработчики что-то сильно изменили в игре. Ссылка на комментарий Поделиться на другие сайты Поделиться
Aztec2012 Опубликовано 10 марта, 2021 Поделиться Опубликовано 10 марта, 2021 1 час назад, Garik66 сказал: Пересмотрел свое видео - там все понятно объяснено. как сделать скрипт. (как найти ID героев, какие адреса являются рабочими) Сомневаюсь. что разработчики что-то сильно изменили в игре. Дважды пересмотрел видео. Сказано про опыт про год мод. Но где взять сами Id_hero не сказано. И для не программиста это сложновато. Ссылка на комментарий Поделиться на другие сайты Поделиться
Garik66 Опубликовано 10 марта, 2021 Автор Поделиться Опубликовано 10 марта, 2021 1 час назад, Aztec2012 сказал: Но где взять сами Id_hero не сказано. Сказано, не внимательно смотрел и слушал. В ЕСХ лежит ID из инструкции на здоровье Спойлер "BHero2.exe"+A6410: 8B 0D 3C E1 6A 00 - mov ecx,[BHero2.exe+2AE13C] "BHero2.exe"+A6416: C1 E1 08 - shl ecx,08 // Вот после срабатывания этой инструкции в ЕСХ лежит ID // ---------- INJECTING HERE ---------- "BHero2.exe"+A6419: 8B 91 54 AB 57 00 - mov edx,[ecx+BHero2.exe+17AB54] Ссылка на комментарий Поделиться на другие сайты Поделиться
Рекомендуемые сообщения