From ndck76's 2 scripts (inf health & max level) i made theses two scrips which show the values of some properties and allow to edit them.
I did this because i was not able to find any pointer for any of them, this is kinda a strange way to edit stuff but it works and it's kinda funny to try to get the value you want to edit to actually appear :p
This first script either show the health or the mana or the relic energy or the ammo depending of which one was the last modified.
So basically if you want to edit one value do something in game that will provoke a modification of the value and it may appear.
Copy the adress and paste it on another adress created manually so you can edit it easily (until you close the game or reload the character)
Ammo value will be 16 when your ammo is at 20 (don't ask me why), hp will simply the value as shown on your screen, for mana and relic i don't know how they are saved and formatted.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>87521</ID>
<Description>"Current Health OR Mana OR Relic Energy OR Ammo"</Description>
<Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
<LastState/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : Frontiers-Win64-Shipping.exe
Version:
Date : 2020-10-07
Author : ndck76
}
[ENABLE]
aobscanmodule(hp1,Frontiers-Win64-Shipping.exe,F3 0F 11 B3 50 01 00 00 E8 45) // should be unique
alloc(newmem,$1000,"Frontiers-Win64-Shipping.exe"+52C9FE)
label(code)
label(return)
label(p_value2)
registersymbol(p_value2)
newmem:
code:
movss [rbx+00000150],xmm6
mov [p_value2],rbx
jmp return
p_value2:
dq
hp1:
jmp newmem
nop 3
return:
registersymbol(hp1)
[DISABLE]
hp1:
db F3 0F 11 B3 50 01 00 00
unregistersymbol(p_value2)
unregistersymbol(hp1)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "Frontiers-Win64-Shipping.exe"+52C9FE
"Frontiers-Win64-Shipping.exe"+52C9D2: 48 83 EC 30 - sub rsp,30
"Frontiers-Win64-Shipping.exe"+52C9D6: 48 8B 01 - mov rax,[rcx]
"Frontiers-Win64-Shipping.exe"+52C9D9: 48 8B D9 - mov rbx,rcx
"Frontiers-Win64-Shipping.exe"+52C9DC: 0F 29 74 24 20 - movaps [rsp+20],xmm6
"Frontiers-Win64-Shipping.exe"+52C9E1: 0F 28 F1 - movaps xmm6,xmm1
"Frontiers-Win64-Shipping.exe"+52C9E4: FF 90 C0 03 00 00 - call qword ptr [rax+000003C0]
"Frontiers-Win64-Shipping.exe"+52C9EA: 0F 2E B3 50 01 00 00 - ucomiss xmm6,[rbx+00000150]
"Frontiers-Win64-Shipping.exe"+52C9F1: F3 0F 11 83 54 01 00 00 - movss [rbx+00000154],xmm0
"Frontiers-Win64-Shipping.exe"+52C9F9: 74 10 - je Frontiers-Win64-Shipping.exe+52CA0B
"Frontiers-Win64-Shipping.exe"+52C9FB: 48 8B CB - mov rcx,rbx
// ---------- INJECTING HERE ----------
"Frontiers-Win64-Shipping.exe"+52C9FE: F3 0F 11 B3 50 01 00 00 - movss [rbx+00000150],xmm6
// ---------- DONE INJECTING ----------
"Frontiers-Win64-Shipping.exe"+52CA06: E8 45 5D FF FF - call Frontiers-Win64-Shipping.exe+522750
"Frontiers-Win64-Shipping.exe"+52CA0B: 0F 28 74 24 20 - movaps xmm6,[rsp+20]
"Frontiers-Win64-Shipping.exe"+52CA10: 48 83 C4 30 - add rsp,30
"Frontiers-Win64-Shipping.exe"+52CA14: 5B - pop rbx
"Frontiers-Win64-Shipping.exe"+52CA15: C3 - ret
"Frontiers-Win64-Shipping.exe"+52CA16: CC - int 3
"Frontiers-Win64-Shipping.exe"+52CA17: CC - int 3
"Frontiers-Win64-Shipping.exe"+52CA18: CC - int 3
"Frontiers-Win64-Shipping.exe"+52CA19: CC - int 3
"Frontiers-Win64-Shipping.exe"+52CA1A: CC - int 3
}
</AssemblerScript>
<Hotkeys>
<Hotkey>
<Action>Toggle Activation</Action>
<Keys>
<Key>17</Key>
<Key>97</Key>
</Keys>
<ID>0</ID>
<ActivateSound>Activate</ActivateSound>
<DeactivateSound>Deactivate</DeactivateSound>
</Hotkey>
</Hotkeys>
<CheatEntries>
<CheatEntry>
<ID>87522</ID>
<Description>"Value"</Description>
<VariableType>Float</VariableType>
<Address>p_value2</Address>
<Offsets>
<Offset>150</Offset>
</Offsets>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>
This script either show current level or gold or last updated skill level (the last skill you added a point).
Same principle as before, drop some gold to see the value appear then edit it or copy the adress and edit it later.
For level you need to level up i guess :p and for the last updated skill just increase a skill level then you can even edit the skill to lvl 100 if you want (i never tried it tho)
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable>
<CheatEntries>
<CheatEntry>
<ID>87519</ID>
<Description>"Current Level OR Gold OR Last Updated Skill Level"</Description>
<Options moHideChildren="1" moDeactivateChildrenAsWell="1"/>
<LastState/>
<Color>FF0000</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>{ Game : Frontiers-Win64-Shipping.exe
Version:
Date : 2020-10-09
Author : Axel
This script does blah blah blah
}
[ENABLE]
aobscanmodule(aob_lv_sp,Frontiers-Win64-Shipping.exe,F3 0F 11 71 08 48 8B 07) // should be unique
alloc(newmem,$1000,"Frontiers-Win64-Shipping.exe"+8A3F0C)
label(code)
label(return)
label(p_value)
registersymbol(p_value)
newmem:
code:
movss [rcx+08],xmm6
mov [p_value],rcx
jmp return
p_value:
dq
aob_lv_sp:
jmp newmem
return:
registersymbol(aob_lv_sp)
[DISABLE]
aob_lv_sp:
db F3 0F 11 71 08
unregistersymbol(p_value)
unregistersymbol(aob_lv_sp)
dealloc(newmem)
{
// ORIGINAL CODE - INJECTION POINT: "Frontiers-Win64-Shipping.exe"+8A3F0C
"Frontiers-Win64-Shipping.exe"+8A3ED6: 45 33 C9 - xor r9d,r9d
"Frontiers-Win64-Shipping.exe"+8A3ED9: 48 89 BC 24 80 00 00 00 - mov [rsp+00000080],rdi
"Frontiers-Win64-Shipping.exe"+8A3EE1: 4C 8D 84 24 80 00 00 00 - lea r8,[rsp+00000080]
"Frontiers-Win64-Shipping.exe"+8A3EE9: 48 8B CB - mov rcx,rbx
"Frontiers-Win64-Shipping.exe"+8A3EEC: 48 8D 94 24 90 00 00 00 - lea rdx,[rsp+00000090]
"Frontiers-Win64-Shipping.exe"+8A3EF4: E8 F7 1F E0 FF - call Frontiers-Win64-Shipping.exe+6A5EF0
"Frontiers-Win64-Shipping.exe"+8A3EF9: 48 63 84 24 90 00 00 00 - movsxd rax,dword ptr [rsp+00000090]
"Frontiers-Win64-Shipping.exe"+8A3F01: 48 8D 0C 40 - lea rcx,[rax+rax*2]
"Frontiers-Win64-Shipping.exe"+8A3F05: 48 8B 03 - mov rax,[rbx]
"Frontiers-Win64-Shipping.exe"+8A3F08: 48 8D 0C C8 - lea rcx,[rax+rcx*8]
// ---------- INJECTING HERE ----------
"Frontiers-Win64-Shipping.exe"+8A3F0C: F3 0F 11 71 08 - movss [rcx+08],xmm6
// ---------- DONE INJECTING ----------
"Frontiers-Win64-Shipping.exe"+8A3F11: 48 8B 07 - mov rax,[rdi]
"Frontiers-Win64-Shipping.exe"+8A3F14: 48 8D 94 24 80 00 00 00 - lea rdx,[rsp+00000080]
"Frontiers-Win64-Shipping.exe"+8A3F1C: 0F 28 D6 - movaps xmm2,xmm6
"Frontiers-Win64-Shipping.exe"+8A3F1F: 48 89 84 24 80 00 00 00 - mov [rsp+00000080],rax
"Frontiers-Win64-Shipping.exe"+8A3F27: 48 8B CD - mov rcx,rbp
"Frontiers-Win64-Shipping.exe"+8A3F2A: E8 41 00 00 00 - call Frontiers-Win64-Shipping.exe+8A3F70
"Frontiers-Win64-Shipping.exe"+8A3F2F: 48 8B 07 - mov rax,[rdi]
"Frontiers-Win64-Shipping.exe"+8A3F32: 48 8D 8D F8 00 00 00 - lea rcx,[rbp+000000F8]
"Frontiers-Win64-Shipping.exe"+8A3F39: 48 89 84 24 80 00 00 00 - mov [rsp+00000080],rax
"Frontiers-Win64-Shipping.exe"+8A3F41: 48 8D 94 24 80 00 00 00 - lea rdx,[rsp+00000080]
}
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>87520</ID>
<Description>"Value"</Description>
<LastState Value="79" RealAddress="22AA25D7918"/>
<VariableType>Float</VariableType>
<Address>p_value</Address>
<Offsets>
<Offset>8</Offset>
</Offsets>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
</CheatTable>
Many properties are updated via theses 2 blocks of code the scripts insert themselves into, so you kinda have to navigate throught all of them to find the values you want.