but again, this would only apply to pokemon in the party or pokemon the player owns (depending on using the 'language' or the 'pokerus rmn' data we use) cuz I dont think wild pokemon and enemy pokemon have this data...
Newayz... I'm not gonna pretend I kno everything about the game, mechanics or otherwise, as I've only played these games very casually (gen 1-3... no 4+). I'm just going by what i read on bulbapedia about how this stuff works, so feel free to correct me if I'm wrong
I thought the Pokerus byte was saved higher up, but the last 20 bytes are recalculated when a Pokemon is taken out of the PC.
I think I realize why this is. The Pokerus "flag" is part of the encrypted data subsection of the Pokemon's data. It doesn't get erased when the Pokemon is put in the PC. I assume that, when a Pokerus'd Pokemon is taken out of the PC, it checks if the Pokerus flag is set, and if it is, it'll reset the "Pokerus Remaining" byte.
That's not to say this is a dead end...the Pokerus "flag" could be used as a "Hidden Ability flag", and when the Pokemon is taken out of the PC, it'll recalculate what the hidden ability is supposed to be.
Enemy Pokemon are stored in the same format as the team. There are 600 Bytes for the party Pokemon, and 600 bytes reserved for enemy Pokemon. In reality, you could make a "settrainerbattle" script, modify the data in it with writebytetooffset, and then use "repeattrainerbattle" to activate it.
I'm going to need to do some research, to see if these bytes are actually used in the Firered games.
Double Edit: At least with givepokemon, these bytes are zero, which means that they shouldn't be an issue.