Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


All addresses change without restarting the game

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking
View previous topic :: View next topic  
Author Message
DanyDollaro
Master Cheater
Reputation: 3

Joined: 01 Aug 2019
Posts: 334

PostPosted: Sat Feb 29, 2020 8:01 am    Post subject: Reply with quote

Of course, what you are looking for is not the address but the value to which it points, the value being deallocated and realoocated then changes its position in memory making the old pointer useless, if you open the debugger on that address so you know which codes act reading on that address then you can create a script that saves the address that the code has just used
Back to top
View user's profile Send private message
aaax10
Newbie cheater
Reputation: 0

Joined: 25 Feb 2020
Posts: 13

PostPosted: Sat Feb 29, 2020 8:11 am    Post subject: Reply with quote

I want my program to make an external overlay reading the value of that address, can I achieve this without using Cheat Engine scripts? Or explain it further? I'm not sure how to create such a script. Thank you

Last edited by aaax10 on Mon Mar 09, 2020 7:11 am; edited 1 time in total
Back to top
View user's profile Send private message
DanyDollaro
Master Cheater
Reputation: 3

Joined: 01 Aug 2019
Posts: 334

PostPosted: Sat Feb 29, 2020 1:25 pm    Post subject: Reply with quote

I can give you some ideas, I will use some examples in C/C++:

1) you can recreate a code injection through your program with the VirtuallocEx and WriteProcessMemory functions to hook the code that manages that address and registers each address it uses as a parameter (Make sure that the code uses only that address that always points to the value you are looking for).

2) You can hook the functions that are used to deallocate and reallocate the memory (If you know which language the program is written in you may have an idea of the function used given that there are multiple).

3) Codes that use that value will always know where the value is despite not having been deallocated and reallocated, so it should always be possible to get a working pointer but you cannot get it by typing its real address on te pointer scanner, try looking through Cheat Engine scanner (the same one you used to look up the value) for its address and when it changes look for its new address, if you are lucky you will find something, and use that to get a working pointer.
Back to top
View user's profile Send private message
aaax10
Newbie cheater
Reputation: 0

Joined: 25 Feb 2020
Posts: 13

PostPosted: Sun Mar 01, 2020 12:26 pm    Post subject: Reply with quote

Thanks for the reply, I'm thinking the address is calculated from a base address plus an offset, it isn't as simple as team number but still predictable somehow so I might not be able to find it using method 3, as I can't find that base. Where can I find more information about backtracing the game's functions? On Google everything is oriented toward building scripts on the engine, I needed to find more about reading the values externally. Thank you Smile
Back to top
View user's profile Send private message
DanyDollaro
Master Cheater
Reputation: 3

Joined: 01 Aug 2019
Posts: 334

PostPosted: Sun Mar 01, 2020 4:48 pm    Post subject: Reply with quote

It depends on what you want to know, what you need to do is:
Find a code that acts on that value, to act on the value you will need to have the address that will surely be passed as a parameter to a function (either via a register or via the stack), simply perform an injection of code to save the address on a previously allocated memory region, and through your program just read the value on that memory region, every time the function on which you performed the code injection will be executed the value will be updated (and you will have to read it again)
Back to top
View user's profile Send private message
aaax10
Newbie cheater
Reputation: 0

Joined: 25 Feb 2020
Posts: 13

PostPosted: Sun Mar 01, 2020 6:58 pm    Post subject: Reply with quote

EDIT: I found the base address, but I don't know how to find the offset that's on EDI, when scanning for it I get a couple of unreliable addresses only... I want to know how the game gets to this offset. I have "xor ebx,[ebp+edi*4+00]", it seems it's a variable offset
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites