Horizon Forbidden West [Engine:Decima]

Upload your cheat tables here (No requests)
Post Reply
sonycman
Cheater
Cheater
Posts: 39
Joined: Sun Jul 26, 2020 8:34 pm
Reputation: 31

Re: Horizon Forbidden West [Engine:Decima]

Post by sonycman »

Here the Hunting Grounds Timer cheat:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>256827</ID>
      <Description>"Disable Hunting Ground Timer"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : HorizonForbiddenWest.exe
  Version: 
  Date   : 2024-03-24
  Author : sonyc

  This script does blah blah blah
}

[ENABLE]

aobscanmodule(huntTimer,HorizonForbiddenWest.exe,C5 F3 5A D9 C5 EA 5F C3 C3 * * * * A0 * * * * * * * * * * * * * * * * * * * C5 FB 10 91 98) // should be unique

huntTimer:
  vxorps xmm3,xmm3,xmm3

huntTimer+21:
  vmovsd xmm2,[rcx+000000A0]

registersymbol(huntTimer)

[DISABLE]

huntTimer:
  vcvtsd2ss xmm3,xmm1,xmm1

huntTimer+21:
  vmovsd xmm2,[rcx+00000098]

unregistersymbol(huntTimer)

{
// ORIGINAL CODE - INJECTION POINT: HorizonForbiddenWest.exe+E5B264

HorizonForbiddenWest.exe+E5B23C: CC                       - int 3 
HorizonForbiddenWest.exe+E5B23D: CC                       - int 3 
HorizonForbiddenWest.exe+E5B23E: CC                       - int 3 
HorizonForbiddenWest.exe+E5B23F: CC                       - int 3 
HorizonForbiddenWest.exe+E5B240: 80 B9 80 00 00 00 02     - cmp byte ptr [rcx+00000080],02
HorizonForbiddenWest.exe+E5B247: 75 24                    - jne HorizonForbiddenWest.exe+E5B26D
HorizonForbiddenWest.exe+E5B249: 48 8B 05 C0 20 B1 07     - mov rax,[HorizonForbiddenWest.exe+896D310]
HorizonForbiddenWest.exe+E5B250: C5 E8 57 D2              - vxorps xmm2,xmm2,xmm2
HorizonForbiddenWest.exe+E5B254: C5 FB 10 80 A8 00 00 00  - vmovsd xmm0,[rax+000000A8]
HorizonForbiddenWest.exe+E5B25C: C5 FB 5C 89 98 00 00 00  - vsubsd xmm1,xmm0,[rcx+00000098]
// ---------- INJECTING HERE ----------
HorizonForbiddenWest.exe+E5B264: C5 F3 5A D9              - vcvtsd2ss xmm3,xmm1,xmm1
// ---------- DONE INJECTING  ----------
HorizonForbiddenWest.exe+E5B268: C5 EA 5F C3              - vmaxss xmm0,xmm2,xmm3
HorizonForbiddenWest.exe+E5B26C: C3                       - ret 
HorizonForbiddenWest.exe+E5B26D: C5 FB 10 89 A0 00 00 00  - vmovsd xmm1,[rcx+000000A0]
HorizonForbiddenWest.exe+E5B275: C5 FB 10 05 4B 42 B5 00  - vmovsd xmm0,[HorizonForbiddenWest.exe+19AF4C8]
HorizonForbiddenWest.exe+E5B27D: C5 F9 2E C8              - vucomisd xmm1,xmm0
HorizonForbiddenWest.exe+E5B281: 7A 02                    - jp HorizonForbiddenWest.exe+E5B285
HorizonForbiddenWest.exe+E5B283: 74 10                    - je HorizonForbiddenWest.exe+E5B295
HorizonForbiddenWest.exe+E5B285: C5 FB 10 91 98 00 00 00  - vmovsd xmm2,[rcx+00000098]
HorizonForbiddenWest.exe+E5B28D: C5 F9 2E D0              - vucomisd xmm2,xmm0
HorizonForbiddenWest.exe+E5B291: 7A 0B                    - jp HorizonForbiddenWest.exe+E5B29E
}
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Tested on the first trials in the Daunt, game version 1.0.37.0

How to use this cheat table?
  1. Install Cheat Engine
  2. Double-click the .CT file in order to open it.
  3. Click the PC icon in Cheat Engine in order to select the game process.
  4. Keep the list.
  5. Activate the trainer options by checking boxes or setting values from 0 to 1
Attachments
HFW - Timer Cheat.CT
(2.83 KiB) Downloaded 307 times
Last edited by sonycman on Sun Mar 24, 2024 5:19 pm, edited 1 time in total.

Gaibaa
Noobzor
Noobzor
Posts: 14
Joined: Tue Jun 14, 2022 6:08 pm
Reputation: 0

Re: Horizon Forbidden West [Engine:Decima]

Post by Gaibaa »

Cielos wrote:
Sun Mar 24, 2024 11:49 am
4 scripts:
undead
- health still drop but you won't die.

