| View previous topic :: View next topic |
| Author |
Message |
jan24 Cheater
Reputation: 0
Joined: 12 Jul 2013 Posts: 34
|
Posted: Wed Jul 22, 2015 4:38 pm Post subject: Need help with AOB scan |
|
|
At the moment I'm trying to make a AOB scan, with the help of Rydian guide (?t=572465).
The most I got to work I just make a few mistakes why it doesn't works at the very end.
I was able to make the following steps:
1. Search the right address.
2. Find the offset.
3. Subtract the offset of the address (1).
4. Here comes the tricky part if I'm doing it right.
Adding the address manually, then I'm not sure if I need to manually add the first address or the subtract address (I assume the first address).
After I'm not sure if I need to fill in the field the first address or the subtract address.
5. I was be able to get a few samples and compared make them compare to each other.
6. I was able to add the script with my signature.
Whenever I did activate the script nothing much happened.
Also I wasn't able to remember the address when switching over to different level or restarting the game.
I'm testing this on the game Offspring Fling!
Any help would be appreciated, thanks in advance.
|
|
| Back to top |
|
 |
Rudo Advanced Cheater
Reputation: 2
Joined: 27 Jun 2015 Posts: 80
|
Posted: Wed Jul 22, 2015 11:11 pm Post subject: |
|
|
I think you messed up at step 4. You have to fill in the suctracted address (which is the base address)
And you don't really have to "Add address manually", you can just open the Memory View menu, in the bottom half, right click and "goto address", paste in the subtracted address, then work out the AOB of that base address and then continue !
Also if your AOB scan doesn't work then maybe one byte of your AOB changes when restarting the game. If your address change when switching over to different level but the AOB doesn't then just simply deactivate then reactivate the script.
|
|
| Back to top |
|
 |
atom0s Moderator
Reputation: 205
Joined: 25 Jan 2006 Posts: 8587 Location: 127.0.0.1
|
Posted: Wed Jul 22, 2015 11:13 pm Post subject: |
|
|
This is not a tutorial, moved.
_________________
- Retired. |
|
| Back to top |
|
 |
jan24 Cheater
Reputation: 0
Joined: 12 Jul 2013 Posts: 34
|
Posted: Thu Jul 23, 2015 7:17 am Post subject: |
|
|
| Rudo-kun wrote: | I think you messed up at step 4. You have to fill in the suctracted address (which is the base address)
And you don't really have to "Add address manually", you can just open the Memory View menu, in the bottom half, right click and "goto address", paste in the subtracted address, then work out the AOB of that base address and then continue !
Also if your AOB scan doesn't work then maybe one byte of your AOB changes when restarting the game. If your address change when switching over to different level but the AOB doesn't then just simply deactivate then reactivate the script. |
Thanks I got it to work now.
Now only got 1 addres that works everytime.
Whenever I want to add another one, I start to fail.
Example what I did:
First address: 0? 00 00 20 ?? ?? ?? ?? ?? ?? ?? 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
With offset of 88
Second address: 0D 00 00 20 ?0 9? ?? ?? ?0 9? ?? 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
With offset of 90
Script:
| Code: | [ENABLE]
aobscan(player, 0? 00 00 20 ?? ?? ?? ?? ?? ?? ?? 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00)
label(_player)
registersymbol(_player)
player:
_player:
aobscan(player2, 0D 00 00 20 ?0 9? ?? ?? ?0 9? ?? 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00)
label(_player2)
registersymbol(_player2)
player2:
_player2:
[DISABLE]
unregistersymbol(_player)
unregistersymbol(_player2) |
The script stopped working when I added _player2.
| atom0s wrote: | | This is not a tutorial, moved. |
My bad, thanks for moving.
|
|
| Back to top |
|
 |
Daijobu Master Cheater
Reputation: 13
Joined: 05 Feb 2013 Posts: 301 Location: the Netherlands
|
Posted: Thu Jul 23, 2015 7:58 am Post subject: |
|
|
Did you forget the offsets you mentioned?
player+88:
player2+90:
Then the label becomes the correct address reference.
_________________
|
|
| Back to top |
|
 |
Rudo Advanced Cheater
Reputation: 2
Joined: 27 Jun 2015 Posts: 80
|
Posted: Thu Jul 23, 2015 8:57 am Post subject: |
|
|
You forgot the offsets. Daijobu has pointed it out right there.
Your script should look like this
| Code: | [ENABLE]
aobscan(player, 0? 00 00 20 ?? ?? ?? ?? ?? ?? ?? 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00)
label(_player)
registersymbol(_player)
player+88:
_player:
aobscan(player2, 0D 00 00 20 ?0 9? ?? ?? ?0 9? ?? 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00)
label(_player2)
registersymbol(_player2)
player2+90:
_player2:
[DISABLE]
unregistersymbol(_player)
unregistersymbol(_player2) |
|
|
| Back to top |
|
 |
