 |
Cheat Engine The Official Site of Cheat Engine
|
| View previous topic :: View next topic |
| Author |
Message |
JohnnyW Newbie cheater
Reputation: 0
Joined: 01 Jan 2012 Posts: 10
|
Posted: Wed Nov 06, 2013 10:32 am Post subject: Baffled by Assembly [Newbie!] |
|
|
I'm trying to write an invincibility hack for The Chaos Engine - Remastered.
I've followed the first 6 tutorials, and think I know what I'm doing, but I've hit a wall.
My health appears to be stored as a single byte at: 01738B08
Even if I freeze my health (by clicking the "Active" checkbox), I apparently can still die. I'm guessing this is because I would still die if my health was 100% when I was hit, so the fact that its frozen doesn't make any difference. (Either that or the calculation is going through quicker than the "freeze"?)
I tried looking for the code that writes to the address, and I found this:
| Code: | The Chaos Engine - Remastered.exe+11E9:
mov [eax+The Chaos Engine - Remastered.exe+143E1D0],cl
|
My limited understanding of Assembler suggests this is simply moving the value of [eax+The Chaos Engine - Remastered.exe+143E1D0] to cl, but when I change it to NOP the game immediately stops working. Which is to say that the music still plays, but the characters disappear from the screen and cannot be controlled.
(Restoring the original code brings the game back immediately, and allows me to play as normal.)
What's going on here? Is it some kind of anti-cheat check? Or have I done something wrong?
Also, why is 0173E8B08 also seen as "The Chaos Engine - Remastered.exe"+14E8B08? And how do I discover what "The Chaos Engine - Remastered.exe"+143E1D0 is?
Also, also: Is there a way in CE for me to see the value of eax and "cl"? Thanks for any help.
|
|
| Back to top |
|
 |
justa_dude Grandmaster Cheater
Reputation: 23
Joined: 29 Jun 2010 Posts: 893
|
Posted: Wed Nov 06, 2013 1:04 pm Post subject: Re: Baffled by Assembly [Newbie!] |
|
|
| JohnnyW wrote: | | My limited understanding of Assembler suggests this is simply moving the value of [eax+The Chaos Engine - Remastered.exe+143E1D0] to cl |
It actually works the other way in Intel syntax - you're moving the byte in CL into the address specified by the formula inside the brackets.
| JohnnyW wrote: | | when I change it to NOP the game immediately stops working. |
Check to see what other values it's writing. It may be responsible for updating lots of stuff other than the health. Or, perhaps, check to see what modifies cl and disable that instead.
| JohnnyW wrote: | | why is 0173E8B08 also seen as "The Chaos Engine - Remastered.exe"+14E8B08? And how do I discover what "The Chaos Engine - Remastered.exe"+143E1D0 is? | Fire up the memory viewer and goto that address. Try toggling the "show module names" if it's confusing.
| JohnnyW wrote: |
Also, also: Is there a way in CE for me to see the value of eax and "cl"? Thanks for any help. |
If you're playing in a window, so that freezing the game won't hard-lock your system, try setting a breakpoint. Alternatively, set a trace. Alternatively, do a "find out what addresses this instruction writes" or whatever, and the little summary page for each hit should show the registers at the time of execution.
|
|
| Back to top |
|
 |
semmelbroesel Newbie cheater
Reputation: 0
Joined: 16 Nov 2013 Posts: 10
|
Posted: Sat Nov 16, 2013 9:08 pm Post subject: |
|
|
Sorry for semi-off-topic, but if you're successful, please share it here - I wouldn't mind a trainer for that game Still remember it from the old Amiga days playing it with my brother...
|
|
| Back to top |
|
 |
|
|
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
|
|