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

[Dynamite Jack-Steam] Разные смещения


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

Версия: 1.2.5

Привет. В игре если сделать таблицу на 1 первом уровне, то на втором уровне скрипты или указатели могут либо не работать, либо работать не на гг.

Я вот что хотел узнать, если взять статический адрес к примеру в игре их 2:

"Dynamite Jack.exe"+2D7974 (006D7974) с значением [012C0EE8] значение меняется

"Dynamite Jack.exe"+351AC0 (00751AC0) с значением [012C0EE8] значение меняется

и сделать скрипт, стоит ли делать скрипты таким образом?

Т.Е. вот скрин редактора где +13D70 начало функции, я же сделал скрипт на выделенную строку.

https://ibb.co/wgCWcpV

Спойлер

[ENABLE]
aobscanmodule(GameMain,Dynamite Jack.exe,A1 74 79 6D 00 D8)
alloc(newmem,$1000)
label(code)
label(return)
label(pMain)
registersymbol(GameMain)
registersymbol(pMain)


newmem:
  mov eax,["Dynamite Jack.exe"+2D7974]
  mov [pMain],"Dynamite Jack.exe"+2D7974

 

code:
  mov eax,["Dynamite Jack.exe"+2D7974]
  jmp return

 

pMain:
  dd 0

 

GameMain:
  jmp newmem


return:
[DISABLE]
GameMain:
  db A1 74 79 6D 00


unregistersymbol(pMain)
unregistersymbol(GameMain)
dealloc(newmem)


{// ORIGINAL CODE - INJECTION POINT: Dynamite Jack.exe.text+13DB1
Dynamite Jack.exe.text+13D77: 8D 84 24 A0 01 00 00     - lea eax,[esp+000001A0]
Dynamite Jack.exe.text+13D7E: C7 44 24 40 E0 4E 68 00  - mov [esp+40],Dynamite Jack.exe.text+283EE0
Dynamite Jack.exe.text+13D86: C7 44 24 44 A6 A7 68 00  - mov [esp+44],Dynamite Jack.exe.text+2897A6
Dynamite Jack.exe.text+13D8E: C7 44 24 4C 22 50 41 00  - mov [esp+4C],Dynamite Jack.exe.text+14022
Dynamite Jack.exe.text+13D96: 89 64 24 50              - mov [esp+50],esp
Dynamite Jack.exe.text+13D9A: 89 44 24 48              - mov [esp+48],eax
Dynamite Jack.exe.text+13D9E: 8D 44 24 28              - lea eax,[esp+28]
Dynamite Jack.exe.text+13DA2: 89 04 24                 - mov [esp],eax
Dynamite Jack.exe.text+13DA5: E8 F6 BA 14 00           - call Dynamite Jack.exe.text+15F8A0
Dynamite Jack.exe.text+13DAA: D9 84 24 B4 01 00 00     - fld dword ptr [esp+000001B4]
// ---------- INJECTING HERE ----------
Dynamite Jack.exe.text+13DB1: A1 74 79 6D 00           - mov eax,["Dynamite Jack.exe"+2D7974]
// ---------- DONE INJECTING  ----------
Dynamite Jack.exe.text+13DB6: D8 C8                    - fmul st(0),st(0)
Dynamite Jack.exe.text+13DB8: 89 44 24 24              - mov [esp+24],eax
Dynamite Jack.exe.text+13DBC: D9 84 24 B8 01 00 00     - fld dword ptr [esp+000001B8]
Dynamite Jack.exe.text+13DC3: D8 C8                    - fmul st(0),st(0)
Dynamite Jack.exe.text+13DC5: DE C1                    - faddp 
Dynamite Jack.exe.text+13DC7: D9 C0                    - fld st(0)
Dynamite Jack.exe.text+13DC9: D9 FA                    - fsqrt 
Dynamite Jack.exe.text+13DCB: D9 5C 24 1C              - fstp dword ptr [esp+1C]
Dynamite Jack.exe.text+13DCF: D9 EE                    - fldz 
Dynamite Jack.exe.text+13DD1: DF E9                    - fucomip st(0),st(1)}

Начинается так pMain-> 0 -> A340 или 1104C указывающий на адрес с бессмертием или ещё чего.

Как бы всё работает, что мог нашёл: https://ibb.co/CVkXH5N

Только вот как мне сделать фильтрацию на меня и остальных, чтобы это всё работало в 1 скрипте?

Вот что нашёл: https://ibb.co/FVG6T6V это 2-ой уровень игры, на другом уровне "номер 2)" может занять не player.

К примеру вот 1-ый уровень https://ibb.co/XzjMCSk.

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

Эт всё потому что.  Разные структуры.

Спойлер
Инструкция на таймер.
add [ebx+00004C38],esi
EBX=004D3030

Инструкция проверки влючён или нет ноклип
cmp byte ptr [esi+3D],00
ESI=004DDA08

 

Если взять как начало структуры EBX=004D3030 от таймера.

Раздуть эту структуру до огромных размеров.

То можно там найти и адрес ноклипа [esi+3D]

Но это другая структура.Jy

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

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

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

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