Nice job
Your AoB is btw not unique, though the first result is the correct one so not a big deal I guess.
Made my own script for it:
Just copy the whole code from below and paste it into the main CE window.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="42">
<CheatEntries>
<CheatEntry>
<ID>0</ID>
<Description>"FoV Modifier"</Description>
<Options moHideChildren="1"/>
<Color>000080</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
aobscanmodule(FieldOfView_AoB,$process,8B 87 A8 00 00 00 48 8D 8F B8)
alloc(FieldOfView_Newmem,$100,FieldOfView_AoB)
alloc(FieldOfView_BackupBytes,6,FieldOfView_AoB)
label(FieldOfView_Return)
label(FieldOfView_OriginalCode)
FieldOfView_BackupBytes:
readmem(FieldOfView_AoB,6)
FieldOfView_Newmem:
FieldOfView_OriginalCode:
mov eax,[FieldOfView_Pointer]
jmp FieldOfView_Return
FieldOfView_Pointer:
dd (float)55
FieldOfView_AoB:
jmp FieldOfView_Newmem
nop
FieldOfView_Return:
registersymbol(FieldOfView_AoB)
registersymbol(FieldOfView_Pointer)
registersymbol(FieldOfView_BackupBytes)
{$LUA}
memrec.Color = 0x0000FF
{$ASM}
[DISABLE]
{$LUA}
memrec.Color = 0x000080
{$ASM}
FieldOfView_AoB:
readmem(FieldOfView_BackupBytes,6)
unregistersymbol(FieldOfView_AoB)
unregistersymbol(FieldOfView_Pointer)
unregistersymbol(FieldOfView_BackupBytes)
dealloc(FieldOfView_Newmem)
dealloc(FieldOfView_BackupBytes)
</AssemblerScript>
<CheatEntries>
<CheatEntry>
<ID>356198</ID>
<Description>"FieldOfView"</Description>
<ShowAsSigned>0</ShowAsSigned>
<Color>104FED</Color>
<VariableType>Float</VariableType>
<Address>FieldOfView_Pointer</Address>
</CheatEntry>
</CheatEntries>
</CheatEntry>
</CheatEntries>
<UserdefinedSymbols/>
</CheatTable>
Alternative Pointer Script
Just copy the whole code from below and paste it into the main CE window.
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<CheatTable CheatEngineTableVersion="42">
<CheatEntries>
<CheatEntry>
<ID>356250</ID>
<Description>"Player Pointers"</Description>
<Color>000080</Color>
<VariableType>Auto Assembler Script</VariableType>
<AssemblerScript>[ENABLE]
{$LUA}
if syntaxcheck then return end
autoAssemble([[
aobscanmodule(baseAddress_AoB,$process,48 8B ? ? ? ? ? 48 89 ? ? ? 49 8B ? ? ? ? ? F3 0F) --AoB
registersymbol(baseAddress_AoB)
]])
local addr = getAddress("baseAddress_AoB")
addr = addr + readInteger(addr + 3) + 7 --Get the address from within []
unregisterSymbol("baseAddress_AoB")
registerSymbol("pbase", addr, true) --Pointrer symbol
memrec.Color=0x0000FF
{$ASM}
[DISABLE]
{$LUA}
if syntaxcheck then return end
unregisterSymbol("pbase")
memrec.Color=0x000080
{$ASM}
}
</AssemblerScript>
</CheatEntry>
</CheatEntries>
<UserdefinedSymbols/>
</CheatTable>
How to use this cheat table?
- Install Cheat Engine
- Double-click the .CT file in order to open it.
- Click the PC icon in Cheat Engine in order to select the game process.
- Keep the list.
- Activate the trainer options by checking boxes or setting values from 0 to 1