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 


How to deal with a game like this

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking
View previous topic :: View next topic  
Author Message
Inotamira Orani
Newbie cheater
Reputation: 0

Joined: 22 Jun 2014
Posts: 12

PostPosted: Sun Jun 22, 2014 8:34 pm    Post subject: How to deal with a game like this Reply with quote

I've been trying to hack a game for some time now (you might have seen the two threads I've been in) and I've figured out what it does.

The game generates a random number (presumably after loading a save or when making a new character) and adds it to an existing value.

I believe it saves these values and their respective numbers in the save files as well, but this is far from what I'm working on right now.

The number is usually something completely absurd like 45682348273491, if your value is 5 then this random number would be 45682348273486.

Numbers are generated and added for all values except stackable items such as gold and the like.

What I would like to know, is if it's possible to hunt down the random number generator (the line of code that handles the number(s)) and force it to always be zero so the values turn up normal and if so, how.
Back to top
View user's profile Send private message
Rissorr
Master Cheater
Reputation: 3

Joined: 17 Sep 2013
Posts: 273
Location: Israel!

PostPosted: Mon Jun 23, 2014 1:18 am    Post subject: Reply with quote

Try changing the value type to Double or Float,
Also look what acsess this address and you can figure out the real one (if its not double or float, because there is just nothing to figure out)
Back to top
View user's profile Send private message
Inotamira Orani
Newbie cheater
Reputation: 0

Joined: 22 Jun 2014
Posts: 12

PostPosted: Mon Jun 23, 2014 3:40 am    Post subject: Reply with quote

mixmax35 wrote:
Try changing the value type to Double or Float,
Also look what acsess this address and you can figure out the real one (if its not double or float, because there is just nothing to figure out)


could you be a bit more specific? Change which number, the one I find that is the number being added? How would I go about using the number to back trace it to where ever the number being generated is at?
Back to top
View user's profile Send private message
cashd
Cheater
Reputation: 0

Joined: 25 Nov 2012
Posts: 25

PostPosted: Mon Jun 23, 2014 12:52 pm    Post subject: Reply with quote

i can suggest you another way.
if you know where in the code it produce the pseudo random number algorithm you may patch there by ollydbg or cheat engine(i prefer olly Razz)

if you know exactly which number is multiplyed by the random you can use ollydbg or cheat engine
in ollydbg you may try insert breakpoint on access read/write
and look at the assembly code

p.s
if you want to predict it dont use cheat engine for that, use ida pro and ollydbg
it is better tool to reverse code
Back to top
View user's profile Send private message
Inotamira Orani
Newbie cheater
Reputation: 0

Joined: 22 Jun 2014
Posts: 12

PostPosted: Mon Jun 23, 2014 8:59 pm    Post subject: Reply with quote

The problem there is that I don't comprehend Ollydbg very well, when the game starts it winds up inside a DLL instead of the game and I really don't understand what I'm supposed to be looking for or how to watch for shifting values in it let alone insert break points
Back to top
View user's profile Send private message
cashd
Cheater
Reputation: 0

Joined: 25 Nov 2012
Posts: 25

PostPosted: Tue Jun 24, 2014 1:20 pm    Post subject: Reply with quote

if you want to be advanced cheater and not newbie you should learn how to use ollydbg and ida pro, it is very good tool for the kind things you want to do.
you may start lena151 tutorials to understand how to work with ollydbg.

about the dll, it doesnt matter which moudle it is, you still can analyze the function.
my suggestion most of the times when i see random number in the wild they use GetTickCount() api
for example
you want to get number between 0 to 25
it should be in assembly
GetTickCount()%25
if you want try to get the same result everytime
you should patch GetTickCount to return 0 always
maybe it would do more affects to the game like speed hacks and etc
but you can check it
Back to top
View user's profile Send private message
desertricker
Advanced Cheater
Reputation: 0

Joined: 20 Jan 2013
Posts: 55
Location: 127.0.0.1

PostPosted: Mon Jun 30, 2014 9:39 am    Post subject: Re: How to deal with a game like this Reply with quote

Inotamira Orani wrote:
I've been trying to hack a game for some time now (you might have seen the two threads I've been in) and I've figured out what it does.

The game generates a random number (presumably after loading a save or when making a new character) and adds it to an existing value.

I believe it saves these values and their respective numbers in the save files as well, but this is far from what I'm working on right now.

The number is usually something completely absurd like 45682348273491, if your value is 5 then this random number would be 45682348273486.

Numbers are generated and added for all values except stackable items such as gold and the like.

What I would like to know, is if it's possible to hunt down the random number generator (the line of code that handles the number(s)) and force it to always be zero so the values turn up normal and if so, how.


If the addition algorithm is straight forward like randomnumber+value. You can already open the debugger then track back the code and find the register that holds "randomnumber" (assuming the randomnumber creating function is outside the addition function. But if the addition happens in the same function with creating function, unfortunately you have to do some maths to find a meaningful part (it can be a stable part of the random number or anything else). There's a lot tutorials about debugging in the forums, check it out.

_________________
Assembly var dediler geldik Very Happy
Back to top
View user's profile Send private message Visit poster's website
Rissorr
Master Cheater
Reputation: 3

Joined: 17 Sep 2013
Posts: 273
Location: Israel!

PostPosted: Mon Jun 30, 2014 3:09 pm    Post subject: Reply with quote

If you find the value that are multiplied by random number/encrypted/just a random number like this 547926789256
What i would do to find the REAL ONE (the not encrypted/multiplied)

1. right click > what writes
2. find the code/instruction that writes the long number
3. nop it/change it so it will NOT multiply/encrypt the long number

Hope you understand Smile
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