inf. arrows / bombs / traps
- quantities stop decreasing when they reach 1.

ignore crafting materials
- allows you to craft anything without any materials/resources. materials/resources needed can still be used up.

game speed mod
- pess CapsLock and one of the following keys to manipulate timescale:
  • + : 0.8
  • - : 0.6
  • * : 0.4
  • / : 0.2
- or HOLD down one of the mod keys to temporarily change the speed to a specific time.

copy & paste the following onto your table:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>256823</ID>
      <Description>"enable"</Description>
      <Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
      <LastState Activated="1"/>
      <Color>808000</Color>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript Async="1">[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
define(slowmokey1default,06)
define(slowmospeed1default,(float)0.25)
define(slowmokey2default,05)
define(slowmospeed2default,(float)0.5)

aobscanmodule(currentArrowReadAOB,HorizonForbiddenWest.exe,8B ** ** 48 ** ** ** 83 ** ** 00 74 ** 48 ** ** ** 00 75)
registersymbol(currentArrowReadAOB)

label(pCArrows)
registersymbol(pCArrows)

alloc(newmem,2048,currentArrowReadAOB) //"HorizonForbiddenWest.exe"+129942D)
label(returnhere)
label(originalcode_currentArrowReadAOB)
registersymbol(originalcode_currentArrowReadAOB)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rdx
mov rdx,pCArrows
mov [rdx],rax
pop rdx

originalcode_currentArrowReadAOB:
readmem(currentArrowReadAOB,7)
//mov ebx,[rax+28]
//mov rax,[rdi+30]

exit:
jmp returnhere

///
pCArrows:
///

currentArrowReadAOB: //"HorizonForbiddenWest.exe"+129942D:
jmp newmem
nop 2
returnhere:

///**************************************///
aobscanmodule(gameSpeedCWriteAOB,HorizonForbiddenWest.exe,C5 FA * * * * 00 00 C5 * * * 33 * C5 * * * C5 * * * * * * * * * * * * * * * * * * * * * * * * * C3)
registersymbol(gameSpeedCWriteAOB)

label(pGameSpeed)
registersymbol(pGameSpeed)
label(dCustGameSpeed)
registersymbol(dCustGameSpeed)
label(dSlowMoKey1ID)
registersymbol(dSlowMoKey1ID)
label(bSlowMoKey1Pressed)
registersymbol(bSlowMoKey1Pressed)
label(dCustGameSpeed1)
registersymbol(dCustGameSpeed1)
label(dSlowMoKey2ID)
registersymbol(dSlowMoKey2ID)
label(bSlowMoKey2Pressed)
registersymbol(bSlowMoKey2Pressed)
label(dCustGameSpeed2)
registersymbol(dCustGameSpeed2)

alloc(newmem2,2048,gameSpeedCWriteAOB) //"HorizonForbiddenWest.exe"+D5B252)
label(returnhere2)
label(originalcode2_gameSpeedCWriteAOB)
registersymbol(originalcode2_gameSpeedCWriteAOB)
label(exit2)

newmem2: //this is allocated memory, you have read,write,execute access
//place your code here
push rax
db 48 8D
readmem(gameSpeedCWriteAOB+3,5)
//lea rax,[rcx+80]
push rax
mov rax,pGameSpeed
pop [rax]
mov rax,dCustGameSpeed
mulss xmm0,[rax]
mov rax,bSlowMoKey1Pressed
cmp byte ptr [rax],1
je @f
mov rax,bSlowMoKey2Pressed
cmp byte ptr [rax],1
je @f
jmp end2

@@:
mulss xmm0,[rax+4]


end2:
pop rax

originalcode2_gameSpeedCWriteAOB:
readmem(gameSpeedCWriteAOB,8)
//vmovss [rcx+00000080],xmm0

exit2:
jmp returnhere2

///
pGameSpeed:
dq 0
dCustGameSpeed:
dd (float)1
dSlowMoKey1ID:
dd slowmokey1default
bSlowMoKey1Pressed:
dd 0
dCustGameSpeed1:
dd slowmospeed1default
dSlowMoKey2ID:
dd slowmokey2default
bSlowMoKey2Pressed:
dd 0
dCustGameSpeed2:
dd slowmospeed2default
///

gameSpeedCWriteAOB: //"HorizonForbiddenWest.exe"+D5B252:
jmp newmem2
nop 3
returnhere2:

///**************************************///
aobscanmodule(playerBaseRead2AOB,$process,48 * * * * 00 00 48 * * FF * * 84 C0 0F 85 * * * * 48 * * * * 00 00 48 * * FF * * 84 C0 0F 85)
registersymbol(playerBaseRead2AOB)

label(pPlayerBase)
registersymbol(pPlayerBase)

alloc(newmem3,2048,playerBaseRead2AOB) //"HorizonForbiddenWest.exe"+1419B91)
label(returnhere3)
label(originalcode3_playerBaseRead2AOB)
registersymbol(originalcode3_playerBaseRead2AOB)
label(exit3)

newmem3: //this is allocated memory, you have read,write,execute access
//place your code here
readmem(playerBaseRead2AOB,2)
db 81
readmem(playerBaseRead2AOB+3,4)
//mov rax,[rcx+00000400]
push rax
mov rax,pPlayerBase
pop [rax]

originalcode3_playerBaseRead2AOB:
readmem(playerBaseRead2AOB,7)
//mov rcx,[rcx+00000400]

exit3:
jmp returnhere3

///
pPlayerBase:
///

playerBaseRead2AOB: //"HorizonForbiddenWest.exe"+1419B91:
jmp newmem3
nop 2
returnhere3:

///**************************************///


 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
currentArrowReadAOB: //"HorizonForbiddenWest.exe"+129942D:
readmem(originalcode_currentArrowReadAOB,7)
//db 8B 58 28 48 8B 47 30
//mov ebx,[rax+28]
//mov rax,[rdi+30]
unregistersymbol(originalcode_currentArrowReadAOB)

unregistersymbol(pCArrows)

///**************************************///
dealloc(newmem2)
gameSpeedCWriteAOB: //"HorizonForbiddenWest.exe"+D5B252:
readmem(originalcode2_gameSpeedCWriteAOB,8)
//db C5 FA 11 81 80 00 00 00
//vmovss [rcx+00000080],xmm0
unregistersymbol(originalcode2_gameSpeedCWriteAOB)

unregistersymbol(pGameSpeed)
unregistersymbol(dCustGameSpeed)
unregistersymbol(dSlowMoKey1ID)
unregistersymbol(dSlowMoKey2ID)
unregistersymbol(bSlowMoKey1Pressed)
unregistersymbol(dCustGameSpeed1)
unregistersymbol(bSlowMoKey2Pressed)
unregistersymbol(dCustGameSpeed2)

///**************************************///
dealloc(newmem3)
playerBaseRead2AOB: //"HorizonForbiddenWest.exe"+1419B91:
readmem(originalcode3_playerBaseRead2AOB,7)
//db 48 8B 89 00 04 00 00
//mov rcx,[rcx+00000400]
unregistersymbol(originalcode3_playerBaseRead2AOB)

unregistersymbol(pPlayerBase)

///**************************************///
</AssemblerScript>
      <CheatEntries>
        <CheatEntry>
          <ID>256829</ID>
          <Description>"undead"</Description>
          <Options moAlwaysHideChildren="1" moAllowManualCollapseAndExpand="1"/>
          <LastState Activated="1"/>
          <Color>808000</Color>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(healthReadOnHitAOB,$process,FF * * 48 * * 74 * 48 * * * * 00 00 48 * * 74 * C5 * * * * C5 * * * * * * * 76)
registersymbol(healthReadOnHitAOB)

label(dMinHealth)
registersymbol(dMinHealth)

alloc(newmem,2048,healthReadOnHitAOB+14) //"HorizonForbiddenWest.exe"+11C62C3)
label(returnhere)
label(originalcode_healthReadOnHitAOB)
registersymbol(originalcode_healthReadOnHitAOB)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here
push rdx
mov rdx,pPlayerBase
mov rdx,[rdx]
test rdx,rdx
jz @f
cmp [rdx+48],rbx
jne @f
mov rdx,dMinHealth
vmovss xmm0,[rdx]
addss xmm0,xmm2
maxss xmm0,[rax+74]
vmovss [rax+74],xmm0

end:
pop rdx

originalcode_healthReadOnHitAOB:
readmem(healthReadOnHitAOB+14,5)
//vmovss xmm0,[rax+74]

exit:
jmp returnhere

///
dMinHealth:
dd (Float)1
///

healthReadOnHitAOB+14: //"HorizonForbiddenWest.exe"+11C62C3:
jmp newmem
returnhere:


 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
healthReadOnHitAOB+14: //"HorizonForbiddenWest.exe"+11C62C3:
readmem(originalcode_healthReadOnHitAOB,5)
//db C5 FA 10 40 74
//vmovss xmm0,[rax+74]
unregistersymbol(originalcode_healthReadOnHitAOB)

unregistersymbol(dMinHealth)
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>256830</ID>
              <Description>"dMinHealth"</Description>
              <LastState Value="1" RealAddress="7FF75E040048"/>
              <ShowAsSigned>0</ShowAsSigned>
              <Color>008000</Color>
              <VariableType>Float</VariableType>
              <Address>dMinHealth</Address>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
        <CheatEntry>
          <ID>16757</ID>
          <Description>"inf. arrows / bombs / traps"</Description>
          <LastState Activated="1"/>
          <Color>808000</Color>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(arrowsReadOnFireAOB,HorizonForbiddenWest.exe,44 * * * 85 * 75 * 41 * * 41)
registersymbol(arrowsReadOnFireAOB)

alloc(newmem,2048,arrowsReadOnFireAOB) //"HorizonForbiddenWest.exe"+11FC702)
label(returnhere)
label(originalcode_arrowsReadOnFireAOB)
registersymbol(originalcode_arrowsReadOnFireAOB)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here
mov r14,pCArrows
mov r14,[r14]
lea r14,[r14-28]
cmp r14,rdi
jne @f
mov r14d,ebx
inc r14d
cmp [rdi+50],r14d
jge @f
mov [rdi+50],r14d

originalcode_arrowsReadOnFireAOB:
readmem(arrowsReadOnFireAOB,6)
//mov r14d,[rdi+50]
//test ebx,ebx

exit:
jmp returnhere

arrowsReadOnFireAOB: //"HorizonForbiddenWest.exe"+11FC702:
jmp newmem
nop
returnhere:




[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
arrowsReadOnFireAOB: //"HorizonForbiddenWest.exe"+11FC702:
readmem(originalcode_arrowsReadOnFireAOB,6)
//db 44 8B 77 50 85 DB
//mov r14d,[rdi+50]
//test ebx,ebx
unregistersymbol(originalcode_arrowsReadOnFireAOB)

///
//"HorizonForbiddenWest.exe"+D4E11B
///
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>256845</ID>
          <Description>"ignore crafting materials"</Description>
          <LastState Activated="1"/>
          <Color>808000</Color>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript>[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
aobscanmodule(individualMaterialSufficientChkOnCraftAccessCallerAOB,$process,FF * * 33 * 40 * * * 84 C0 0F)
registersymbol(individualMaterialSufficientChkOnCraftAccessCallerAOB)

alloc(newmem,2048,individualMaterialSufficientChkOnCraftAccessCallerAOB+3) //"HorizonForbiddenWest.exe"+12058AF)
label(returnhere)
label(originalcode_individualMaterialSufficientChkOnCraftAccessCallerAOB)
registersymbol(originalcode_individualMaterialSufficientChkOnCraftAccessCallerAOB)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here
mov al,1

originalcode_individualMaterialSufficientChkOnCraftAccessCallerAOB:
readmem(individualMaterialSufficientChkOnCraftAccessCallerAOB+3,6)
//xor edx,edx
//movzx ecx,dil

exit:
jmp returnhere

///

individualMaterialSufficientChkOnCraftAccessCallerAOB+3: //"HorizonForbiddenWest.exe"+12058AF:
jmp newmem
nop
returnhere:


 
 
[DISABLE]
//code from here till the end of the code will be used to disable the cheat
dealloc(newmem)
individualMaterialSufficientChkOnCraftAccessCallerAOB+3: //"HorizonForbiddenWest.exe"+12058AF:
readmem(originalcode_individualMaterialSufficientChkOnCraftAccessCallerAOB,6)
//db 33 D2 40 0F B6 CF
//xor edx,edx
//movzx ecx,dil
unregistersymbol(originalcode_individualMaterialSufficientChkOnCraftAccessCallerAOB)
</AssemblerScript>
        </CheatEntry>
        <CheatEntry>
          <ID>16635</ID>
          <Description>"game speed mod"</Description>
          <Options moHideChildren="1"/>
          <LastState Activated="1"/>
          <Color>808000</Color>
          <VariableType>Auto Assembler Script</VariableType>
          <AssemblerScript Async="1">[ENABLE]
//code from here to '[DISABLE]' will be used to enable the cheat
define(slowmokey1default,12)
define(slowmospeed1default,(float)0.35)
define(slowmokey2default,06)
define(slowmospeed2default,(float)0.5)

///
dCustGameSpeed:
dd (float)1
dSlowMoKey1ID:
dd slowmokey1default
bSlowMoKey1Pressed:
dd 0
dCustGameSpeed1:
dd slowmospeed1default
dSlowMoKey2ID:
dd slowmokey2default
bSlowMoKey2Pressed:
dd 0
dCustGameSpeed2:
dd slowmospeed2default
///

///********************************************///
//modified from ShyTwig16's lua keylistener script
//http://fearlessrevolution.com/viewtopic.php?f=4&amp;t=6041&amp;start=60#p62657
{$lua}
local function slowMoKeysLuaThread(threadr2)
	while SlowMoKeysLuaThreadLoop do
        sleep(100)
	    addrr2 = getAddressSafe('bSlowMoKey1Pressed')
	    addrr3 = getAddressSafe('bSlowMoKey2Pressed')
	    addrr4 = getAddressSafe('dSlowMoKey1ID')
	    addrr5 = getAddressSafe('dSlowMoKey2ID')
		if addrr2 and addrr4 then
            if ( isKeyPressed( readInteger(addrr4) ) ) then
			    writeBytes(addrr2, 1)
            else
                writeBytes(addrr2, 0)
            end
		end
		if addrr3 and addrr5 then
            if ( isKeyPressed( readInteger(addrr5) ) ) then
			    writeBytes(addrr3, 1)
            else
                writeBytes(addrr3, 0)
            end
		end
	end
	threadr2.terminate()
end
----------------------------------
if syntaxcheck then return end
SlowMoKeysLuaThreadLoop = true
createThread(slowMoKeysLuaThread)
{$asm}

///********************************************///




[DISABLE]
//code from here till the end of the code will be used to disable the cheat
{$lua}
if syntaxcheck then return end
SlowMoKeysLuaThreadLoop = false
{$asm}

///********************************************///
dCustGameSpeed:
dd (float)1
</AssemblerScript>
          <CheatEntries>
            <CheatEntry>
              <ID>16755</ID>
              <Description>"custom game speed multiplier"</Description>
              <LastState Value="1" RealAddress="7FF75E070069"/>
              <Color>008000</Color>
              <VariableType>Float</VariableType>
              <Address>dCustGameSpeed</Address>
              <Hotkeys>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>20</Key>
                    <Key>111</Key>
                  </Keys>
                  <Value>0.2</Value>
                  <ID>0</ID>
                </Hotkey>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>20</Key>
                    <Key>106</Key>
                  </Keys>
                  <Value>0.4</Value>
                  <ID>1</ID>
                </Hotkey>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>20</Key>
                    <Key>109</Key>
                  </Keys>
                  <Value>0.6</Value>
                  <ID>2</ID>
                </Hotkey>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>20</Key>
                    <Key>107</Key>
                  </Keys>
                  <Value>0.8</Value>
                  <ID>3</ID>
                </Hotkey>
                <Hotkey>
                  <Action>Set Value</Action>
                  <Keys>
                    <Key>20</Key>
                    <Key>110</Key>
                  </Keys>
                  <Value>1</Value>
                  <ID>4</ID>
                </Hotkey>
              </Hotkeys>
            </CheatEntry>
            <CheatEntry>
              <ID>16641</ID>
              <Description>"mod key1's speed override mod key2's speed"</Description>
              <LastState Value="" RealAddress="00000000"/>
              <Color>808080</Color>
              <GroupHeader>1</GroupHeader>
            </CheatEntry>
            <CheatEntry>
              <ID>16637</ID>
              <Description>"mod key1"</Description>
              <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">10:SHIFT key
11:CTRL key
12:ALT key
14:CAPS LOCK key
02:Right Mouse Button
04:Middle Mouse Button
05:X1 Mouse Button
06:X2 Moust Button
09:TAB key
</DropDownList>
              <LastState Value="12" RealAddress="7FF75E07006D"/>
              <ShowAsHex>1</ShowAsHex>
              <Color>008000</Color>
              <VariableType>Byte</VariableType>
              <Address>dSlowMoKey1ID</Address>
              <CheatEntries>
                <CheatEntry>
                  <ID>16638</ID>
                  <Description>"speed multiplier"</Description>
                  <LastState Value="0.349999994" RealAddress="7FF75E070075"/>
                  <Color>008000</Color>
                  <VariableType>Float</VariableType>
                  <Address>+8</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
            <CheatEntry>
              <ID>16639</ID>
              <Description>"mod key2"</Description>
              <DropDownList ReadOnly="1" DescriptionOnly="1" DisplayValueAsItem="1">10:SHIFT key
11:CTRL key
12:ALT key
14:CAPS LOCK key
02:Right Mouse Button
04:Middle Mouse Button
05:X1 Mouse Button
06:X2 Moust Button
09:TAB key
</DropDownList>
              <LastState Value="06" RealAddress="7FF75E070079"/>
              <ShowAsHex>1</ShowAsHex>
              <Color>008000</Color>
              <VariableType>Byte</VariableType>
              <Address>dSlowMoKey2ID</Address>
              <CheatEntries>
                <CheatEntry>
                  <ID>16640</ID>
                  <Description>"speed multiplier"</Description>
                  <LastState Value="0.5" RealAddress="7FF75E070081"/>
                  <Color>008000</Color>
                  <VariableType>Float</VariableType>
                  <Address>+8</Address>
                </CheatEntry>
              </CheatEntries>
            </CheatEntry>
          </CheatEntries>
        </CheatEntry>
      </CheatEntries>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
How exactly do I paste it into my table? Do I use a blank table or modify an already made table for the game? Never tried to do this before.

Edit: Nevermind. It really was as simple as right-clicking in a white area and selecting paste. I love you for this

Gaibaa
Noobzor
Noobzor
Posts: 14
Joined: Tue Jun 14, 2022 6:08 pm
Reputation: 0

Re: Horizon Forbidden West [Engine:Decima]

Post by Gaibaa »

Anyone have code for Instant Bow Tension?

sinpareil
What is cheating?
What is cheating?
Posts: 4
Joined: Tue Mar 29, 2022 5:32 pm
Reputation: 1

Re: Horizon Forbidden West [Engine:Decima]

Post by sinpareil »

I don't know if you're interested in adding these thnigs, but I think these would be useful additions, if at all possible:

Unlimited blaze boost during races
No recharge for override
Easier tear

Again, if they're not possible or if you're not interested, no biggie, but I thought they'd improve some of the playing process.

saulob
Noobzor
Noobzor
Posts: 9
Joined: Thu Nov 01, 2018 11:38 pm
Reputation: 3

Re: Horizon Forbidden West [Engine:Decima]

Post by saulob »

SunBeam wrote:
Sat Mar 23, 2024 5:22 pm

There will be an option. I managed to find the Entity->Mover structure, which has a lot of juicy properties. One is a boolean which, if maintained at 0x1 value, will let you jump immediately after a jump and maintain altitude (you will slowly descend, but it's not a problem as long as you re-press Space).

We need that jump :wub:

Amazing! Thanks

KS212
Expert Cheater
Expert Cheater
Posts: 1120
Joined: Fri Mar 03, 2017 5:29 pm
Reputation: 137

Re: Horizon Forbidden West [Engine:Decima]

Post by KS212 »

The game does actually have flying mounts, but you don't get it until literally near the end. In the meantime tho that jump cheat will definitely help.

joyboy79
Noobzor
Noobzor
Posts: 8
Joined: Thu Feb 08, 2018 7:43 pm
Reputation: 1

Re: Horizon Forbidden West [Engine:Decima]

Post by joyboy79 »

Love the CE, but would definitely benefit from auto-win on Machine Strike, Hunting Ground Trial and Fighting Pits... all three of these are a pain in the rear.

User avatar
Send
Table Makers
Table Makers
Posts: 396
Joined: Fri Feb 02, 2018 5:58 pm
Reputation: 251

Re: Horizon Forbidden West [Engine:Decima]

Post by Send »

joyboy79 wrote:
Sun Mar 24, 2024 8:02 pm
Love the CE, but would definitely benefit from auto-win on Machine Strike, Hunting Ground Trial and Fighting Pits... all three of these are a pain in the rear.
Took a look at the board game, MS, capping victory points doesn't work. Will research more when I can.

Edit: pieces hp are 2byte. just need to find a cmp to make a inf hp.
Last edited by Send on Sun Mar 24, 2024 8:50 pm, edited 1 time in total.

User avatar
SunBeam
Administration
Administration
Posts: 4782
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4412

Re: Horizon Forbidden West [Engine:Decima]

Post by SunBeam »

kaivar wrote:
Sun Mar 24, 2024 11:38 am
Shredder ammo doesn't get caught with the infinite/fast fire script on. And Aloy dies after running out of air with invulnerability on (but with line 16 //'ed).
1] Dunno about this one, haven't yet found that weapon. Set DebugSettings + 0x28 to 1 and see if that does it.
2] I am aware about the last, just had to sit longer in the water. Set DebugSettings + 0x29 to 1.

In the upcoming table, sometime tomorrow.

User avatar
Send
Table Makers
Table Makers
Posts: 396
Joined: Fri Feb 02, 2018 5:58 pm
Reputation: 251

Re: Horizon Forbidden West [Engine:Decima]

Post by Send »

joyboy79 wrote:
Sun Mar 24, 2024 8:02 pm
Love the CE, but would definitely benefit from auto-win on Machine Strike, Hunting Ground Trial and Fighting Pits... all three of these are a pain in the rear.
This will increase your pawn's health in Machine Strike, but affects enemies. Activate, let enemy attack you a few rounds, deactivate, play normally.

Increase Machine Strike pawn HP on hit.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>256825</ID>
      <Description>"Machine Strike: Add Pawn HP On Damage Taken"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : HorizonForbiddenWest.exe
  Version: 
  Date   : 2024-03-25
  Author : Send

}

