Page 4 of 6
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Wed Jun 16, 2021 6:39 am
by kurekong
It prompted with this error:
[Link]
EDIT:
It works! I just needed to close CE table and run it again.
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Wed Jun 16, 2021 10:54 pm
by gideon25
kurekong wrote: ↑ Wed Jun 16, 2021 6:39 am
It prompted with this error:
[Link]
Can you guys test out the scripts for my table I made for Ninja Gaiden Sigma?
viewtopic.php?f=4&t=16420
I had someone not be able to activate and I fixed some AOBs, but need a few other people to try out all the scripts and let me know if they all activate. Just want to make sure it works. Thanks!
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Thu Jun 17, 2021 5:47 pm
by Cyber
Ninja Gaiden Sigma 2
Auto Resurrect
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(autoressurect_aob,NINJA GAIDEN SIGMA2.exe,85 C0 74 62 48 8B 0D 15 52 86 00) // should be unique
alloc(newmem,$100,autoressurect_aob)
label(code)
label(return)
newmem:
code:
test eax,eax
jmp "NINJA GAIDEN SIGMA2.exe"+15CD1EE
mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
jmp return
autoressurect_aob:
jmp newmem
nop 6
return:
autoressurect_aob-23:
db 90 90 90 90 90 90
registersymbol(autoressurect_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
autoressurect_aob:
db 85 C0 74 62 48 8B 0D 15 52 86 00
autoressurect_aob-23:
db 0F 84 83 00 00 00
unregistersymbol(autoressurect_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+15CD1D8
NINJA GAIDEN SIGMA2.exe+15CD1A3: 48 89 74 24 30 - mov [rsp+30],rsi
NINJA GAIDEN SIGMA2.exe+15CD1A8: 0F 85 85 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+15CD233
NINJA GAIDEN SIGMA2.exe+15CD1AE: 80 3D BE BB B4 00 01 - cmp byte ptr ["NINJA GAIDEN SIGMA2.exe"+2118D73],01
NINJA GAIDEN SIGMA2.exe+15CD1B5: 0F 84 83 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1BB: 48 8D 34 11 - lea rsi,[rcx+rdx]
NINJA GAIDEN SIGMA2.exe+15CD1BF: 0F B6 96 69 5B 00 00 - movzx edx,byte ptr [rsi+00005B69]
NINJA GAIDEN SIGMA2.exe+15CD1C6: 81 FA A0 00 00 00 - cmp edx,000000A0
NINJA GAIDEN SIGMA2.exe+15CD1CC: 73 70 - jae "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1CE: B9 0A 00 00 00 - mov ecx,0000000A
NINJA GAIDEN SIGMA2.exe+15CD1D3: E8 A8 09 DB FF - call "NINJA GAIDEN SIGMA2.exe"+137DB80
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+15CD1D8: 85 C0 - test eax,eax
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+15CD1DA: 74 62 - je "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1DC: 48 8B 0D 15 52 86 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+15CD1E3: 48 63 41 34 - movsxd rax,dword ptr [rcx+34]
NINJA GAIDEN SIGMA2.exe+15CD1E7: 80 7C 81 27 00 - cmp byte ptr [rcx+rax*4+27],00
NINJA GAIDEN SIGMA2.exe+15CD1EC: 74 50 - je "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1EE: 48 8B CB - mov rcx,rbx
NINJA GAIDEN SIGMA2.exe+15CD1F1: E8 9A 03 01 00 - call "NINJA GAIDEN SIGMA2.exe"+15DD590
NINJA GAIDEN SIGMA2.exe+15CD1F6: 48 8B 0D FB 51 86 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+15CD1FD: BA 0A 00 00 00 - mov edx,0000000A
NINJA GAIDEN SIGMA2.exe+15CD202: 48 63 41 34 - movsxd rax,dword ptr [rcx+34]
}
Auto Guard/Dodge
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN SIGMA2.exe,74 6C 44 0F B6 80 69 5B 00 00) // should be unique
alloc(newmem,$100,auto_guard_dodge_aob)
label(code)
label(return)
newmem:
code:
jmp "NINJA GAIDEN SIGMA2.exe"+F8465F
movzx r8d,byte ptr [rax+00005B69]
jmp return
auto_guard_dodge_aob:
jmp newmem
nop 5
return:
auto_guard_dodge_aob+86:
db 8B D0 90
registersymbol(auto_guard_dodge_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
auto_guard_dodge_aob:
db 74 6C 44 0F B6 80 69 5B 00 00
auto_guard_dodge_aob+86:
db 0F 45 D0
unregistersymbol(auto_guard_dodge_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+F845E1
NINJA GAIDEN SIGMA2.exe+F845B0: 32 D2 - xor dl,dl
NINJA GAIDEN SIGMA2.exe+F845B2: 48 85 C9 - test rcx,rcx
NINJA GAIDEN SIGMA2.exe+F845B5: 0F 84 AF 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845BB: 38 51 1A - cmp [rcx+1A],dl
NINJA GAIDEN SIGMA2.exe+F845BE: 0F 85 A6 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845C4: 48 8B 01 - mov rax,[rcx]
NINJA GAIDEN SIGMA2.exe+F845C7: 38 90 57 5B 00 00 - cmp [rax+00005B57],dl
NINJA GAIDEN SIGMA2.exe+F845CD: 0F 85 97 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845D3: 48 8B 0D 1E DE EA 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+F845DA: 80 B9 DE 03 00 00 FF - cmp byte ptr [rcx+000003DE],-01
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+F845E1: 74 6C - je "NINJA GAIDEN SIGMA2.exe"+F8464F
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+F845E3: 44 0F B6 80 69 5B 00 00 - movzx r8d,byte ptr [rax+00005B69]
NINJA GAIDEN SIGMA2.exe+F845EB: 41 80 F8 02 - cmp r8l,02
NINJA GAIDEN SIGMA2.exe+F845EF: 73 12 - jae "NINJA GAIDEN SIGMA2.exe"+F84603
NINJA GAIDEN SIGMA2.exe+F845F1: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F845F5: 4C 8D 05 E8 48 19 01 - lea r8,["NINJA GAIDEN SIGMA2.exe"+2118EE4]
NINJA GAIDEN SIGMA2.exe+F845FC: 46 0F B6 04 00 - movzx r8d,byte ptr [rax+r8]
NINJA GAIDEN SIGMA2.exe+F84601: EB 03 - jmp "NINJA GAIDEN SIGMA2.exe"+F84606
NINJA GAIDEN SIGMA2.exe+F84603: 45 32 C0 - xor r8l,r8l
NINJA GAIDEN SIGMA2.exe+F84606: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F8460A: 4C 8D 05 4F B4 20 02 - lea r8,["NINJA GAIDEN SIGMA2.exe"+318FA60]
}
Auto Guard/Dodge - Hotkey Pressed ( left Shoulder, default key for guarding)
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN SIGMA2.exe,74 6C 44 0F B6 80 69 5B 00 00) // should be unique
alloc(newmem,$100,auto_guard_dodge_aob)
label(code)
label(return)
label(G2HotkeyLuaThread)
registersymbol(G2HotkeyLuaThread)
newmem:
push ebx
mov bl,[G2HotkeyLuaThread]
test bl,bl
pop ebx
jz code
jmp "NINJA GAIDEN SIGMA2.exe"+F8465F
movzx r8d,byte ptr [rax+00005B69]
jmp return
code:
je "NINJA GAIDEN SIGMA2.exe"+F8464F
movzx r8d,byte ptr [rax+00005B69]
jmp return
G2HotkeyLuaThread:
dd 0
auto_guard_dodge_aob:
jmp newmem
nop 5
return:
auto_guard_dodge_aob+86:
db 8B D0 90
registersymbol(auto_guard_dodge_aob)
{$lua}
local function hotkeyLuaThread(thread)
local addr = getAddressSafe('G2HotkeyLuaThread')
while RunHotkeyLuaThread do
if addr then
local xcs = getXBox360ControllerState()
if xcs.GAMEPAD_LEFT_SHOULDER then
writeBytes(addr, 1)
else
writeBytes(addr, 0)
end
else
addr = getAddressSafe('G2HotkeyLuaThread')
end
end
thread.terminate()
end
---------------------------------
if syntaxcheck then return end
RunHotkeyLuaThread = true
createThread(hotkeyLuaThread)
{$asm}
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
{$lua}
if syntaxcheck then return end
RunHotkeyLuaThread = false
{$asm}
auto_guard_dodge_aob:
db 74 6C 44 0F B6 80 69 5B 00 00
auto_guard_dodge_aob+86:
db 0F 45 D0
unregistersymbol(auto_guard_dodge_aob)
unregistersymbol(G2HotkeyLuaThread)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+F845E1
NINJA GAIDEN SIGMA2.exe+F845B0: 32 D2 - xor dl,dl
NINJA GAIDEN SIGMA2.exe+F845B2: 48 85 C9 - test rcx,rcx
NINJA GAIDEN SIGMA2.exe+F845B5: 0F 84 AF 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845BB: 38 51 1A - cmp [rcx+1A],dl
NINJA GAIDEN SIGMA2.exe+F845BE: 0F 85 A6 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845C4: 48 8B 01 - mov rax,[rcx]
NINJA GAIDEN SIGMA2.exe+F845C7: 38 90 57 5B 00 00 - cmp [rax+00005B57],dl
NINJA GAIDEN SIGMA2.exe+F845CD: 0F 85 97 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845D3: 48 8B 0D 1E DE EA 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+F845DA: 80 B9 DE 03 00 00 FF - cmp byte ptr [rcx+000003DE],-01
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+F845E1: 74 6C - je "NINJA GAIDEN SIGMA2.exe"+F8464F
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+F845E3: 44 0F B6 80 69 5B 00 00 - movzx r8d,byte ptr [rax+00005B69]
NINJA GAIDEN SIGMA2.exe+F845EB: 41 80 F8 02 - cmp r8l,02
NINJA GAIDEN SIGMA2.exe+F845EF: 73 12 - jae "NINJA GAIDEN SIGMA2.exe"+F84603
NINJA GAIDEN SIGMA2.exe+F845F1: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F845F5: 4C 8D 05 E8 48 19 01 - lea r8,["NINJA GAIDEN SIGMA2.exe"+2118EE4]
NINJA GAIDEN SIGMA2.exe+F845FC: 46 0F B6 04 00 - movzx r8d,byte ptr [rax+r8]
NINJA GAIDEN SIGMA2.exe+F84601: EB 03 - jmp "NINJA GAIDEN SIGMA2.exe"+F84606
NINJA GAIDEN SIGMA2.exe+F84603: 45 32 C0 - xor r8l,r8l
NINJA GAIDEN SIGMA2.exe+F84606: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F8460A: 4C 8D 05 4F B4 20 02 - lea r8,["NINJA GAIDEN SIGMA2.exe"+318FA60]
}
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Thu Jun 17, 2021 6:24 pm
by NewMember
How to swap character model+moveset? I mean, in this video the uploader made Genshin playable. You can actually use his moveset. Cheat engine is the only possible way to do this right?
VIDEO
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Thu Jun 17, 2021 8:30 pm
by hyperspeedgx
Cyber wrote: ↑ Thu Jun 17, 2021 5:47 pm
Ninja Gaiden Sigma 2
Auto Resurrect
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(autoressurect_aob,NINJA GAIDEN SIGMA2.exe,85 C0 74 62 48 8B 0D 15 52 86 00) // should be unique
alloc(newmem,$100,autoressurect_aob)
label(code)
label(return)
newmem:
code:
test eax,eax
jmp "NINJA GAIDEN SIGMA2.exe"+15CD1EE
mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
jmp return
autoressurect_aob:
jmp newmem
nop 6
return:
autoressurect_aob-23:
db 90 90 90 90 90 90
registersymbol(autoressurect_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
autoressurect_aob:
db 85 C0 74 62 48 8B 0D 15 52 86 00
autoressurect_aob-23:
db 0F 84 83 00 00 00
unregistersymbol(autoressurect_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+15CD1D8
NINJA GAIDEN SIGMA2.exe+15CD1A3: 48 89 74 24 30 - mov [rsp+30],rsi
NINJA GAIDEN SIGMA2.exe+15CD1A8: 0F 85 85 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+15CD233
NINJA GAIDEN SIGMA2.exe+15CD1AE: 80 3D BE BB B4 00 01 - cmp byte ptr ["NINJA GAIDEN SIGMA2.exe"+2118D73],01
NINJA GAIDEN SIGMA2.exe+15CD1B5: 0F 84 83 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1BB: 48 8D 34 11 - lea rsi,[rcx+rdx]
NINJA GAIDEN SIGMA2.exe+15CD1BF: 0F B6 96 69 5B 00 00 - movzx edx,byte ptr [rsi+00005B69]
NINJA GAIDEN SIGMA2.exe+15CD1C6: 81 FA A0 00 00 00 - cmp edx,000000A0
NINJA GAIDEN SIGMA2.exe+15CD1CC: 73 70 - jae "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1CE: B9 0A 00 00 00 - mov ecx,0000000A
NINJA GAIDEN SIGMA2.exe+15CD1D3: E8 A8 09 DB FF - call "NINJA GAIDEN SIGMA2.exe"+137DB80
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+15CD1D8: 85 C0 - test eax,eax
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+15CD1DA: 74 62 - je "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1DC: 48 8B 0D 15 52 86 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+15CD1E3: 48 63 41 34 - movsxd rax,dword ptr [rcx+34]
NINJA GAIDEN SIGMA2.exe+15CD1E7: 80 7C 81 27 00 - cmp byte ptr [rcx+rax*4+27],00
NINJA GAIDEN SIGMA2.exe+15CD1EC: 74 50 - je "NINJA GAIDEN SIGMA2.exe"+15CD23E
NINJA GAIDEN SIGMA2.exe+15CD1EE: 48 8B CB - mov rcx,rbx
NINJA GAIDEN SIGMA2.exe+15CD1F1: E8 9A 03 01 00 - call "NINJA GAIDEN SIGMA2.exe"+15DD590
NINJA GAIDEN SIGMA2.exe+15CD1F6: 48 8B 0D FB 51 86 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+15CD1FD: BA 0A 00 00 00 - mov edx,0000000A
NINJA GAIDEN SIGMA2.exe+15CD202: 48 63 41 34 - movsxd rax,dword ptr [rcx+34]
}
Auto Guard/Dodge
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN SIGMA2.exe,74 6C 44 0F B6 80 69 5B 00 00) // should be unique
alloc(newmem,$100,auto_guard_dodge_aob)
label(code)
label(return)
newmem:
code:
jmp "NINJA GAIDEN SIGMA2.exe"+F8465F
movzx r8d,byte ptr [rax+00005B69]
jmp return
auto_guard_dodge_aob:
jmp newmem
nop 5
return:
auto_guard_dodge_aob+86:
db 8B D0 90
registersymbol(auto_guard_dodge_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
auto_guard_dodge_aob:
db 74 6C 44 0F B6 80 69 5B 00 00
auto_guard_dodge_aob+86:
db 74 6C 44
unregistersymbol(auto_guard_dodge_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+F845E1
NINJA GAIDEN SIGMA2.exe+F845B0: 32 D2 - xor dl,dl
NINJA GAIDEN SIGMA2.exe+F845B2: 48 85 C9 - test rcx,rcx
NINJA GAIDEN SIGMA2.exe+F845B5: 0F 84 AF 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845BB: 38 51 1A - cmp [rcx+1A],dl
NINJA GAIDEN SIGMA2.exe+F845BE: 0F 85 A6 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845C4: 48 8B 01 - mov rax,[rcx]
NINJA GAIDEN SIGMA2.exe+F845C7: 38 90 57 5B 00 00 - cmp [rax+00005B57],dl
NINJA GAIDEN SIGMA2.exe+F845CD: 0F 85 97 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845D3: 48 8B 0D 1E DE EA 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+F845DA: 80 B9 DE 03 00 00 FF - cmp byte ptr [rcx+000003DE],-01
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+F845E1: 74 6C - je "NINJA GAIDEN SIGMA2.exe"+F8464F
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+F845E3: 44 0F B6 80 69 5B 00 00 - movzx r8d,byte ptr [rax+00005B69]
NINJA GAIDEN SIGMA2.exe+F845EB: 41 80 F8 02 - cmp r8l,02
NINJA GAIDEN SIGMA2.exe+F845EF: 73 12 - jae "NINJA GAIDEN SIGMA2.exe"+F84603
NINJA GAIDEN SIGMA2.exe+F845F1: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F845F5: 4C 8D 05 E8 48 19 01 - lea r8,["NINJA GAIDEN SIGMA2.exe"+2118EE4]
NINJA GAIDEN SIGMA2.exe+F845FC: 46 0F B6 04 00 - movzx r8d,byte ptr [rax+r8]
NINJA GAIDEN SIGMA2.exe+F84601: EB 03 - jmp "NINJA GAIDEN SIGMA2.exe"+F84606
NINJA GAIDEN SIGMA2.exe+F84603: 45 32 C0 - xor r8l,r8l
NINJA GAIDEN SIGMA2.exe+F84606: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F8460A: 4C 8D 05 4F B4 20 02 - lea r8,["NINJA GAIDEN SIGMA2.exe"+318FA60]
}
Auto Guard/Dodge - Hotkey Pressed ( left Shoulder, default key for guarding)
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN SIGMA2.exe,74 6C 44 0F B6 80 69 5B 00 00) // should be unique
alloc(newmem,$100,auto_guard_dodge_aob)
label(code)
label(return)
label(G2HotkeyLuaThread)
registersymbol(G2HotkeyLuaThread)
newmem:
push ebx
mov bl,[G2HotkeyLuaThread]
test bl,bl
pop ebx
jz code
jmp "NINJA GAIDEN SIGMA2.exe"+F8465F
movzx r8d,byte ptr [rax+00005B69]
jmp return
code:
je "NINJA GAIDEN SIGMA2.exe"+F8464F
movzx r8d,byte ptr [rax+00005B69]
jmp return
G2HotkeyLuaThread:
dd 0
auto_guard_dodge_aob:
jmp newmem
nop 5
return:
auto_guard_dodge_aob+86:
db 8B D0 90
registersymbol(auto_guard_dodge_aob)
{$lua}
local function hotkeyLuaThread(thread)
local addr = getAddressSafe('G2HotkeyLuaThread')
while RunHotkeyLuaThread do
if addr then
local xcs = getXBox360ControllerState()
if xcs.GAMEPAD_LEFT_SHOULDER then
writeBytes(addr, 1)
else
writeBytes(addr, 0)
end
else
addr = getAddressSafe('G2HotkeyLuaThread')
end
end
thread.terminate()
end
---------------------------------
if syntaxcheck then return end
RunHotkeyLuaThread = true
createThread(hotkeyLuaThread)
{$asm}
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
{$lua}
if syntaxcheck then return end
RunHotkeyLuaThread = false
{$asm}
auto_guard_dodge_aob:
db 74 6C 44 0F B6 80 69 5B 00 00
auto_guard_dodge_aob+86:
db 74 6C 44
unregistersymbol(auto_guard_dodge_aob)
unregistersymbol(G2HotkeyLuaThread)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+F845E1
NINJA GAIDEN SIGMA2.exe+F845B0: 32 D2 - xor dl,dl
NINJA GAIDEN SIGMA2.exe+F845B2: 48 85 C9 - test rcx,rcx
NINJA GAIDEN SIGMA2.exe+F845B5: 0F 84 AF 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845BB: 38 51 1A - cmp [rcx+1A],dl
NINJA GAIDEN SIGMA2.exe+F845BE: 0F 85 A6 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845C4: 48 8B 01 - mov rax,[rcx]
NINJA GAIDEN SIGMA2.exe+F845C7: 38 90 57 5B 00 00 - cmp [rax+00005B57],dl
NINJA GAIDEN SIGMA2.exe+F845CD: 0F 85 97 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845D3: 48 8B 0D 1E DE EA 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+F845DA: 80 B9 DE 03 00 00 FF - cmp byte ptr [rcx+000003DE],-01
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+F845E1: 74 6C - je "NINJA GAIDEN SIGMA2.exe"+F8464F
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+F845E3: 44 0F B6 80 69 5B 00 00 - movzx r8d,byte ptr [rax+00005B69]
NINJA GAIDEN SIGMA2.exe+F845EB: 41 80 F8 02 - cmp r8l,02
NINJA GAIDEN SIGMA2.exe+F845EF: 73 12 - jae "NINJA GAIDEN SIGMA2.exe"+F84603
NINJA GAIDEN SIGMA2.exe+F845F1: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F845F5: 4C 8D 05 E8 48 19 01 - lea r8,["NINJA GAIDEN SIGMA2.exe"+2118EE4]
NINJA GAIDEN SIGMA2.exe+F845FC: 46 0F B6 04 00 - movzx r8d,byte ptr [rax+r8]
NINJA GAIDEN SIGMA2.exe+F84601: EB 03 - jmp "NINJA GAIDEN SIGMA2.exe"+F84606
NINJA GAIDEN SIGMA2.exe+F84603: 45 32 C0 - xor r8l,r8l
NINJA GAIDEN SIGMA2.exe+F84606: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F8460A: 4C 8D 05 4F B4 20 02 - lea r8,["NINJA GAIDEN SIGMA2.exe"+318FA60]
}
please Damage Multiplier for Sigma 2
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Sat Jun 19, 2021 7:13 am
by KS212
Cyber wrote: ↑ Thu Jun 17, 2021 5:47 pm
Ninja Gaiden Sigma 2
*snip*
Thanks for making these. Just have one question... I want to change the button for the auto guard to R2/right trigger? Can you please point out where specifically in the code is the button reference? Thanks
EDIT: Actually, nevermind. After playing a bit I find the always enabled Auto is better.
Thanks again. Please make at least the Auto guard for NG3 RE if you can... out of the 3 games that one has a few 'break' points in the story where inf health or invincibility bugs the game out so a perma auto guard is the best way to not die.
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Sat Jun 19, 2021 4:10 pm
by Cyber
KS212 wrote: ↑ Sat Jun 19, 2021 7:13 am
*snip*
Sure. I haven't tested these scripts further especially in other mode
Ninja Gaiden 3
Auto Guard/Dodge
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN 3 Razor's Edge.exe,48 8B CA 33 D2 ** ** ** ** ** 0F BE C0) // should be unique
alloc(newmem,$1000,auto_guard_dodge_aob)
label(code)
label(return)
newmem:
code:
mov eax,1
add rsp,28
jmp return
auto_guard_dodge_aob+a:
jmp newmem
nop 2
return:
registersymbol(auto_guard_dodge_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
auto_guard_dodge_aob+a:
db 0F BE C0 48 83 C4 28
unregistersymbol(auto_guard_dodge_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN 3 Razor's Edge.exe+14BF194
NINJA GAIDEN 3 Razor's Edge.exe+14BF187: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF188: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF189: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18A: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18B: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18C: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18D: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18E: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18F: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF190: 48 83 EC 28 - sub rsp,28
// ---------- INJECTING HERE ----------
NINJA GAIDEN 3 Razor's Edge.exe+14BF194: 48 8B CA - mov rcx,rdx
// ---------- DONE INJECTING ----------
NINJA GAIDEN 3 Razor's Edge.exe+14BF197: 33 D2 - xor edx,edx
NINJA GAIDEN 3 Razor's Edge.exe+14BF199: E8 E2 4F 01 00 - call "NINJA GAIDEN 3 Razor's Edge.exe"+14D4180
NINJA GAIDEN 3 Razor's Edge.exe+14BF19E: 0F BE C0 - movsx eax,al
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A1: 48 83 C4 28 - add rsp,28
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A5: C3 - ret
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A6: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A7: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A8: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A9: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1AA: CC - int 3
}
Auto Guard/Dodge - HotKey Pressed (left trigger, default key for guarding)
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN 3 Razor's Edge.exe,48 8B CA 33 D2 ** ** ** ** ** 0F BE C0) // should be unique
alloc(newmem,$1000,auto_guard_dodge_aob)
label(code)
label(return)
label(G3HotkeyLuaThread)
registersymbol(G3HotkeyLuaThread)
newmem:
push ebx
mov bl,[G3HotkeyLuaThread]
test bl,bl
pop ebx
jz code
mov eax,1
add rsp,28
jmp return
code:
movsx eax,al
add rsp,28
jmp return
G3HotkeyLuaThread:
dd 0
auto_guard_dodge_aob+a:
jmp newmem
nop 2
return:
registersymbol(auto_guard_dodge_aob)
{$lua}
local function hotkeyLuaThread(thread)
local addr = getAddressSafe('G3HotkeyLuaThread')
while RunHotkeyLuaThread do
if addr then
local xcs = getXBox360ControllerState()
writeBytes(addr, xcs.LeftTrigger)
else
addr = getAddressSafe('G3HotkeyLuaThread')
end
end
thread.terminate()
end
---------------------------------
if syntaxcheck then return end
RunHotkeyLuaThread = true
createThread(hotkeyLuaThread)
{$asm}
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
{$lua}
if syntaxcheck then return end
RunHotkeyLuaThread = false
{$asm}
auto_guard_dodge_aob+a:
db 0F BE C0 48 83 C4 28
unregistersymbol(auto_guard_dodge_aob)
unregistersymbol(G3HotkeyLuaThread)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN 3 Razor's Edge.exe+14BF194
NINJA GAIDEN 3 Razor's Edge.exe+14BF187: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF188: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF189: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18A: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18B: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18C: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18D: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18E: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF18F: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF190: 48 83 EC 28 - sub rsp,28
// ---------- INJECTING HERE ----------
NINJA GAIDEN 3 Razor's Edge.exe+14BF194: 48 8B CA - mov rcx,rdx
// ---------- DONE INJECTING ----------
NINJA GAIDEN 3 Razor's Edge.exe+14BF197: 33 D2 - xor edx,edx
NINJA GAIDEN 3 Razor's Edge.exe+14BF199: E8 E2 4F 01 00 - call "NINJA GAIDEN 3 Razor's Edge.exe"+14D4180
NINJA GAIDEN 3 Razor's Edge.exe+14BF19E: 0F BE C0 - movsx eax,al
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A1: 48 83 C4 28 - add rsp,28
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A5: C3 - ret
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A6: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A7: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A8: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1A9: CC - int 3
NINJA GAIDEN 3 Razor's Edge.exe+14BF1AA: CC - int 3
}
Instant Charge
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(instantcharge_aob,NINJA GAIDEN 3 Razor's Edge.exe,66 41 FF 44 24 12) // should be unique
alloc(newmem,$100,instantcharge_aob)
label(code)
label(return)
newmem:
code:
mov word ptr [r12+12],#260
jmp return
instantcharge_aob:
jmp newmem
nop
return:
registersymbol(instantcharge_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
instantcharge_aob:
db 66 41 FF 44 24 12
unregistersymbol(instantcharge_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN 3 Razor's Edge.exe+1479FE4
NINJA GAIDEN 3 Razor's Edge.exe+1479FC0: 7E 28 - jle "NINJA GAIDEN 3 Razor's Edge.exe"+1479FEA
NINJA GAIDEN 3 Razor's Edge.exe+1479FC2: FF C1 - inc ecx
NINJA GAIDEN 3 Razor's Edge.exe+1479FC4: 3B C1 - cmp eax,ecx
NINJA GAIDEN 3 Razor's Edge.exe+1479FC6: 7F 14 - jg "NINJA GAIDEN 3 Razor's Edge.exe"+1479FDC
NINJA GAIDEN 3 Razor's Edge.exe+1479FC8: 66 41 89 04 24 - mov [r12],ax
NINJA GAIDEN 3 Razor's Edge.exe+1479FCD: 41 0F B6 C6 - movzx eax,r14l
NINJA GAIDEN 3 Razor's Edge.exe+1479FD1: 42 C6 84 38 2D 7A 93 05 01 - mov byte ptr [rax+r15+05937A2D],01
NINJA GAIDEN 3 Razor's Edge.exe+1479FDA: EB 08 - jmp "NINJA GAIDEN 3 Razor's Edge.exe"+1479FE4
NINJA GAIDEN 3 Razor's Edge.exe+1479FDC: 66 FF C2 - inc dx
NINJA GAIDEN 3 Razor's Edge.exe+1479FDF: 66 41 89 14 24 - mov [r12],dx
// ---------- INJECTING HERE ----------
NINJA GAIDEN 3 Razor's Edge.exe+1479FE4: 66 41 FF 44 24 12 - inc word ptr [r12+12]
// ---------- DONE INJECTING ----------
NINJA GAIDEN 3 Razor's Edge.exe+1479FEA: 8B 35 50 A2 59 01 - mov esi,["NINJA GAIDEN 3 Razor's Edge.exe"+2A14240]
NINJA GAIDEN 3 Razor's Edge.exe+1479FF0: 8D 46 FD - lea eax,[rsi-03]
NINJA GAIDEN 3 Razor's Edge.exe+1479FF3: 41 BD 3F 42 0F 00 - mov r13d,000F423F
NINJA GAIDEN 3 Razor's Edge.exe+1479FF9: 41 BF 03 00 00 00 - mov r15d,00000003
NINJA GAIDEN 3 Razor's Edge.exe+1479FFF: 83 F8 01 - cmp eax,01
NINJA GAIDEN 3 Razor's Edge.exe+147A002: 0F 86 70 01 00 00 - jbe "NINJA GAIDEN 3 Razor's Edge.exe"+147A178
NINJA GAIDEN 3 Razor's Edge.exe+147A008: 48 8B 1D 69 BA A0 02 - mov rbx,["NINJA GAIDEN 3 Razor's Edge.exe"+3E85A78]
NINJA GAIDEN 3 Razor's Edge.exe+147A00F: 0F B7 83 3A 07 00 00 - movzx eax,word ptr [rbx+0000073A]
NINJA GAIDEN 3 Razor's Edge.exe+147A016: 41 89 84 24 B0 01 00 00 - mov [r12+000001B0],eax
NINJA GAIDEN 3 Razor's Edge.exe+147A01E: 44 38 35 19 7A 43 01 - cmp ["NINJA GAIDEN 3 Razor's Edge.exe"+28B1A3E],r14l
}
Hide Status HUD
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(statushud_aob,NINJA GAIDEN 3 Razor's Edge.exe,0F 84 32 01 00 00 84) // should be unique
alloc(newmem,$100,statushud_aob)
label(code)
label(return)
newmem:
code:
jmp statushud_aob+138
jmp return
statushud_aob:
jmp newmem
nop
return:
registersymbol(statushud_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
statushud_aob:
db 0F 84 32 01 00 00
unregistersymbol(statushud_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN 3 Razor's Edge.exe+CBD55D
NINJA GAIDEN 3 Razor's Edge.exe+CBD534: 41 0F B6 C3 - movzx eax,r11l
NINJA GAIDEN 3 Razor's Edge.exe+CBD538: 0F 44 D0 - cmove edx,eax
NINJA GAIDEN 3 Razor's Edge.exe+CBD53B: 0F 57 C9 - xorps xmm1,xmm1
NINJA GAIDEN 3 Razor's Edge.exe+CBD53E: 40 84 F6 - test sil,sil
NINJA GAIDEN 3 Razor's Edge.exe+CBD541: 75 13 - jne "NINJA GAIDEN 3 Razor's Edge.exe"+CBD556
NINJA GAIDEN 3 Razor's Edge.exe+CBD543: F3 0F 10 83 60 39 00 00 - movss xmm0,[rbx+00003960]
NINJA GAIDEN 3 Razor's Edge.exe+CBD54B: 0F 2F C1 - comiss xmm0,xmm1
NINJA GAIDEN 3 Razor's Edge.exe+CBD54E: 76 06 - jna "NINJA GAIDEN 3 Razor's Edge.exe"+CBD556
NINJA GAIDEN 3 Razor's Edge.exe+CBD550: 89 8B 60 39 00 00 - mov [rbx+00003960],ecx
NINJA GAIDEN 3 Razor's Edge.exe+CBD556: 80 BB 65 39 00 00 00 - cmp byte ptr [rbx+00003965],00
// ---------- INJECTING HERE ----------
NINJA GAIDEN 3 Razor's Edge.exe+CBD55D: 0F 84 32 01 00 00 - je "NINJA GAIDEN 3 Razor's Edge.exe"+CBD695
// ---------- DONE INJECTING ----------
NINJA GAIDEN 3 Razor's Edge.exe+CBD563: 84 D2 - test dl,dl
NINJA GAIDEN 3 Razor's Edge.exe+CBD565: 0F 85 2A 01 00 00 - jne "NINJA GAIDEN 3 Razor's Edge.exe"+CBD695
NINJA GAIDEN 3 Razor's Edge.exe+CBD56B: 83 7B 18 00 - cmp dword ptr [rbx+18],00
NINJA GAIDEN 3 Razor's Edge.exe+CBD56F: 0F 85 EB 00 00 00 - jne "NINJA GAIDEN 3 Razor's Edge.exe"+CBD660
NINJA GAIDEN 3 Razor's Edge.exe+CBD575: 8B 43 3C - mov eax,[rbx+3C]
NINJA GAIDEN 3 Razor's Edge.exe+CBD578: 39 43 38 - cmp [rbx+38],eax
NINJA GAIDEN 3 Razor's Edge.exe+CBD57B: 0F 85 DF 00 00 00 - jne "NINJA GAIDEN 3 Razor's Edge.exe"+CBD660
NINJA GAIDEN 3 Razor's Edge.exe+CBD581: 83 7B 1C 00 - cmp dword ptr [rbx+1C],00
NINJA GAIDEN 3 Razor's Edge.exe+CBD585: 0F 8F D5 00 00 00 - jg "NINJA GAIDEN 3 Razor's Edge.exe"+CBD660
NINJA GAIDEN 3 Razor's Edge.exe+CBD58B: 83 BB 6C 17 00 00 00 - cmp dword ptr [rbx+0000176C],00
}
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Sun Jun 20, 2021 2:37 am
by Akhent
NINJA GAIDEN SIGMA
-NINJA GAIDEN SIGMA Fast Charge time
-NINJA GAIDEN SIGMA Max Kill and combo
NINJA GAIDEN 3 Razor's Edge
-NINJA GAIDEN 3 Razor's Edge Fast Charge
-NINJA GAIDEN 3 Razor's Edge Max Hit
-NINJA GAIDEN 3 Razor's Edge Rage
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Sun Jun 20, 2021 5:14 am
by KS212
Cyber wrote: ↑ Sat Jun 19, 2021 4:10 pm
*snip*
Thanks again! So far with the auto guard for NG3 its gotten through the first 'block' point in story (note, the bugs only happen in story not in chapter challenge). Basically if you have Inf HP or invincible enabled, certain parts of certain boss fights are un-passable until you disable the cheats... this also happened on PS3 and WiiU for this game.
I'm guessing to make the auto guard you basically just hooked the 'low life auto guard' that's used in Hero mode difficulty? Coz there's an amusing side effect of it... whenever its on, at least for NG Sigma 2, the enemy HP pools are also set to Hero/Acolyte difficulty but the rest of it ie damage dealt, damage taken, is still at whatever difficulty you set. I cleared a Master Ninja run last night thinking damn, MN is easier than I remember, things are dying fast... oh wait a minute... The moment the auto guard cheat is disabled, on next background load the HP pools return to normal. In a way this is a good thing since NG Sigma 2 mobs are a huge HP sponge.
The same thing appears to happen with NG3 but it actually doesn't matter too much there... NG3 handles its difficulty differently.
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Sun Jun 20, 2021 6:46 am
by Cyber
KS212 wrote: ↑ Sun Jun 20, 2021 5:14 am
*snip*
Correct, i just hooked auto guard/dodge function from hero mode. Well i haven't really played NG2 and NG3 but actually i messed up auto guard/dodge script for NG2. It should be:
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN SIGMA2.exe,74 6C 44 0F B6 80 69 5B 00 00) // should be unique
alloc(newmem,$100,auto_guard_dodge_aob)
label(code)
label(return)
newmem:
code:
jmp "NINJA GAIDEN SIGMA2.exe"+F8465F
movzx r8d,byte ptr [rax+00005B69]
jmp return
auto_guard_dodge_aob:
jmp newmem
nop 5
return:
auto_guard_dodge_aob+86:
db 8B D0 90
registersymbol(auto_guard_dodge_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
auto_guard_dodge_aob:
db 74 6C 44 0F B6 80 69 5B 00 00
auto_guard_dodge_aob+86:
db 0F 45 D0
unregistersymbol(auto_guard_dodge_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+F845E1
NINJA GAIDEN SIGMA2.exe+F845B0: 32 D2 - xor dl,dl
NINJA GAIDEN SIGMA2.exe+F845B2: 48 85 C9 - test rcx,rcx
NINJA GAIDEN SIGMA2.exe+F845B5: 0F 84 AF 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845BB: 38 51 1A - cmp [rcx+1A],dl
NINJA GAIDEN SIGMA2.exe+F845BE: 0F 85 A6 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845C4: 48 8B 01 - mov rax,[rcx]
NINJA GAIDEN SIGMA2.exe+F845C7: 38 90 57 5B 00 00 - cmp [rax+00005B57],dl
NINJA GAIDEN SIGMA2.exe+F845CD: 0F 85 97 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845D3: 48 8B 0D 1E DE EA 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+F845DA: 80 B9 DE 03 00 00 FF - cmp byte ptr [rcx+000003DE],-01
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+F845E1: 74 6C - je "NINJA GAIDEN SIGMA2.exe"+F8464F
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+F845E3: 44 0F B6 80 69 5B 00 00 - movzx r8d,byte ptr [rax+00005B69]
NINJA GAIDEN SIGMA2.exe+F845EB: 41 80 F8 02 - cmp r8l,02
NINJA GAIDEN SIGMA2.exe+F845EF: 73 12 - jae "NINJA GAIDEN SIGMA2.exe"+F84603
NINJA GAIDEN SIGMA2.exe+F845F1: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F845F5: 4C 8D 05 E8 48 19 01 - lea r8,["NINJA GAIDEN SIGMA2.exe"+2118EE4]
NINJA GAIDEN SIGMA2.exe+F845FC: 46 0F B6 04 00 - movzx r8d,byte ptr [rax+r8]
NINJA GAIDEN SIGMA2.exe+F84601: EB 03 - jmp "NINJA GAIDEN SIGMA2.exe"+F84606
NINJA GAIDEN SIGMA2.exe+F84603: 45 32 C0 - xor r8l,r8l
NINJA GAIDEN SIGMA2.exe+F84606: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F8460A: 4C 8D 05 4F B4 20 02 - lea r8,["NINJA GAIDEN SIGMA2.exe"+318FA60]
}
After a quick testing, i found that enemies' hp did not get affected by auto guard/dodge script or it may affect certain difficulty? Well..
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Sun Jun 20, 2021 7:53 am
by KS212
Cyber wrote: ↑ Sun Jun 20, 2021 6:46 am
KS212 wrote: ↑ Sun Jun 20, 2021 5:14 am
*snip*
Correct, i just hooked auto guard/dodge function from hero mode. Well i haven't really played NG2 and NG3 but actually i messed up auto guard/dodge script for NG2. It should be:
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN SIGMA2.exe,74 6C 44 0F B6 80 69 5B 00 00) // should be unique
alloc(newmem,$100,auto_guard_dodge_aob)
label(code)
label(return)
newmem:
code:
jmp "NINJA GAIDEN SIGMA2.exe"+F8465F
movzx r8d,byte ptr [rax+00005B69]
jmp return
auto_guard_dodge_aob:
jmp newmem
nop 5
return:
auto_guard_dodge_aob+86:
db 8B D0 90
registersymbol(auto_guard_dodge_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
auto_guard_dodge_aob:
db 74 6C 44 0F B6 80 69 5B 00 00
auto_guard_dodge_aob+86:
db 0F 45 D0
unregistersymbol(auto_guard_dodge_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+F845E1
NINJA GAIDEN SIGMA2.exe+F845B0: 32 D2 - xor dl,dl
NINJA GAIDEN SIGMA2.exe+F845B2: 48 85 C9 - test rcx,rcx
NINJA GAIDEN SIGMA2.exe+F845B5: 0F 84 AF 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845BB: 38 51 1A - cmp [rcx+1A],dl
NINJA GAIDEN SIGMA2.exe+F845BE: 0F 85 A6 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845C4: 48 8B 01 - mov rax,[rcx]
NINJA GAIDEN SIGMA2.exe+F845C7: 38 90 57 5B 00 00 - cmp [rax+00005B57],dl
NINJA GAIDEN SIGMA2.exe+F845CD: 0F 85 97 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845D3: 48 8B 0D 1E DE EA 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+F845DA: 80 B9 DE 03 00 00 FF - cmp byte ptr [rcx+000003DE],-01
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+F845E1: 74 6C - je "NINJA GAIDEN SIGMA2.exe"+F8464F
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+F845E3: 44 0F B6 80 69 5B 00 00 - movzx r8d,byte ptr [rax+00005B69]
NINJA GAIDEN SIGMA2.exe+F845EB: 41 80 F8 02 - cmp r8l,02
NINJA GAIDEN SIGMA2.exe+F845EF: 73 12 - jae "NINJA GAIDEN SIGMA2.exe"+F84603
NINJA GAIDEN SIGMA2.exe+F845F1: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F845F5: 4C 8D 05 E8 48 19 01 - lea r8,["NINJA GAIDEN SIGMA2.exe"+2118EE4]
NINJA GAIDEN SIGMA2.exe+F845FC: 46 0F B6 04 00 - movzx r8d,byte ptr [rax+r8]
NINJA GAIDEN SIGMA2.exe+F84601: EB 03 - jmp "NINJA GAIDEN SIGMA2.exe"+F84606
NINJA GAIDEN SIGMA2.exe+F84603: 45 32 C0 - xor r8l,r8l
NINJA GAIDEN SIGMA2.exe+F84606: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F8460A: 4C 8D 05 4F B4 20 02 - lea r8,["NINJA GAIDEN SIGMA2.exe"+318FA60]
}
After a quick testing, i found that enemies' hp did not get affected by auto guard/dodge script or it may affect certain difficulty? Well..
Ah, cool. I'll test and let you know. Thanks again
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Sun Jun 20, 2021 6:18 pm
by demorest2
Cyber wrote: ↑ Sat Jun 12, 2021 4:42 pm
Ninja Gaiden Sigma
OHKO
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(ohko_aob,NINJA GAIDEN SIGMA.exe,66 41 2B C9 66 44 3B CA 41 0F B7 D2 66 0F 42 C1 41 0F B7 CA 66 43) // should be unique
alloc(newmem,$100,ohko_aob)
label(code)
label(return)
newmem:
cmp rdi,0
je code
mov cx,0
cmp r9w,dx
jmp return
code:
sub cx,r9w
cmp r9w,dx
jmp return
ohko_aob:
jmp newmem
nop 3
return:
registersymbol(ohko_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
ohko_aob:
db 66 41 2B C9 66 44 3B CA
unregistersymbol(ohko_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA.exe+6809D4
NINJA GAIDEN SIGMA.exe+6809A5: B9 71 00 00 00 - mov ecx,00000071
NINJA GAIDEN SIGMA.exe+6809AA: 66 3B 88 10 28 00 00 - cmp cx,[rax+00002810]
NINJA GAIDEN SIGMA.exe+6809B1: 75 0E - jne "NINJA GAIDEN SIGMA.exe"+6809C1
NINJA GAIDEN SIGMA.exe+6809B3: 46 38 94 27 40 CA D5 00 - cmp [rdi+r12+00D5CA40],r10l
NINJA GAIDEN SIGMA.exe+6809BB: 75 04 - jne "NINJA GAIDEN SIGMA.exe"+6809C1
NINJA GAIDEN SIGMA.exe+6809BD: 45 0F B7 CA - movzx r9d,r10w
NINJA GAIDEN SIGMA.exe+6809C1: 45 0F B6 C7 - movzx r8d,r15l
NINJA GAIDEN SIGMA.exe+6809C5: 41 8B C2 - mov eax,r10d
NINJA GAIDEN SIGMA.exe+6809C8: 43 0F B7 94 46 94 01 00 00 - movzx edx,word ptr [r14+r8*2+00000194]
NINJA GAIDEN SIGMA.exe+6809D1: 0F B7 CA - movzx ecx,dx
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA.exe+6809D4: 66 41 2B C9 - sub cx,r9w
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA.exe+6809D8: 66 44 3B CA - cmp r9w,dx
NINJA GAIDEN SIGMA.exe+6809DC: 41 0F B7 D2 - movzx edx,r10w
NINJA GAIDEN SIGMA.exe+6809E0: 66 0F 42 C1 - cmovb ax,cx
NINJA GAIDEN SIGMA.exe+6809E4: 41 0F B7 CA - movzx ecx,r10w
NINJA GAIDEN SIGMA.exe+6809E8: 66 43 89 84 46 94 01 00 00 - mov [r14+r8*2+00000194],ax
NINJA GAIDEN SIGMA.exe+6809F1: 41 B8 FF FF 00 00 - mov r8d,0000FFFF
NINJA GAIDEN SIGMA.exe+6809F7: 66 46 89 94 27 D6 C9 D5 00 - mov [rdi+r12+00D5C9D6],r10w
NINJA GAIDEN SIGMA.exe+680A00: 42 0F B7 84 27 A4 C9 D5 00 - movzx eax,word ptr [rdi+r12+00D5C9A4]
NINJA GAIDEN SIGMA.exe+680A09: 66 44 3B C0 - cmp r8w,ax
NINJA GAIDEN SIGMA.exe+680A0D: 74 0F - je "NINJA GAIDEN SIGMA.exe"+680A1E
}
Auto Guard/Dodge
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(autoguard_aob,NINJA GAIDEN SIGMA.exe,48 83 EC 28 80 3D 16 95 56 00 00) // should be unique
alloc(newmem,$100,autoguard_aob)
label(code)
label(return)
newmem:
code:
sub rsp,28
cmp byte ptr ["NINJA GAIDEN SIGMA.exe"+CBA401],00
jmp autoguard_aob+1f
jmp return
autoguard_aob:
jmp newmem
nop 6
return:
autoguard_aob+24:
db 90 90 90 90 90
registersymbol(autoguard_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
autoguard_aob:
db 48 83 EC 28 80 3D 16 95 56 00 00
autoguard_aob+24:
db E8 17 22 9A FF
unregistersymbol(autoguard_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA.exe+750EE0
NINJA GAIDEN SIGMA.exe+750ED6: CC - int 3
NINJA GAIDEN SIGMA.exe+750ED7: CC - int 3
NINJA GAIDEN SIGMA.exe+750ED8: CC - int 3
NINJA GAIDEN SIGMA.exe+750ED9: CC - int 3
NINJA GAIDEN SIGMA.exe+750EDA: CC - int 3
NINJA GAIDEN SIGMA.exe+750EDB: CC - int 3
NINJA GAIDEN SIGMA.exe+750EDC: CC - int 3
NINJA GAIDEN SIGMA.exe+750EDD: CC - int 3
NINJA GAIDEN SIGMA.exe+750EDE: CC - int 3
NINJA GAIDEN SIGMA.exe+750EDF: CC - int 3
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA.exe+750EE0: 48 83 EC 28 - sub rsp,28
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA.exe+750EE4: 80 3D 16 95 56 00 00 - cmp byte ptr ["NINJA GAIDEN SIGMA.exe"+CBA401],00
NINJA GAIDEN SIGMA.exe+750EEB: 74 27 - je "NINJA GAIDEN SIGMA.exe"+750F14
NINJA GAIDEN SIGMA.exe+750EED: 80 3D 0E 95 56 00 00 - cmp byte ptr ["NINJA GAIDEN SIGMA.exe"+CBA402],00
NINJA GAIDEN SIGMA.exe+750EF4: 74 1E - je "NINJA GAIDEN SIGMA.exe"+750F14
NINJA GAIDEN SIGMA.exe+750EF6: 83 3D 07 95 56 00 00 - cmp dword ptr ["NINJA GAIDEN SIGMA.exe"+CBA404],00
NINJA GAIDEN SIGMA.exe+750EFD: 74 15 - je "NINJA GAIDEN SIGMA.exe"+750F14
NINJA GAIDEN SIGMA.exe+750EFF: BA 01 00 00 00 - mov edx,00000001
NINJA GAIDEN SIGMA.exe+750F04: E8 17 22 9A FF - call "NINJA GAIDEN SIGMA.exe"+F3120
NINJA GAIDEN SIGMA.exe+750F09: 85 C0 - test eax,eax
NINJA GAIDEN SIGMA.exe+750F0B: 74 07 - je "NINJA GAIDEN SIGMA.exe"+750F14
}
Ignore Ki (when using ninpo)
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(ignoreki_aob,NINJA GAIDEN SIGMA.exe,66 3B 84 2F CE 01 00 00) // should be unique
alloc(newmem,$100,ignoreki_aob)
label(code)
label(return)
newmem:
code:
cmp ax,[rdi+rbp+000001CE]
jmp ignoreki_aob+a
jmp return
ignoreki_aob:
jmp newmem
nop 3
return:
registersymbol(ignoreki_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
ignoreki_aob:
db 66 3B 84 2F CE 01 00 00
unregistersymbol(ignoreki_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA.exe+67CFC0
NINJA GAIDEN SIGMA.exe+67CF93: 0F B6 81 8C 28 00 00 - movzx eax,byte ptr [rcx+0000288C]
NINJA GAIDEN SIGMA.exe+67CF9A: 48 8D 2D 6F F8 6D 00 - lea rbp,["NINJA GAIDEN SIGMA.exe"+D5C810]
NINJA GAIDEN SIGMA.exe+67CFA1: 48 8D 3C C0 - lea rdi,[rax+rax*8]
NINJA GAIDEN SIGMA.exe+67CFA5: 48 C1 E7 06 - shl rdi,06
NINJA GAIDEN SIGMA.exe+67CFA9: 80 BC 2F 2E 02 00 00 00 - cmp byte ptr [rdi+rbp+0000022E],00
NINJA GAIDEN SIGMA.exe+67CFB1: 74 2A - je "NINJA GAIDEN SIGMA.exe"+67CFDD
NINJA GAIDEN SIGMA.exe+67CFB3: B2 01 - mov dl,01
NINJA GAIDEN SIGMA.exe+67CFB5: 0F B7 CE - movzx ecx,si
NINJA GAIDEN SIGMA.exe+67CFB8: E8 B3 2F F3 FF - call "NINJA GAIDEN SIGMA.exe"+5AFF70
NINJA GAIDEN SIGMA.exe+67CFBD: 0F B6 C0 - movzx eax,al
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA.exe+67CFC0: 66 3B 84 2F CE 01 00 00 - cmp ax,[rdi+rbp+000001CE]
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA.exe+67CFC8: 77 13 - ja "NINJA GAIDEN SIGMA.exe"+67CFDD
NINJA GAIDEN SIGMA.exe+67CFCA: 48 8B D3 - mov rdx,rbx
NINJA GAIDEN SIGMA.exe+67CFCD: 0F B7 CE - movzx ecx,si
NINJA GAIDEN SIGMA.exe+67CFD0: E8 4B 30 F3 FF - call "NINJA GAIDEN SIGMA.exe"+5B0020
NINJA GAIDEN SIGMA.exe+67CFD5: 84 C0 - test al,al
NINJA GAIDEN SIGMA.exe+67CFD7: 75 04 - jne "NINJA GAIDEN SIGMA.exe"+67CFDD
NINJA GAIDEN SIGMA.exe+67CFD9: B0 01 - mov al,01
NINJA GAIDEN SIGMA.exe+67CFDB: EB 02 - jmp "NINJA GAIDEN SIGMA.exe"+67CFDF
NINJA GAIDEN SIGMA.exe+67CFDD: 32 C0 - xor al,al
NINJA GAIDEN SIGMA.exe+67CFDF: 48 8B 5C 24 30 - mov rbx,[rsp+30]
}
Hello) Could u separate auto dodge n block !? Its not fun to play with all evading)
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Mon Jun 21, 2021 4:37 am
by KS212
demorest2 wrote: ↑ Sun Jun 20, 2021 6:18 pm
Hello) Could u separate auto dodge n block !? Its not fun to play with all evading)
It can't be separated. All Cyber did is hook the feature that is used by Hero mode/difficulty and make it usable outside of that difficulty.
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Mon Jun 21, 2021 10:24 am
by KS212
Cyber wrote: ↑ Sun Jun 20, 2021 6:46 am
After a quick testing, i found that enemies' hp did not get affected by auto guard/dodge script or it may affect certain difficulty? Well..
Ok I tested further. Its still doing it but honestly, this is to be expected/working as intended so I wouldn't fuss it.
Its no surprise, Hero mode for NGS1 and 2 was a literal bolt on that was added AFTER NG3 originally had it first. In NG3 and NG3 RE, the auto guard simply has the effect of lowering your Karma multiplier if Auto Guard is ever triggered, x0.9 for the first to a minimum of x0.5 (half score). But it doesn't affect the HP or difficulty of the mobs, it just gives you a shit score since NG3 and NG3 RE was all about competing w/ score on online leaderboards.
Regarding NGS2 specifically, the design of the game compared to how vanilla NG2 was (a lot of mobs w/ low health) was they had to remove a lot of the mob count due to PS3 limitations so to compensate, they greatly increased mob and boss HP and made them damage sponges. The higher the difficulty the more HP they had. Turning on Auto Guard is probably just saying 'hey i'm internally set to lowest difficulty too' and the lower HP/higher delimb rate is most definitely part and parcel with the Auto Guard feature.
What's funny is that for clear purposes, even tho its internally set to lowest difficulty, it still counts toward w/e difficulty you actually set it at... Playing through Master Ninja w/ your Auto Guard script enabled was the easiest MN clear ever simply coz I didn't have to deal with the stupidly HP spongey enemies
Re: [NINJA GAIDEN: Master Collection] NINJA GAIDEN Σ [STEAM]
Posted: Mon Jun 21, 2021 3:36 pm
by xathu0904
Cyber wrote: ↑ Sun Jun 20, 2021 6:46 am
KS212 wrote: ↑ Sun Jun 20, 2021 5:14 am
*snip*
Correct, i just hooked auto guard/dodge function from hero mode. Well i haven't really played NG2 and NG3 but actually i messed up auto guard/dodge script for NG2. It should be:
Code: Select all
[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(auto_guard_dodge_aob,NINJA GAIDEN SIGMA2.exe,74 6C 44 0F B6 80 69 5B 00 00) // should be unique
alloc(newmem,$100,auto_guard_dodge_aob)
label(code)
label(return)
newmem:
code:
jmp "NINJA GAIDEN SIGMA2.exe"+F8465F
movzx r8d,byte ptr [rax+00005B69]
jmp return
auto_guard_dodge_aob:
jmp newmem
nop 5
return:
auto_guard_dodge_aob+86:
db 8B D0 90
registersymbol(auto_guard_dodge_aob)
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
auto_guard_dodge_aob:
db 74 6C 44 0F B6 80 69 5B 00 00
auto_guard_dodge_aob+86:
db 0F 45 D0
unregistersymbol(auto_guard_dodge_aob)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: NINJA GAIDEN SIGMA2.exe+F845E1
NINJA GAIDEN SIGMA2.exe+F845B0: 32 D2 - xor dl,dl
NINJA GAIDEN SIGMA2.exe+F845B2: 48 85 C9 - test rcx,rcx
NINJA GAIDEN SIGMA2.exe+F845B5: 0F 84 AF 00 00 00 - je "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845BB: 38 51 1A - cmp [rcx+1A],dl
NINJA GAIDEN SIGMA2.exe+F845BE: 0F 85 A6 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845C4: 48 8B 01 - mov rax,[rcx]
NINJA GAIDEN SIGMA2.exe+F845C7: 38 90 57 5B 00 00 - cmp [rax+00005B57],dl
NINJA GAIDEN SIGMA2.exe+F845CD: 0F 85 97 00 00 00 - jne "NINJA GAIDEN SIGMA2.exe"+F8466A
NINJA GAIDEN SIGMA2.exe+F845D3: 48 8B 0D 1E DE EA 00 - mov rcx,["NINJA GAIDEN SIGMA2.exe"+1E323F8]
NINJA GAIDEN SIGMA2.exe+F845DA: 80 B9 DE 03 00 00 FF - cmp byte ptr [rcx+000003DE],-01
// ---------- INJECTING HERE ----------
NINJA GAIDEN SIGMA2.exe+F845E1: 74 6C - je "NINJA GAIDEN SIGMA2.exe"+F8464F
// ---------- DONE INJECTING ----------
NINJA GAIDEN SIGMA2.exe+F845E3: 44 0F B6 80 69 5B 00 00 - movzx r8d,byte ptr [rax+00005B69]
NINJA GAIDEN SIGMA2.exe+F845EB: 41 80 F8 02 - cmp r8l,02
NINJA GAIDEN SIGMA2.exe+F845EF: 73 12 - jae "NINJA GAIDEN SIGMA2.exe"+F84603
NINJA GAIDEN SIGMA2.exe+F845F1: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F845F5: 4C 8D 05 E8 48 19 01 - lea r8,["NINJA GAIDEN SIGMA2.exe"+2118EE4]
NINJA GAIDEN SIGMA2.exe+F845FC: 46 0F B6 04 00 - movzx r8d,byte ptr [rax+r8]
NINJA GAIDEN SIGMA2.exe+F84601: EB 03 - jmp "NINJA GAIDEN SIGMA2.exe"+F84606
NINJA GAIDEN SIGMA2.exe+F84603: 45 32 C0 - xor r8l,r8l
NINJA GAIDEN SIGMA2.exe+F84606: 41 0F B6 C0 - movzx eax,r8l
NINJA GAIDEN SIGMA2.exe+F8460A: 4C 8D 05 4F B4 20 02 - lea r8,["NINJA GAIDEN SIGMA2.exe"+318FA60]
}
After a quick testing, i found that enemies' hp did not get affected by auto guard/dodge script or it may affect certain difficulty? Well..
still not work, plz check again