This article describes shiny Pokémon, a rare variant of Pokémon with different colours.
For general modification of Pokémon, and more information about doing so, see the article Editing a Pokémon.
- This is an item used to find shiny Pokémon more easily.
Rarity of shiny Pokémon
In the script section Settings is a variable called
SHINYPOKEMONCHANCE. This is the rarity of shiny Pokémon (8 by default). The odds of a Pokémon being shiny will be this number divided by 65536, so the lower this number is, the rarer they are.
To remove shiny Pokémon from your game altogether, simply set
SHINYPOKEMONCHANCE to 0.
Shininess depends on both the original trainer's ID number (a random number chosen when that trainer is created) and the Pokémon's personal ID (a random number defined when the Pokémon is generated). Therefore the odds of a Pokémon being shiny is completely random, but is consistent for each Pokémon (their original trainer and personal ID numbers will never change). The calculation of whether a Pokémon is shiny is done in def
isShiny? in the script section PokeBattle_Pokemon.
Shininess that depends on some factor
You can alter the rarity of wild shiny Pokémon at certain points in the game. You can have the rarity depend on pretty much any factor, e.g.
- The species of the Pokémon.
- The location the Pokémon is encountered in.
- A Global Switch.
- Whether the player has a partner trainer with them.
- The time of day.
- The way the Pokémon is encountered.
- Possessing a certain item, such as the Shiny Charm.
The script section PField_EncounterModifiers exists for any scripts which affect a Pokémon's properties, including shininess.
The typical example of affecting shininess is the Red Gyarados from the Johto games, which is always shiny. This example exists in Essentials, and is done by having the shininess depend on Global Switch 31 being ON. If you use this, you will need to turn the Switch ON immediately before that particular battle (usually an event encounter) and OFF immediately after it.
Other possibilities, especially those which affect regular wild Pokémon (i.e. not event encounters), will be harder to implement.
- You could modify shiny Pokémon to give the player more incentive to find them, e.g. give all shiny Pokémon perfect IVs. This is done in the same way as making a Pokémon shiny, but instead of making it shiny if a certain Global Switch is ON, you should change its IVs if it is shiny.