 |
Cheat Engine The Official Site of Cheat Engine
|
| View previous topic :: View next topic |
| Author |
Message |
windwaver Newbie cheater
Reputation: 0
Joined: 18 May 2006 Posts: 21
|
Posted: Thu Dec 11, 2008 6:35 pm Post subject: Need assistant for tracking large number of variables |
|
|
Folks, what happens if the value you're trying to track runs into tens of thousands? Example, a particular game value is 100 and an initial scan turns up 30K variables.
Even after a few more 'next scans', the number of variables having the value 100 is still around 30K. There's no way I can track what 30K different variables contain and it'll freeze up the game if I set every value to the one I want.
How do you guys deal with large number of variables that you track? Or am I doing it wrongly?
Appreciate any comments.
Uli, you there? You have an email or MSN?
|
|
| Back to top |
|
 |
sloppy Expert Cheater
Reputation: 0
Joined: 17 Aug 2008 Posts: 123
|
Posted: Thu Dec 11, 2008 10:25 pm Post subject: |
|
|
| Ideally, you would manipulate the value ingame then search. For example, if you wanted to find a hp variable, take a few hits, search for your current hp value, take a few more, search within the previous results, repeat until operation big success.
|
|
| Back to top |
|
 |
windwaver Newbie cheater
Reputation: 0
Joined: 18 May 2006 Posts: 21
|
Posted: Fri Dec 12, 2008 1:40 am Post subject: |
|
|
| sloppy wrote: | | Ideally, you would manipulate the value ingame then search. For example, if you wanted to find a hp variable, take a few hits, search for your current hp value, take a few more, search within the previous results, repeat until operation big success. |
Yeah, it's easy if you have a unique or few values to track in game but the problem comes when you have say a figure that is 100% (track 100) and 30K other variables turn up when you search (which also has 100 in'em).
|
|
| Back to top |
|
 |
sloppy Expert Cheater
Reputation: 0
Joined: 17 Aug 2008 Posts: 123
|
Posted: Fri Dec 12, 2008 2:15 am Post subject: |
|
|
| You are missing the point.. make the value change. Whether it be losing health, casting spells or chuggin some potions, you should be able to affect the variable with your actions ingame. Track those changes.
|
|
| Back to top |
|
 |
windwaver Newbie cheater
Reputation: 0
Joined: 18 May 2006 Posts: 21
|
Posted: Fri Dec 12, 2008 5:12 am Post subject: |
|
|
| sloppy wrote: | | You are missing the point.. make the value change. Whether it be losing health, casting spells or chuggin some potions, you should be able to affect the variable with your actions ingame. Track those changes. |
What if the value is hidden? It's just a probability within the game (you don't see the value), how do you track that? Not everything is so straight forward.
|
|
| Back to top |
|
 |
SXGuy I post too much
Reputation: 0
Joined: 19 Sep 2006 Posts: 3551
|
Posted: Fri Dec 12, 2008 10:14 am Post subject: |
|
|
I think your choice of words is causing confusion.
If something is a variable it means it always changes, what you need to be more specific about is whether that variable is the address, or the value.
If its the address, then chances are, there will be something that always calls it or a pointer to it, find that first, then use that in future to track down your correct address
If the value is variable then it means it will change because of some reason or another, if you know what that value is connected to, you can alter it to narrow youre search.
But since you have said that its just a particular value which can not be changed by doing anything, then my advice to you, would be to first track down the exact address you want, then find a way to quickly find it again in the future.
Even if an address is variable (i.e changes every time the process is run) it can stil be found.
For instance, if an address holding a specific value was always variable and couldnt be found, how would the program/game know where to find it?
Exactly, you need to trace that address and work out the method use to get to it, and copy that when finding the address in future.
Something as simple as finding some ASM near by that never changes, search for its array, and then jump so many bytes to your destination address.
|
|
| Back to top |
|
 |
