View previous topic :: View next topic |
Author |
Message |
hitmetwice Advanced Cheater
Reputation: 0
Joined: 20 Nov 2012 Posts: 63
|
Posted: Sat Oct 05, 2013 10:38 am Post subject: Pointer containing "program.exe" - explaination? |
|
|
How do I convert a pointer from a format like this:
address: "program.exe"+010868B4
offset1: 0x184
to a format like this:
address: 004E4DBC
offset1: F4
?
And what is the diffrence? This is really confisung me. A memory reading fucntion I found on the unternet does only work using the second format, but cheat engine's pointer scanner always gives me results that contain the .exe...
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25794 Location: The netherlands
|
Posted: Sat Oct 05, 2013 11:07 am Post subject: |
|
|
You will need to locate the location of program.exe in memory and add 010868B4 to it
Each time you run the game that address can be different, so you need to look that up. The toolhelp32 api's (module32first/module32next)
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
 |
hitmetwice Advanced Cheater
Reputation: 0
Joined: 20 Nov 2012 Posts: 63
|
Posted: Sat Oct 05, 2013 2:05 pm Post subject: |
|
|
Just for testing purposes, can Cheat Engine give me the current base address of the process?
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25794 Location: The netherlands
|
Posted: Sat Oct 05, 2013 2:14 pm Post subject: |
|
|
Go to the address using modulename+offset notation and check the destination addres
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
 |
hitmetwice Advanced Cheater
Reputation: 0
Joined: 20 Nov 2012 Posts: 63
|
Posted: Wed Oct 09, 2013 2:46 pm Post subject: |
|
|
Ah, I see.
I'm using ReadProcessMemory() btw.
Any idea if I even need to add the baseaddress?
btw I'm trying to do this in AutoHotkey atm and I'm using this cute lib:
http://pastebin.com/4wCX0XPX
Here is an example that works perfectly fine for the game Assault Cube:
Code: | hProcess := MemoryOpenFromName("ac_client.exe")
result := MemoryReadPointer(hProcess, 0x004E4DBC,"int",3, 1, 0xF4)
MemoryClose(hProcess)
MsgBox, %result% |
edit:
Take a look at this:
Both pointers are ALWAYS working, even on different devices.
So if I understood this correctly the game is always located at 400000 in the memory? oO
That's impossible, there must be a plausible way to convert the one format into the other. I mean for this game it looks like I could simply replace "ac_client.exe" with "400000". But that would work for every game right?
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25794 Location: The netherlands
|
Posted: Wed Oct 09, 2013 4:40 pm Post subject: |
|
|
You can replace it with 00400000 if the base address is 00400000 and it's an old game or they disabled the relocation explicitly
Judging from the window header lacking the glass effect my guess is that you're on xp with a stupid style, or windows 8.
If windows 8 there is a big chance the module will be loaded at a different location each time if it is a game that came out recently (last 8 years)
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.
Like my help? Join me on Patreon so i can keep helping |
|
Back to top |
|
 |
hitmetwice Advanced Cheater
Reputation: 0
Joined: 20 Nov 2012 Posts: 63
|
Posted: Wed Oct 09, 2013 5:21 pm Post subject: |
|
|
Yeah I'm on windows 8. AssaultCube was released in Novebmer 2006.
And the baseaddress is always 00400000 on this computer. (Even after restarts etc.)
But well, I start understand it. Is there an easy way of retrieving the process baseaddress in C++ that does not require dll injection? Is there a function that I can just use?
|
|
Back to top |
|
 |
Dark Byte Site Admin
Reputation: 470
Joined: 09 May 2003 Posts: 25794 Location: The netherlands
|
|
Back to top |
|
 |
|