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 


Help me hack a game

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Discussions
View previous topic :: View next topic  
Author Message
nonnonpikari
How do I cheat?
Reputation: 0

Joined: 08 Jun 2018
Posts: 4

PostPosted: Sat Jun 09, 2018 1:01 am    Post subject: Help me hack a game Reply with quote

Hello!

I am just starting to use cheat engine and managed to complete the tutorial, but right now i am really new at this and i don't know most of the assembler codes...

I am trying to hack a rpg game to make a 'God + One hit' mode.

I found out that health is a Double type of data and every time a battle happens the addresses change...

Tried first to do a LV 6 (Offset 4096) Pointer scan without a valid result... almost 6 hours doing it Sad

After that i tried doing like Step 9 of the tutorial and found out a possible data that can show if it's a party member or a enemy... [edx+68] if 4 then party, if 1 enemy... (Tried several times with diferent setting and this was the value that make the diference between the groups).

and finally tried to change the code...

The assembler code that accesses the Health data is the next:

RPGGame.exe+?????? - 8B 02 - mov eax,[edx]
RPGGame.exe+?????? - 89 01 - mov [ecx],eax
RPGGame.exe+?????? - 8B 42 04 - mov eax,[edx+04]
RPGGame.exe+?????? - 89 41 04 - mov [ecx+04],eax

Not really having a clue of what this is doing considering that the first 2 lines have more than 40 counts and the 2 final ones only 2...???

So tried experimenting Razz
And this is how it looked my replaced code:

cmp [edx+68],4
jne original code
jmp exit

original code:
mov [edx],1
jmp exit

but only got the game closing... an error on my behalf surely...

I also tried to change the original code lines to 'code that do nothing' and the game just closed at the very first line... maybe protection from the game???

Please, if you can and want, help me find a right solution to make my 'God + One hit' mode possible

Thank you for your kind attention! Smile

PD I hope i didn't break any rule with this post...
Back to top
View user's profile Send private message
OldCheatEngineUser
Whateven rank
Reputation: 20

Joined: 01 Feb 2016
Posts: 1587

PostPosted: Sat Jun 09, 2018 2:46 am    Post subject: Reply with quote

its possible.

Code:
RPGGame.exe+?????? - 89 41 04 - mov [ecx+04],eax

assuming this instruction writes to your health as well as the enemies, then compare to find something different between you and enemies.

the script should be something like:

Code:
newmem:
cmp dword ptr [edx+68],01
je originalcode
// if there is then paste them here
jmp return // assuming there is no extra instructions under originalcode

originalcode:
neg eax
mov [ecx+04],eax
jmp return

_________________
About Me;
I Use CE Since Version 1.X, And Still Learning How To Use It Well!
Jul 26, 2020
STN wrote:
i am a sweetheart.
Back to top
View user's profile Send private message Visit poster's website
nonnonpikari
How do I cheat?
Reputation: 0

Joined: 08 Jun 2018
Posts: 4

PostPosted: Sat Jun 09, 2018 10:00 pm    Post subject: Reply with quote

Thanks OldCheatEngineUser!

I am still trying to make this to work... no luck so far, but will keep doing for a while.

I will have to learn a lot more of assembler Razz
Back to top
View user's profile Send private message
nonnonpikari
How do I cheat?
Reputation: 0

Joined: 08 Jun 2018
Posts: 4

PostPosted: Sun Jun 10, 2018 10:18 pm    Post subject: Reply with quote

Well... found out that the analysis i did was for the things that accesses to the address of the value... so i tried again for the things that write to the address of the value and found out 2 lines that do it every time one party member or one enemy receives damage:

mov [edx],eax
mov [edx+04],eax

This is the complete part of the assembler memory that includes the lines:

???.exe+?????? - 8B 7D F8 - mov edi,[ebp-08]
???.exe+?????? - 8B 55 F4 - mov edx,[ebp-0C]
???.exe+?????? - 8B 4D 14 - mov ecx,[ebp+14]
???.exe+?????? - 8B 01 - mov eax,[ecx] <=
???.exe+?????? - 89 02 - mov [edx],eax
???.exe+?????? - 8B 41 04 - mov eax,[ecx+04] <=
???.exe+?????? - 89 42 04 - mov [edx+04],eax
???.exe+?????? - 8B 41 08 - mov eax,[ecx+08]
???.exe+?????? - 89 42 08 - mov [edx+08],eax

Checking the values i found out that in the 2 lines the eax register is copying the value of the health to edx (that is a pointer for the address of the health value), because is a Double type...

So i tried with this (right know trying to give every party member a value of 5,000,000 of health):


cmp dword ptr [edx+68],01
je originalcode
mov dword ptr [edx],0
mov eax,[ecx+04]
mov dword ptr [edx+04],1095963344
jmp exit

originalcode:
mov [edx],eax
mov eax,[ecx+04]
mov [edx+04],eax


But that only got the program to close...

Any advice is welcome Wink

and please remember i just started to learn...
Back to top
View user's profile Send private message
OldCheatEngineUser
Whateven rank
Reputation: 20

Joined: 01 Feb 2016
Posts: 1587

PostPosted: Mon Jun 11, 2018 3:03 am    Post subject: Reply with quote

Code:
cmp dword ptr [edx+68],01 // compare if enemy?
je originalcode // if so then go to original code?
mov [edx],00000000
mov [edx+04],40590000 // replace with 408F4000 for 1000 health
jmp exit // 40590000 this gives player 100 health of double data type

originalcode:
mov [edx],eax
mov eax,[ecx+04]
mov [edx+04],eax

_________________
About Me;
I Use CE Since Version 1.X, And Still Learning How To Use It Well!
Jul 26, 2020
STN wrote:
i am a sweetheart.
Back to top
View user's profile Send private message Visit poster's website
nonnonpikari
How do I cheat?
Reputation: 0

Joined: 08 Jun 2018
Posts: 4

PostPosted: Mon Jun 11, 2018 10:08 am    Post subject: Reply with quote

Thanks again OldCheatEngineUser!

I tried exactly the code you wrote and the game keeps closing... not sure why...

So i tried testing with something like this

newmem:
jmp exit
(no original code for this test Razz)

And the game still closes... not sure what i am doing wrong...

Anyway thanks for the kind attention!

Will keep testing to see if i found what's the problem, but what i think right now if that the game is protected for this kind of change...
Back to top
View user's profile Send private message
OldCheatEngineUser
Whateven rank
Reputation: 20

Joined: 01 Feb 2016
Posts: 1587

PostPosted: Mon Jun 11, 2018 5:45 pm    Post subject: Reply with quote

pretty sure you are doing something wrong, or you provided some wrong infos. (unless the game have something ... yeah)
anyway ill pm you about this.

_________________
About Me;
I Use CE Since Version 1.X, And Still Learning How To Use It Well!
Jul 26, 2020
STN wrote:
i am a sweetheart.
Back to top
View user's profile Send private message Visit poster's website
ana5055
How do I cheat?
Reputation: 0

Joined: 13 Jun 2018
Posts: 0

PostPosted: Wed Jun 13, 2018 10:20 pm    Post subject: Reply with quote

nice
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 Discussions 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