Useful Cheat Engine Scripts / Templates

get your superiourity here ! be an offline or online GOD of the game. infinite ammo, unlimited nitro, turbo boost, god mode, you name it !
Post Reply
User avatar
Sethioz
Admin
Admin
Posts: 4762
Joined: Fri Jul 27, 2007 5:11 pm
Custom: Gaming YT > https://youtube.com/SethiozEntertainment
Game Hacking YT > https://youtube.com/sethioz
Game Hacks Store > https://sethioz.com/shopz
Location: unknown
Contact:

Useful Cheat Engine Scripts / Templates

Post by Sethioz »

This is more for myself, but feel free to use these to your liking. I've been using those methods in many games.

FIND ADDRESS with CMP and JNE (Compare registers - needed when instruction accesses / writes more than 1 address)

Code: Select all

cmp R11,800 // Looks up value of R11 register and checks if it's 800 or not.

jne originalcode    // if R11 is not 800 then skip this

mov rax,_money
mov [rax],rdx

originalcode:
mov eax,[rdx+28] // where RDX+28 holds the address that holds the value of money (or whatever you need)
mov [rcx],00000001
jmp return
FIND ADDRESS (Multiple registers using LEA)

Code: Select all

push rbx
lea rbx,[r10+rax] // reads value of r10 + rax and outputs as 1
mov [_speedz],rbx
pop rbx

  movups [r10+rax],xmm0
  jmp return
can be used in games where address you looking for, is a combination of 2 registers instead of 1 register + 1 offset


FIND ADDRESS

Code: Select all

push rbx
mov rbx,_customaddress //this is your custom address
mov [rbx],rax
pop rbx


  movss xmm0,[rax+000002C4] // rax + 2C4 is the address you are looking for
  jmp return

SPEED BOOST / TELEPORT Lua Script
enter into lua script + execute

Code: Select all

function SpeedHack1()
boost = 1.2
if (readBytes('[_speedz]') ~= nil) then
writeFloat ('[_speedz]+0', readFloat('[_speedz]+0')*boost)
writeFloat ('[_speedz]+8', readFloat('[_speedz]+8')*boost)
end
end
createHotkey(SpeedHack1, VK_UP)

function SpeedHack2()
boost = 0.5
if (readBytes('[_speedz]') ~= nil) then
writeFloat ('[_speedz]+0', readFloat('[_speedz]+0')*boost)
writeFloat ('[_speedz]+8', readFloat('[_speedz]+8')*boost)
end
end
createHotkey(SpeedHack2, VK_DOWN)

function SpeedHack3()
boost = 2.0
if (readBytes('[_speedz]') ~= nil) then
writeFloat ('[_speedz]+0', readFloat('[_speedz]+0')*boost)
writeFloat ('[_speedz]+8', readFloat('[_speedz]+8')*boost)
end
end
createHotkey(SpeedHack3, VK_RSHIFT)
you can create multiple hotkeys using this method, look up the VK (virtual keyboard) codes on google to replace hotkeys. Make sure to enter correct address and offset.
_speedz = your custom address which you must first allocate and create.


TIMER to UPDATE VALUES - such as instant filling Nitros in racing game when it falls under certain amount
enter into lua script + execute.

Code: Select all

function doCheck(sender)
  if freeze or (readFloat('[_nos]+41C')<=0.9) then
    writeFloat('[_nos]+41C', 1);
  end
end

freeze=false
t=createTimer(nil)
timer_onTimer(t, doCheck)
timer_setInterval(t, 50)
_nos = your custom address, defined in the cheat table.


AoB SWAP (swaps HEX strings with another HEX string - replaces all, can take long time)
enter as script

Code: Select all

[ENABLE]
LuaCall(Aobswap("01 02 03 04","0A 0B 0C 0D"))

[DISABLE]
LuaCall(Aobswap("0A 0B 0C 0D","01 02 03 04"))
Post Reply