define(address,"HorizonForbiddenWest.exe"+E3D08E)
define(bytes,44 29 C0 41 8B F0)

[ENABLE]

assert(address,bytes)
alloc(newmem,$1000,"HorizonForbiddenWest.exe"+E3D08E)

label(code)
label(return)

newmem:

code:
  add eax,r8d
  mov esi,r8d
  jmp return

address:
  jmp newmem
  nop
return:

[DISABLE]

address:
  db bytes
  // sub eax,r8d
  // mov esi,r8d

dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: HorizonForbiddenWest.exe+E3D08E

HorizonForbiddenWest.exe+E3D06E: CC                    - int 3 
HorizonForbiddenWest.exe+E3D06F: CC                    - int 3 
HorizonForbiddenWest.exe+E3D070: 4C 8B DC              - mov r11,rsp
HorizonForbiddenWest.exe+E3D073: 49 89 5B 10           - mov [r11+10],rbx
HorizonForbiddenWest.exe+E3D077: 49 89 6B 18           - mov [r11+18],rbp
HorizonForbiddenWest.exe+E3D07B: 49 89 73 20           - mov [r11+20],rsi
HorizonForbiddenWest.exe+E3D07F: 57                    - push rdi
HorizonForbiddenWest.exe+E3D080: 48 81 EC 80 00 00 00  - sub rsp,00000080
HorizonForbiddenWest.exe+E3D087: 0F B6 41 3A           - movzx eax,byte ptr [rcx+3A]
HorizonForbiddenWest.exe+E3D08B: 0F B6 EA              - movzx ebp,dl
// ---------- INJECTING HERE ----------
HorizonForbiddenWest.exe+E3D08E: 44 29 C0              - sub eax,r8d
// ---------- DONE INJECTING  ----------
HorizonForbiddenWest.exe+E3D091: 41 8B F0              - mov esi,r8d
HorizonForbiddenWest.exe+E3D094: 44 0F B6 C8           - movzx r9d,al
HorizonForbiddenWest.exe+E3D098: 4D 8D 43 08           - lea r8,[r11+08]
HorizonForbiddenWest.exe+E3D09C: B8 00 00 00 00        - mov eax,00000000
HorizonForbiddenWest.exe+E3D0A1: 44 0F 48 C8           - cmovs r9d,eax
HorizonForbiddenWest.exe+E3D0A5: 44 88 49 3A           - mov [rcx+3A],r9b
HorizonForbiddenWest.exe+E3D0A9: 44 0F BE 49 38        - movsx r9d,byte ptr [rcx+38]
HorizonForbiddenWest.exe+E3D0AE: 48 8B 79 10           - mov rdi,[rcx+10]
HorizonForbiddenWest.exe+E3D0B2: 41 0F B6 C1           - movzx eax,r9b
HorizonForbiddenWest.exe+E3D0B6: C0 E0 04              - shl al,04
}
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>