Wintermoot Expert Cheater
Reputation: 0
Joined: 08 Nov 2007 Posts: 198
|
Posted: Fri Dec 12, 2008 11:03 pm Post subject: |
|
|
| windwaver wrote: |
What if the value is hidden? It's just a probability within the game (you don't see the value), how do you track that? Not everything is so straight forward. |
/facepalm
You should know whether the value increases or decreases. Cheat Engine has many useful scanning functions which would help you find an unknown variable.
Heck, even if you don't know if it increases or decreases, you can work it out.
|
|
| Back to top |
|
 |
windwaver Newbie cheater
Reputation: 0
Joined: 18 May 2006 Posts: 21
|
Posted: Sat Dec 13, 2008 12:09 pm Post subject: |
|
|
| SXGuy wrote: | I think your choice of words is causing confusion.
If something is a variable it means it always changes, what you need to be more specific about is whether that variable is the address, or the value.
If its the address, then chances are, there will be something that always calls it or a pointer to it, find that first, then use that in future to track down your correct address
If the value is variable then it means it will change because of some reason or another, if you know what that value is connected to, you can alter it to narrow youre search.
But since you have said that its just a particular value which can not be changed by doing anything, then my advice to you, would be to first track down the exact address you want, then find a way to quickly find it again in the future.
Even if an address is variable (i.e changes every time the process is run) it can stil be found.
For instance, if an address holding a specific value was always variable and couldnt be found, how would the program/game know where to find it?
Exactly, you need to trace that address and work out the method use to get to it, and copy that when finding the address in future.
Something as simple as finding some ASM near by that never changes, search for its array, and then jump so many bytes to your destination address. |
OK, the variable refers to the value that is referred to in a particular memory space. I've tried tracking using the address space but the game is I think scrambling the value in different addresses the moment it changes e.g. success rate of getting something from a treasure chest is 100% (so you start tracking 100 which is not visible) -> result is 30K variables that are 100 in value -> 2nd treasure chest containing an item is 0 (no treasure) but this 0 seems to be bumped into another memory address that is not within the 1st 30K that were scanned.
Even if the 2nd treasure chest contains an item (100%, always in the same memory location), I have 30K variables to track, this is very tedious. How do you guys deal with this? (Don't bother with asking me if I've done the pinball tutorial, I've long gone past that stage).
|
|
| Back to top |
|
 |
Dark Byte Site Admin
Reputation: 474
Joined: 09 May 2003 Posts: 25971 Location: The netherlands
|
Posted: Sat Dec 13, 2008 12:13 pm Post subject: |
|
|
Ever tried the unrandomizer ?
Success rate of something can be done by calling random() and then if the result is higher then a preset value you get something else not.
Problem is that that that preset value is a static value, so can't be found with scanning.
But, if there's something else involved with the calculation. E.g luck, dex, etc... then you can find those values instead.
_________________
Tools give you results. Knowledge gives you control.
Like my help? Join me on Patreon so i can keep helping |
|
| Back to top |
|
 |
windwaver Newbie cheater
Reputation: 0
Joined: 18 May 2006 Posts: 21
|
Posted: Sun Dec 14, 2008 12:38 am Post subject: |
|
|
| Dark Byte wrote: | Ever tried the unrandomizer ?
Success rate of something can be done by calling random() and then if the result is higher then a preset value you get something else not.
Problem is that that that preset value is a static value, so can't be found with scanning.
But, if there's something else involved with the calculation. E.g luck, dex, etc... then you can find those values instead. |
OK, at least I see a good post here. This is something to ponder over but is there a function in the CE that link track more than 1 variable? In other words, track variable 1 if variable 2 changes, etc.
Or, how do you narrow down a supposely large number of variables to track (e.g 30K) when the value of the variable itself is not very unique?
|
|
| Back to top |
|
 |
Dark Byte Site Admin
Reputation: 474
Joined: 09 May 2003 Posts: 25971 Location: The netherlands
|
Posted: Sun Dec 14, 2008 12:48 am Post subject: |
|
|
your only solution is to make that value change in game using normal in-game mechanics, and then scan for the new value using next scan.
But only possible if that value can actually change without doing a full map reload.
Otherwise you'll have to dissect the game line by line to find it
_________________
Tools give you results. Knowledge gives you control.
Like my help? Join me on Patreon so i can keep helping |
|
| Back to top |
|
 |
SXGuy I post too much
Reputation: 0
Joined: 19 Sep 2006 Posts: 3551
|
Posted: Sun Dec 14, 2008 6:30 am Post subject: |
|
|
| windwaver wrote: | | Dark Byte wrote: | Ever tried the unrandomizer ?
Success rate of something can be done by calling random() and then if the result is higher then a preset value you get something else not.
Problem is that that that preset value is a static value, so can't be found with scanning.
But, if there's something else involved with the calculation. E.g luck, dex, etc... then you can find those values instead. |
OK, at least I see a good post here. This is something to ponder over but is there a function in the CE that link track more than 1 variable? In other words, track variable 1 if variable 2 changes, etc.
Or, how do you narrow down a supposely large number of variables to track (e.g 30K) when the value of the variable itself is not very unique? |
The way you narrow down results, is by the method you have already mentioned, by searching value, then changed, but like you already said this doesnt work, because if one box has 100% chance but another has 0, they obviously do not have that information held by the same location/address, which is why your results come back unhelpfull.
Therefore i would suggest a new aproach to your thinking.
For a start, if a type of object has 100% chance of rewarding you, but another has 0%, its likely this is controlled by the game server, and no amount of CE searching will help with that, it goes like this.
Client > If BoxA is Opened Send Packet to Server with box details > Sever sends back reward info.
Now, i would suggest you try to change the info sent to the server, so that when you open a box with 0% chance, the server thinks you opened one with 100& chance.
So have you tried packet editing? record the packets that get sent when you open both boxes, and check for differences, its likely there will only be a slight difference.
|
|
| Back to top |
|
 |
windwaver Newbie cheater
Reputation: 0
Joined: 18 May 2006 Posts: 21
|
Posted: Sun Dec 14, 2008 6:34 am Post subject: |
|
|
| Dark Byte wrote: | your only solution is to make that value change in game using normal in-game mechanics, and then scan for the new value using next scan.
But only possible if that value can actually change without doing a full map reload.
Otherwise you'll have to dissect the game line by line to find it |
Dark Byte
Yeah, things like changing HP, MP, etc is easy. Problem comes when that value is not visible and to start tracking, you'll end up with 30K variables. Narrowing the large number of variables is very tedious and even worse, I think the tracked variable gets pop into another memory location randomly.
That's because whenever I scan for the value, the number of variables are always around 30K even after narrowing down. That can only mean that the variable I'm tracking gets randomly pop into some other address spaces.
I wish I can dissect the game line by line, that'll be much easier than tracking 30K variables
SXGuy
Hmmm, that makes sense. How do you start to packet edit? Any tools I should look for?
|
|
| Back to top |
|
 |
SXGuy I post too much
Reputation: 0
Joined: 19 Sep 2006 Posts: 3551
|
Posted: Sun Dec 14, 2008 6:38 am Post subject: |
|
|
your problem is you assume that 2 different things are stored at 1 location.
For example, you automatically assume that there will be 1 address or area that decides whether a box with 100% chance of reward will reward you, and one with 0% chance wont, 99% sure the game does not work in that way, no game does.
EDIT: Try WPE first, search for that in google, its pretty straight forward how to use it.
|
|
| Back to top |
|
 |
Razor Hacker How do I cheat?
Reputation: 0
Joined: 26 Nov 2008 Posts: 6
|
Posted: Sun Dec 14, 2008 7:05 am Post subject: |
|
|
| Dont you need vista for that?
|
|
| 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
|
|