イーブ&# Posted June 17, 2010 Posted June 17, 2010 There are some bytes in the save struct that are apparently unused by the games: for example, 0x04–0x05 and 0x42–0x43. I'm considering using these for my own nefarious purposes. So: 1. Do retail saves always set these to zero, or can they be garbage? I would hope the whole struct is memset to zero right off the bat, but you never know. 2. If so, do any legality checks—including Legality Checker and anything Nintendo uses—verify that these bytes are zero? Please note: I am not talking about "trash bytes". If you don't know what I mean, you probably don't know the answer.
Codr Posted June 17, 2010 Posted June 17, 2010 I've never seen any of them be non-zero other than byte 135, which has something to do with Pokeathlon stats in HG/SS. (These stats are only actively changed while a Pokemon is in your party. Data is lost as far as I know when they're put into your PC.)
イーブ&# Posted June 18, 2010 Author Posted June 18, 2010 The PP legality checker, at least, doesn't balk at a Pokémon with junk in 0x04 and 0x05. Interesting.
Codr Posted June 18, 2010 Posted June 18, 2010 The PP legality checker' date=' at least, doesn't balk at a Pokémon with junk in 0x04 and 0x05. Interesting.[/quote']Those two bytes in particular have resulted in crashes when attempting to use Pokemon with them as non-zero. I'm almost completely sure that they're read with the checksum as a 4-byte integer, and are needed as 0.
イーブ&# Posted June 18, 2010 Author Posted June 18, 2010 It would certainly make sense; bit odd to jam them in the header like that otherwise. Okay, noted. I'll make my parser work like that, and try some of the other mystery bytes tomorrow.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now