Last edited by Send on Mon Mar 25, 2024 7:36 am, edited 7 times in total.

anon9
Table Makers
Table Makers
Posts: 171
Joined: Mon Sep 17, 2018 6:28 am
Reputation: 174

Re: Horizon Forbidden West [Engine:Decima]

Post by anon9 »

bluemoon27112 wrote:
Sun Mar 24, 2024 4:47 am

sadly this can't modify coil , but still a great code nice work
Yeah, this isn't to modify coil. I believe you can change it to do that, but I'm not bothering with structure dissection atm.

So looking at how the items register, It looks like I actually only needed 2 slots, not 5. Essentially what it does is it first scans the item that your are leaving, then it scans the item that you are entering. The quantity is scanned twice, I believe because part of it is scanning the max value and it does so twice because it first scans the max value for the quantity, then it scans the quantity for the max value.

I could modify this some more, but this was more to help the script developers. My other version works a bit differently.

My other one basically does a long checking process in order to make sure the correct item is moved to Qty 1, but it is extremely inefficient so the FPS tanks.

Nixye
What is cheating?
What is cheating?
Posts: 3
Joined: Fri Oct 20, 2017 1:19 am
Reputation: 0

Re: Horizon Forbidden West [Engine:Decima]

Post by Nixye »

Anyway to edit the quantity of itens on inventory? Because i think i broke my game with a resource multiplier cheat
I was suposed to have only 3 itens for a quest, now i have 30, and the game dont recognize that i have that iten on inventory