jan24 Cheater
Reputation: 0
Joined: 12 Jul 2013 Posts: 34
|
Posted: Thu Jul 23, 2015 9:11 am Post subject: |
|
|
Seems like _player one works even without the offset (I guess since I already subtracted that with the calculator).
But it only works on the first level, but won't work on level 2 and 3 for example.
The won't even activate at level 2 and 3 only on level 1.
_player2 won't work at all, with or without the offset.
EDIT: I searched in the Memory View the abstracted address, I did this correct ?
|
|
| Back to top |
|
 |
Rudo Advanced Cheater
Reputation: 2
Joined: 27 Jun 2015 Posts: 80
|
Posted: Thu Jul 23, 2015 9:24 am Post subject: |
|
|
Then your one or some bytes of AOB changes when switching levels, try to work out another better AOB.
Sorry I don't have that game to help you.
|
|
| Back to top |
|
 |
jan24 Cheater
Reputation: 0
Joined: 12 Jul 2013 Posts: 34
|
Posted: Thu Jul 23, 2015 10:06 am Post subject: |
|
|
When I keep scanning those 2 different addresses start to look identical to eachother.
I probably did something very wrong somewhere.
I searched in the Memory View the abstracted address, I did this correct ? Or should I search for the scanned address ?
EDIT:
I just did a clean scan
Here some results I got:
_player
00 10 7D 40 00 00 00 00 00 20 77 40 00 00 00 00
00 10 7D 40 00 00 00 00 00 20 77 40 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
00 28 89 40 00 00 00 00 00 20 77 40 00 00 00 00
00 28 89 40 00 00 00 00 00 20 77 40 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
00 08 82 40 00 00 00 00 00 20 77 40 00 00 00 00
00 08 82 40 00 00 00 00 00 20 77 40 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
00 80 86 40 00 00 00 00 00 20 77 40 00 00 00 00
00 80 86 40 00 00 00 00 00 20 77 40 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
00 90 71 40 00 00 00 00 00 20 73 40 00 00 00 00
00 90 71 40 00 00 00 00 00 20 73 40 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
=
00 ?? ?? 40 00 00 00 00 00 20 7? 40 00 00 00 00
00 ?? ?? 40 00 00 00 00 00 20 7? 40 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
_player abstracted address
0D 00 00 20 C0 D5 A2 12 90 21 10 11 00 00 00 00
01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
-
0D 00 00 20 A0 60 4A 17 80 FB 5F 0F 00 00 00 00
01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
-
0D 00 00 20 E0 BA FB 0A 70 30 63 0F 00 00 00 00
01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
-
0D 00 00 20 A0 50 D3 12 40 79 04 11 00 00 00 00
01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
-
0E 00 00 20 70 DD 5D 17 50 75 EA 10 00 00 00 00
01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
=
0? 00 00 20 ?? ?? ?? ?? ?0 ?? ?? ?? 00 00 00 00
01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00
00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00
Which results to a failure again.
I am thinking that I might need more lines, gonna test that right now, I will keep you up to date about result, any advice in meentime is welcome.
Last edited by jan24 on Thu Jul 23, 2015 10:31 am; edited 1 time in total |
|
| Back to top |
|
 |
Zanzer I post too much
Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Thu Jul 23, 2015 10:29 am Post subject: |
|
|
| You cannot scan for half of a byte. 0?, ?0, 9?, and anything similar is treated simply as ??.
|
|
| Back to top |
|
 |
