NKDietrich How do I cheat?
Reputation: 0
Joined: 07 Dec 2004 Posts: 1
|
Posted: Tue Dec 07, 2004 4:01 am Post subject: A question regarding a "roadblock" I came to in my |
|
|
Greetings folks.
I've used memory editors for years in games, first was a Game Genie for my NES. A lot of experience just fiddling with basic values in games. Health money, and so on.
I'm currently playing through Final Fantasy 1 for the Game Boy Advance in an emulator. Now I could cheat just about anything I wanted to without problems one way or another, but for the sake of learning I wanted to figure out how to do something a specific way.
What I ran into was that I could not find exactly how it added experience to the total after a battle.
Looking at what writes to the address showed me:
00425924 - 89 5c 05 00 - mov [ebp+eax+00],ebx
Where EBP=000026DC,EAX=8F2ECC0,EBX=00046A20
EAX+EBP gives me the address where the characters total XP lies. And EBX is the hex value of the new total XP after the battle.
For the life of me I couldnt figure out how it decided the value of EBX. So I decided to look at what READS from the address (I assumed that to find the new total XP, it would have to read the address before it could add to it.)
Two addresses came up, one I dismissed as irrelevant as it seemed to happen when my character was moved on the screen.
The one that happened at the end of a battle was this:
00425e96 - 8b 14 0a - mov edx,[edx+ecx]
Where EDX=000026DC,ECX=8F2ECC0
What that is doing is writing EDX+ECX (which as I said above adds up to the address of the Total XP) back to EDX.
At this point I'm stumped as to where to go next, as I have extremely minimal assembler knowledge.
Any advice you could give would be appreciated.
|
|