| View previous topic :: View next topic |
| Author |
Message |
sh00ter999 Advanced Cheater
Reputation: 1
Joined: 17 May 2008 Posts: 89
|
Posted: Thu Feb 26, 2009 12:05 pm Post subject: HOW TO SCAN THE POINTER FOR A FLOAT ADRESS !?!?? |
|
|
Hey guys :/
Well i still got a big Problem with the fucking pointers -.-
Here my last thread
http://forum.cheatengine.org/viewtopic.php?t=374852
I know exactly what my prob is ...
I get the x coordinate adress of my charakter and if i choose "find out what writes..." then i get 1 code and the hex code of the thing between the [...]'s is always the same...
i ve tried to search in 4bytes hex -> Nothing
i ve tried to search in 2 bytes hex -> thousands
i ve searched in 8 bytes ->tenthousands...
I dunno how to find a pointer for this float adress ._.
Please help meh :/
_________________
Hyes! |
|
| Back to top |
|
 |
Monkeys I post too much
Reputation: 29
Joined: 20 Jul 2006 Posts: 2411
|
Posted: Thu Feb 26, 2009 1:12 pm Post subject: |
|
|
A question:
When you do the scan, what MOV assembly commands do you exactly get?
Some examples
| Code: |
MOV eax,[0083592]
MOV eax,[eax+08]
|
Give me EXACTLY what you get and I might be able to help.
A normal programmer initialises his pointers in the same type as the pointed value, but yeah, not many programmers are normal.
I know it might be hard finding the HEX representation of a float value, but that's because there are different ways of storing it. (Floating point, two's complement, etc...)
PS: I'm not promising I have a solution for your case, but I have one for SOME cases like this.
_________________
Get a lid on that zombie,
he's never gonna be alri-i-ight.
Oooh get a lid on that zombie,
or he's gonna feed all night. |
|
| Back to top |
|
 |
sh00ter999 Advanced Cheater
Reputation: 1
Joined: 17 May 2008 Posts: 89
|
Posted: Thu Feb 26, 2009 1:39 pm Post subject: |
|
|
| Code: | 0053f9e1 - 89 11 - mov [ecx],edx
0053fac5 - 89 08 - mov [eax],ecx |
_________________
Hyes! |
|
| Back to top |
|
 |
sven3107 Expert Cheater
Reputation: 0
Joined: 04 Feb 2009 Posts: 118 Location: Belgium
|
Posted: Thu Feb 26, 2009 4:20 pm Post subject: |
|
|
Try this: click 'Memory view' in CE and press Ctrl+A, then paste the code below into the text field
| Code: |
[ENABLE] // Enables the code below
alloc(newmem,2048) //2kb should be enough
label(returnhere)
label(originalcode)
label(exit)
alloc(mypointer,4) // Add a new address with a length of 4 bytes so you can use it for a pointer
0053F9E1:
jmp newmem
nop
nop
returnhere:
newmem:
mov [mypointer],ecx // Writes whatever ecx points towards to your pointer
registersymbol(mypointer) // Registers your pointer so you can treat it like a base address
originalcode:
mov [ecx],edx // The code that writes to your address
exit:
jmp returnhere
[DISABLE] // Enables the code below to restore your original code
dealloc(mypointer) // Removes your allocated memory
dealloc(newmem)
0053F9E1:
mov [ecx],edx // Restores the code and removes the jump
// You can also use this code: db 89 11 |
Click 'File' and then 'Assign to current cheat table'.
Enable the code and click 'Add address manually' and tick off 'Pointer'.
As the base adress you fill in mypointer , the offset should be 0.
Click 'OK' and Change the address type to float.
If everything went right (meaning it didn't crash your game) the code should change the pointer to the address you want.
(Make sure the code isn't used to write to 1000000 addresses or else you won't get the right pointer)
BTW, what game are you hacking?
|
|
| Back to top |
|
 |
sh00ter999 Advanced Cheater
Reputation: 1
Joined: 17 May 2008 Posts: 89
|
Posted: Thu Feb 26, 2009 5:53 pm Post subject: |
|
|
| sven3107 wrote: |
Click 'File' and then 'Assign to current cheat table'.
|
What ?? Where ? xD In the memory view there isnt such an option
| Quote: |
As the base adress you fill in mypointer , the offset should be 0.
|
Mypointer is what ??
BTW : Im trying to Hack Flyff Flyforfun Pserver
_________________
Hyes! |
|
| Back to top |
|
 |
DamiPL Grandmaster Cheater Supreme
Reputation: 3
Joined: 02 Jul 2006 Posts: 1195 Location: 11001110
|
Posted: Thu Feb 26, 2009 7:34 pm Post subject: |
|
|
| sh00ter999 wrote: | | sven3107 wrote: |
Click 'File' and then 'Assign to current cheat table'.
|
What ?? Where ? xD In the memory view there isnt such an option
|
He clearly said Press CTRL+A in memory view or run "Auto Assemble" from mem view then do what he sayd.
_________________
|
|
| Back to top |
|
 |
Monkeys I post too much
Reputation: 29
Joined: 20 Jul 2006 Posts: 2411
|
Posted: Thu Feb 26, 2009 9:23 pm Post subject: |
|
|
+ the mypointer he's talking about is a Variable you allocated earlier in the script.
_________________
Get a lid on that zombie,
he's never gonna be alri-i-ight.
Oooh get a lid on that zombie,
or he's gonna feed all night. |
|
| Back to top |
|
 |
sven3107 Expert Cheater
Reputation: 0
Joined: 04 Feb 2009 Posts: 118 Location: Belgium
|
Posted: Fri Feb 27, 2009 7:28 am Post subject: |
|
|
i commented the lines so you can see what the codes do and how to use it, copy+paste is easy but it helps if you give it a quick read too.
Anayway, enable the cheat, and add the allocated base address wich i labelled mypointer.
Mypointer is not 'what' it's 'that'; you fill in the word 'mypointer' and not the value of mypointer as base address, that's the whole point of the script so it keeps changing the value of 'mypointer' to the base address you need.
|
|
| Back to top |
|
 |
sh00ter999 Advanced Cheater
Reputation: 1
Joined: 17 May 2008 Posts: 89
|
|
| Back to top |
|
 |
|