User avatar
SunBeam
Administration
Administration
Posts: 4782
Joined: Sun Feb 04, 2018 7:16 pm
Reputation: 4412

Re: Horizon Forbidden West [Engine:Decima]

Post by SunBeam »

Gaibaa wrote:
Sun Mar 24, 2024 5:14 pm
Anyone have code for Instant Bow Tension?
Yes. It will not fast shrink the reticle, but bow will fire as if tensioned:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>256894</ID>
      <Description>"Bow Fires Tensioned"</Description>
      <LastState Activated="1"/>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>{ Game   : HorizonForbiddenWest.exe
  Version: 
  Date   : 2024-03-25
  Author : SunBeam

  This script does blah blah blah
}

define(address,"HorizonForbiddenWest.exe"+129FB7D)
define(bytes,C4 41 7A 10 44 D0 E8)

[ENABLE]

assert(address,bytes)
alloc(newmem,$1000,"HorizonForbiddenWest.exe"+129FB7D)

label(code)
label(return)

newmem:

code:
  movss xmm8,[fVal]
  movss [r8+rdx*8-18],xmm8
  vmovss xmm8,[r8+rdx*8-18]
  jmp return

fVal:
dd (float)0.0001

address:
  jmp newmem
  nop 2
return:

[DISABLE]

