Re: Horizon Forbidden West [Engine:Decima]
Posted: Tue Apr 02, 2024 12:23 pm
Disable Game Pause
This script prevents the game from pausing. You cannot use the map or anything related to "pausing" whilst enabled but it may help with the annoyance of the game pausing from loss of focus if you are trying to find some value or whatever. I didn't manage to isolate that specific part but someone may find this helpful.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>315717</ID>
<Description>"Disable Game Pause"</Description>
<LastState/>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>// Game Executable : HorizonForbiddenWest.exe
// Author : rhark
// Executable Version: 1.0.43.0
// Module Version :
// Script Date : 2024-04-02
{
}
[ENABLE]
aobscanmodule(pauseOnFocusLoss_AOB,$process,C5xxxxxxxx488Dxxxx89xxxx488DxxxxxxxxxxC6xxxxxxC5xxxxxxxxxxxxxx4889xxxx89xxxxxxxxxxE8xxxxxxxx488Dxxxx89xxxxxxxxxxC6xxxxxxxxxxxx4889xxxxxxxxxxE8xxxxxxxx4088) // should be unique
registersymbol(pauseOnFocusLoss_AOB)
alloc(pauseOnFocusLossHook,0x1000)
registersymbol(pauseOnFocusLossHook)
define(midjumpmem,$process+600)
fullaccess(midjumpmem, $1000)
label(code_pauseOnFocusLoss)
label(return_pauseOnFocusLoss)
label(exit_pauseOnFocusLoss)
registersymbol(code_pauseOnFocusLoss)
pauseOnFocusLossHook:
mov esi,01
exit_pauseOnFocusLoss:
code_pauseOnFocusLoss:
readmem(pauseOnFocusLoss_AOB,5)
{
vmovups xmm0,[rbp-19]
}
jmp return_pauseOnFocusLoss
align 10 CC
pauseOnFocusLossHook+200:
midjumpmem:
jmp pauseOnFocusLossHook
pauseOnFocusLoss_AOB:
jmp midjumpmem
return_pauseOnFocusLoss:
[DISABLE]
pauseOnFocusLoss_AOB:
readmem(code_pauseOnFocusLoss,5) // db C5 F8 10 45 E7
unregistersymbol(pauseOnFocusLoss_AOB)
unregistersymbol(pauseOnFocusLossHook)
unregistersymbol(code_pauseOnFocusLoss)
dealloc(pauseOnFocusLossHook)
{
// ORIGINAL CODE - INJECTION POINT: HorizonForbiddenWest.exe+D60776
HorizonForbiddenWest.exe+D6071D: 48 8D BE 33 01 00 00 - lea rdi,[rsi+00000133]
HorizonForbiddenWest.exe+D60724: 48 8D 15 55 ED 3C 01 - lea rdx,[HorizonForbiddenWest.exe+212F480]
HorizonForbiddenWest.exe+D6072B: 48 8B CB - mov rcx,rbx
HorizonForbiddenWest.exe+D6072E: E8 BD 13 B9 FF - call HorizonForbiddenWest.exe+8F1AF0
HorizonForbiddenWest.exe+D60733: 48 85 C0 - test rax,rax
HorizonForbiddenWest.exe+D60736: 74 0A - je HorizonForbiddenWest.exe+D60742
HorizonForbiddenWest.exe+D60738: 83 78 50 01 - cmp dword ptr [rax+50],01
HorizonForbiddenWest.exe+D6073C: 0F 84 82 00 00 00 - je HorizonForbiddenWest.exe+D607C4
HorizonForbiddenWest.exe+D60742: 41 80 7D 48 00 - cmp byte ptr [r13+48],00
HorizonForbiddenWest.exe+D60747: 74 07 - je HorizonForbiddenWest.exe+D60750
HorizonForbiddenWest.exe+D60749: C6 86 30 01 00 00 01 - mov byte ptr [rsi+00000130],01
HorizonForbiddenWest.exe+D60750: C4 C1 78 10 45 20 - vmovups xmm0,[r13+20]
HorizonForbiddenWest.exe+D60756: 41 8B 5F 70 - mov ebx,[r15+70]
HorizonForbiddenWest.exe+D6075A: 49 8D 55 30 - lea rdx,[r13+30]
HorizonForbiddenWest.exe+D6075E: 33 F6 - xor esi,esi
HorizonForbiddenWest.exe+D60760: 48 8D 4D F7 - lea rcx,[rbp-09]
HorizonForbiddenWest.exe+D60764: C5 F8 11 45 E7 - vmovups [rbp-19],xmm0
HorizonForbiddenWest.exe+D60769: 48 89 75 F7 - mov [rbp-09],rsi
HorizonForbiddenWest.exe+D6076D: 48 89 75 FF - mov [rbp-01],rsi
HorizonForbiddenWest.exe+D60771: E8 BA E3 60 FF - call HorizonForbiddenWest.exe+36EB30
// ---------- INJECTING HERE ----------
HorizonForbiddenWest.exe+D60776: C5 F8 10 45 E7 - vmovups xmm0,[rbp-19]
// ---------- DONE INJECTING ----------
HorizonForbiddenWest.exe+D6077B: 48 8D 55 F7 - lea rdx,[rbp-09]
HorizonForbiddenWest.exe+D6077F: 89 5D 07 - mov [rbp+07],ebx
HorizonForbiddenWest.exe+D60782: 48 8D 0D 7F 44 BE 07 - lea rcx,[HorizonForbiddenWest.exe+8944C08]
HorizonForbiddenWest.exe+D60789: C6 45 0B 01 - mov byte ptr [rbp+0B],01
HorizonForbiddenWest.exe+D6078D: C5 F8 11 05 63 44 BE 07 - vmovups [HorizonForbiddenWest.exe+8944BF8],xmm0
HorizonForbiddenWest.exe+D60795: 48 89 75 0F - mov [rbp+0F],rsi
HorizonForbiddenWest.exe+D60799: 89 35 55 44 BE 07 - mov [HorizonForbiddenWest.exe+8944BF4],esi
HorizonForbiddenWest.exe+D6079F: E8 8C E3 60 FF - call HorizonForbiddenWest.exe+36EB30
HorizonForbiddenWest.exe+D607A4: 48 8D 4D F7 - lea rcx,[rbp-09]
HorizonForbiddenWest.exe+D607A8: 89 1D 6A 44 BE 07 - mov [HorizonForbiddenWest.exe+8944C18],ebx
HorizonForbiddenWest.exe+D607AE: C6 05 67 44 BE 07 01 - mov byte ptr [HorizonForbiddenWest.exe+8944C1C],01
HorizonForbiddenWest.exe+D607B5: 48 89 35 64 44 BE 07 - mov [HorizonForbiddenWest.exe+8944C20],rsi
HorizonForbiddenWest.exe+D607BC: E8 8F E2 60 FF - call HorizonForbiddenWest.exe+36EA50
HorizonForbiddenWest.exe+D607C1: 40 88 37 - mov [rdi],sil
HorizonForbiddenWest.exe+D607C4: 48 8B 7D C7 - mov rdi,[rbp-39]
HorizonForbiddenWest.exe+D607C8: 48 8B 45 77 - mov rax,[rbp+77]
HorizonForbiddenWest.exe+D607CC: 48 FF C0 - inc rax
HorizonForbiddenWest.exe+D607CF: 48 89 45 77 - mov [rbp+77],rax
HorizonForbiddenWest.exe+D607D3: 48 3B 45 D7 - cmp rax,[rbp-29]
HorizonForbiddenWest.exe+D607D7: 0F 8C B3 FD FF FF - jl HorizonForbiddenWest.exe+D60590
}
</AssemblerScript>
</CheatEntry>
</CheatEntries>
</CheatTable>