Bugfix: In-Battle Formes are incorrectly selectable (#1388)

* Fix incorrectly unselectable starter formes

* Fix linter issue that got merged upstream

* Remove battle-bond key from form key overrides based on feedback

* Fixes being able to select forms that shouldn't be startable

* Add Minior Cores as cycleable

* Remove unused code from previous implementation
This commit is contained in:
Nicholas Galauxy 2024-05-25 22:31:42 -05:00 committed by GitHub
parent 44f4f14956
commit 9aa22d6150
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 178 additions and 180 deletions

View File

@ -135,10 +135,11 @@ export abstract class PokemonSpeciesForm {
public baseFriendship: integer;
public baseExp: integer;
public genderDiffs: boolean;
public isStarterSelectable: boolean;
constructor(type1: Type, type2: Type, height: number, weight: number, ability1: Abilities, ability2: Abilities, abilityHidden: Abilities,
baseTotal: integer, baseHp: integer, baseAtk: integer, baseDef: integer, baseSpatk: integer, baseSpdef: integer, baseSpd: integer,
catchRate: integer, baseFriendship: integer, baseExp: integer, genderDiffs: boolean) {
catchRate: integer, baseFriendship: integer, baseExp: integer, genderDiffs: boolean, isStarterSelectable: boolean) {
this.type1 = type1;
this.type2 = type2;
this.height = height;
@ -152,6 +153,7 @@ export abstract class PokemonSpeciesForm {
this.baseFriendship = baseFriendship;
this.baseExp = baseExp;
this.genderDiffs = genderDiffs;
this.isStarterSelectable = isStarterSelectable;
}
/**
@ -812,9 +814,9 @@ export class PokemonForm extends PokemonSpeciesForm {
constructor(formName: string, formKey: string, type1: Type, type2: Type, height: number, weight: number, ability1: Abilities, ability2: Abilities, abilityHidden: Abilities,
baseTotal: integer, baseHp: integer, baseAtk: integer, baseDef: integer, baseSpatk: integer, baseSpdef: integer, baseSpd: integer,
catchRate: integer, baseFriendship: integer, baseExp: integer, genderDiffs?: boolean, formSpriteKey?: string) {
catchRate: integer, baseFriendship: integer, baseExp: integer, genderDiffs?: boolean, formSpriteKey?: string, isStarterSelectable?: boolean, ) {
super(type1, type2, height, weight, ability1, ability2, abilityHidden, baseTotal, baseHp, baseAtk, baseDef, baseSpatk, baseSpdef, baseSpd,
catchRate, baseFriendship, baseExp, !!genderDiffs);
catchRate, baseFriendship, baseExp, !!genderDiffs, (!!isStarterSelectable || !formKey));
this.formName = formName;
this.formKey = formKey;
this.formSpriteKey = formSpriteKey !== undefined ? formSpriteKey : null;
@ -823,10 +825,6 @@ export class PokemonForm extends PokemonSpeciesForm {
getFormSpriteKey(_formIndex?: integer) {
return this.formSpriteKey !== null ? this.formSpriteKey : this.formKey;
}
isStarterSelectable() {
return !this.formKey || this.starterSelectableKeys.indexOf[this.formKey] !== -1;
}
}
export enum SpeciesFormKey {
@ -1088,8 +1086,8 @@ export function initSpecies() {
new PokemonSpecies(Species.CHINCHOU, 2, false, false, false, "Angler Pokémon", Type.WATER, Type.ELECTRIC, 0.5, 12, Abilities.VOLT_ABSORB, Abilities.ILLUMINATE, Abilities.WATER_ABSORB, 330, 75, 38, 38, 56, 56, 67, 190, 50, 66, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.LANTURN, 2, false, false, false, "Light Pokémon", Type.WATER, Type.ELECTRIC, 1.2, 22.5, Abilities.VOLT_ABSORB, Abilities.ILLUMINATE, Abilities.WATER_ABSORB, 460, 125, 58, 58, 76, 76, 67, 75, 50, 161, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.PICHU, 2, false, false, false, "Tiny Mouse Pokémon", Type.ELECTRIC, null, 0.3, 2, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Normal", "", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41),
new PokemonForm("Spiky-Eared", "spiky", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41),
new PokemonForm("Normal", "", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41, false, null, true),
new PokemonForm("Spiky-Eared", "spiky", Type.ELECTRIC, null, 1.4, 61.5, Abilities.STATIC, Abilities.NONE, Abilities.LIGHTNING_ROD, 205, 20, 40, 15, 35, 35, 60, 190, 70, 41, false, null, true),
),
new PokemonSpecies(Species.CLEFFA, 2, false, false, false, "Star Shape Pokémon", Type.FAIRY, null, 0.3, 3, Abilities.CUTE_CHARM, Abilities.MAGIC_GUARD, Abilities.FRIEND_GUARD, 218, 50, 25, 28, 45, 55, 15, 150, 140, 44, GrowthRate.FAST, 25, false),
new PokemonSpecies(Species.IGGLYBUFF, 2, false, false, false, "Balloon Pokémon", Type.NORMAL, Type.FAIRY, 0.3, 1, Abilities.CUTE_CHARM, Abilities.COMPETITIVE, Abilities.FRIEND_GUARD, 210, 90, 30, 15, 40, 20, 15, 170, 50, 42, GrowthRate.FAST, 25, false),
@ -1123,34 +1121,34 @@ export function initSpecies() {
new PokemonSpecies(Species.SLOWKING, 2, false, false, false, "Royal Pokémon", Type.WATER, Type.PSYCHIC, 2, 79.5, Abilities.OBLIVIOUS, Abilities.OWN_TEMPO, Abilities.REGENERATOR, 490, 95, 75, 80, 100, 110, 30, 70, 50, 172, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.MISDREAVUS, 2, false, false, false, "Screech Pokémon", Type.GHOST, null, 0.7, 1, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 435, 60, 60, 60, 85, 85, 85, 45, 35, 87, GrowthRate.FAST, 50, false),
new PokemonSpecies(Species.UNOWN, 2, false, false, false, "Symbol Pokémon", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("A", "a", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("B", "b", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("C", "c", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("D", "d", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("E", "e", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("F", "f", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("G", "g", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("H", "h", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("I", "i", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("J", "j", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("K", "k", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("L", "l", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("M", "m", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("N", "n", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("O", "o", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("P", "p", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("Q", "q", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("R", "r", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("S", "s", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("T", "t", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("U", "u", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("V", "v", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("W", "w", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("X", "x", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("Y", "y", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("Z", "z", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("!", "exclamation", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("?", "question", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118),
new PokemonForm("A", "a", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("B", "b", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("C", "c", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("D", "d", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("E", "e", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("F", "f", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("G", "g", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("H", "h", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("I", "i", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("J", "j", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("K", "k", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("L", "l", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("M", "m", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("N", "n", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("O", "o", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("P", "p", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("Q", "q", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("R", "r", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("S", "s", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("T", "t", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("U", "u", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("V", "v", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("W", "w", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("X", "x", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("Y", "y", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("Z", "z", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("!", "exclamation", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
new PokemonForm("?", "question", Type.PSYCHIC, null, 0.5, 5, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 336, 48, 72, 48, 72, 48, 48, 225, 70, 118, false, null, true),
),
new PokemonSpecies(Species.WOBBUFFET, 2, false, false, false, "Patient Pokémon", Type.PSYCHIC, null, 1.3, 28.5, Abilities.SHADOW_TAG, Abilities.NONE, Abilities.TELEPATHY, 405, 190, 33, 58, 33, 58, 33, 45, 50, 142, GrowthRate.MEDIUM_FAST, 50, true),
new PokemonSpecies(Species.GIRAFARIG, 2, false, false, false, "Long Neck Pokémon", Type.NORMAL, Type.PSYCHIC, 1.5, 41.5, Abilities.INNER_FOCUS, Abilities.EARLY_BIRD, Abilities.SAP_SIPPER, 455, 70, 80, 65, 90, 65, 85, 60, 70, 159, GrowthRate.MEDIUM_FAST, 50, true),
@ -1454,9 +1452,9 @@ export function initSpecies() {
new PokemonSpecies(Species.SHIELDON, 4, false, false, false, "Shield Pokémon", Type.ROCK, Type.STEEL, 0.5, 57, Abilities.STURDY, Abilities.NONE, Abilities.SOUNDPROOF, 350, 30, 42, 118, 42, 88, 30, 45, 70, 70, GrowthRate.ERRATIC, 87.5, false),
new PokemonSpecies(Species.BASTIODON, 4, false, false, false, "Shield Pokémon", Type.ROCK, Type.STEEL, 1.3, 149.5, Abilities.STURDY, Abilities.NONE, Abilities.SOUNDPROOF, 495, 60, 52, 168, 47, 138, 30, 45, 70, 173, GrowthRate.ERRATIC, 87.5, false),
new PokemonSpecies(Species.BURMY, 4, false, false, false, "Bagworm Pokémon", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Plant Cloak", "plant", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45),
new PokemonForm("Sandy Cloak", "sandy", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45),
new PokemonForm("Trash Cloak", "trash", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45),
new PokemonForm("Plant Cloak", "plant", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45, false, null, true),
new PokemonForm("Sandy Cloak", "sandy", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45, false, null, true),
new PokemonForm("Trash Cloak", "trash", Type.BUG, null, 0.2, 3.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.OVERCOAT, 224, 40, 29, 45, 29, 45, 36, 120, 70, 45, false, null, true),
),
new PokemonSpecies(Species.WORMADAM, 4, false, false, false, "Bagworm Pokémon", Type.BUG, Type.GRASS, 0.5, 6.5, Abilities.ANTICIPATION, Abilities.NONE, Abilities.OVERCOAT, 424, 60, 59, 85, 79, 105, 36, 45, 70, 148, GrowthRate.MEDIUM_FAST, 0, false, false,
new PokemonForm("Plant Cloak", "plant", Type.BUG, Type.GRASS, 0.5, 6.5, Abilities.ANTICIPATION, Abilities.NONE, Abilities.OVERCOAT, 424, 60, 59, 85, 79, 105, 36, 45, 70, 148),
@ -1475,8 +1473,8 @@ export function initSpecies() {
new PokemonForm("Sunshine Form", "sunshine", Type.GRASS, null, 0.5, 9.3, Abilities.FLOWER_GIFT, Abilities.NONE, Abilities.NONE, 450, 70, 60, 70, 87, 78, 85, 75, 50, 158),
),
new PokemonSpecies(Species.SHELLOS, 4, false, false, false, "Sea Slug Pokémon", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("East Sea", "east", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65),
new PokemonForm("West Sea", "west", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65),
new PokemonForm("East Sea", "east", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65, false, null, true),
new PokemonForm("West Sea", "west", Type.WATER, null, 0.3, 6.3, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 325, 76, 48, 48, 57, 62, 34, 190, 50, 65, false, null, true),
),
new PokemonSpecies(Species.GASTRODON, 4, false, false, false, "Sea Slug Pokémon", Type.WATER, Type.GROUND, 0.9, 29.9, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 475, 111, 83, 68, 92, 82, 39, 75, 50, 166, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("East Sea", "east", Type.WATER, Type.GROUND, 0.9, 29.9, Abilities.STICKY_HOLD, Abilities.STORM_DRAIN, Abilities.SAND_FORCE, 475, 111, 83, 68, 92, 82, 39, 75, 50, 166),
@ -1553,12 +1551,12 @@ export function initSpecies() {
new PokemonSpecies(Species.DUSKNOIR, 4, false, false, false, "Gripper Pokémon", Type.GHOST, null, 2.2, 106.6, Abilities.PRESSURE, Abilities.NONE, Abilities.FRISK, 525, 45, 100, 135, 65, 135, 45, 45, 35, 263, GrowthRate.FAST, 50, false),
new PokemonSpecies(Species.FROSLASS, 4, false, false, false, "Snow Land Pokémon", Type.ICE, Type.GHOST, 1.3, 26.6, Abilities.SNOW_CLOAK, Abilities.NONE, Abilities.CURSED_BODY, 480, 70, 80, 70, 80, 70, 110, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
new PokemonSpecies(Species.ROTOM, 4, false, false, false, "Plasma Pokémon", Type.ELECTRIC, Type.GHOST, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 440, 50, 50, 77, 95, 77, 91, 45, 50, 154, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("Normal", "", Type.ELECTRIC, Type.GHOST, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 440, 50, 50, 77, 95, 77, 91, 45, 50, 154),
new PokemonForm("Heat", "heat", Type.ELECTRIC, Type.FIRE, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
new PokemonForm("Wash", "wash", Type.ELECTRIC, Type.WATER, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
new PokemonForm("Frost", "frost", Type.ELECTRIC, Type.ICE, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
new PokemonForm("Fan", "fan", Type.ELECTRIC, Type.FLYING, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
new PokemonForm("Mow", "mow", Type.ELECTRIC, Type.GRASS, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154),
new PokemonForm("Normal", "", Type.ELECTRIC, Type.GHOST, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 440, 50, 50, 77, 95, 77, 91, 45, 50, 154, false, null, true),
new PokemonForm("Heat", "heat", Type.ELECTRIC, Type.FIRE, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154, false, null, true),
new PokemonForm("Wash", "wash", Type.ELECTRIC, Type.WATER, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154, false, null, true),
new PokemonForm("Frost", "frost", Type.ELECTRIC, Type.ICE, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154, false, null, true),
new PokemonForm("Fan", "fan", Type.ELECTRIC, Type.FLYING, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154, false, null, true),
new PokemonForm("Mow", "mow", Type.ELECTRIC, Type.GRASS, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 520, 50, 65, 107, 105, 107, 86, 45, 50, 154, false, null, true),
),
new PokemonSpecies(Species.UXIE, 4, true, false, false, "Knowledge Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 75, 75, 130, 75, 130, 95, 3, 140, 290, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.MESPRIT, 4, true, false, false, "Emotion Pokémon", Type.PSYCHIC, null, 0.3, 0.3, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 80, 105, 105, 105, 105, 80, 3, 140, 290, GrowthRate.SLOW, null, false),
@ -1574,7 +1572,7 @@ export function initSpecies() {
new PokemonSpecies(Species.HEATRAN, 4, true, false, false, "Lava Dome Pokémon", Type.FIRE, Type.STEEL, 1.7, 430, Abilities.FLASH_FIRE, Abilities.NONE, Abilities.FLAME_BODY, 600, 91, 90, 106, 130, 106, 77, 3, 100, 300, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.REGIGIGAS, 4, true, false, false, "Colossal Pokémon", Type.NORMAL, null, 3.7, 420, Abilities.SLOW_START, Abilities.NONE, Abilities.NORMALIZE, 670, 110, 160, 110, 80, 110, 100, 3, 0, 335, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.GIRATINA, 4, false, true, false, "Renegade Pokémon", Type.GHOST, Type.DRAGON, 4.5, 750, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 150, 100, 120, 100, 120, 90, 3, 0, 340, GrowthRate.SLOW, null, false, true,
new PokemonForm("Altered Forme", "altered", Type.GHOST, Type.DRAGON, 4.5, 750, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 150, 100, 120, 100, 120, 90, 3, 0, 340),
new PokemonForm("Altered Forme", "altered", Type.GHOST, Type.DRAGON, 4.5, 750, Abilities.PRESSURE, Abilities.NONE, Abilities.TELEPATHY, 680, 150, 100, 120, 100, 120, 90, 3, 0, 340, false, null, true),
new PokemonForm("Origin Forme", "origin", Type.GHOST, Type.DRAGON, 6.9, 650, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 680, 150, 120, 100, 120, 100, 90, 3, 0, 340),
),
new PokemonSpecies(Species.CRESSELIA, 4, true, false, false, "Lunar Pokémon", Type.PSYCHIC, null, 1.5, 85.6, Abilities.LEVITATE, Abilities.NONE, Abilities.NONE, 580, 120, 70, 110, 75, 120, 85, 3, 100, 300, GrowthRate.SLOW, 0, false),
@ -1582,7 +1580,7 @@ export function initSpecies() {
new PokemonSpecies(Species.MANAPHY, 4, false, false, true, "Seafaring Pokémon", Type.WATER, null, 0.3, 1.4, Abilities.HYDRATION, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 3, 70, 270, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.DARKRAI, 4, false, false, true, "Pitch-Black Pokémon", Type.DARK, null, 1.5, 50.5, Abilities.BAD_DREAMS, Abilities.NONE, Abilities.NONE, 600, 70, 90, 90, 135, 90, 125, 3, 0, 270, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.SHAYMIN, 4, false, false, true, "Gratitude Pokémon", Type.GRASS, null, 0.2, 2.1, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 270, GrowthRate.MEDIUM_SLOW, null, false, true,
new PokemonForm("Land Forme", "land", Type.GRASS, null, 0.2, 2.1, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 270),
new PokemonForm("Land Forme", "land", Type.GRASS, null, 0.2, 2.1, Abilities.NATURAL_CURE, Abilities.NONE, Abilities.NONE, 600, 100, 100, 100, 100, 100, 100, 45, 100, 270, false, null, true),
new PokemonForm("Sky Forme", "sky", Type.GRASS, Type.FLYING, 0.4, 5.2, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 103, 75, 120, 75, 127, 45, 100, 270),
),
new PokemonSpecies(Species.ARCEUS, 4, false, false, true, "Alpha Pokémon", Type.NORMAL, null, 3.2, 320, Abilities.MULTITYPE, Abilities.NONE, Abilities.NONE, 720, 120, 120, 120, 120, 120, 120, 3, 0, 324, GrowthRate.SLOW, null, false, true,
@ -1666,9 +1664,9 @@ export function initSpecies() {
new PokemonSpecies(Species.PETILIL, 5, false, false, false, "Bulb Pokémon", Type.GRASS, null, 0.5, 6.6, Abilities.CHLOROPHYLL, Abilities.OWN_TEMPO, Abilities.LEAF_GUARD, 280, 45, 35, 50, 70, 50, 30, 190, 50, 56, GrowthRate.MEDIUM_FAST, 0, false),
new PokemonSpecies(Species.LILLIGANT, 5, false, false, false, "Flowering Pokémon", Type.GRASS, null, 1.1, 16.3, Abilities.CHLOROPHYLL, Abilities.OWN_TEMPO, Abilities.LEAF_GUARD, 480, 70, 60, 75, 110, 75, 90, 75, 50, 168, GrowthRate.MEDIUM_FAST, 0, false),
new PokemonSpecies(Species.BASCULIN, 5, false, false, false, "Hostile Pokémon", Type.WATER, null, 1, 18, Abilities.RECKLESS, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Red-Striped Form", "red-striped", Type.WATER, null, 1, 18, Abilities.RECKLESS, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161),
new PokemonForm("Blue-Striped Form", "blue-striped", Type.WATER, null, 1, 18, Abilities.ROCK_HEAD, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161),
new PokemonForm("White-Striped Form", "white-striped", Type.WATER, null, 1, 18, Abilities.RATTLED, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161),
new PokemonForm("Red-Striped Form", "red-striped", Type.WATER, null, 1, 18, Abilities.RECKLESS, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161, false, null, true),
new PokemonForm("Blue-Striped Form", "blue-striped", Type.WATER, null, 1, 18, Abilities.ROCK_HEAD, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161, false, null, true),
new PokemonForm("White-Striped Form", "white-striped", Type.WATER, null, 1, 18, Abilities.RATTLED, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 460, 70, 92, 65, 80, 55, 98, 25, 50, 161, false, null, true),
),
new PokemonSpecies(Species.SANDILE, 5, false, false, false, "Desert Croc Pokémon", Type.GROUND, Type.DARK, 0.7, 15.2, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 292, 50, 72, 35, 35, 35, 65, 180, 50, 58, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.KROKOROK, 5, false, false, false, "Desert Croc Pokémon", Type.GROUND, Type.DARK, 1, 33.4, Abilities.INTIMIDATE, Abilities.MOXIE, Abilities.ANGER_POINT, 351, 60, 82, 45, 45, 45, 74, 90, 50, 123, GrowthRate.MEDIUM_SLOW, 50, false),
@ -1711,10 +1709,10 @@ export function initSpecies() {
new PokemonSpecies(Species.VANILLISH, 5, false, false, false, "Icy Snow Pokémon", Type.ICE, null, 1.1, 41, Abilities.ICE_BODY, Abilities.SNOW_CLOAK, Abilities.WEAK_ARMOR, 395, 51, 65, 65, 80, 75, 59, 120, 50, 138, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.VANILLUXE, 5, false, false, false, "Snowstorm Pokémon", Type.ICE, null, 1.3, 57.5, Abilities.ICE_BODY, Abilities.SNOW_WARNING, Abilities.WEAK_ARMOR, 535, 71, 95, 85, 110, 95, 79, 45, 50, 268, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.DEERLING, 5, false, false, false, "Season Pokémon", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Spring Form", "spring", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
new PokemonForm("Summer Form", "summer", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
new PokemonForm("Autumn Form", "autumn", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
new PokemonForm("Winter Form", "winter", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67),
new PokemonForm("Spring Form", "spring", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67, false, null, true),
new PokemonForm("Summer Form", "summer", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67, false, null, true),
new PokemonForm("Autumn Form", "autumn", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67, false, null, true),
new PokemonForm("Winter Form", "winter", Type.NORMAL, Type.GRASS, 0.6, 19.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 335, 60, 60, 50, 40, 50, 75, 190, 70, 67, false, null, true),
),
new PokemonSpecies(Species.SAWSBUCK, 5, false, false, false, "Season Pokémon", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Spring Form", "spring", Type.NORMAL, Type.GRASS, 1.9, 92.5, Abilities.CHLOROPHYLL, Abilities.SAP_SIPPER, Abilities.SERENE_GRACE, 475, 80, 100, 70, 60, 70, 95, 75, 70, 166),
@ -1777,17 +1775,17 @@ export function initSpecies() {
new PokemonSpecies(Species.TERRAKION, 5, true, false, false, "Cavern Pokémon", Type.ROCK, Type.FIGHTING, 1.9, 260, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 129, 90, 72, 90, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.VIRIZION, 5, true, false, false, "Grassland Pokémon", Type.GRASS, Type.FIGHTING, 2, 200, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 90, 72, 90, 129, 108, 3, 35, 290, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.TORNADUS, 5, true, false, false, "Cyclone Pokémon", Type.FLYING, null, 1.5, 63, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.FLYING, null, 1.5, 63, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290),
new PokemonForm("Incarnate Forme", "incarnate", Type.FLYING, null, 1.5, 63, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, false, null, true),
new PokemonForm("Therian Forme", "therian", Type.FLYING, null, 1.4, 63, Abilities.REGENERATOR, Abilities.NONE, Abilities.REGENERATOR, 580, 79, 100, 80, 110, 90, 121, 3, 90, 290),
),
new PokemonSpecies(Species.THUNDURUS, 5, true, false, false, "Bolt Strike Pokémon", Type.ELECTRIC, Type.FLYING, 1.5, 61, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.ELECTRIC, Type.FLYING, 1.5, 61, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290),
new PokemonForm("Incarnate Forme", "incarnate", Type.ELECTRIC, Type.FLYING, 1.5, 61, Abilities.PRANKSTER, Abilities.NONE, Abilities.DEFIANT, 580, 79, 115, 70, 125, 80, 111, 3, 90, 290, false, null, true),
new PokemonForm("Therian Forme", "therian", Type.ELECTRIC, Type.FLYING, 3, 61, Abilities.VOLT_ABSORB, Abilities.NONE, Abilities.VOLT_ABSORB, 580, 79, 105, 70, 145, 80, 101, 3, 90, 290),
),
new PokemonSpecies(Species.RESHIRAM, 5, false, true, false, "Vast White Pokémon", Type.DRAGON, Type.FIRE, 3.2, 330, Abilities.TURBOBLAZE, Abilities.NONE, Abilities.NONE, 680, 100, 120, 100, 150, 120, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.ZEKROM, 5, false, true, false, "Deep Black Pokémon", Type.DRAGON, Type.ELECTRIC, 2.9, 345, Abilities.TERAVOLT, Abilities.NONE, Abilities.NONE, 680, 100, 150, 120, 120, 100, 90, 3, 0, 340, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.LANDORUS, 5, true, false, false, "Abundance Pokémon", Type.GROUND, Type.FLYING, 1.5, 68, Abilities.SAND_FORCE, Abilities.NONE, Abilities.SHEER_FORCE, 600, 89, 125, 90, 115, 80, 101, 3, 90, 300, GrowthRate.SLOW, 100, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.GROUND, Type.FLYING, 1.5, 68, Abilities.SAND_FORCE, Abilities.NONE, Abilities.SHEER_FORCE, 600, 89, 125, 90, 115, 80, 101, 3, 90, 300),
new PokemonForm("Incarnate Forme", "incarnate", Type.GROUND, Type.FLYING, 1.5, 68, Abilities.SAND_FORCE, Abilities.NONE, Abilities.SHEER_FORCE, 600, 89, 125, 90, 115, 80, 101, 3, 90, 300, false, null, true),
new PokemonForm("Therian Forme", "therian", Type.GROUND, Type.FLYING, 1.3, 68, Abilities.INTIMIDATE, Abilities.NONE, Abilities.INTIMIDATE, 600, 89, 145, 90, 105, 80, 91, 3, 90, 300),
),
new PokemonSpecies(Species.KYUREM, 5, false, true, false, "Boundary Pokémon", Type.DRAGON, Type.ICE, 3, 325, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 660, 125, 130, 90, 130, 90, 95, 3, 0, 330, GrowthRate.SLOW, null, false, true,
@ -1800,7 +1798,7 @@ export function initSpecies() {
new PokemonForm("Resolute", "resolute", Type.WATER, Type.FIGHTING, 1.4, 48.5, Abilities.JUSTIFIED, Abilities.NONE, Abilities.NONE, 580, 91, 72, 90, 129, 90, 108, 3, 35, 290),
),
new PokemonSpecies(Species.MELOETTA, 5, false, false, true, "Melody Pokémon", Type.NORMAL, Type.PSYCHIC, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 77, 77, 128, 128, 90, 3, 100, 270, GrowthRate.SLOW, 0, false, true,
new PokemonForm("Aria Forme", "aria", Type.NORMAL, Type.PSYCHIC, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 77, 77, 128, 128, 90, 3, 100, 270),
new PokemonForm("Aria Forme", "aria", Type.NORMAL, Type.PSYCHIC, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 77, 77, 128, 128, 90, 3, 100, 270, false, null, true),
new PokemonForm("Pirouette Forme", "pirouette", Type.NORMAL, Type.FIGHTING, 0.6, 6.5, Abilities.SERENE_GRACE, Abilities.NONE, Abilities.NONE, 600, 100, 128, 90, 77, 77, 128, 3, 100, 270),
),
new PokemonSpecies(Species.GENESECT, 5, false, false, true, "Paleozoic Pokémon", Type.BUG, Type.STEEL, 1.5, 82.5, Abilities.DOWNLOAD, Abilities.NONE, Abilities.NONE, 600, 71, 120, 95, 120, 95, 99, 3, 0, 300, GrowthRate.SLOW, null, false, true,
@ -1817,8 +1815,8 @@ export function initSpecies() {
new PokemonSpecies(Species.BRAIXEN, 6, false, false, false, "Fox Pokémon", Type.FIRE, null, 1, 14.5, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 409, 59, 59, 58, 90, 70, 73, 45, 70, 143, GrowthRate.MEDIUM_SLOW, 87.5, false),
new PokemonSpecies(Species.DELPHOX, 6, false, false, false, "Fox Pokémon", Type.FIRE, Type.PSYCHIC, 1.5, 39, Abilities.BLAZE, Abilities.NONE, Abilities.MAGICIAN, 534, 75, 69, 72, 114, 100, 104, 45, 70, 240, GrowthRate.MEDIUM_SLOW, 87.5, false),
new PokemonSpecies(Species.FROAKIE, 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.3, 7, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 314, 41, 56, 40, 62, 44, 71, 45, 70, 63, GrowthRate.MEDIUM_SLOW, 87.5, false, false,
new PokemonForm("Normal", "", Type.WATER, null, 0.3, 7, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 314, 41, 56, 40, 62, 44, 71, 45, 70, 63),
new PokemonForm("Battle Bond", "battle-bond", Type.WATER, null, 0.3, 7, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 314, 41, 56, 40, 62, 44, 71, 45, 70, 63, false, ""),
new PokemonForm("Normal", "", Type.WATER, null, 0.3, 7, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 314, 41, 56, 40, 62, 44, 71, 45, 70, 63, false, null, true),
new PokemonForm("Battle Bond", "battle-bond", Type.WATER, null, 0.3, 7, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 314, 41, 56, 40, 62, 44, 71, 45, 70, 63, false, "", true),
),
new PokemonSpecies(Species.FROGADIER, 6, false, false, false, "Bubble Frog Pokémon", Type.WATER, null, 0.6, 10.9, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 405, 54, 63, 52, 83, 56, 97, 45, 70, 142, GrowthRate.MEDIUM_SLOW, 87.5, false, false,
new PokemonForm("Normal", "", Type.WATER, null, 0.6, 10.9, Abilities.TORRENT, Abilities.NONE, Abilities.PROTEAN, 405, 54, 63, 52, 83, 56, 97, 45, 70, 142),
@ -1835,26 +1833,26 @@ export function initSpecies() {
new PokemonSpecies(Species.FLETCHINDER, 6, false, false, false, "Ember Pokémon", Type.FIRE, Type.FLYING, 0.7, 16, Abilities.FLAME_BODY, Abilities.NONE, Abilities.GALE_WINGS, 382, 62, 73, 55, 56, 52, 84, 120, 50, 134, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.TALONFLAME, 6, false, false, false, "Scorching Pokémon", Type.FIRE, Type.FLYING, 1.2, 24.5, Abilities.FLAME_BODY, Abilities.NONE, Abilities.GALE_WINGS, 499, 78, 81, 71, 74, 69, 126, 45, 50, 175, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.SCATTERBUG, 6, false, false, false, "Scatterdust Pokémon", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Meadow Pattern", "meadow", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Icy Snow Pattern", "icy-snow", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Polar Pattern", "polar", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Tundra Pattern", "tundra", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Continental Pattern", "continental", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Garden Pattern", "garden", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Elegant Pattern", "elegant", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Modern Pattern", "modern", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Marine Pattern", "marine", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Archipelago Pattern", "archipelago", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("High Plains Pattern", "high-plains", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Sandstorm Pattern", "sandstorm", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("River Pattern", "river", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Monsoon Pattern", "monsoon", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Savanna Pattern", "savanna", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Sun Pattern", "sun", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Ocean Pattern", "ocean", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Jungle Pattern", "jungle", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Fancy Pattern", "fancy", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Poké Ball Pattern", "poke-ball", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, ""),
new PokemonForm("Meadow Pattern", "meadow", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Icy Snow Pattern", "icy-snow", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Polar Pattern", "polar", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Tundra Pattern", "tundra", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Continental Pattern", "continental", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Garden Pattern", "garden", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Elegant Pattern", "elegant", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Modern Pattern", "modern", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Marine Pattern", "marine", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Archipelago Pattern", "archipelago", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("High Plains Pattern", "high-plains", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Sandstorm Pattern", "sandstorm", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("River Pattern", "river", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Monsoon Pattern", "monsoon", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Savanna Pattern", "savanna", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Sun Pattern", "sun", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Ocean Pattern", "ocean", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Jungle Pattern", "jungle", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Fancy Pattern", "fancy", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
new PokemonForm("Poké Ball Pattern", "poke-ball", Type.BUG, null, 0.3, 2.5, Abilities.SHIELD_DUST, Abilities.COMPOUND_EYES, Abilities.FRIEND_GUARD, 200, 38, 35, 40, 27, 25, 35, 255, 70, 40, false, "", true),
),
new PokemonSpecies(Species.SPEWPA, 6, false, false, false, "Scatterdust Pokémon", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.SHED_SKIN, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Meadow Pattern", "meadow", Type.BUG, null, 0.3, 8.4, Abilities.SHED_SKIN, Abilities.NONE, Abilities.FRIEND_GUARD, 213, 45, 22, 60, 27, 30, 29, 120, 70, 75, false, ""),
@ -1903,11 +1901,11 @@ export function initSpecies() {
new PokemonSpecies(Species.LITLEO, 6, false, false, false, "Lion Cub Pokémon", Type.FIRE, Type.NORMAL, 0.6, 13.5, Abilities.RIVALRY, Abilities.UNNERVE, Abilities.MOXIE, 369, 62, 50, 58, 73, 54, 72, 220, 70, 74, GrowthRate.MEDIUM_SLOW, 12.5, false),
new PokemonSpecies(Species.PYROAR, 6, false, false, false, "Royal Pokémon", Type.FIRE, Type.NORMAL, 1.5, 81.5, Abilities.RIVALRY, Abilities.UNNERVE, Abilities.MOXIE, 507, 86, 68, 72, 109, 66, 106, 65, 70, 177, GrowthRate.MEDIUM_SLOW, 12.5, true),
new PokemonSpecies(Species.FLABEBE, 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, GrowthRate.MEDIUM_FAST, 0, false, false,
new PokemonForm("Red Flower", "red", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("Yellow Flower", "yellow", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("Orange Flower", "orange", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("Blue Flower", "blue", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("White Flower", "white", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61),
new PokemonForm("Red Flower", "red", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, false, null, true),
new PokemonForm("Yellow Flower", "yellow", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, false, null, true),
new PokemonForm("Orange Flower", "orange", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, false, null, true),
new PokemonForm("Blue Flower", "blue", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, false, null, true),
new PokemonForm("White Flower", "white", Type.FAIRY, null, 0.1, 0.1, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 303, 44, 38, 39, 61, 79, 42, 225, 70, 61, false, null, true),
),
new PokemonSpecies(Species.FLOETTE, 6, false, false, false, "Single Bloom Pokémon", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130, GrowthRate.MEDIUM_FAST, 0, false, false,
new PokemonForm("Red Flower", "red", Type.FAIRY, null, 0.2, 0.9, Abilities.FLOWER_VEIL, Abilities.NONE, Abilities.SYMBIOSIS, 371, 54, 45, 47, 75, 98, 52, 120, 70, 130),
@ -1928,27 +1926,27 @@ export function initSpecies() {
new PokemonSpecies(Species.PANCHAM, 6, false, false, false, "Playful Pokémon", Type.FIGHTING, null, 0.6, 8, Abilities.IRON_FIST, Abilities.MOLD_BREAKER, Abilities.SCRAPPY, 348, 67, 82, 62, 46, 48, 43, 220, 50, 70, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.PANGORO, 6, false, false, false, "Daunting Pokémon", Type.FIGHTING, Type.DARK, 2.1, 136, Abilities.IRON_FIST, Abilities.MOLD_BREAKER, Abilities.SCRAPPY, 495, 95, 124, 78, 69, 71, 58, 65, 50, 173, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.FURFROU, 6, false, false, false, "Poodle Pokémon", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Natural Form", "", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165),
new PokemonForm("Heart Trim", "heart", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Star Trim", "star", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Diamond Trim", "diamond", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Debutante Trim", "debutante", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Matron Trim", "matron", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Dandy Trim", "dandy", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("La Reine Trim", "la-reine", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Kabuki Trim", "kabuki", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Pharaoh Trim", "pharaoh", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false),
new PokemonForm("Natural Form", "", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Heart Trim", "heart", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Star Trim", "star", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Diamond Trim", "diamond", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Debutante Trim", "debutante", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Matron Trim", "matron", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Dandy Trim", "dandy", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("La Reine Trim", "la-reine", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Kabuki Trim", "kabuki", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
new PokemonForm("Pharaoh Trim", "pharaoh", Type.NORMAL, null, 1.2, 28, Abilities.FUR_COAT, Abilities.NONE, Abilities.NONE, 472, 75, 80, 60, 65, 90, 102, 160, 70, 165, false, null, true),
),
new PokemonSpecies(Species.ESPURR, 6, false, false, false, "Restraint Pokémon", Type.PSYCHIC, null, 0.3, 3.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.OWN_TEMPO, 355, 62, 48, 54, 63, 60, 68, 190, 50, 71, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.MEOWSTIC, 6, false, false, false, "Constraint Pokémon", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.PRANKSTER, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Male", "male", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.PRANKSTER, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, false, ""),
new PokemonForm("Female", "female", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.COMPETITIVE, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, false),
new PokemonForm("Male", "male", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.PRANKSTER, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, false, "", true),
new PokemonForm("Female", "female", Type.PSYCHIC, null, 0.6, 8.5, Abilities.KEEN_EYE, Abilities.INFILTRATOR, Abilities.COMPETITIVE, 466, 74, 48, 76, 83, 81, 104, 75, 50, 163, false, null, true),
),
new PokemonSpecies(Species.HONEDGE, 6, false, false, false, "Sword Pokémon", Type.STEEL, Type.GHOST, 0.8, 2, Abilities.NO_GUARD, Abilities.NONE, Abilities.NONE, 325, 45, 80, 100, 35, 37, 28, 180, 50, 65, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.DOUBLADE, 6, false, false, false, "Sword Pokémon", Type.STEEL, Type.GHOST, 0.8, 4.5, Abilities.NO_GUARD, Abilities.NONE, Abilities.NONE, 448, 59, 110, 150, 45, 49, 35, 90, 50, 157, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.AEGISLASH, 6, false, false, false, "Royal Sword Pokémon", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 50, 140, 50, 140, 60, 45, 50, 250, GrowthRate.MEDIUM_FAST, 50, false, true,
new PokemonForm("Shield Forme", "shield", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 50, 140, 50, 140, 60, 45, 50, 250, false, ""),
new PokemonForm("Blade Forme", "blade", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 140, 50, 140, 50, 60, 45, 50, 250),
new PokemonForm("Shield Forme", "shield", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 50, 140, 50, 140, 60, 45, 50, 250, false, "", true),
new PokemonForm("Blade Forme", "blade", Type.STEEL, Type.GHOST, 1.7, 53, Abilities.STANCE_CHANGE, Abilities.NONE, Abilities.NONE, 500, 60, 140, 50, 140, 50, 60, 45, 50, 250, false, null, true),
),
new PokemonSpecies(Species.SPRITZEE, 6, false, false, false, "Perfume Pokémon", Type.FAIRY, null, 0.2, 0.5, Abilities.HEALER, Abilities.NONE, Abilities.AROMA_VEIL, 341, 78, 52, 60, 63, 65, 23, 200, 50, 68, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.AROMATISSE, 6, false, false, false, "Fragrance Pokémon", Type.FAIRY, null, 0.8, 15.5, Abilities.HEALER, Abilities.NONE, Abilities.AROMA_VEIL, 462, 101, 72, 72, 99, 89, 29, 140, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
@ -1979,10 +1977,10 @@ export function initSpecies() {
new PokemonSpecies(Species.PHANTUMP, 6, false, false, false, "Stump Pokémon", Type.GHOST, Type.GRASS, 0.4, 7, Abilities.NATURAL_CURE, Abilities.FRISK, Abilities.HARVEST, 309, 43, 70, 48, 50, 60, 38, 120, 50, 62, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.TREVENANT, 6, false, false, false, "Elder Tree Pokémon", Type.GHOST, Type.GRASS, 1.5, 71, Abilities.NATURAL_CURE, Abilities.FRISK, Abilities.HARVEST, 474, 85, 110, 76, 65, 82, 56, 60, 50, 166, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.PUMPKABOO, 6, false, false, false, "Pumpkin Pokémon", Type.GHOST, Type.GRASS, 0.4, 5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 49, 66, 70, 44, 55, 51, 120, 50, 67, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Average Size", "", Type.GHOST, Type.GRASS, 0.4, 5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 49, 66, 70, 44, 55, 51, 120, 50, 67),
new PokemonForm("Small Size", "small", Type.GHOST, Type.GRASS, 0.3, 3.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 44, 66, 70, 44, 55, 56, 120, 50, 67),
new PokemonForm("Large Size", "large", Type.GHOST, Type.GRASS, 0.5, 7.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 54, 66, 70, 44, 55, 46, 120, 50, 67),
new PokemonForm("Super Size", "super", Type.GHOST, Type.GRASS, 0.8, 15, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 59, 66, 70, 44, 55, 41, 120, 50, 67),
new PokemonForm("Average Size", "", Type.GHOST, Type.GRASS, 0.4, 5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 49, 66, 70, 44, 55, 51, 120, 50, 67, false, null, true),
new PokemonForm("Small Size", "small", Type.GHOST, Type.GRASS, 0.3, 3.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 44, 66, 70, 44, 55, 56, 120, 50, 67, false, null, true),
new PokemonForm("Large Size", "large", Type.GHOST, Type.GRASS, 0.5, 7.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 54, 66, 70, 44, 55, 46, 120, 50, 67, false, null, true),
new PokemonForm("Super Size", "super", Type.GHOST, Type.GRASS, 0.8, 15, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 335, 59, 66, 70, 44, 55, 41, 120, 50, 67, false, null, true),
),
new PokemonSpecies(Species.GOURGEIST, 6, false, false, false, "Pumpkin Pokémon", Type.GHOST, Type.GRASS, 0.9, 12.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 65, 90, 122, 58, 75, 84, 60, 50, 173, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Average Size", "", Type.GHOST, Type.GRASS, 0.9, 12.5, Abilities.PICKUP, Abilities.FRISK, Abilities.INSOMNIA, 494, 65, 90, 122, 58, 75, 84, 60, 50, 173),
@ -1995,15 +1993,15 @@ export function initSpecies() {
new PokemonSpecies(Species.NOIBAT, 6, false, false, false, "Sound Wave Pokémon", Type.FLYING, Type.DRAGON, 0.5, 8, Abilities.FRISK, Abilities.INFILTRATOR, Abilities.TELEPATHY, 245, 40, 30, 35, 45, 40, 55, 190, 50, 49, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.NOIVERN, 6, false, false, false, "Sound Wave Pokémon", Type.FLYING, Type.DRAGON, 1.5, 85, Abilities.FRISK, Abilities.INFILTRATOR, Abilities.TELEPATHY, 535, 85, 70, 80, 97, 80, 123, 45, 50, 187, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.XERNEAS, 6, false, true, false, "Life Pokémon", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340, GrowthRate.SLOW, null, false, true,
new PokemonForm("Neutral Mode", "neutral", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340),
new PokemonForm("Neutral Mode", "neutral", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340, false, null, true),
new PokemonForm("Active Mode", "active", Type.FAIRY, null, 3, 215, Abilities.FAIRY_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340)
),
new PokemonSpecies(Species.YVELTAL, 6, false, true, false, "Destruction Pokémon", Type.DARK, Type.FLYING, 5.8, 203, Abilities.DARK_AURA, Abilities.NONE, Abilities.NONE, 680, 126, 131, 95, 131, 98, 99, 45, 0, 340, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.ZYGARDE, 6, false, true, false, "Order Pokémon", Type.DRAGON, Type.GROUND, 5, 305, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, GrowthRate.SLOW, null, false, false,
new PokemonForm("50% Forme", "50", Type.DRAGON, Type.GROUND, 5, 305, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, false, ""),
new PokemonForm("10% Forme", "10", Type.DRAGON, Type.GROUND, 1.2, 33.5, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 486, 54, 100, 71, 61, 85, 115, 3, 0, 300),
new PokemonForm("50% Forme Power Construct", "50-pc", Type.DRAGON, Type.GROUND, 5, 305, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, false, ""),
new PokemonForm("10% Forme Power Construct", "10-pc", Type.DRAGON, Type.GROUND, 1.2, 33.5, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 486, 54, 100, 71, 61, 85, 115, 3, 0, 300, false, "10"),
new PokemonForm("50% Forme", "50", Type.DRAGON, Type.GROUND, 5, 305, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, false, "", true),
new PokemonForm("10% Forme", "10", Type.DRAGON, Type.GROUND, 1.2, 33.5, Abilities.AURA_BREAK, Abilities.NONE, Abilities.NONE, 486, 54, 100, 71, 61, 85, 115, 3, 0, 300, false, null, true),
new PokemonForm("50% Forme Power Construct", "50-pc", Type.DRAGON, Type.GROUND, 5, 305, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 600, 108, 100, 121, 81, 95, 95, 3, 0, 300, false, "", true),
new PokemonForm("10% Forme Power Construct", "10-pc", Type.DRAGON, Type.GROUND, 1.2, 33.5, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 486, 54, 100, 71, 61, 85, 115, 3, 0, 300, false, "10", true),
new PokemonForm("Complete Forme", "complete", Type.DRAGON, Type.GROUND, 4.5, 610, Abilities.POWER_CONSTRUCT, Abilities.NONE, Abilities.NONE, 708, 216, 100, 121, 91, 95, 85, 3, 0, 300),
),
new PokemonSpecies(Species.DIANCIE, 6, false, false, true, "Jewel Pokémon", Type.ROCK, Type.FAIRY, 0.7, 8.8, Abilities.CLEAR_BODY, Abilities.NONE, Abilities.NONE, 600, 50, 100, 150, 100, 150, 50, 3, 50, 300, GrowthRate.SLOW, null, false, true,
@ -2035,16 +2033,16 @@ export function initSpecies() {
new PokemonSpecies(Species.CRABRAWLER, 7, false, false, false, "Boxing Pokémon", Type.FIGHTING, null, 0.6, 7, Abilities.HYPER_CUTTER, Abilities.IRON_FIST, Abilities.ANGER_POINT, 338, 47, 82, 57, 42, 47, 63, 225, 70, 68, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.CRABOMINABLE, 7, false, false, false, "Woolly Crab Pokémon", Type.FIGHTING, Type.ICE, 1.7, 180, Abilities.HYPER_CUTTER, Abilities.IRON_FIST, Abilities.ANGER_POINT, 478, 97, 132, 77, 62, 67, 43, 60, 70, 167, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.ORICORIO, 7, false, false, false, "Dancing Pokémon", Type.FIRE, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, GrowthRate.MEDIUM_FAST, 25, false, false,
new PokemonForm("Baile Style", "baile", Type.FIRE, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, false, ""),
new PokemonForm("Pom-Pom Style", "pompom", Type.ELECTRIC, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167),
new PokemonForm("Pau Style", "pau", Type.PSYCHIC, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167),
new PokemonForm("Sensu Style", "sensu", Type.GHOST, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167),
new PokemonForm("Baile Style", "baile", Type.FIRE, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, false, "", true),
new PokemonForm("Pom-Pom Style", "pompom", Type.ELECTRIC, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, false, null, true),
new PokemonForm("Pau Style", "pau", Type.PSYCHIC, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, false, null, true),
new PokemonForm("Sensu Style", "sensu", Type.GHOST, Type.FLYING, 0.6, 3.4, Abilities.DANCER, Abilities.NONE, Abilities.NONE, 476, 75, 70, 70, 98, 70, 93, 45, 70, 167, false, null, true),
),
new PokemonSpecies(Species.CUTIEFLY, 7, false, false, false, "Bee Fly Pokémon", Type.BUG, Type.FAIRY, 0.1, 0.2, Abilities.HONEY_GATHER, Abilities.SHIELD_DUST, Abilities.SWEET_VEIL, 304, 40, 45, 40, 55, 40, 84, 190, 50, 61, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.RIBOMBEE, 7, false, false, false, "Bee Fly Pokémon", Type.BUG, Type.FAIRY, 0.2, 0.5, Abilities.HONEY_GATHER, Abilities.SHIELD_DUST, Abilities.SWEET_VEIL, 464, 60, 55, 60, 95, 70, 124, 75, 50, 162, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.ROCKRUFF, 7, false, false, false, "Puppy Pokémon", Type.ROCK, null, 0.5, 9.2, Abilities.KEEN_EYE, Abilities.VITAL_SPIRIT, Abilities.STEADFAST, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Normal", "", Type.ROCK, null, 0.5, 9.2, Abilities.KEEN_EYE, Abilities.VITAL_SPIRIT, Abilities.STEADFAST, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56),
new PokemonForm("Own Tempo", "own-tempo", Type.ROCK, null, 0.5, 9.2, Abilities.OWN_TEMPO, Abilities.NONE, Abilities.OWN_TEMPO, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56, false, ""),
new PokemonForm("Normal", "", Type.ROCK, null, 0.5, 9.2, Abilities.KEEN_EYE, Abilities.VITAL_SPIRIT, Abilities.STEADFAST, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56, false, null, true),
new PokemonForm("Own Tempo", "own-tempo", Type.ROCK, null, 0.5, 9.2, Abilities.OWN_TEMPO, Abilities.NONE, Abilities.OWN_TEMPO, 280, 45, 65, 40, 30, 40, 60, 190, 50, 56, false, "", true),
),
new PokemonSpecies(Species.LYCANROC, 7, false, false, false, "Wolf Pokémon", Type.ROCK, null, 0.8, 25, Abilities.KEEN_EYE, Abilities.SAND_RUSH, Abilities.STEADFAST, 487, 75, 115, 65, 55, 65, 112, 90, 50, 170, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Midday Form", "midday", Type.ROCK, null, 0.8, 25, Abilities.KEEN_EYE, Abilities.SAND_RUSH, Abilities.STEADFAST, 487, 75, 115, 65, 55, 65, 112, 90, 50, 170, false, ""),
@ -2102,26 +2100,26 @@ export function initSpecies() {
new PokemonForm("Type: Fairy", "fairy", Type.FAIRY, null, 2.3, 100.5, Abilities.RKS_SYSTEM, Abilities.NONE, Abilities.NONE, 570, 95, 95, 95, 95, 95, 95, 3, 0, 285),
),
new PokemonSpecies(Species.MINIOR, 7, false, false, false, "Meteor Pokémon", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, GrowthRate.MEDIUM_SLOW, null, false, false,
new PokemonForm("Red Meteor Form", "red-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Orange Meteor Form", "orange-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Yellow Meteor Form", "yellow-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Green Meteor Form", "green-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Blue Meteor Form", "blue-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Indigo Meteor Form", "indigo-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Violet Meteor Form", "violet-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, ""),
new PokemonForm("Red Core Form", "red", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Orange Core Form", "orange", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Yellow Core Form", "yellow", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Green Core Form", "green", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Blue Core Form", "blue", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Indigo Core Form", "indigo", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Violet Core Form", "violet", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154),
new PokemonForm("Red Meteor Form", "red-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, "", true),
new PokemonForm("Orange Meteor Form", "orange-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, "", true),
new PokemonForm("Yellow Meteor Form", "yellow-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, "", true),
new PokemonForm("Green Meteor Form", "green-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, "", true),
new PokemonForm("Blue Meteor Form", "blue-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, "", true),
new PokemonForm("Indigo Meteor Form", "indigo-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, "", true),
new PokemonForm("Violet Meteor Form", "violet-meteor", Type.ROCK, Type.FLYING, 0.3, 40, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 440, 60, 60, 100, 60, 100, 60, 30, 70, 154, false, "", true),
new PokemonForm("Red Core Form", "red", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154, false, null, true),
new PokemonForm("Orange Core Form", "orange", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154, false, null, true),
new PokemonForm("Yellow Core Form", "yellow", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154, false, null, true),
new PokemonForm("Green Core Form", "green", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154, false, null, true),
new PokemonForm("Blue Core Form", "blue", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154, false, null, true),
new PokemonForm("Indigo Core Form", "indigo", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154, false, null, true),
new PokemonForm("Violet Core Form", "violet", Type.ROCK, Type.FLYING, 0.3, 0.3, Abilities.SHIELDS_DOWN, Abilities.NONE, Abilities.NONE, 500, 60, 100, 60, 100, 60, 120, 30, 70, 154, false, null, true),
),
new PokemonSpecies(Species.KOMALA, 7, false, false, false, "Drowsing Pokémon", Type.NORMAL, null, 0.4, 19.9, Abilities.COMATOSE, Abilities.NONE, Abilities.NONE, 480, 65, 115, 65, 75, 95, 65, 45, 70, 168, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.TURTONATOR, 7, false, false, false, "Blast Turtle Pokémon", Type.FIRE, Type.DRAGON, 2, 212, Abilities.SHELL_ARMOR, Abilities.NONE, Abilities.NONE, 485, 60, 78, 135, 91, 85, 36, 70, 50, 170, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.TOGEDEMARU, 7, false, false, false, "Roly-Poly Pokémon", Type.ELECTRIC, Type.STEEL, 0.3, 3.3, Abilities.IRON_BARBS, Abilities.LIGHTNING_ROD, Abilities.STURDY, 435, 65, 98, 63, 40, 73, 96, 180, 50, 152, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.MIMIKYU, 7, false, false, false, "Disguise Pokémon", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Disguised Form", "disguised", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167, false, ""),
new PokemonForm("Disguised Form", "disguised", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167, false, "", true),
new PokemonForm("Busted Form", "busted", Type.GHOST, Type.FAIRY, 0.2, 0.7, Abilities.DISGUISE, Abilities.NONE, Abilities.NONE, 476, 55, 90, 80, 50, 105, 96, 45, 50, 167),
),
new PokemonSpecies(Species.BRUXISH, 7, false, false, false, "Gnash Teeth Pokémon", Type.WATER, Type.PSYCHIC, 0.9, 19, Abilities.DAZZLING, Abilities.STRONG_JAW, Abilities.WONDER_SKIN, 475, 68, 105, 70, 70, 70, 92, 80, 70, 166, GrowthRate.MEDIUM_FAST, 50, false),
@ -2255,8 +2253,8 @@ export function initSpecies() {
new PokemonSpecies(Species.CLOBBOPUS, 8, false, false, false, "Tantrum Pokémon", Type.FIGHTING, null, 0.6, 4, Abilities.LIMBER, Abilities.NONE, Abilities.TECHNICIAN, 310, 50, 68, 60, 50, 50, 32, 180, 50, 62, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.GRAPPLOCT, 8, false, false, false, "Jujitsu Pokémon", Type.FIGHTING, null, 1.6, 39, Abilities.LIMBER, Abilities.NONE, Abilities.TECHNICIAN, 480, 80, 118, 90, 70, 80, 42, 45, 50, 168, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.SINISTEA, 8, false, false, false, "Black Tea Pokémon", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("Phony Form", "phony", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, ""),
new PokemonForm("Antique Form", "antique", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, ""),
new PokemonForm("Phony Form", "phony", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, "", true),
new PokemonForm("Antique Form", "antique", Type.GHOST, null, 0.1, 0.2, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, "", true),
),
new PokemonSpecies(Species.POLTEAGEIST, 8, false, false, false, "Black Tea Pokémon", Type.GHOST, null, 0.2, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 508, 60, 65, 65, 134, 114, 70, 60, 50, 178, GrowthRate.MEDIUM_FAST, null, false, false,
new PokemonForm("Phony Form", "phony", Type.GHOST, null, 0.2, 0.4, Abilities.WEAK_ARMOR, Abilities.NONE, Abilities.CURSED_BODY, 508, 60, 65, 65, 134, 114, 70, 60, 50, 178, false, ""),
@ -2282,15 +2280,15 @@ export function initSpecies() {
new PokemonSpecies(Species.RUNERIGUS, 8, false, false, false, "Grudge Pokémon", Type.GROUND, Type.GHOST, 1.6, 66.6, Abilities.WANDERING_SPIRIT, Abilities.NONE, Abilities.NONE, 483, 58, 95, 145, 50, 105, 30, 90, 50, 169, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.MILCERY, 8, false, false, false, "Cream Pokémon", Type.FAIRY, null, 0.2, 0.3, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 270, 45, 40, 40, 50, 61, 34, 200, 50, 54, GrowthRate.MEDIUM_FAST, 0, false),
new PokemonSpecies(Species.ALCREMIE, 8, false, false, false, "Cream Pokémon", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, GrowthRate.MEDIUM_FAST, 0, false, true,
new PokemonForm("Vanilla Cream", "vanilla-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, ""),
new PokemonForm("Ruby Cream", "ruby-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Matcha Cream", "matcha-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Mint Cream", "mint-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Lemon Cream", "lemon-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Salted Cream", "salted-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Ruby Swirl", "ruby-swirl", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Caramel Swirl", "caramel-swirl", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Rainbow Swirl", "rainbow-swirl", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false),
new PokemonForm("Vanilla Cream", "vanilla-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, "", true),
new PokemonForm("Ruby Cream", "ruby-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("Matcha Cream", "matcha-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("Mint Cream", "mint-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("Lemon Cream", "lemon-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("Salted Cream", "salted-cream", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("Ruby Swirl", "ruby-swirl", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("Caramel Swirl", "caramel-swirl", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("Rainbow Swirl", "rainbow-swirl", Type.FAIRY, null, 0.3, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 495, 65, 60, 75, 110, 121, 64, 100, 50, 173, false, null, true),
new PokemonForm("G-Max", SpeciesFormKey.GIGANTAMAX, Type.FAIRY, null, 30, 0.5, Abilities.SWEET_VEIL, Abilities.NONE, Abilities.AROMA_VEIL, 595, 80, 70, 85, 140, 150, 65, 100, 50, 173),
),
new PokemonSpecies(Species.FALINKS, 8, false, false, false, "Formation Pokémon", Type.FIGHTING, null, 3, 62, Abilities.BATTLE_ARMOR, Abilities.NONE, Abilities.DEFIANT, 470, 65, 100, 100, 70, 60, 75, 45, 50, 165, GrowthRate.MEDIUM_FAST, null, false),
@ -2303,8 +2301,8 @@ export function initSpecies() {
new PokemonForm("No Ice", "no-ice", Type.ICE, null, 1.4, 89, Abilities.ICE_FACE, Abilities.NONE, Abilities.NONE, 470, 75, 80, 70, 65, 50, 130, 60, 50, 165),
),
new PokemonSpecies(Species.INDEEDEE, 8, false, false, false, "Emotion Pokémon", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.INNER_FOCUS, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 60, 65, 55, 105, 95, 95, 30, 140, 166, GrowthRate.FAST, 50, false, false,
new PokemonForm("Male", "male", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.INNER_FOCUS, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 60, 65, 55, 105, 95, 95, 30, 140, 166, false, ""),
new PokemonForm("Female", "female", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.OWN_TEMPO, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 70, 55, 65, 95, 105, 85, 30, 140, 166),
new PokemonForm("Male", "male", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.INNER_FOCUS, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 60, 65, 55, 105, 95, 95, 30, 140, 166, false, "", true),
new PokemonForm("Female", "female", Type.PSYCHIC, Type.NORMAL, 0.9, 28, Abilities.OWN_TEMPO, Abilities.SYNCHRONIZE, Abilities.PSYCHIC_SURGE, 475, 70, 55, 65, 95, 105, 85, 30, 140, 166, false, null, true),
),
new PokemonSpecies(Species.MORPEKO, 8, false, false, false, "Two-Sided Pokémon", Type.ELECTRIC, Type.DARK, 0.3, 3, Abilities.HUNGER_SWITCH, Abilities.NONE, Abilities.NONE, 436, 58, 95, 58, 70, 58, 97, 180, 50, 153, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Full Belly Mode", "full-belly", Type.ELECTRIC, Type.DARK, 0.3, 3, Abilities.HUNGER_SWITCH, Abilities.NONE, Abilities.NONE, 436, 58, 95, 58, 70, 58, 97, 180, 50, 153, false, ""),
@ -2327,11 +2325,11 @@ export function initSpecies() {
new PokemonSpecies(Species.DRAKLOAK, 8, false, false, false, "Caretaker Pokémon", Type.DRAGON, Type.GHOST, 1.4, 11, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 410, 68, 80, 50, 60, 50, 102, 45, 50, 144, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.DRAGAPULT, 8, false, false, false, "Stealth Pokémon", Type.DRAGON, Type.GHOST, 3, 50, Abilities.CLEAR_BODY, Abilities.INFILTRATOR, Abilities.CURSED_BODY, 600, 88, 120, 75, 100, 75, 142, 45, 50, 300, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.ZACIAN, 8, false, true, false, "Warrior Pokémon", Type.FAIRY, null, 2.8, 110, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Hero of Many Battles", "hero", Type.FAIRY, null, 2.8, 110, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, false, ""),
new PokemonForm("Hero of Many Battles", "hero", Type.FAIRY, null, 2.8, 110, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, false, "", true),
new PokemonForm("Crowned", "crowned", Type.FAIRY, Type.STEEL, 2.8, 355, Abilities.INTREPID_SWORD, Abilities.NONE, Abilities.NONE, 700, 92, 150, 115, 80, 115, 148, 10, 0, 335),
),
new PokemonSpecies(Species.ZAMAZENTA, 8, false, true, false, "Warrior Pokémon", Type.FIGHTING, null, 2.9, 210, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Hero of Many Battles", "hero", Type.FIGHTING, null, 2.9, 210, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, false, ""),
new PokemonForm("Hero of Many Battles", "hero", Type.FIGHTING, null, 2.9, 210, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 660, 92, 120, 115, 80, 115, 138, 10, 0, 335, false, "", true),
new PokemonForm("Crowned", "crowned", Type.FIGHTING, Type.STEEL, 2.9, 785, Abilities.DAUNTLESS_SHIELD, Abilities.NONE, Abilities.NONE, 700, 92, 120, 140, 80, 140, 128, 10, 0, 335),
),
new PokemonSpecies(Species.ETERNATUS, 8, false, true, false, "Gigantic Pokémon", Type.POISON, Type.DRAGON, 20, 950, Abilities.PRESSURE, Abilities.NONE, Abilities.NONE, 690, 140, 85, 95, 145, 95, 130, 255, 0, 345, GrowthRate.SLOW, null, false, true,
@ -2346,8 +2344,8 @@ export function initSpecies() {
new PokemonForm("G-Max Rapid Strike Style", SpeciesFormKey.GIGANTAMAX_RAPID, Type.FIGHTING, Type.WATER, 26, 105, Abilities.UNSEEN_FIST, Abilities.NONE, Abilities.NONE, 650, 125, 160, 120, 75, 70, 100, 3, 50, 275),
),
new PokemonSpecies(Species.ZARUDE, 8, false, false, true, "Rogue Monkey Pokémon", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300, GrowthRate.SLOW, null, false, false,
new PokemonForm("Normal", "", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300),
new PokemonForm("Dada", "dada", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300),
new PokemonForm("Normal", "", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300, false, null, true),
new PokemonForm("Dada", "dada", Type.DARK, Type.GRASS, 1.8, 70, Abilities.LEAF_GUARD, Abilities.NONE, Abilities.NONE, 600, 105, 120, 105, 70, 95, 105, 3, 0, 300, false, null, true),
),
new PokemonSpecies(Species.REGIELEKI, 8, true, false, false, "Electron Pokémon", Type.ELECTRIC, null, 1.2, 145, Abilities.TRANSISTOR, Abilities.NONE, Abilities.NONE, 580, 80, 100, 50, 100, 50, 200, 3, 35, 290, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.REGIDRAGO, 8, true, false, false, "Dragon Orb Pokémon", Type.DRAGON, null, 2.1, 200, Abilities.DRAGONS_MAW, Abilities.NONE, Abilities.NONE, 580, 200, 100, 50, 100, 50, 80, 3, 35, 290, GrowthRate.SLOW, null, false),
@ -2362,13 +2360,13 @@ export function initSpecies() {
new PokemonSpecies(Species.KLEAVOR, 8, false, false, false, "Axe Pokémon", Type.BUG, Type.ROCK, 1.8, 89, Abilities.SWARM, Abilities.SHEER_FORCE, Abilities.SHARPNESS, 500, 70, 135, 95, 45, 70, 85, 115, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.URSALUNA, 8, false, false, false, "Peat Pokémon", Type.GROUND, Type.NORMAL, 2.4, 290, Abilities.GUTS, Abilities.BULLETPROOF, Abilities.UNNERVE, 550, 130, 140, 105, 45, 80, 50, 75, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.BASCULEGION, 8, false, false, false, "Big Fish Pokémon", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 112, 65, 80, 75, 78, 135, 50, 265, GrowthRate.MEDIUM_FAST, 50, false, false,
new PokemonForm("Male", "male", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 112, 65, 80, 75, 78, 135, 50, 265, false, ""),
new PokemonForm("Female", "female", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 92, 65, 100, 75, 78, 135, 50, 265),
new PokemonForm("Male", "male", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 112, 65, 80, 75, 78, 135, 50, 265, false, "", true),
new PokemonForm("Female", "female", Type.WATER, Type.GHOST, 3, 110, Abilities.SWIFT_SWIM, Abilities.ADAPTABILITY, Abilities.MOLD_BREAKER, 530, 120, 92, 65, 100, 75, 78, 135, 50, 265, false, null, true),
),
new PokemonSpecies(Species.SNEASLER, 8, false, false, false, "Free Climb Pokémon", Type.FIGHTING, Type.POISON, 1.3, 43, Abilities.PRESSURE, Abilities.UNBURDEN, Abilities.POISON_TOUCH, 510, 80, 130, 60, 40, 80, 120, 135, 50, 102, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.OVERQWIL, 8, false, false, false, "Pin Cluster Pokémon", Type.DARK, Type.POISON, 2.5, 60.5, Abilities.POISON_POINT, Abilities.SWIFT_SWIM, Abilities.INTIMIDATE, 510, 85, 115, 95, 65, 65, 85, 135, 50, 179, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.ENAMORUS, 8, true, false, false, "Love-Hate Pokémon", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.CONTRARY, 580, 74, 115, 70, 135, 80, 106, 3, 50, 116, GrowthRate.SLOW, 0, false, true,
new PokemonForm("Incarnate Forme", "incarnate", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.CONTRARY, 580, 74, 115, 70, 135, 80, 106, 3, 50, 116),
new PokemonForm("Incarnate Forme", "incarnate", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.CUTE_CHARM, Abilities.NONE, Abilities.CONTRARY, 580, 74, 115, 70, 135, 80, 106, 3, 50, 116, false, null, true),
new PokemonForm("Therian Forme", "therian", Type.FAIRY, Type.FLYING, 1.6, 48, Abilities.OVERCOAT, Abilities.NONE, Abilities.OVERCOAT, 580, 74, 115, 110, 135, 100, 46, 3, 50, 116),
),
new PokemonSpecies(Species.SPRIGATITO, 9, false, false, false, "Grass Cat Pokémon", Type.GRASS, null, 0.4, 4.1, Abilities.OVERGROW, Abilities.NONE, Abilities.PROTEAN, 310, 40, 61, 54, 45, 45, 65, 45, 50, 62, GrowthRate.MEDIUM_SLOW, 87.5, false),
@ -2403,10 +2401,10 @@ export function initSpecies() {
new PokemonSpecies(Species.DOLLIV, 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 0.6, 11.9, Abilities.EARLY_BIRD, Abilities.NONE, Abilities.HARVEST, 354, 52, 53, 60, 78, 78, 33, 120, 50, 124, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.ARBOLIVA, 9, false, false, false, "Olive Pokémon", Type.GRASS, Type.NORMAL, 1.4, 48.2, Abilities.SEED_SOWER, Abilities.NONE, Abilities.HARVEST, 510, 78, 69, 90, 125, 109, 39, 45, 50, 255, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.SQUAWKABILLY, 9, false, false, false, "Parrot Pokémon", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146, GrowthRate.ERRATIC, 50, false, false,
new PokemonForm("Green Plumage", "green-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
new PokemonForm("Blue Plumage", "blue-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
new PokemonForm("Yellow Plumage", "yellow-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.SHEER_FORCE, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
new PokemonForm("White Plumage", "white-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.SHEER_FORCE, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146),
new PokemonForm("Green Plumage", "green-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146, false, null, true),
new PokemonForm("Blue Plumage", "blue-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.GUTS, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146, false, null, true),
new PokemonForm("Yellow Plumage", "yellow-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.SHEER_FORCE, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146, false, null, true),
new PokemonForm("White Plumage", "white-plumage", Type.NORMAL, Type.FLYING, 0.6, 2.4, Abilities.INTIMIDATE, Abilities.HUSTLE, Abilities.SHEER_FORCE, 417, 82, 96, 51, 45, 51, 92, 190, 50, 146, false, null, true),
),
new PokemonSpecies(Species.NACLI, 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 0.4, 16, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 280, 55, 55, 75, 35, 35, 25, 255, 50, 56, GrowthRate.MEDIUM_SLOW, 50, false),
new PokemonSpecies(Species.NACLSTACK, 9, false, false, false, "Rock Salt Pokémon", Type.ROCK, null, 0.6, 105, Abilities.PURIFYING_SALT, Abilities.STURDY, Abilities.CLEAR_BODY, 355, 60, 60, 100, 35, 65, 35, 120, 50, 124, GrowthRate.MEDIUM_SLOW, 50, false),
@ -2441,8 +2439,8 @@ export function initSpecies() {
new PokemonSpecies(Species.BOMBIRDIER, 9, false, false, false, "Item Drop Pokémon", Type.FLYING, Type.DARK, 1.5, 42.9, Abilities.BIG_PECKS, Abilities.KEEN_EYE, Abilities.ROCKY_PAYLOAD, 485, 70, 103, 85, 60, 85, 82, 25, 50, 243, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.FINIZEN, 9, false, false, false, "Dolphin Pokémon", Type.WATER, null, 1.3, 60.2, Abilities.WATER_VEIL, Abilities.NONE, Abilities.NONE, 315, 70, 45, 40, 45, 40, 75, 200, 50, 63, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.PALAFIN, 9, false, false, false, "Dolphin Pokémon", Type.WATER, null, 1.3, 60.2, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.NONE, 457, 100, 70, 72, 53, 62, 100, 45, 50, 160, GrowthRate.SLOW, 50, false, false,
new PokemonForm("Zero Form", "zero", Type.WATER, null, 1.3, 60.2, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.ZERO_TO_HERO, 457, 100, 70, 72, 53, 62, 100, 45, 50, 160),
new PokemonForm("Hero Form", "hero", Type.WATER, null, 1.8, 97.4, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.ZERO_TO_HERO, 650, 100, 160, 97, 106, 87, 100, 45, 50, 160),
new PokemonForm("Zero Form", "zero", Type.WATER, null, 1.3, 60.2, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.ZERO_TO_HERO, 457, 100, 70, 72, 53, 62, 100, 45, 50, 160, false, null, true),
new PokemonForm("Hero Form", "hero", Type.WATER, null, 1.8, 97.4, Abilities.ZERO_TO_HERO, Abilities.NONE, Abilities.ZERO_TO_HERO, 650, 100, 160, 97, 106, 87, 100, 45, 50, 160, false, null, true),
),
new PokemonSpecies(Species.VAROOM, 9, false, false, false, "Single-Cyl Pokémon", Type.STEEL, Type.POISON, 1, 35, Abilities.OVERCOAT, Abilities.NONE, Abilities.SLOW_START, 300, 45, 70, 63, 30, 45, 47, 190, 50, 60, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.REVAVROOM, 9, false, false, false, "Multi-Cyl Pokémon", Type.STEEL, Type.POISON, 1.8, 120, Abilities.OVERCOAT, Abilities.NONE, Abilities.FILTER, 500, 80, 119, 90, 54, 67, 90, 75, 50, 175, GrowthRate.MEDIUM_FAST, 50, false),
@ -2458,9 +2456,9 @@ export function initSpecies() {
new PokemonSpecies(Species.VELUZA, 9, false, false, false, "Jettison Pokémon", Type.WATER, Type.PSYCHIC, 2.5, 90, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.SHARPNESS, 478, 90, 102, 73, 78, 65, 70, 100, 50, 167, GrowthRate.FAST, 50, false),
new PokemonSpecies(Species.DONDOZO, 9, false, false, false, "Big Catfish Pokémon", Type.WATER, null, 12, 220, Abilities.UNAWARE, Abilities.OBLIVIOUS, Abilities.WATER_VEIL, 530, 150, 100, 115, 65, 65, 35, 25, 50, 265, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.TATSUGIRI, 9, false, false, false, "Mimicry Pokémon", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166, GrowthRate.MEDIUM_SLOW, 50, false, false,
new PokemonForm("Curly Form", "curly", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166),
new PokemonForm("Droopy Form", "droopy", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166),
new PokemonForm("Stretchy Form", "stretchy", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166),
new PokemonForm("Curly Form", "curly", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166, false, null, true),
new PokemonForm("Droopy Form", "droopy", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166, false, null, true),
new PokemonForm("Stretchy Form", "stretchy", Type.DRAGON, Type.WATER, 0.3, 8, Abilities.COMMANDER, Abilities.NONE, Abilities.STORM_DRAIN, 475, 68, 50, 60, 120, 95, 82, 100, 50, 166, false, null, true),
),
new PokemonSpecies(Species.ANNIHILAPE, 9, false, false, false, "Rage Monkey Pokémon", Type.FIGHTING, Type.GHOST, 1.2, 56, Abilities.VITAL_SPIRIT, Abilities.INNER_FOCUS, Abilities.DEFIANT, 535, 110, 115, 80, 50, 90, 90, 45, 50, 268, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.CLODSIRE, 9, false, false, false, "Spiny Fish Pokémon", Type.POISON, Type.GROUND, 1.8, 223, Abilities.POISON_POINT, Abilities.WATER_ABSORB, Abilities.UNAWARE, 430, 130, 75, 60, 45, 100, 20, 90, 50, 151, GrowthRate.MEDIUM_FAST, 50, false),
@ -2486,8 +2484,8 @@ export function initSpecies() {
new PokemonSpecies(Species.ARCTIBAX, 9, false, false, false, "Ice Fin Pokémon", Type.DRAGON, Type.ICE, 0.8, 30, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 423, 90, 95, 66, 45, 65, 62, 25, 50, 148, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.BAXCALIBUR, 9, false, false, false, "Ice Dragon Pokémon", Type.DRAGON, Type.ICE, 2.1, 210, Abilities.THERMAL_EXCHANGE, Abilities.NONE, Abilities.ICE_BODY, 600, 115, 145, 92, 75, 86, 87, 10, 50, 300, GrowthRate.SLOW, 50, false),
new PokemonSpecies(Species.GIMMIGHOUL, 9, false, false, false, "Coin Chest Pokémon", Type.GHOST, null, 0.3, 5, Abilities.RATTLED, Abilities.NONE, Abilities.NONE, 300, 45, 30, 70, 75, 70, 10, 45, 50, 60, GrowthRate.SLOW, null, false, false,
new PokemonForm("Chest Form", "chest", Type.GHOST, null, 0.3, 5, Abilities.RATTLED, Abilities.NONE, Abilities.NONE, 300, 45, 30, 70, 75, 70, 10, 45, 50, 60, false, ""),
new PokemonForm("Roaming Form", "roaming", Type.GHOST, null, 0.1, 1, Abilities.RUN_AWAY, Abilities.NONE, Abilities.NONE, 300, 45, 30, 25, 75, 45, 80, 45, 50, 60),
new PokemonForm("Chest Form", "chest", Type.GHOST, null, 0.3, 5, Abilities.RATTLED, Abilities.NONE, Abilities.NONE, 300, 45, 30, 70, 75, 70, 10, 45, 50, 60, false, "", true),
new PokemonForm("Roaming Form", "roaming", Type.GHOST, null, 0.1, 1, Abilities.RUN_AWAY, Abilities.NONE, Abilities.NONE, 300, 45, 30, 25, 75, 45, 80, 45, 50, 60, false, null, true),
),
new PokemonSpecies(Species.GHOLDENGO, 9, false, false, false, "Coin Entity Pokémon", Type.STEEL, Type.GHOST, 1.2, 30, Abilities.GOOD_AS_GOLD, Abilities.NONE, Abilities.NONE, 550, 87, 60, 95, 133, 91, 84, 45, 50, 275, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.WO_CHIEN, 9, true, false, false, "Ruinous Pokémon", Type.DARK, Type.GRASS, 1.5, 74.2, Abilities.TABLETS_OF_RUIN, Abilities.NONE, Abilities.NONE, 570, 85, 85, 100, 95, 135, 70, 6, 0, 285, GrowthRate.SLOW, null, false),
@ -2497,25 +2495,25 @@ export function initSpecies() {
new PokemonSpecies(Species.ROARING_MOON, 9, false, false, false, "Paradox Pokémon", Type.DRAGON, Type.DARK, 2, 380, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 105, 139, 71, 55, 101, 119, 10, 0, 295, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.IRON_VALIANT, 9, false, false, false, "Paradox Pokémon", Type.FAIRY, Type.FIGHTING, 1.4, 35, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 74, 130, 90, 120, 60, 116, 10, 0, 295, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.KORAIDON, 9, false, true, false, "Paradox Pokémon", Type.FIGHTING, Type.DRAGON, 2.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Apex Build", "apex-build", Type.FIGHTING, Type.DRAGON, 2.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Limited Build", "limited-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Sprinting Build", "sprinting-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Swimming Build", "swimming-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Gliding Build", "gliding-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335),
new PokemonForm("Apex Build", "apex-build", Type.FIGHTING, Type.DRAGON, 2.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, false, null, true),
new PokemonForm("Limited Build", "limited-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, false, null, true),
new PokemonForm("Sprinting Build", "sprinting-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, false, null, true),
new PokemonForm("Swimming Build", "swimming-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, false, null, true),
new PokemonForm("Gliding Build", "gliding-build", Type.FIGHTING, Type.DRAGON, 3.5, 303, Abilities.ORICHALCUM_PULSE, Abilities.NONE, Abilities.NONE, 670, 100, 135, 115, 85, 100, 135, 3, 0, 335, false, null, true),
),
new PokemonSpecies(Species.MIRAIDON, 9, false, true, false, "Paradox Pokémon", Type.ELECTRIC, Type.DRAGON, 3.5, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, GrowthRate.SLOW, null, false, false,
new PokemonForm("Ultimate Mode", "ultimate-mode", Type.ELECTRIC, Type.DRAGON, 3.5, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Low-Power Mode", "low-power-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Drive Mode", "drive-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Aquatic Mode", "aquatic-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Glide Mode", "glide-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335),
new PokemonForm("Ultimate Mode", "ultimate-mode", Type.ELECTRIC, Type.DRAGON, 3.5, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, false, null, true),
new PokemonForm("Low-Power Mode", "low-power-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, false, null, true),
new PokemonForm("Drive Mode", "drive-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, false, null, true),
new PokemonForm("Aquatic Mode", "aquatic-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, false, null, true),
new PokemonForm("Glide Mode", "glide-mode", Type.ELECTRIC, Type.DRAGON, 2.8, 240, Abilities.HADRON_ENGINE, Abilities.NONE, Abilities.NONE, 670, 100, 85, 100, 135, 115, 135, 3, 0, 335, false, null, true),
),
new PokemonSpecies(Species.WALKING_WAKE, 9, false, false, false, "Paradox Pokémon", Type.WATER, Type.DRAGON, 3.5, 280, Abilities.PROTOSYNTHESIS, Abilities.NONE, Abilities.NONE, 590, 99, 83, 91, 125, 83, 109, 5, 0, 295, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.IRON_LEAVES, 9, false, false, false, "Paradox Pokémon", Type.GRASS, Type.PSYCHIC, 1.5, 125, Abilities.QUARK_DRIVE, Abilities.NONE, Abilities.NONE, 590, 90, 130, 88, 70, 108, 104, 5, 0, 295, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.DIPPLIN, 9, false, false, false, "Candy Apple Pokémon", Type.GRASS, Type.DRAGON, 0.4, 9.7, Abilities.SUPERSWEET_SYRUP, Abilities.GLUTTONY, Abilities.STICKY_HOLD, 485, 80, 80, 110, 95, 80, 40, 45, 50, 170, GrowthRate.SLOW, null, false),
new PokemonSpecies(Species.POLTCHAGEIST, 9, false, false, false, "Matcha Pokémon", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, GrowthRate.SLOW, null, false, false,
new PokemonForm("Counterfeit Form", "counterfeit", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62),
new PokemonForm("Artisan Form", "artisan", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62),
new PokemonForm("Counterfeit Form", "counterfeit", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, null, true),
new PokemonForm("Artisan Form", "artisan", Type.GRASS, Type.GHOST, 0.1, 1.1, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 308, 40, 45, 45, 74, 54, 50, 120, 50, 62, false, null, true),
),
new PokemonSpecies(Species.SINISTCHA, 9, false, false, false, "Matcha Pokémon", Type.GRASS, Type.GHOST, 0.2, 2.2, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 508, 71, 60, 106, 121, 80, 70, 60, 50, 178, GrowthRate.SLOW, null, false, false,
new PokemonForm("Unremarkable Form", "unremarkable", Type.GRASS, Type.GHOST, 0.2, 2.2, Abilities.HOSPITALITY, Abilities.NONE, Abilities.HEATPROOF, 508, 71, 60, 106, 121, 80, 70, 60, 50, 178),
@ -2525,7 +2523,7 @@ export function initSpecies() {
new PokemonSpecies(Species.MUNKIDORI, 9, true, false, false, "Retainer Pokémon", Type.POISON, Type.PSYCHIC, 1, 12.2, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.FRISK, 555, 88, 75, 66, 130, 90, 106, 3, 0, 276, GrowthRate.SLOW, 100, false),
new PokemonSpecies(Species.FEZANDIPITI, 9, true, false, false, "Retainer Pokémon", Type.POISON, Type.FAIRY, 1.4, 30.1, Abilities.TOXIC_CHAIN, Abilities.NONE, Abilities.TECHNICIAN, 555, 88, 91, 82, 70, 125, 99, 3, 0, 276, GrowthRate.SLOW, 100, false),
new PokemonSpecies(Species.OGERPON, 9, true, false, false, "Mask Pokémon", Type.GRASS, null, 1.2, 39.8, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275, GrowthRate.SLOW, 0, false, false,
new PokemonForm("Teal Mask", "teal-mask", Type.GRASS, null, 1.2, 39.8, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
new PokemonForm("Teal Mask", "teal-mask", Type.GRASS, null, 1.2, 39.8, Abilities.DEFIANT, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275, false, null, true),
new PokemonForm("Wellspring Mask", "wellspring-mask", Type.GRASS, Type.WATER, 1.2, 39.8, Abilities.WATER_ABSORB, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
new PokemonForm("Hearthflame Mask", "hearthflame-mask", Type.GRASS, Type.FIRE, 1.2, 39.8, Abilities.MOLD_BREAKER, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
new PokemonForm("Cornerstone Mask", "cornerstone-mask", Type.GRASS, Type.ROCK, 1.2, 39.8, Abilities.STURDY, Abilities.NONE, Abilities.NONE, 550, 80, 120, 84, 60, 96, 110, 5, 50, 275),
@ -2604,9 +2602,9 @@ export function initSpecies() {
new PokemonSpecies(Species.HISUI_AVALUGG, 8, false, false, false, "Iceberg Pokémon", Type.ICE, Type.ROCK, 1.4, 262.4, Abilities.STRONG_JAW, Abilities.ICE_BODY, Abilities.STURDY, 514, 95, 127, 184, 34, 36, 38, 55, 50, 180, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.HISUI_DECIDUEYE, 8, false, false, false, "Arrow Quill Pokémon", Type.GRASS, Type.FIGHTING, 1.6, 37, Abilities.OVERGROW, Abilities.NONE, Abilities.SCRAPPY, 530, 88, 112, 80, 95, 95, 60, 45, 50, 239, GrowthRate.MEDIUM_SLOW, 87.5, false),
new PokemonSpecies(Species.PALDEA_TAUROS, 9, false, false, false, "Wild Bull Pokémon", Type.FIGHTING, null, 1.4, 115, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, GrowthRate.SLOW, 100, false, false,
new PokemonForm("Combat Breed", "combat", Type.FIGHTING, null, 1.4, 115, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, false, ""),
new PokemonForm("Blaze Breed", "blaze", Type.FIGHTING, Type.FIRE, 1.4, 85, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172),
new PokemonForm("Aqua Breed", "aqua", Type.FIGHTING, Type.WATER, 1.4, 110, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172),
new PokemonForm("Combat Breed", "combat", Type.FIGHTING, null, 1.4, 115, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, false, "", true),
new PokemonForm("Blaze Breed", "blaze", Type.FIGHTING, Type.FIRE, 1.4, 85, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, false, null, true),
new PokemonForm("Aqua Breed", "aqua", Type.FIGHTING, Type.WATER, 1.4, 110, Abilities.INTIMIDATE, Abilities.ANGER_POINT, Abilities.CUD_CHEW, 490, 75, 110, 105, 30, 70, 100, 45, 50, 172, false, null, true),
),
new PokemonSpecies(Species.PALDEA_WOOPER, 9, false, false, false, "Water Fish Pokémon", Type.POISON, Type.GROUND, 0.4, 11, Abilities.POISON_POINT, Abilities.WATER_ABSORB, Abilities.UNAWARE, 210, 55, 45, 45, 25, 25, 15, 255, 50, 42, GrowthRate.MEDIUM_FAST, 50, false),
new PokemonSpecies(Species.BLOODMOON_URSALUNA, 9, false, false, false, "Peat Pokémon", Type.GROUND, Type.NORMAL, 2.7, 333, Abilities.MINDS_EYE, Abilities.NONE, Abilities.NONE, 555, 113, 70, 120, 135, 65, 52, 75, 50, 275, GrowthRate.MEDIUM_FAST, 50, false),

View File

@ -1041,7 +1041,7 @@ export default class StarterSelectUiHandler extends MessageUiHandler {
let newFormIndex = props.formIndex;
do {
newFormIndex = (newFormIndex + 1) % formCount;
if (this.speciesStarterDexEntry.caughtAttr & this.scene.gameData.getFormAttr(newFormIndex)) {
if (this.lastSpecies.forms[newFormIndex].isStarterSelectable && this.speciesStarterDexEntry.caughtAttr & this.scene.gameData.getFormAttr(newFormIndex)) {
break;
}
} while (newFormIndex !== props.formIndex);