address:
  db bytes
  // vmovss xmm8,[r8+rdx*8-18]

dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: HorizonForbiddenWest.exe+129FB7D

HorizonForbiddenWest.exe+129FB51: EB 08                    - jmp HorizonForbiddenWest.exe+129FB5B
HorizonForbiddenWest.exe+129FB53: C5 CA 58 8B 98 00 00 00  - vaddss xmm1,xmm6,[rbx+00000098]
HorizonForbiddenWest.exe+129FB5B: C5 FA 11 8B 98 00 00 00  - vmovss [rbx+00000098],xmm1
HorizonForbiddenWest.exe+129FB63: 48 8B 4F 60              - mov rcx,[rdi+60]
HorizonForbiddenWest.exe+129FB67: C4 41 38 57 C0           - vxorps xmm8,xmm8,xmm8
HorizonForbiddenWest.exe+129FB6C: 48 85 C9                 - test rcx,rcx
HorizonForbiddenWest.exe+129FB6F: 74 20                    - je HorizonForbiddenWest.exe+129FB91
HorizonForbiddenWest.exe+129FB71: 48 63 41 20              - movsxd  rax,dword ptr [rcx+20]
HorizonForbiddenWest.exe+129FB75: 4C 8B 41 28              - mov r8,[rcx+28]
HorizonForbiddenWest.exe+129FB79: 48 8D 14 40              - lea rdx,[rax+rax*2]
// ---------- INJECTING HERE ----------
HorizonForbiddenWest.exe+129FB7D: C4 41 7A 10 44 D0 E8     - vmovss xmm8,[r8+rdx*8-18]
// ---------- DONE INJECTING  ----------
HorizonForbiddenWest.exe+129FB84: E8 27 A4 41 FF           - call HorizonForbiddenWest.exe+6B9FB0
HorizonForbiddenWest.exe+129FB89: C5 FA 11 43 60           - vmovss [rbx+60],xmm0
HorizonForbiddenWest.exe+129FB8E: 40 B5 01                 - mov bpl,01
HorizonForbiddenWest.exe+129FB91: 48 8B 77 68              - mov rsi,[rdi+68]
HorizonForbiddenWest.exe+129FB95: 48 85 F6                 - test rsi,rsi
HorizonForbiddenWest.exe+129FB98: 74 3E                    - je HorizonForbiddenWest.exe+129FBD8
HorizonForbiddenWest.exe+129FB9A: C5 FA 10 83 98 00 00 00  - vmovss xmm0,[rbx+00000098]
HorizonForbiddenWest.exe+129FBA2: C4 C1 78 2F C0           - vcomiss xmm0,xmm8
HorizonForbiddenWest.exe+129FBA7: 72 2F                    - jb HorizonForbiddenWest.exe+129FBD8
HorizonForbiddenWest.exe+129FBA9: 48 63 46 20              - movsxd  rax,dword ptr [rsi+20]
}
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Copy the above and paste it in the CE GUI. Click on the GUI, on an empty (white) spot, then Ctrl+V.

