 |
Cheat Engine The Official Site of Cheat Engine
|
| View previous topic :: View next topic |
| Author |
Message |
hackers R us How do I cheat?
Reputation: 0
Joined: 31 Dec 2006 Posts: 0
|
Posted: Thu Jan 18, 2007 4:49 pm Post subject: what is the point of pointers? |
|
|
what do pointers do?
_________________
In Games, there are three things to keep in mind.....
1. Hack Or Be OWNED
2. Win OR Be OWNED
3. OWN Or Be OWNED!!!! |
|
| Back to top |
|
 |
kkid28 Expert Cheater
Reputation: 0
Joined: 30 Sep 2006 Posts: 110 Location: The only flat part of the planet.
|
Posted: Thu Jan 18, 2007 7:12 pm Post subject: |
|
|
When you restart a game the address changes, say the address for your score is 01234567 and next time you restart the game it won't be 01234567 it'll be something else. The POINTER stays the same (the static pointer) so you can just save the table and you don't have to search any more, there's a tutorial at my site, www.freewebs.com/cheatenginetuts
_________________
|
|
| Back to top |
|
 |
tnooble How do I cheat?
Reputation: 0
Joined: 18 Jan 2007 Posts: 1
|
Posted: Thu Jan 18, 2007 7:41 pm Post subject: |
|
|
I will try to explain this as simply as possible.
Basically data types (like int, double, float, char, String, etc.) store data. Many of these are variable, meaning you can change the value stored within them. You can think of these as boxes that store something inside them, if it helps you visualize it.
A pointer also stores data, though all it does is store the memory address of a data type or instruction. You can think of these as the list that tells you what each box (variable) holds (data type and value).
It can be a little bit hard to conceptualize, but if you were writing code and wanted to change the value of a variable, how would you know where the variable is stored in memory? That's what a pointer is for. In simple programming languages like BASIC, pointers are not handled by the user.
In C and C++, however, you have direct access to them. What does this mean? It means that you can perform your own calculations on pointer addresses, which can be much faster if you know exactly what you are searching for.
Instead of having to search through an array, which on average takes n/2 units of work from your CPU for n pieces of data in the array, you can go directly to what you want, which generally takes only a few units of work. When you're dealing with small arrays of 50 items or smaller, you won't notice a big overhead difference, but when you start hitting up in the 1,000's and even 1,000,000's, you will see significant performance increases when you know exactly where the item is.
Also, another VERY important thing about pointers is that variables do not always stay in the same spot. Pointers are generally kept in static locations, and so they can be much easier to locate.
Let's say a game initializes your HP every time you load a new map. The pointer that points to your HP will always point to the correct data, but if you are just looking at the data you had already found and you switch maps, there is a good chance you won't be seeing the right value anymore and you will have to refind it. If you just locate the base pointer, you don't have to search around everywhere each time a map loads. It's very handy to know how pointers work and how you can use them to your advantage, whether you are writing software/programming, or you are hacking into software that has already been written. The better your knowledge of how the structure of programs works, the better you will be at both.
|
|
| Back to top |
|
 |
hallowicked Master Cheater
Reputation: 0
Joined: 16 Aug 2006 Posts: 312 Location: Kansas City
|
Posted: Sun Jan 28, 2007 12:12 am Post subject: |
|
|
Okay, that all wasn't very simple but they are right. Okay you understand how to find values right? And how you can change them and they change certain things in your game. Well as you do that they're dynamic meaning they change at different times, usually when you restart the game. SO, what pointers do is when you find that original value that you're changing, pointers are what "remember" that value and change it, so finding the pointer you can save that in a table so you won't have to scan for a new address everytime you get on again.
_________________
|
|
| 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
|
|