Log in

View Full Version : Sonic 3



Judd
03-05-2012, 08:30 AM
Im currently messing around with Sonic 3 trying to hex, Rings, Lives and Score.
My save has:

Score: 196500
Rings: 87
Lives: 10

The hex value for each number is:

2FF94
57
A

Am I correct?

I have searched the whole save for each hex value and can't find anything so started looking in the text string and can only find "Time Played" there.

Is there an easier way to find each value to hex the save?

Whoops move to Discussion.

TechnoWolf
03-05-2012, 08:47 AM
ok here is how I think its layed out in the save the lives are int8 which is a byte the rings probably the same if not might be int32 and score is just a myth to me honestly also could you post the save so that I can make an editor for it

Judd
03-05-2012, 08:51 AM
http://www.mediafire.com/?u9cf9ucqjnb6l0v

How do you search int8/32 I don't know what that means? If you make an editor could I see the source to see how its made? I have never made an editor and have next to no coding experience. I don't even know where to start with an editor past designing it lol

I was going to make this my first editor but you go ahead and do it :)

Emerald Lance
03-05-2012, 09:35 AM
"Int" means integer. Its just means how many bytes are used in the value. Int8 is one byte (two digits), int32 is four bytes (eight digits) For instance, writing ten lives (A) as int8 would look like this: 0A, while as int32 it would look like this: 0000000A. Taking that into account, the score is definitely int32 (no way it could be any smaller). Lives have to be int8 (I would be surprised if they weren't). I think rings are int16 because they don't stop at 255.

Anyways, for your score, search for 0002FF94; for rings, search 0057; and for lives, search 0A. You're much more likely to find something more concrete that way. Also, any good quality hex editor will allow you to specify which integer type to look for in with the search function, so if you're still not certain on the differences between int8/int16/int32/int64, that should help.

Also, don't let this discourage you from making that editor. Once you've got the hang of it, working with different int types is a breeze.

TechnoWolf
03-05-2012, 09:44 AM
that was quick reply work emerald also I will make an editor and give the source out on here for people to learn from the way I code my editors also I think your right about the rings

Emerald Lance
03-05-2012, 09:55 AM
that was quick reply work emerald also I will make an editor and give the source out on here for people to learn from the way I code my editors also I think your right about the rings
Do you use PackageIO? Or do you hard-code your own functions?

TechnoWolf
03-05-2012, 09:57 AM
I use something called xboxlibrary similar to xb360

Judd
03-05-2012, 10:16 AM
"Int" means integer. Its just means how many bytes are used in the value. Int8 is one byte (two digits), int32 is four bytes (eight digits) For instance, writing ten lives (A) as int8 would look like this: 0A, while as int32 it would look like this: 0000000A. Taking that into account, the score is definitely int32 (no way it could be any smaller). Lives have to be int8 (I would be surprised if they weren't). I think rings are int16 because they don't stop at 255.

Anyways, for your score, search for 0002FF94; for rings, search 0057; and for lives, search 0A. You're much more likely to find something more concrete that way. Also, any good quality hex editor will allow you to specify which integer type to look for in with the search function, so if you're still not certain on the differences between int8/int16/int32/int64, that should help.

Also, don't let this discourage you from making that editor. Once you've got the hang of it, working with different int types is a breeze.I use HxD so I search like this for lives:
http://img842.imageshack.us/img842/5728/90994285.png
Also there are heaps so do I just have to test each one?

Also whats the best Hex editor to use?

Edit whe nI try that I get this error:

'0A' is not a valid integer number.

Guess I shouldn't do as in the pic and just search '0A' in hex value? There are heaps of 0A tho

TechnoWolf
03-05-2012, 10:42 AM
I just finished the editor and gonna upload it now also the source code will be sent to you in a pm for you to learn how to make an editor

Judd
03-05-2012, 11:29 AM
Editor didn't work man, I know what I can do ill get more lives on that save and try and find it on a different number and see if the offsets are the same or if we are in the wrong place.

TechnoWolf
03-05-2012, 11:33 AM
ok thanks man that should really help

Judd
03-05-2012, 11:45 AM
ok thanks man that should really helpHere's a second save: http://www.mediafire.com/?p9o5dx9mp14n77c

Score: 206900
Rings: 109
Lives: 12

Different offsets, way different lol. I'm going to bed now anyway man ill have a play with the saves tomorrow and get a 3rd maybe 4th to check out to.

TechnoWolf
03-05-2012, 12:05 PM
same here thanks

Judd
03-06-2012, 05:06 AM
Here's 3 saves with stats:

http://www.mediafire.com/?2yh1rych44ceprd