Jump to content

Recommended Posts

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.

Link to post
Share on other sites

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.)

Link to post
Share on other sites
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.

Link to post
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...