| View previous topic :: View next topic |
| Author |
Message |
iroku Advanced Cheater
Reputation: 0
Joined: 18 Oct 2012 Posts: 54
|
Posted: Thu Mar 28, 2013 9:47 pm Post subject: help with trainer |
|
|
hi , i was trying to make a sort of trainig room for a game in GGPO,
I found the adress i wanted to change (the timer) and set to active with a value. This way the timer would always be set at the value i wanted.
This is nice and all so i did the same for p2 health bar(now this was a bit more of a pain to find its adress, it actually took its time)
So i quit and came back after some time and what i had saved wasnt working since the adresses had changed in this game.
So im now trying to make it so that i can save and have it done each time i enter the game.
I clicked the what writed to this adress(for the timer) and got:
0052ED97 - 881401 - MOV(ECX +EAX), DL
shoudnt i get an offset value like in this tut ?
"forum.cheatengine.org/viewtopic.php?p=2949473*
i clicked on info and got this:
img69.imageshack.us/img69/3721/extrainfo.png*
so i think i got some of this down...
ecx + eax
ecx = 108
eax 068b8020
so i did a search for 108 with hexa and 4 digit selected got a new bunch of adresses. Picked the first green adress i found clicked add adress manually, check the point option and added this new adress i just found. For ofset i placed eax(06b8020)
it worked for that time but once i reloaded the game it was a do it again all over, am i doing something wrong here ?
I think its eax. It changes but not as an offset value... ecx(108) stays the same |
|
| Back to top |
|
 |
Rectangle Advanced Cheater
Reputation: 1
Joined: 23 Feb 2013 Posts: 73
|
Posted: Thu Mar 28, 2013 11:30 pm Post subject: |
|
|
For addresses which change, you basically have two options:
- Perform a series of pointer scans
- Write an auto assembler script
For the first option...
Watch youtu[dot]be/8CJdV1Vfvv0
For the second option...
Watch youtu[dot]be/XfKZp8xthvA |
|
| Back to top |
|
 |
iroku Advanced Cheater
Reputation: 0
Joined: 18 Oct 2012 Posts: 54
|
Posted: Thu Mar 28, 2013 11:50 pm Post subject: |
|
|
pointer scan doesnt do it, after i reload the game he doesnt find any points. He goes from 1M results to 0. I gather that the fact that its a rom with no actual save data (exept for highscores)so he really doesnt keep it at any permanent adress.
ill have to look into code injection i guess :/ |
|
| Back to top |
|
 |
Rectangle Advanced Cheater
Reputation: 1
Joined: 23 Feb 2013 Posts: 73
|
Posted: Sat Mar 30, 2013 3:49 am Post subject: |
|
|
Shouldn't matter if it's a rom or not. If it runs on your computer, it's consuming RAM to store data which CE has the ability to manipulate.
Pointers are a standard programming concept... They "point" to a dynamic address in memory which stores a variable (and the address that a pointer is located at may or may not be static).
Therefore, a pointer scan searches for valid addresses which point to other addresses... and can be performed on any running application, virtually all of which use pointers.
Uncheck "only find pointers with static addresses" on your first pointer scan.
Also, reduce max level to 4 (defaults to 5 I think), and make sure you have at least ~45gb of free space on your hard drive.
And for best results, do your pointer scans using multiple machines.
Doing this ensures very different memory allocations by the target program, enabling CE to narrow down the results pretty damn fast, often saving several hours of your time.
Last edited by Rectangle on Sat Mar 30, 2013 4:14 am; edited 1 time in total |
|
| Back to top |
|
 |
Dark Byte Site Admin
Reputation: 471
Joined: 09 May 2003 Posts: 25835 Location: The netherlands
|
Posted: Sat Mar 30, 2013 3:56 am Post subject: |
|
|
If it is a rom then the max structsize must be at least the size of the rom+the address the rom is loaded in memory as pointers are relative to the emulated base address
In short: pointerscanner won't work unless you get the base address and use an autoassembler script or plugin that hooks ce's local memory functions and adjusts the address to the base of the emulated system (and of course don't rely on static addresses as base)
Code injection also won't be a good option, but it may give you the base address that you can use for a ceplugin _________________
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 |
|
 |
iroku Advanced Cheater
Reputation: 0
Joined: 18 Oct 2012 Posts: 54
|
Posted: Sun Mar 31, 2013 3:54 pm Post subject: |
|
|
| Dark Byte wrote: | If it is a rom then the max structsize must be at least the size of the rom+the address the rom is loaded in memory as pointers are relative to the emulated base address
In short: pointerscanner won't work unless you get the base address and use an autoassembler script or plugin that hooks ce's local memory functions and adjusts the address to the base of the emulated system (and of course don't rely on static addresses as base)
Code injection also won't be a good option, but it may give you the base address that you can use for a ceplugin |
where can i get info on this ? how to find this base adress, using the autoassemler with CE ?
This was solved @
h ttp://forum.cheatengine.org/viewtopic.php?t=563774&postdays=0&postorder=asc&start=30
page 3
take a look at
h ttp://forum.cheatengine.org/viewtopic.php?t=563803&postdays=0&postorder=asc&start=0
@Gniarf post as well. Thanks for the help |
|
| Back to top |
|
 |
|