A question about gamehacking.

Memory scanning, code injection, debugger internals and other gamemodding related discussion
Post Reply
Posts: 5
Joined: Thu Jun 20, 2019 2:53 am
Reputation: 0

A question about gamehacking.

Post by chaosjr7 »

Can anyone teach me to, take a specific Assembly Address's Register and and label it so I can utilize it as either a readable address or a Pointer Variable, I want to take a Register like EAX at Address X and make a ?variable?, like "PlayerAmmo1" so that "PlayerAmmo1"= the Value of EAX at Address X.

Address X = 412014 the Code at that location is "mov ecx, [eax]"
eax= a Pointer address I want to track using Assembly by assigning the Name "PlayerAmmo1" so that PlayerAmmo1's Value equals eax's Value at Address X..

How do I do it? Can it be done currently with either cheat engine or artmoney v8.08.4 PRO version...
I hope someone can teach me to do this.. Thanks for the time, and I hope to learn how soon.

User avatar
Table Makers
Table Makers
Posts: 72
Joined: Mon Apr 20, 2020 1:01 am
Reputation: 35

Re: A question about gamehacking.

Post by happyTugs »

The following is just a general idea.

Code: Select all


//--Snippet Start

label(PlayerAmmo1) // The word 'PlayerAmmo1' is now to be used as a local symbol for some piece of data.
registersymbol(PlayerAmmo1)  // Add the symbol, 'PlayerAmmo1', to the user-defined symbol list, making the symbol accessible across Cheat Engine.

mov ecx,[eax] // I assume that the content of eax is the address of the player's ammo.
mov [PlayerAmmo1],eax // Therefore, copy the content of eax to the memory address assigned to 'PlayerAmmo1'.
jmp return

The following instruction is optional.
align 04 90 // Aligns the following memory address to a 4-byte boundary padded with byte 0x90 (nop).

PlayerAmmo1: // Memory address labeled 'PlayerAmmo1'
resb 4 // Reserve 4 bytes to accommodate the 4-byte content of eax (in this case, the content of eax is a 4-byte length address, or a DWORD address). 
       // dd 0 (Declare DWORD of value 0), can also be used.

//--Snippet End


//--Snippet Start

unregistersymbol(PlayerAmmo1) // Remove the symbol, 'PlayerAmmo1' from the user-defined symbol list.

//--Snippet End
Afterwards, to access the symbol, or the memory address, of 'PlayerAmmo1', simply add a new address, tick pointer, and for the address, type PlayerAmmo1.

If you don't quite understand, perhaps read through the below thread.

You can also ask questions at the Cheat Engine Forums if you haven't done so already.

Post Reply

Who is online

Users browsing this forum: No registered users