This is a Pokedex Challenge project, inspired by @typescrambledex and @random-typepokemondex, in which the goal is to draw every Pokemon with a random type. There are some rules to this, mostly as guidelines to myself. They are the following:
A Pokemon's type is decided entirely by RNG. It keeps the same number of types it originally had. (so single-type Pokemon get their type replaced by a single random type, and dual-type Pokemon get two random types)
If the rolled type(s) are among the type(s) the Pokemon originally had, be it originally, in one of its evolved forms, in a different form, etc., it will be re-rolled.
Types are retained throughout the entire evolutionary line, unless the original Pokemon's type changed upon evolution. If this is the case, the random type changes in the same way. This also goes for Pokemon which gain or lose a type upon evolution. (For example, when Scyther evolves into Scizor it trades its secondary Flying type for a Steel type. When randomized Scyther evolves, it trades its random secondary type for an equally random but new secondary type.)
Exceptions and special cases:
Pokemon which are part of a (thematic) group and share a type because of it receive the same random type. Examples are various legendary trios, like Kanto's Bird Trio or Unova's Tao Trio, but also non-legendaries like Sawk and Throh.
Starters get types from different, but still matching, type cycles. The direction of the cycle does not necessarily stay the same, however. The cycle is picked from a file containing all possible type cycles, bar any used for other starters in this project. (Examples of other type cycles are Ice-Ground-Rock, Fighting-Dark-Psychic, or Water-Ground-Electric.)
Eevee receives a single random type. Its evolutions keep that same type, and gain a secondary type to go with it. This secondary type is one used by a different Eeveelution: their types have been shuffled to ensure all Eeveelutions are entirely random.











