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 


Trying to make a trainer, pointer problems.

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

Joined: 03 Feb 2009
Posts: 26
Location: In an array of bytes.

PostPosted: Wed Feb 18, 2009 6:13 am    Post subject: Trying to make a trainer, pointer problems. Reply with quote

Hello.

I just finished all steps of the cheat engine tutorial. So... I decided to try memory editing with a game. I found the address, changed it and everything works fine. But the problem is, when searching what accesses the address, I get way to many pointers, like 10-15. And assuming thats a multi-level pointer that would take hours to find a valid pointer. Is there any way to determine which address is the one you need, and which one is useless?
Back to top
View user's profile Send private message
Snow1337
Catastrophic Cheatah
Reputation: 1

Joined: 12 Oct 2004
Posts: 183
Location: Your, Computer

PostPosted: Wed Feb 18, 2009 9:25 am    Post subject: Reply with quote

Right click the address you found and click "Find out what accesses this address" and then when you catch what you want.. right click it and click "More information" the pointer is usually the esi + a number.. like.. esi would be 00221155 + 08 .. so the pointer is 8 bytes more than the esi, so the pointer would be 0022115D.

Have fun, it can have a lot of pointers but theres only one main pointer Wink

_________________
Back to top
View user's profile Send private message Visit poster's website
lnquisitor
Cheater
Reputation: 0

Joined: 03 Feb 2009
Posts: 26
Location: In an array of bytes.

PostPosted: Wed Feb 18, 2009 12:01 pm    Post subject: Reply with quote

Vao wrote:
Right click the address you found and click "Find out what accesses this address" and then when you catch what you want.. right click it and click "More information" the pointer is usually the esi + a number.. like.. esi would be 00221155 + 08 .. so the pointer is 8 bytes more than the esi, so the pointer would be 0022115D.

Have fun, it can have a lot of pointers but theres only one main pointer Wink


Well, theres many ESI addresses... look http : //img93.imageshack.us/my.php?image=19421017hu6.jpg

As you may understand, it would take lots and lots of time to find out the right one, because of multilevel pointers...
Back to top
View user's profile Send private message
Snow1337
Catastrophic Cheatah
Reputation: 1

Joined: 12 Oct 2004
Posts: 183
Location: Your, Computer

PostPosted: Wed Feb 18, 2009 3:05 pm    Post subject: Reply with quote

Add one of the pointers to the address list, like for example add

01b446cf and then right click it and search for the pointer of the pointer... the main pointer should show up in green as the rest are black.

Hope I helped

_________________
Back to top
View user's profile Send private message Visit poster's website
lnquisitor
Cheater
Reputation: 0

Joined: 03 Feb 2009
Posts: 26
Location: In an array of bytes.

PostPosted: Thu Feb 19, 2009 6:36 am    Post subject: Reply with quote

I figured out how to find all of the pointers... The problem was, there were different pointers for the GUI for resource adding and for the resources themselves.. quite complicated for a noob like me Sad

Now I have created a cheat table and a trainer through CE's trainer maker, but.... I would like to make an assembly script like this one: http : //forum.cheatengine.org/viewtopic.php?t=268214
If anybody could explain the basics on how to make a script like that, I would be verry happy Rolling Eyes

#Edit: I found some assembly tutorials, but I don't understand something... In the link above theres a line in the assembly script: H5_Game.exe+16cc89, the 16cc89 is the pointer or the offset? If my pointer is 031A61EC then I must write game.exe+31A61EC ??
Back to top
View user's profile Send private message
bungholio
Cheater
Reputation: 0

Joined: 11 Feb 2009
Posts: 45

PostPosted: Thu Feb 19, 2009 9:35 pm    Post subject: Reply with quote

The 16cc89 is the pointer. Pointer offsets can't be more than 4 digits, and 16cc89 is 6 digits.

If your pointer is at 031A61EC, you would write game.exe+(31A61EC-400000). So it would be game.exe+2da61ec. You subtract 400000 because game memory starts at 400000 (always?).
Back to top
View user's profile Send private message
lnquisitor
Cheater
Reputation: 0

Joined: 03 Feb 2009
Posts: 26
Location: In an array of bytes.

PostPosted: Fri Feb 20, 2009 12:45 am    Post subject: Reply with quote

bungholio wrote:
The 16cc89 is the pointer. Pointer offsets can't be more than 4 digits, and 16cc89 is 6 digits.

If your pointer is at 031A61EC, you would write game.exe+(31A61EC-400000). So it would be game.exe+2da61ec. You subtract 400000 because game memory starts at 400000 (always?).


Thanks for the reply ^_^ It all makes sense now. Well, most applications start at 400000 but some old apps esp. 16 bit ones start at different locations. Just to make sure, if I just type 31A61EC: instead of game.exe+2da61ec the script will work untill a new version of the game is released?
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