Note that the script does not provide max. accuracy or accounts for misfired shots. Those would be a different story.

P.S.: That's all I have. If you don't like how it works, then that's that.

zolambarkudak
Cheater
Cheater
Posts: 28
Joined: Tue Oct 03, 2017 6:38 pm
Reputation: 14

Re: Horizon Forbidden West [Engine:Decima]

Post by zolambarkudak »

Send wrote:
Sun Mar 24, 2024 9:06 pm
joyboy79 wrote:
Sun Mar 24, 2024 8:02 pm
Love the CE, but would definitely benefit from auto-win on Machine Strike, Hunting Ground Trial and Fighting Pits... all three of these are a pain in the rear.
This will increase your pawn's health in Machine Strike, but affects enemies. Activate, let enemy attack you a few rounds, deactivate, play normally.

Increase Machine Strike pawn HP on hit.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
  <CheatEntries>
    <CheatEntry>
      <ID>256824</ID>
      <Description>"Machine Strike +Add HP On Damage"</Description>
      <VariableType>Auto Assembler Script</VariableType>
      <AssemblerScript>
     
 //Author : Send
 
 [ENABLE]
alloc(newmem,2048,"HorizonForbiddenWest.exe"+E3D08E) 
label(returnhere)
label(originalcode)
label(exit)

newmem: 

originalcode:
add eax,r8d
mov esi,r8d

exit:
jmp returnhere

"HorizonForbiddenWest.exe"+E3D08E:
jmp newmem
nop
returnhere:

[DISABLE]
dealloc(newmem)
"HorizonForbiddenWest.exe"+E3D08E:
db 44 29 C0 41 8B F0
//sub eax,r8d
//mov esi,r8d
</AssemblerScript>
    </CheatEntry>
  </CheatEntries>
</CheatTable>
Thank you for this. I was looking for victory points myself put it proved useless as well.

Just out of curiosity, why didn't you write this in reverse. As in make it an infinite damage attack and use only on your own turn. Wouldn't that be simpler?

TheMarkusBoy
What is cheating?
What is cheating?
Posts: 3
Joined: Tue Mar 12, 2024 9:15 pm
Reputation: 0

Re: Horizon Forbidden West [Engine:Decima]

Post by TheMarkusBoy »

Is it possible to change the time of day? I dislike how this game looks at night

Post Reply

Who is online

Users browsing this forum: bluemoon27112, DrummerIX, DsNo, Google [Bot], jasonthe13, Kuddel, loveteayza, Sharkalistic, tampy, yami973