Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Memory scanning, code injection, debugger internals and other gamemodding related discussion
Post Reply
User avatar
Lord Blade
Expert Cheater
Expert Cheater
Posts: 1459
Joined: Thu Mar 09, 2017 7:52 am
Reputation: 135

Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by Lord Blade »

So, trying to cheat for Approaching Infinity (cause nobody is responding to my request).

Values are simple 4 Bytes. Can find them easily every time I play, but I want a table that will work every session, so I don't have to search from scratch each time.

I tried doing the pointer scan stuff, but it's not working. So I figure I'm just dumb.

I find the value for Supplies (which gets used for everything).
Find a 4 Byte value.
Try doing the pointer scan thing (made two, first in one session, then in a second session).
I'm then supposed to do that "find what writes" thing, yes? So I open it, move (to use supplies) and get:
00577224 - 89 02 - mov [edx],eax

The tutorial said I should have an offset to use. But... I don't see one. So what did I screw up?

User avatar
Lord Blade
Expert Cheater
Expert Cheater
Posts: 1459
Joined: Thu Mar 09, 2017 7:52 am
Reputation: 135

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by Lord Blade »

Is there another way to get the codes to stay between sessions?

AlexS
Expert Cheater
Expert Cheater
Posts: 362
Joined: Sun Apr 08, 2018 3:46 pm
Reputation: 217

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by AlexS »

Lord Blade wrote:
Thu Jun 19, 2025 9:07 pm
and get:
00577224 - 89 02 - mov [edx],eax

The tutorial said I should have an offset to use. But... I don't see one. So what did I screw up?
(Google Translate)

In this instruction, offset is zero. That is, the instruction
mov [edx],eax
can be written as
mov [edx+0],eax

Most likely, this instruction addresses a large number of addresses. If you simply change the value of "eax" in this instruction, the game will crash. To select only the desired address in "edx", you will have to create a filter in the script.

User avatar
eggs
Expert Cheater
Expert Cheater
Posts: 172
Joined: Wed Mar 26, 2025 7:35 pm
Reputation: 253

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by eggs »

alot of gameengines (UE scripted/Anglescript/Gamemaker Kit) use the same function to access write and read a wide array of memory addresses. If it's such an function, altering the value in such a function will inevitably lead to a crash.

So what you cound do are:
- Show the funciton in diassembler -> check if this setter function is shared and called for other purposes just just for supplies.
- Instead of using "what writes to this address" use "what access this address" to see if there's any alternatives, so you could maybe find an exclusive function
- Set a breakpoint in the function, if the function is shared by alot of variables check the different registers to see if you can see a pattern for Supplies (e.g. for instance gamemaker and angelscript pass an static assetid around)
- Set a breakpoint in the function with a condition for instance EDX = ADDRESSOFSUPPLIES, once the function breaks, STEPOUT of the function to check if the calling function is unique.

User avatar
Lord Blade
Expert Cheater
Expert Cheater
Posts: 1459
Joined: Thu Mar 09, 2017 7:52 am
Reputation: 135

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by Lord Blade »

I think I'm just too dumb to be able to do this stuff.
I appreciate the help, but I'm just getting more confused reading your response.

User avatar
eggs
Expert Cheater
Expert Cheater
Posts: 172
Joined: Wed Mar 26, 2025 7:35 pm
Reputation: 253

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by eggs »

Lord Blade wrote:
Sat Jun 21, 2025 7:38 pm
I think I'm just too dumb to be able to do this stuff.
I appreciate the help, but I'm just getting more confused reading your response.
tl;dr: the function you found is correct, the function however is called to edit supplies, money, shields and alot more stuff and it's abnormally big (11.000 asm lines).
I briefly downloaded the game to have a look it's reallly not a good game for learning how to script. None what i recommended above would have worked.

User avatar
Lord Blade
Expert Cheater
Expert Cheater
Posts: 1459
Joined: Thu Mar 09, 2017 7:52 am
Reputation: 135

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by Lord Blade »

I'm guessing that's why nobody's made a table for it in all this time. It's why I've been trying to make one myself... but it's just beyond me.
I can find a value and change it... but that's about it. lol

AlexS
Expert Cheater
Expert Cheater
Posts: 362
Joined: Sun Apr 08, 2018 3:46 pm
Reputation: 217

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by AlexS »

(Google Translate)

It's not about the difficulty of hacking, the average level of cheating skills is enough to create this table (I already downloaded the game and created a table in one and a half to two hours, which now needs to be tested, and it takes time).
Screenshot, the beginning of the game:
Spoiler
Image
It's just that this game is little known and recently released from early access. And you posted the query for the table almost 5 years ago, in 2020. For example, I only learned about this game from you, and I don't consider early access games at all.

User avatar
Lord Blade
Expert Cheater
Expert Cheater
Posts: 1459
Joined: Thu Mar 09, 2017 7:52 am
Reputation: 135

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by Lord Blade »

First off, AlexS, you are awesome for getting a table going.

I can find the values, but I always struggle trying to make a table that works between sessions. My brain just doesn't seem to be wired for that kind of thing. I sit there reading tutorials and watching videos, and it all goes over my head.

User avatar
eggs
Expert Cheater
Expert Cheater
Posts: 172
Joined: Wed Mar 26, 2025 7:35 pm
Reputation: 253

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by eggs »

AlexS wrote:
Sun Jun 22, 2025 12:40 pm
(Google Translate)

It's not about the difficulty of hacking, the average level of cheating skills is enough to create this table (I already downloaded the game and created a table in one and a half to two hours, which now needs to be tested, and it takes time).
Screenshot, the beginning of the game:
Spoiler
Image
It's just that this game is little known and recently released from early access. And you posted the query for the table almost 5 years ago, in 2020. For example, I only learned about this game from you, and I don't consider early access games at all.
I'm actually interesssted in how you grabbed the basepointer, would you mind publishing your table?

AlexS
Expert Cheater
Expert Cheater
Posts: 362
Joined: Sun Apr 08, 2018 3:46 pm
Reputation: 217

Re: Cheat Engine for Dummies (that's me). Keeping an address between sessions.

Post by AlexS »

(Google Translate)
Lord Blade wrote:
Sun Jun 22, 2025 3:28 pm
I can find the values, but I always struggle trying to make a table that works between sessions. My brain just doesn't seem to be wired for that kind of thing.
Okay, I get you.
The attachment contains a small training table for this game. It is very simple, but it will allow you to find several basic game values on your own.
You say that you easily find the game meaning of "Supplies". Open the game and find this value as usual.
Now copy the memory address of this found value to the buffer.
Open the attached table.
Do you see the top red line "Supplies" and the address "11110000"? Double-click on the address "11110000" and paste the address "Supplies" that you found and copied from the buffer instead.
The remaining rows of the table should contain values (Money, Cargo, HP, player coordinates, etc.) that you can edit.
Look at how this table is arranged. It does not use embedding in the game code, does not contain any scripts, only offsets. See how easy it is? You can create similar tables for yourself.
eggs wrote:
Tue Jun 24, 2025 8:48 pm
I'm actually interesssted in how you grabbed the basepointer, would you mind publishing your table?
The first filter is based on the offset per memory block. The second filter is based on the size of the memory block. The third filter is additional - according to the internal structure in the block.
The table is not ready yet, testing is needed.
Attachments
Approaching Infinity_for Lord.CT
(3.1 KiB) Downloaded 6 times

Post Reply

Who is online

Users browsing this forum: No registered users