about summary refs log tree commit diff stats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/pokemon.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/include/pokemon.h b/include/pokemon.h index 95af35e..dbf0d41 100644 --- a/include/pokemon.h +++ b/include/pokemon.h
@@ -35,6 +35,13 @@ struct __attribute__((aligned(4))) PokemonIntermediate {
35 // while not uniformly random (amongst Pokémon), is included as a sort of 35 // while not uniformly random (amongst Pokémon), is included as a sort of
36 // "namespace", in that any Pokémon with matching PVs and IVs must also have 36 // "namespace", in that any Pokémon with matching PVs and IVs must also have
37 // the same OT, thus preventing collaboratively finding PV and IV collisions. 37 // the same OT, thus preventing collaboratively finding PV and IV collisions.
38 // there is one deterministic way that two Pokémon can have the same hash:
39 // when a Nincada evolves into a Ninjask and a Shedinja is generated, the
40 // Shedinja is guaranteed to have the same IVs and personality value as the
41 // Ninjask. we circumvent this by also including a boolean in the hash which
42 // is set to true if the Pokémon is a Shedinja, and false otherwise. this
43 // differentiates a Shedinja from the Ninjask it came from, but also allows
44 // the Ninjask to be associated with the Nincada it used to be.
38 u32 key[7]; 45 u32 key[7];
39 46
40 u32 experience; 47 u32 experience;