jan24 Cheater
Reputation: 0
Joined: 12 Jul 2013 Posts: 34
|
Posted: Thu Jul 23, 2015 10:55 am Post subject: |
|
|
| Zanzer wrote: | | You cannot scan for half of a byte. 0?, ?0, 9?, and anything similar is treated simply as ??. |
Good to know, thanks.
Now I did 8 lines in place from 3 lines, here the results:
Lv 01 : 0D 00 00 20 E0 1A 71 12 38 5E C9 10 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 80 4D 1F 0E E0 CA 0A 0E A8 AD 9D 04 28 C3 9A 03 18 3E 0A 0E E8 C1 0A 0E 58 68 09 0E 60 27 FE 0A 00 00 00 00 00 00 00 00 00 00 00 00 A0 0D 94 10 00 00 00 00 A0 CB 76 12 A0 56 F3 0A
Lv 01 : 0D 00 00 20 E0 AA 16 0B 28 8F 75 12 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 A0 4B 03 0B A0 80 13 0E A8 AD 9C 04 28 C3 79 03 C0 C0 DD 04 B8 8E 13 0E 58 28 E0 04 80 34 DB 10 00 00 00 00 00 00 00 00 00 00 00 00 60 F9 38 0F 00 00 00 00 F8 F3 25 0B A0 66 1D 0B
Lv 02 : 0E 00 00 20 C0 95 02 0B C8 B2 72 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 D0 93 62 12 A0 B0 10 0B A8 AD 8F 04 28 C3 95 03 C0 F0 E2 04 E8 B1 10 0B E8 4E EB 0A D0 58 10 11 00 00 00 00 00 00 00 00 00 00 00 00 80 46 CC 04 00 00 00 00 D0 8D FB 0A A0 56 09 0B
Lv 02 : 0E 00 00 20 50 18 92 04 38 F2 0C 0F 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 B0 35 64 12 A0 30 F6 0D A8 AD 9A 04 28 C3 9A 03 C0 20 9A 0D E8 31 F6 0D 58 68 E3 0D F0 25 E4 0D 00 00 00 00 00 00 00 00 00 00 00 00 60 76 BB 0A 00 00 00 00 D0 3D 5A 18 A0 36 C3 0A
Lv 99 : 0E 00 00 20 C0 F5 72 12 50 CE 91 10 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 90 3C A2 10 B8 7E AF 0D A8 AD 7E 04 28 C3 8D 03 C0 C0 72 0E A0 70 AF 0D 28 96 F1 0D F8 8A B0 0D 00 00 00 00 00 00 00 00 00 00 00 00 40 7E DC 0A 00 00 00 00 E8 AE 67 12 A0 36 E4 0A
Result:?? 00 00 20 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? ?? ?? ?? ?? A8 AD ?? 04 28 C3 ?? 03 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? 00 00 00 00 ?? ?? ?? ?? A0 ?? ?? ??
Script:
| Code: | [ENABLE]
aobscan(player, ?? 00 00 20 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? ?? ?? ?? ?? A8 AD ?? 04 28 C3 ?? 03 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? 00 00 00 00 ?? ?? ?? ?? A0 ?? ?? ??)
label(_player)
registersymbol(_player)
player:
_player:
[DISABLE]
unregistersymbol(_player) |
Also tried to set "player+88:", but no success.
|
|
| Back to top |
|
 |
Zanzer I post too much
Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Thu Jul 23, 2015 11:10 am Post subject: |
|
|
No success at what? Does the script not activate? Or you simply don't know the correct offset?
You know that +88 is hex, right? You're moving over 136 bytes.
If you only want to move over 88 bytes, it should be +58.
Also, do an Array of Bytes scan using the Table.
Is that string of bytes returning more than 1 address?
|
|
| Back to top |
|
 |
jan24 Cheater
Reputation: 0
Joined: 12 Jul 2013 Posts: 34
|
Posted: Thu Jul 23, 2015 11:24 am Post subject: |
|
|
| Zanzer wrote: | No success at what? Does the script not activate? Or you simply don't know the correct offset?
You know that +88 is hex, right? You're moving over 136 bytes.
If you only want to move over 88 bytes, it should be +58.
Also, do an Array of Bytes scan using the Table.
Is that string of bytes returning more than 1 address? |
Still no success to activate the script.
Yes I used the hex calculator of Windows.
When I'm trying to scan for "??000020????????????????0000000001000000020000000100000000000000000000000100000001000000100000001C000000080000000E0000000000000000000000????????????????A8AD??0428C3??03????????????????????????????????000000000000000000000000????????00000000????????A0??????" (got Hex checked), it gives the error:
"Scan error: thread
0 ?000020????????????????000000000100000002000000...
is an invalid value".
How I exactly doing a Array of Bytes, thought I was doing that right now (sorry I'm no expert yet).
|
|
| Back to top |
|
 |
Zanzer I post too much
Reputation: 126
Joined: 09 Jun 2013 Posts: 3278
|
Posted: Thu Jul 23, 2015 1:23 pm Post subject: |
|
|
Select Array of byte from the Value Type dropdown.
Then simply paste your full string (with spaces) into the search box.
?? 00 00 20 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? ?? ?? ?? ?? A8 AD ?? 04 28 C3 ?? 03 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? 00 00 00 00 ?? ?? ?? ?? A0 ?? ?? ??
If you get no results, then you messed up those bytes and that's why you can't enable your script.
|
|
| Back to top |
|
 |
jan24 Cheater
Reputation: 0
Joined: 12 Jul 2013 Posts: 34
|
Posted: Thu Jul 23, 2015 1:50 pm Post subject: |
|
|
| Zanzer wrote: | Select Array of byte from the Value Type dropdown.
Then simply paste your full string (with spaces) into the search box.
?? 00 00 20 ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 01 00 00 00 02 00 00 00 01 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 10 00 00 00 1C 00 00 00 08 00 00 00 0E 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? ?? ?? ?? ?? A8 AD ?? 04 28 C3 ?? 03 ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? 00 00 00 00 00 00 00 00 00 00 00 00 ?? ?? ?? ?? 00 00 00 00 ?? ?? ?? ?? A0 ?? ?? ??
If you get no results, then you messed up those bytes and that's why you can't enable your script. |
Thanks, I have indeed no result, but I checked all the results again but couldn't find typo.
I could try from the ground off again but I did that already a few times, so not sure what I'm doing wrong.
|
|
| Back to top |
|
 |
|