diff --git a/include/config/pokemon.h b/include/config/pokemon.h index dbfe24dca1..e63c61ab2d 100644 --- a/include/config/pokemon.h +++ b/include/config/pokemon.h @@ -8,6 +8,7 @@ #define P_UPDATED_EGG_GROUPS GEN_LATEST // Since Gen 8, certain Pokémon have gained new egg groups. #define P_UPDATED_FRIENDSHIP GEN_LATEST // Since Gen 8, the base friendship of certain Pokémon was changed. #define P_UPDATED_EVS GEN_LATEST // Some Pokémon have received EV updates after their introduction. +#define P_UPDATED_EXP_YIELDS GEN_LATEST // Since Gen 5, some Pokémon have received base Experience changes. // Evolution settings #define P_FRIENDSHIP_EVO_THRESHOLD GEN_LATEST // Since Gen 8, Pokémon that evolve by friendship evolve at or above 160 friendship instead of 220. diff --git a/src/data/pokemon/species_info/gen_1.h b/src/data/pokemon/species_info/gen_1.h index 599d8f8654..c596f321a2 100644 --- a/src/data/pokemon/species_info/gen_1.h +++ b/src/data/pokemon/species_info/gen_1.h @@ -62,7 +62,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 141, .evYield_SpAttack = 1, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -129,7 +129,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 80, .baseSpAttack = 100, .baseSpDefense = 100, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 263, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 236, + #else + .expYield = 208, + #endif .abilities = { ABILITY_OVERGROW, ABILITY_NONE, ABILITY_CHLOROPHYLL }, .cryId = CRY_VENUSAUR, .height = 20, @@ -166,7 +172,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 80, .baseSpAttack = 122, .baseSpDefense = 120, - .expYield = 281, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 313 : 281, .abilities = { ABILITY_THICK_FAT, ABILITY_THICK_FAT, ABILITY_THICK_FAT }, .cryId = CRY_VENUSAUR_MEGA, .height = 24, @@ -241,7 +247,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 45, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 65, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -354,7 +360,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 109, .baseSpDefense = 85, .types = { TYPE_FIRE, TYPE_FLYING }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 267, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 240, + #else + .expYield = 209, + #endif .abilities = { ABILITY_BLAZE, ABILITY_NONE, ABILITY_SOLAR_POWER }, .bodyColor = BODY_COLOR_RED, .cryId = CRY_CHARIZARD, @@ -391,7 +403,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 130, .baseSpDefense = 85, .types = { TYPE_FIRE, TYPE_DRAGON }, - .expYield = 285, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 317 : 285, .abilities = { ABILITY_TOUGH_CLAWS, ABILITY_TOUGH_CLAWS, ABILITY_TOUGH_CLAWS }, .bodyColor = BODY_COLOR_BLACK, .cryId = CRY_CHARIZARD_MEGA_X, @@ -427,7 +439,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 159, .baseSpDefense = 115, .types = { TYPE_FIRE, TYPE_FLYING }, - .expYield = 285, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 317 : 285, .abilities = { ABILITY_DROUGHT, ABILITY_DROUGHT, ABILITY_DROUGHT }, .bodyColor = BODY_COLOR_RED, .cryId = CRY_CHARIZARD_MEGA_Y, @@ -506,7 +518,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 64, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 63, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 63 : 66, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -554,7 +566,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 143, .evYield_Defense = 1, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -620,7 +632,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 78, .baseSpAttack = 85, .baseSpDefense = 105, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 210, + #endif .abilities = { ABILITY_TORRENT, ABILITY_NONE, ABILITY_RAIN_DISH }, .cryId = CRY_BLASTOISE, .height = 16, @@ -656,7 +674,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 78, .baseSpAttack = 135, .baseSpDefense = 115, - .expYield = 284, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 315 : 284, .abilities = { ABILITY_MEGA_LAUNCHER, ABILITY_MEGA_LAUNCHER, ABILITY_MEGA_LAUNCHER }, .cryId = CRY_BLASTOISE_MEGA, .height = 16, @@ -732,7 +750,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 20, .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 255, - .expYield = 39, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 39 : 53, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -818,6 +836,16 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .evolutions = EVOLUTION({EVO_LEVEL, 10, SPECIES_BUTTERFREE}), }, +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define BUTTERFREE_EXP_YIELD 198 +#elif P_UPDATED_EXP_YIELDS >= GEN_7 + #define BUTTERFREE_EXP_YIELD 178 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define BUTTERFREE_EXP_YIELD 173 +#else + #define BUTTERFREE_EXP_YIELD 160 +#endif + #define BUTTERFREE_MISC_INFO \ .baseHP = 60, \ .baseAttack = 45, \ @@ -827,7 +855,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = P_UPDATED_STATS >= GEN_6 ? 90 : 80, \ .types = { TYPE_BUG, TYPE_FLYING }, \ .catchRate = 45, \ - .expYield = 178, \ + .expYield = BUTTERFREE_EXP_YIELD, \ .evYield_SpAttack = 2, \ .evYield_SpDefense = 1, \ .itemRare = ITEM_SILVER_POWDER, \ @@ -916,7 +944,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 20, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 255, - .expYield = 39, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 39 : 52, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -965,7 +993,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 25, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 120, - .expYield = 72, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 72 : 71, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1035,7 +1063,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 45, .baseSpDefense = 80, .baseAttack = BEEDRILL_ATTACK, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 198, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 178, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 173, + #else + .expYield = 159, + #endif .abilities = { ABILITY_SWARM, ABILITY_NONE, ABILITY_SNIPER }, .cryId = CRY_BEEDRILL, .height = 10, @@ -1071,7 +1107,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 145, .baseSpAttack = 15, .baseSpDefense = 80, - .expYield = 223, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 248 : 223, .abilities = { ABILITY_ADAPTABILITY, ABILITY_ADAPTABILITY, ABILITY_ADAPTABILITY }, .cryId = CRY_BEEDRILL_MEGA, .height = 14, @@ -1111,7 +1147,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 35, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 255, - .expYield = 50, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 50 : 55, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1159,7 +1195,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 120, - .expYield = 122, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 122 : 113, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1227,7 +1263,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 70, .baseSpDefense = 70, .baseSpeed = PIDGEOT_SPEED, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 240, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 216, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 211, + #else + .expYield = 172, + #endif .abilities = { ABILITY_KEEN_EYE, ABILITY_TANGLED_FEET, ABILITY_BIG_PECKS }, .cryId = CRY_PIDGEOT, .height = 15, @@ -1263,7 +1307,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = PIDGEOT_SPEED + 20, .baseSpAttack = 135, .baseSpDefense = 80, - .expYield = 261, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 290 : 261, .abilities = { ABILITY_NO_GUARD, ABILITY_NO_GUARD, ABILITY_NO_GUARD }, .cryId = CRY_PIDGEOT_MEGA, .height = 22, @@ -1299,33 +1343,33 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .growthRate = GROWTH_MEDIUM_FAST, \ .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD } -#define RATTATA_MISC_INFO \ - .baseHP = 30, \ - .baseAttack = 56, \ - .baseDefense = 35, \ - .baseSpeed = 72, \ - .baseSpAttack = 25, \ - .baseSpDefense = 35, \ - .catchRate = 255, \ - .expYield = 51, \ - .evYield_Speed = 1, \ - .speciesName = _("Rattata"), \ - .cryId = CRY_RATTATA, \ - .natDexNum = NATIONAL_DEX_RATTATA, \ - .categoryName = _("Mouse"), \ - FOOTPRINT(Rattata) \ +#define RATTATA_MISC_INFO \ + .baseHP = 30, \ + .baseAttack = 56, \ + .baseDefense = 35, \ + .baseSpeed = 72, \ + .baseSpAttack = 25, \ + .baseSpDefense = 35, \ + .catchRate = 255, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 51 : 57, \ + .evYield_Speed = 1, \ + .speciesName = _("Rattata"), \ + .cryId = CRY_RATTATA, \ + .natDexNum = NATIONAL_DEX_RATTATA, \ + .categoryName = _("Mouse"), \ + FOOTPRINT(Rattata) \ .formSpeciesIdTable = sRattataFormSpeciesIdTable -#define RATICATE_MISC_INFO \ - .catchRate = 127, \ - .expYield = 145, \ - .evYield_Speed = 2, \ - .speciesName = _("Raticate"), \ - .cryId = CRY_RATICATE, \ - .natDexNum = NATIONAL_DEX_RATICATE, \ - .categoryName = _("Mouse"), \ - .height = 7, \ - FOOTPRINT(Raticate) \ +#define RATICATE_MISC_INFO \ + .catchRate = 127, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 145 : 116, \ + .evYield_Speed = 2, \ + .speciesName = _("Raticate"), \ + .cryId = CRY_RATICATE, \ + .natDexNum = NATIONAL_DEX_RATICATE, \ + .categoryName = _("Mouse"), \ + .height = 7, \ + FOOTPRINT(Raticate) \ .formSpeciesIdTable = sRaticateFormSpeciesIdTable [SPECIES_RATTATA] = @@ -1482,7 +1526,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 31, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 255, - .expYield = 52, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 52 : 58, .evYield_Speed = 1, .itemRare = ITEM_SHARP_BEAK, .genderRatio = PERCENT_FEMALE(50), @@ -1531,7 +1575,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 61, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 90, - .expYield = 155, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 155 : 162, .evYield_Speed = 2, .itemRare = ITEM_SHARP_BEAK, .genderRatio = PERCENT_FEMALE(50), @@ -1583,7 +1627,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 54, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 255, - .expYield = 58, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 62, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1632,7 +1676,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 79, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 157, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 153, + #else + .expYield = 147, + #endif .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1681,7 +1731,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 35, \ .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, \ .catchRate = 190, \ - .expYield = 41, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 41 : 42, \ .evYield_Speed = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 10, \ @@ -1736,6 +1786,14 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = }, #endif //P_GEN_2_CROSS_EVOS +#if P_UPDATED_EXP_YIELDS >= GEN_6 + #define PIKACHU_EXP_YIELD 112 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define PIKACHU_EXP_YIELD 105 +#else + #define PIKACHU_EXP_YIELD 82 +#endif + #define PIKACHU_MISC_INFO \ .baseHP = 35, \ .baseAttack = 55, \ @@ -1745,7 +1803,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 50 : 40, \ .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, \ .catchRate = 190, \ - .expYield = 112, \ + .expYield = PIKACHU_EXP_YIELD, \ .evYield_Speed = 2, \ .itemRare = ITEM_LIGHT_BALL, \ .eggCycles = 10, \ @@ -2089,9 +2147,19 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #define RAICHU_SPEED (P_UPDATED_STATS >= GEN_6 ? 110 : 100) +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define RAICHU_EXP_YIELD 243 +#elif P_UPDATED_EXP_YIELDS >= GEN_7 + #define RAICHU_EXP_YIELD 218 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define RAICHU_EXP_YIELD 214 +#else + #define RAICHU_EXP_YIELD 122 +#endif + #define RAICHU_MISC_INFO \ .catchRate = 75, \ - .expYield = 218, \ + .expYield = RAICHU_EXP_YIELD, \ .evYield_Speed = 3, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 10, \ @@ -2190,28 +2258,28 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .growthRate = GROWTH_MEDIUM_FAST, \ .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD } -#define SANDSHREW_MISC_INFO \ - .catchRate = 255, \ - .expYield = 60, \ - .evYield_Defense = 1, \ - .speciesName = _("Sandshrew"), \ - .cryId = CRY_SANDSHREW, \ - .natDexNum = NATIONAL_DEX_SANDSHREW, \ - .categoryName = _("Mouse"), \ - FOOTPRINT(Sandshrew) \ - .formSpeciesIdTable = sSandshrewFormSpeciesIdTable, \ +#define SANDSHREW_MISC_INFO \ + .catchRate = 255, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 93, \ + .evYield_Defense = 1, \ + .speciesName = _("Sandshrew"), \ + .cryId = CRY_SANDSHREW, \ + .natDexNum = NATIONAL_DEX_SANDSHREW, \ + .categoryName = _("Mouse"), \ + FOOTPRINT(Sandshrew) \ + .formSpeciesIdTable = sSandshrewFormSpeciesIdTable, \ SANDSHREW_FAMILY_MISC_INFO -#define SANDSLASH_MISC_INFO \ - .catchRate = 90, \ - .expYield = 158, \ - .evYield_Defense = 2, \ - .speciesName = _("Sandslash"), \ - .cryId = CRY_SANDSLASH, \ - .natDexNum = NATIONAL_DEX_SANDSLASH, \ - .categoryName = _("Mouse"), \ - FOOTPRINT(Sandslash) \ - .formSpeciesIdTable = sSandslashFormSpeciesIdTable, \ +#define SANDSLASH_MISC_INFO \ + .catchRate = 90, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 163, \ + .evYield_Defense = 2, \ + .speciesName = _("Sandslash"), \ + .cryId = CRY_SANDSLASH, \ + .natDexNum = NATIONAL_DEX_SANDSLASH, \ + .categoryName = _("Mouse"), \ + FOOTPRINT(Sandslash) \ + .formSpeciesIdTable = sSandslashFormSpeciesIdTable, \ SANDSHREW_FAMILY_MISC_INFO [SPECIES_SANDSHREW] = @@ -2372,7 +2440,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 40, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 235, - .expYield = 55, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 55 : 59, .evYield_HP = 1, .genderRatio = MON_FEMALE, .eggCycles = 20, @@ -2421,7 +2489,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 120, - .expYield = 128, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 128 : 117, .evYield_HP = 2, .genderRatio = MON_FEMALE, .eggCycles = 20, @@ -2469,7 +2537,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 85, .types = { TYPE_POISON, TYPE_GROUND }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 253, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 227, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 223, + #else + .expYield = 194, + #endif .evYield_HP = 3, .genderRatio = MON_FEMALE, .eggCycles = 20, @@ -2516,7 +2592,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 40, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 235, - .expYield = 55, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 55 : 60, .evYield_Attack = 1, .genderRatio = MON_MALE, .eggCycles = 20, @@ -2564,7 +2640,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 120, - .expYield = 128, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 128 : 118, .evYield_Attack = 2, .genderRatio = MON_MALE, .eggCycles = 20, @@ -2612,7 +2688,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 75, .types = { TYPE_POISON, TYPE_GROUND }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 253, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 227, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 223, + #else + .expYield = 195, + #endif .evYield_Attack = 3, .genderRatio = MON_MALE, .eggCycles = 20, @@ -2669,7 +2753,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = CLEFAIRY_FAMILY_TYPES, .catchRate = 150, - .expYield = 44, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 44 : 37, .evYield_SpDefense = 1, .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), @@ -2720,7 +2804,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 65, .types = CLEFAIRY_FAMILY_TYPES, .catchRate = 150, - .expYield = 113, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 113 : 68, .evYield_HP = 2, .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), @@ -2770,7 +2854,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 90, .types = CLEFAIRY_FAMILY_TYPES, .catchRate = 25, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 242, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 217, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 213, + #else + .expYield = 129, + #endif .evYield_HP = 3, .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), @@ -2818,47 +2910,47 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .growthRate = GROWTH_MEDIUM_FAST, \ .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD } -#define VULPIX_MISC_INFO \ - .baseHP = 38, \ - .baseAttack = 41, \ - .baseDefense = 40, \ - .baseSpeed = 65, \ - .baseSpAttack = 50, \ - .baseSpDefense = 65, \ - .catchRate = 190, \ - .expYield = 60, \ - .evYield_Speed = 1, \ - .speciesName = _("Vulpix"), \ - .cryId = CRY_VULPIX, \ - .natDexNum = NATIONAL_DEX_VULPIX, \ - .categoryName = _("Fox"), \ - .height = 6, \ - .weight = 99, \ - .pokemonScale = 542, \ - .pokemonOffset = 19, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Vulpix) \ - .formSpeciesIdTable = sVulpixFormSpeciesIdTable,\ +#define VULPIX_MISC_INFO \ + .baseHP = 38, \ + .baseAttack = 41, \ + .baseDefense = 40, \ + .baseSpeed = 65, \ + .baseSpAttack = 50, \ + .baseSpDefense = 65, \ + .catchRate = 190, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 63, \ + .evYield_Speed = 1, \ + .speciesName = _("Vulpix"), \ + .cryId = CRY_VULPIX, \ + .natDexNum = NATIONAL_DEX_VULPIX, \ + .categoryName = _("Fox"), \ + .height = 6, \ + .weight = 99, \ + .pokemonScale = 542, \ + .pokemonOffset = 19, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Vulpix) \ + .formSpeciesIdTable = sVulpixFormSpeciesIdTable, \ VULPIX_FAMILY_MISC_INFO -#define NINETALES_MISC_INFO \ - .catchRate = 75, \ - .expYield = 177, \ - .evYield_Speed = 1, \ - .evYield_SpDefense = 1, \ - .speciesName = _("Ninetales"), \ - .cryId = CRY_NINETALES, \ - .natDexNum = NATIONAL_DEX_NINETALES, \ - .categoryName = _("Fox"), \ - .height = 11, \ - .weight = 199, \ - .pokemonScale = 339, \ - .pokemonOffset = 10, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Ninetales) \ - .formSpeciesIdTable = sNinetalesFormSpeciesIdTable, \ +#define NINETALES_MISC_INFO \ + .catchRate = 75, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 177 : 178, \ + .evYield_Speed = 1, \ + .evYield_SpDefense = 1, \ + .speciesName = _("Ninetales"), \ + .cryId = CRY_NINETALES, \ + .natDexNum = NATIONAL_DEX_NINETALES, \ + .categoryName = _("Fox"), \ + .height = 11, \ + .weight = 199, \ + .pokemonScale = 339, \ + .pokemonOffset = 10, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Ninetales) \ + .formSpeciesIdTable = sNinetalesFormSpeciesIdTable, \ VULPIX_FAMILY_MISC_INFO [SPECIES_VULPIX] = @@ -2994,7 +3086,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 20, .types = JIGGLYPUFF_FAMILY_TYPES, .catchRate = 170, - .expYield = 42, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 42 : 39, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, @@ -3044,7 +3136,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 25, .types = JIGGLYPUFF_FAMILY_TYPES, .catchRate = 170, - .expYield = 95, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 95 : 76, .evYield_HP = 2, .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), @@ -3094,7 +3186,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = JIGGLYPUFF_FAMILY_TYPES, .catchRate = 50, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 218, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 196, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 191, + #else + .expYield = 109, + #endif .evYield_HP = 3, .itemRare = ITEM_MOON_STONE, .genderRatio = PERCENT_FEMALE(75), @@ -3145,7 +3245,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 40, .types = { TYPE_POISON, TYPE_FLYING }, .catchRate = 255, - .expYield = 49, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 49 : 54, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -3196,7 +3296,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 75, .types = { TYPE_POISON, TYPE_FLYING }, .catchRate = 90, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 171, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -3248,7 +3348,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, .types = { TYPE_POISON, TYPE_FLYING }, .catchRate = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 268, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 241, + #else + .expYield = 204, + #endif .evYield_Speed = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -3299,7 +3405,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 65, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 255, - .expYield = 64, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 64 : 78, .evYield_SpAttack = 1, .itemRare = ITEM_ABSORB_BULB, .genderRatio = PERCENT_FEMALE(50), @@ -3348,7 +3454,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 75, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 120, - .expYield = 138, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 138 : 132, .evYield_SpAttack = 2, .itemRare = ITEM_ABSORB_BULB, .genderRatio = PERCENT_FEMALE(50), @@ -3400,7 +3506,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 90, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 245, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 221, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 216, + #else + .expYield = 184, + #endif .evYield_SpAttack = 3, .itemRare = ITEM_ABSORB_BULB, .genderRatio = PERCENT_FEMALE(50), @@ -3451,7 +3565,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 100, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 245, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 221, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 216, + #else + .expYield = 184, + #endif .evYield_SpDefense = 3, .itemRare = ITEM_ABSORB_BULB, .genderRatio = PERCENT_FEMALE(50), @@ -3502,7 +3624,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_BUG, TYPE_GRASS }, .catchRate = 190, - .expYield = 57, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 57 : 70, .evYield_Attack = 1, .itemCommon = ITEM_TINY_MUSHROOM, .itemRare = ITEM_BIG_MUSHROOM, @@ -3553,7 +3675,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, .types = { TYPE_BUG, TYPE_GRASS }, .catchRate = 75, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 128, .evYield_Attack = 2, .evYield_Defense = 1, .itemCommon = ITEM_TINY_MUSHROOM, @@ -3606,7 +3728,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 190, - .expYield = 61, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 75, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3655,7 +3777,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 75, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 75, - .expYield = 158, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 138, .evYield_Speed = 1, .evYield_SpAttack = 1, .itemRare = ITEM_SHED_SHELL, @@ -3706,26 +3828,34 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ .bodyColor = BODY_COLOR_BROWN -#define DIGLETT_MISC_INFO \ - .catchRate = 255, \ - .expYield = 53, \ - .evYield_Speed = 1, \ - .speciesName = _("Diglett"), \ - .cryId = CRY_DIGLETT, \ - .natDexNum = NATIONAL_DEX_DIGLETT, \ - .categoryName = _("Mole"), \ - .height = 2, \ - .pokemonScale = 833, \ - .pokemonOffset = 25, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Diglett) \ - .formSpeciesIdTable = sDiglettFormSpeciesIdTable, \ +#define DIGLETT_MISC_INFO \ + .catchRate = 255, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 53 : 81, \ + .evYield_Speed = 1, \ + .speciesName = _("Diglett"), \ + .cryId = CRY_DIGLETT, \ + .natDexNum = NATIONAL_DEX_DIGLETT, \ + .categoryName = _("Mole"), \ + .height = 2, \ + .pokemonScale = 833, \ + .pokemonOffset = 25, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Diglett) \ + .formSpeciesIdTable = sDiglettFormSpeciesIdTable, \ DIGLETT_FAMILY_MISC_INFO +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define DUGTRIO_EXP_YIELD 149 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define DUGTRIO_EXP_YIELD 142 +#else + #define DUGTRIO_EXP_YIELD 153 +#endif + #define DUGTRIO_MISC_INFO \ .catchRate = 50, \ - .expYield = 149, \ + .expYield = DUGTRIO_EXP_YIELD, \ .evYield_Speed = 2, \ .speciesName = _("Dugtrio"), \ .cryId = CRY_DUGTRIO, \ @@ -3871,7 +4001,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #if P_FAMILY_MEOWTH #define MEOWTH_MISC_INFO \ .catchRate = 255, \ - .expYield = 58, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 69, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ .friendship = STANDARD_FRIENDSHIP, \ @@ -3884,21 +4014,21 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = FOOTPRINT(Meowth) \ .formSpeciesIdTable = sMeowthFormSpeciesIdTable -#define PERSIAN_MISC_INFO \ - .catchRate = 90, \ - .expYield = 154, \ - .evYield_Speed = 2, \ - .itemRare = ITEM_QUICK_CLAW, \ - .genderRatio = PERCENT_FEMALE(50), \ - .eggCycles = 20, \ - .friendship = STANDARD_FRIENDSHIP, \ - .growthRate = GROWTH_MEDIUM_FAST, \ - .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ - .speciesName = _("Persian"), \ - .cryId = CRY_PERSIAN, \ - .natDexNum = NATIONAL_DEX_PERSIAN, \ - .categoryName = _("Classy Cat"), \ - FOOTPRINT(Persian) \ +#define PERSIAN_MISC_INFO \ + .catchRate = 90, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 154 : 148, \ + .evYield_Speed = 2, \ + .itemRare = ITEM_QUICK_CLAW, \ + .genderRatio = PERCENT_FEMALE(50), \ + .eggCycles = 20, \ + .friendship = STANDARD_FRIENDSHIP, \ + .growthRate = GROWTH_MEDIUM_FAST, \ + .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ + .speciesName = _("Persian"), \ + .cryId = CRY_PERSIAN, \ + .natDexNum = NATIONAL_DEX_PERSIAN, \ + .categoryName = _("Classy Cat"), \ + FOOTPRINT(Persian) \ .formSpeciesIdTable = sPersianFormSpeciesIdTable [SPECIES_MEOWTH] = @@ -4193,7 +4323,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 190, - .expYield = 64, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 64 : 80, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4241,7 +4371,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 75, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 174, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4290,7 +4420,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 190, - .expYield = 61, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 74, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4339,7 +4469,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 70, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 75, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 149, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4436,27 +4566,27 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ .bodyColor = BODY_COLOR_BROWN -#define GROWLITHE_MISC_INFO \ - .catchRate = 190, \ - .expYield = 70, \ - .evYield_Attack = 1, \ - .speciesName = _("Growlithe"), \ - .cryId = CRY_GROWLITHE, \ - .natDexNum = NATIONAL_DEX_GROWLITHE, \ - FOOTPRINT(Growlithe) \ - .formSpeciesIdTable = sGrowlitheFormSpeciesIdTable, \ +#define GROWLITHE_MISC_INFO \ + .catchRate = 190, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 70 : 91, \ + .evYield_Attack = 1, \ + .speciesName = _("Growlithe"), \ + .cryId = CRY_GROWLITHE, \ + .natDexNum = NATIONAL_DEX_GROWLITHE, \ + FOOTPRINT(Growlithe) \ + .formSpeciesIdTable = sGrowlitheFormSpeciesIdTable, \ GROWLITHE_FAMILY_MISC_INFO -#define ARCANINE_MISC_INFO \ - .catchRate = 75, \ - .expYield = 194, \ - .evYield_Attack = 2, \ - .speciesName = _("Arcanine"), \ - .cryId = CRY_ARCANINE, \ - .natDexNum = NATIONAL_DEX_ARCANINE, \ - .categoryName = _("Legendary"), \ - FOOTPRINT(Arcanine) \ - .formSpeciesIdTable = sArcanineFormSpeciesIdTable, \ +#define ARCANINE_MISC_INFO \ + .catchRate = 75, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 194 : 213, \ + .evYield_Attack = 2, \ + .speciesName = _("Arcanine"), \ + .cryId = CRY_ARCANINE, \ + .natDexNum = NATIONAL_DEX_ARCANINE, \ + .categoryName = _("Legendary"), \ + FOOTPRINT(Arcanine) \ + .formSpeciesIdTable = sArcanineFormSpeciesIdTable, \ GROWLITHE_FAMILY_MISC_INFO [SPECIES_GROWLITHE] = @@ -4617,7 +4747,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 40, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 255, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 77, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4666,7 +4796,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 120, - .expYield = 135, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 135 : 131, .evYield_Speed = 2, .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), @@ -4719,7 +4849,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 90, .types = { TYPE_WATER, TYPE_FIGHTING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 255, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 230, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 225, + #else + .expYield = 185, + #endif .evYield_Defense = 3, .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), @@ -4769,7 +4907,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 100, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 250, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 225, + #else + .expYield = 185, + #endif .evYield_SpDefense = 3, .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(50), @@ -4824,7 +4968,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 200, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 62, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 75, + #else + .expYield = 73, + #endif .evYield_SpAttack = 1, .itemRare = ITEM_TWISTED_SPOON, .genderRatio = PERCENT_FEMALE(25), @@ -4873,7 +5023,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 70, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 100, - .expYield = 140, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 140 : 145, .evYield_SpAttack = 2, .itemRare = ITEM_TWISTED_SPOON, .genderRatio = PERCENT_FEMALE(25), @@ -4946,7 +5096,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 120, .baseSpAttack = 135, .baseSpDefense = ALAKAZAM_SP_DEF, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 250, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 225, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 221, + #else + .expYield = 186, + #endif .abilities = { ABILITY_SYNCHRONIZE, ABILITY_INNER_FOCUS, ABILITY_MAGIC_GUARD }, .cryId = CRY_ALAKAZAM, .height = 15, @@ -4983,7 +5141,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 150, .baseSpAttack = 175, .baseSpDefense = ALAKAZAM_SP_DEF + 10, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .abilities = { ABILITY_TRACE, ABILITY_TRACE, ABILITY_TRACE }, .cryId = CRY_ALAKAZAM_MEGA, .height = 12, @@ -5022,7 +5180,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 35, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 180, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 61, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 75, + #else + .expYield = 88, + #endif .evYield_Attack = 1, .itemRare = ITEM_FOCUS_BAND, .genderRatio = PERCENT_FEMALE(25), @@ -5071,7 +5235,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 60, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 90, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 146, .evYield_Attack = 2, .itemRare = ITEM_FOCUS_BAND, .genderRatio = PERCENT_FEMALE(25), @@ -5112,6 +5276,14 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = {EVO_ITEM, ITEM_LINKING_CORD, SPECIES_MACHAMP}), }, +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define MACHAMP_EXP_YIELD 253 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define MACHAMP_EXP_YIELD 227 +#else + #define MACHAMP_EXP_YIELD 193 +#endif + #define MACHAMP_MISC_INFO \ .baseHP = 90, \ .baseAttack = 130, \ @@ -5121,7 +5293,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 85, \ .types = { TYPE_FIGHTING, TYPE_FIGHTING }, \ .catchRate = 45, \ - .expYield = 227, \ + .expYield = MACHAMP_EXP_YIELD, \ .evYield_Attack = 3, \ .itemRare = ITEM_FOCUS_BAND, \ .genderRatio = PERCENT_FEMALE(25), \ @@ -5205,7 +5377,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 30, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 255, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 84, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5253,7 +5425,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 120, - .expYield = 137, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 137 : 151, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5302,7 +5474,15 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 70 : 60, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 245, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 221, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 216, + #else + .expYield = 191, + #endif .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5351,7 +5531,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 100, .types = { TYPE_WATER, TYPE_POISON }, .catchRate = 190, - .expYield = 67, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 67 : 105, .evYield_SpDefense = 1, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -5400,7 +5580,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 120, .types = { TYPE_WATER, TYPE_POISON }, .catchRate = 60, - .expYield = 180, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 180 : 205, .evYield_SpDefense = 2, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -5453,6 +5633,14 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .eggGroups = { EGG_GROUP_MINERAL, EGG_GROUP_MINERAL }, \ .bodyColor = BODY_COLOR_BROWN +#if P_UPDATED_EXP_YIELDS >= GEN_5 + #define GEODUDE_EXP_YIELD 60 +#elif P_UPDATED_EXP_YIELDS >= GEN_4 + #define GEODUDE_EXP_YIELD 73 +#else + #define GEODUDE_EXP_YIELD 86 +#endif + #define GEODUDE_MISC_INFO \ .baseHP = 40, \ .baseAttack = 80, \ @@ -5461,7 +5649,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 30, \ .baseSpDefense = 30, \ .catchRate = 255, \ - .expYield = 60, \ + .expYield = GEODUDE_EXP_YIELD, \ .evYield_Defense = 1, \ .speciesName = _("Geodude"), \ .cryId = CRY_GEODUDE, \ @@ -5476,31 +5664,41 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .formSpeciesIdTable = sGeodudeFormSpeciesIdTable, \ GEODUDE_FAMILY_MISC_INFO -#define GRAVELER_MISC_INFO \ - .baseHP = 55, \ - .baseAttack = 95, \ - .baseDefense = 115, \ - .baseSpeed = 35, \ - .baseSpAttack = 45, \ - .baseSpDefense = 45, \ - .catchRate = 120, \ - .expYield = 137, \ - .evYield_Defense = 2, \ - .speciesName = _("Graveler"), \ - .cryId = CRY_GRAVELER, \ - .natDexNum = NATIONAL_DEX_GRAVELER, \ - .categoryName = _("Rock"), \ - .height = 10, \ - .pokemonScale = 256, \ - .pokemonOffset = 2, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Graveler) \ - .formSpeciesIdTable = sGravelerFormSpeciesIdTable, \ +#define GRAVELER_MISC_INFO \ + .baseHP = 55, \ + .baseAttack = 95, \ + .baseDefense = 115, \ + .baseSpeed = 35, \ + .baseSpAttack = 45, \ + .baseSpDefense = 45, \ + .catchRate = 120, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 137 : 134, \ + .evYield_Defense = 2, \ + .speciesName = _("Graveler"), \ + .cryId = CRY_GRAVELER, \ + .natDexNum = NATIONAL_DEX_GRAVELER, \ + .categoryName = _("Rock"), \ + .height = 10, \ + .pokemonScale = 256, \ + .pokemonOffset = 2, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Graveler) \ + .formSpeciesIdTable = sGravelerFormSpeciesIdTable, \ GEODUDE_FAMILY_MISC_INFO #define GOLEM_ATTACK (P_UPDATED_STATS >= GEN_6 ? 120 : 110) +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define GOLEM_EXP_YIELD 248 +#elif P_UPDATED_EXP_YIELDS >= GEN_7 + #define GOLEM_EXP_YIELD 223 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define GOLEM_EXP_YIELD 218 +#else + #define GOLEM_EXP_YIELD 177 +#endif + #define GOLEM_MISC_INFO \ .baseHP = 80, \ .baseAttack = GOLEM_ATTACK, \ @@ -5509,7 +5707,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 55, \ .baseSpDefense = 65, \ .catchRate = 45, \ - .expYield = 223, \ + .expYield = GOLEM_EXP_YIELD, \ .evYield_Defense = 3, \ .speciesName = _("Golem"), \ .cryId = CRY_GOLEM, \ @@ -5693,43 +5891,43 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .growthRate = GROWTH_MEDIUM_FAST, \ .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD } -#define PONYTA_MISC_INFO \ - .baseHP = 50, \ - .baseAttack = 85, \ - .baseDefense = 55, \ - .baseSpeed = 90, \ - .baseSpAttack = 65, \ - .baseSpDefense = 65, \ - .catchRate = 190, \ - .expYield = 82, \ - .evYield_Speed = 1, \ - .speciesName = _("Ponyta"), \ - .cryId = CRY_PONYTA, \ - .natDexNum = NATIONAL_DEX_PONYTA, \ - FOOTPRINT(Ponyta) \ - .formSpeciesIdTable = sPonytaFormSpeciesIdTable,\ +#define PONYTA_MISC_INFO \ + .baseHP = 50, \ + .baseAttack = 85, \ + .baseDefense = 55, \ + .baseSpeed = 90, \ + .baseSpAttack = 65, \ + .baseSpDefense = 65, \ + .catchRate = 190, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 82 : 152, \ + .evYield_Speed = 1, \ + .speciesName = _("Ponyta"), \ + .cryId = CRY_PONYTA, \ + .natDexNum = NATIONAL_DEX_PONYTA, \ + FOOTPRINT(Ponyta) \ + .formSpeciesIdTable = sPonytaFormSpeciesIdTable, \ PONYTA_FAMILY_MISC_INFO -#define RAPIDASH_MISC_INFO \ - .baseHP = 65, \ - .baseAttack = 100, \ - .baseDefense = 70, \ - .baseSpeed = 105, \ - .baseSpAttack = 80, \ - .baseSpDefense = 80, \ - .catchRate = 60, \ - .expYield = 175, \ - .evYield_Speed = 2, \ - .speciesName = _("Rapidash"), \ - .cryId = CRY_RAPIDASH, \ - .natDexNum = NATIONAL_DEX_RAPIDASH, \ - .height = 17, \ - .pokemonScale = 256, \ - .pokemonOffset = 0, \ - .trainerScale = 289, \ - .trainerOffset = 1, \ - FOOTPRINT(Rapidash) \ - .formSpeciesIdTable = sRapidashFormSpeciesIdTable, \ +#define RAPIDASH_MISC_INFO \ + .baseHP = 65, \ + .baseAttack = 100, \ + .baseDefense = 70, \ + .baseSpeed = 105, \ + .baseSpAttack = 80, \ + .baseSpDefense = 80, \ + .catchRate = 60, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 192, \ + .evYield_Speed = 2, \ + .speciesName = _("Rapidash"), \ + .cryId = CRY_RAPIDASH, \ + .natDexNum = NATIONAL_DEX_RAPIDASH, \ + .height = 17, \ + .pokemonScale = 256, \ + .pokemonOffset = 0, \ + .trainerScale = 289, \ + .trainerOffset = 1, \ + FOOTPRINT(Rapidash) \ + .formSpeciesIdTable = sRapidashFormSpeciesIdTable, \ PONYTA_FAMILY_MISC_INFO [SPECIES_PONYTA] = @@ -5856,7 +6054,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 40, \ .baseSpDefense = 40, \ .catchRate = 190, \ - .expYield = 63, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 63 : 99, \ .evYield_HP = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -5894,7 +6092,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #define SLOWKING_MISC_INFO \ .catchRate = 70, \ - .expYield = 172, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 164,\ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ .friendship = STANDARD_FRIENDSHIP, \ @@ -5945,7 +6143,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 100, .baseSpDefense = 80, .types = { TYPE_WATER, TYPE_PSYCHIC }, - .expYield = 172, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 164, .evYield_Defense = (P_UPDATED_EVS >= GEN_8) ? 2 : 3, .abilities = { ABILITY_OBLIVIOUS, ABILITY_OWN_TEMPO, ABILITY_REGENERATOR }, .height = 16, @@ -6165,7 +6363,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_ELECTRIC, TYPE_STEEL }, .catchRate = 190, - .expYield = 65, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 89, .evYield_SpAttack = 1, .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, @@ -6215,7 +6413,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 70, .types = { TYPE_ELECTRIC, TYPE_STEEL }, .catchRate = 60, - .expYield = 163, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 163 : 161, .evYield_SpAttack = 2, .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, @@ -6267,7 +6465,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 90, .types = { TYPE_ELECTRIC, TYPE_STEEL }, .catchRate = 30, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 268, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 241, + #else + .expYield = 211, + #endif .evYield_SpAttack = 3, .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, @@ -6311,9 +6515,17 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #if P_FAMILY_FARFETCHD #define FARFETCHD_ATTACK (P_UPDATED_STATS >= GEN_7 ? 90 : 65) +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define FARFETCHD_EXP_YIELD 132 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define FARFETCHD_EXP_YIELD 123 +#else + #define FARFETCHD_EXP_YIELD 94 +#endif + #define FARFETCHD_MISC_INFO \ .catchRate = 45, \ - .expYield = 132, \ + .expYield = FARFETCHD_EXP_YIELD, \ .evYield_Attack = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -6462,7 +6674,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 35, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 190, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 96, .evYield_Attack = 1, .itemRare = ITEM_SHARP_BEAK, .genderRatio = PERCENT_FEMALE(50), @@ -6513,7 +6725,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 60, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 165, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 161, + #else + .expYield = 158, + #endif .evYield_Attack = 2, .itemRare = ITEM_SHARP_BEAK, .genderRatio = PERCENT_FEMALE(50), @@ -6565,7 +6783,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 70, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 190, - .expYield = 65, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 100, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6613,7 +6831,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_WATER, TYPE_ICE }, .catchRate = 75, - .expYield = 166, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 166 : 176, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6660,41 +6878,41 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .growthRate = GROWTH_MEDIUM_FAST, \ .eggGroups = { EGG_GROUP_AMORPHOUS, EGG_GROUP_AMORPHOUS } -#define GRIMER_MISC_INFO \ - .baseHP = 80, \ - .baseAttack = 80, \ - .baseDefense = 50, \ - .baseSpeed = 25, \ - .baseSpAttack = 40, \ - .baseSpDefense = 50, \ - .catchRate = 190, \ - .expYield = 65, \ - .evYield_HP = 1, \ - .speciesName = _("Grimer"), \ - .cryId = CRY_GRIMER, \ - .natDexNum = NATIONAL_DEX_GRIMER, \ - .categoryName = _("Sludge"), \ - FOOTPRINT(Grimer) \ - .formSpeciesIdTable = sGrimerFormSpeciesIdTable,\ +#define GRIMER_MISC_INFO \ + .baseHP = 80, \ + .baseAttack = 80, \ + .baseDefense = 50, \ + .baseSpeed = 25, \ + .baseSpAttack = 40, \ + .baseSpDefense = 50, \ + .catchRate = 190, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 90, \ + .evYield_HP = 1, \ + .speciesName = _("Grimer"), \ + .cryId = CRY_GRIMER, \ + .natDexNum = NATIONAL_DEX_GRIMER, \ + .categoryName = _("Sludge"), \ + FOOTPRINT(Grimer) \ + .formSpeciesIdTable = sGrimerFormSpeciesIdTable, \ GRIMER_FAMILY_MISC_INFO -#define MUK_MISC_INFO \ - .baseHP = 105, \ - .baseAttack = 105, \ - .baseDefense = 75, \ - .baseSpeed = 50, \ - .baseSpAttack = 65, \ - .baseSpDefense = 100, \ - .catchRate = 75, \ - .expYield = 175, \ - .evYield_HP = 1, \ - .evYield_Attack = 1, \ - .speciesName = _("Muk"), \ - .cryId = CRY_MUK, \ - .natDexNum = NATIONAL_DEX_MUK, \ - .categoryName = _("Sludge"), \ - FOOTPRINT(Muk) \ - .formSpeciesIdTable = sMukFormSpeciesIdTable, \ +#define MUK_MISC_INFO \ + .baseHP = 105, \ + .baseAttack = 105, \ + .baseDefense = 75, \ + .baseSpeed = 50, \ + .baseSpAttack = 65, \ + .baseSpDefense = 100, \ + .catchRate = 75, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 157,\ + .evYield_HP = 1, \ + .evYield_Attack = 1, \ + .speciesName = _("Muk"), \ + .cryId = CRY_MUK, \ + .natDexNum = NATIONAL_DEX_MUK, \ + .categoryName = _("Sludge"), \ + FOOTPRINT(Muk) \ + .formSpeciesIdTable = sMukFormSpeciesIdTable, \ GRIMER_FAMILY_MISC_INFO #define KANTONIAN_GRIMER_FAMILY_INFO \ @@ -6834,7 +7052,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 25, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 190, - .expYield = 61, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 97, .evYield_Defense = 1, .itemCommon = ITEM_PEARL, .itemRare = ITEM_BIG_PEARL, @@ -6885,7 +7103,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_WATER, TYPE_ICE }, .catchRate = 60, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 203, .evYield_Defense = 2, .itemCommon = ITEM_PEARL, .itemRare = ITEM_BIG_PEARL, @@ -6936,7 +7154,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 35, .types = { TYPE_GHOST, TYPE_POISON }, .catchRate = 190, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 95, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6985,7 +7203,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_GHOST, TYPE_POISON }, .catchRate = 90, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 126, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -7059,7 +7277,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 110, .baseSpAttack = 130, .baseSpDefense = 75, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 250, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 225, + #else + .expYield = 190, + #endif .abilities = GENGAR_ABILITIES, .height = 15, .weight = 405, @@ -7093,7 +7317,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 130, .baseSpAttack = 170, .baseSpDefense = 95, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .abilities = { ABILITY_SHADOW_TAG, ABILITY_SHADOW_TAG, ABILITY_SHADOW_TAG }, .isMegaEvolution = TRUE, .height = 14, @@ -7167,7 +7391,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_ROCK, TYPE_GROUND }, .catchRate = 45, - .expYield = 77, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 77 : 108, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, @@ -7235,7 +7459,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 30, .baseSpAttack = 55, .baseSpDefense = 65, - .expYield = 179, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 179 : 196, .abilities = { ABILITY_ROCK_HEAD, ABILITY_STURDY, ABILITY_SHEER_FORCE }, .cryId = CRY_STEELIX, .height = 92, @@ -7313,7 +7537,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 90, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 190, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 102, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -7362,7 +7586,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 115, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 75, - .expYield = 169, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 169 : 165, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -7414,7 +7638,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 25, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 225, - .expYield = 65, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 115, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -7461,7 +7685,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, \ .types = { TYPE_WATER, TYPE_WATER }, \ .catchRate = 60, \ - .expYield = 166, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 166 : 206, \ .evYield_Attack = 2, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -7545,28 +7769,36 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .abilities = { ABILITY_SOUNDPROOF, ABILITY_STATIC, ABILITY_AFTERMATH }, \ .bodyColor = BODY_COLOR_RED -#define VOLTORB_MISC_INFO \ - .baseHP = 40, \ - .baseAttack = 30, \ - .baseDefense = 50, \ - .baseSpeed = 100, \ - .baseSpAttack = 55, \ - .baseSpDefense = 55, \ - .catchRate = 190, \ - .expYield = 66, \ - .evYield_Speed = 1, \ - .speciesName = _("Voltorb"), \ - .cryId = CRY_VOLTORB, \ - .natDexNum = NATIONAL_DEX_VOLTORB, \ - .height = 5, \ - .pokemonScale = 364, \ - .pokemonOffset = -8, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Voltorb) \ - .formSpeciesIdTable = sVoltorbFormSpeciesIdTable, \ +#define VOLTORB_MISC_INFO \ + .baseHP = 40, \ + .baseAttack = 30, \ + .baseDefense = 50, \ + .baseSpeed = 100, \ + .baseSpAttack = 55, \ + .baseSpDefense = 55, \ + .catchRate = 190, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 103, \ + .evYield_Speed = 1, \ + .speciesName = _("Voltorb"), \ + .cryId = CRY_VOLTORB, \ + .natDexNum = NATIONAL_DEX_VOLTORB, \ + .height = 5, \ + .pokemonScale = 364, \ + .pokemonOffset = -8, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Voltorb) \ + .formSpeciesIdTable = sVoltorbFormSpeciesIdTable, \ VOLTORB_FAMILY_MISC_INFO +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define ELECTRODE_EXP_YIELD 172 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define ELECTRODE_EXP_YIELD 168 +#else + #define ELECTRODE_EXP_YIELD 150 +#endif + #define ELECTRODE_MISC_INFO \ .baseHP = 60, \ .baseAttack = 50, \ @@ -7575,7 +7807,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, \ .baseSpeed = P_UPDATED_STATS >= GEN_7 ? 150 : 140, \ .catchRate = 60, \ - .expYield = 172, \ + .expYield = ELECTRODE_EXP_YIELD, \ .evYield_Speed = 2, \ .speciesName = _("Electrode"), \ .cryId = CRY_ELECTRODE, \ @@ -7699,7 +7931,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_GRASS, TYPE_PSYCHIC }, .catchRate = 90, - .expYield = 65, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 98, .evYield_Defense = 1, .itemRare = ITEM_PSYCHIC_SEED, .genderRatio = PERCENT_FEMALE(50), @@ -7739,9 +7971,17 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = {EVO_NONE, 0, SPECIES_EXEGGUTOR_ALOLAN}), }, +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define EXEGGUTOR_EXP_YIELD 186 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define EXEGGUTOR_EXP_YIELD 182 +#else + #define EXEGGUTOR_EXP_YIELD 212 +#endif + #define EXEGGUTOR_MISC_INFO \ .catchRate = 45, \ - .expYield = 186, \ + .expYield = EXEGGUTOR_EXP_YIELD, \ .evYield_SpAttack = 2, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -7841,7 +8081,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_GROUND, TYPE_GROUND }, .catchRate = 190, - .expYield = 64, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 64 : 87, .evYield_Defense = 1, .itemRare = ITEM_THICK_CLUB, .genderRatio = PERCENT_FEMALE(50), @@ -7890,7 +8130,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 50, \ .baseSpDefense = 80, \ .catchRate = 75, \ - .expYield = 149, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 149 : 124,\ .evYield_Defense = 2, \ .itemRare = ITEM_THICK_CLUB, \ .genderRatio = PERCENT_FEMALE(50), \ @@ -7974,7 +8214,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 35, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 75, - .expYield = 42, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 42 : 91, .evYield_Attack = 1, .genderRatio = MON_MALE, .eggCycles = 25, @@ -8025,7 +8265,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 110, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 139, .evYield_Attack = 2, .genderRatio = MON_MALE, .eggCycles = 25, @@ -8072,7 +8312,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 110, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 140, .evYield_SpDefense = 2, .genderRatio = MON_MALE, .eggCycles = 25, @@ -8120,7 +8360,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 110, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 138, .evYield_SpDefense = 2, .genderRatio = MON_MALE, .eggCycles = 25, @@ -8170,7 +8410,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 75, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, - .expYield = 77, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 77 : 127, .evYield_HP = 2, .itemRare = ITEM_LAGGING_TAIL, .genderRatio = PERCENT_FEMALE(50), @@ -8220,7 +8460,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 30, - .expYield = 180, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 180 : 193, .evYield_HP = 3, .itemRare = ITEM_LAGGING_TAIL, .genderRatio = PERCENT_FEMALE(50), @@ -8271,7 +8511,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 190, - .expYield = 68, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 68 : 114, .evYield_Defense = 1, .itemRare = ITEM_SMOKE_BALL, .genderRatio = PERCENT_FEMALE(50), @@ -8324,7 +8564,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 85, \ .baseSpDefense = 70, \ .catchRate = 60, \ - .expYield = 172, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 173, \ .evYield_Defense = 2, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -8420,7 +8660,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 30, .types = { TYPE_GROUND, TYPE_ROCK }, .catchRate = 120, - .expYield = 69, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 69 : 135, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -8470,7 +8710,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_GROUND, TYPE_ROCK }, .catchRate = 60, - .expYield = 170, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 170 : 204, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -8522,7 +8762,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_GROUND, TYPE_ROCK }, .catchRate = 30, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 268, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 241, + #else + .expYield = 217, + #endif .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -8575,7 +8821,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 65, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 130, - .expYield = 110, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 110 : 255, .evYield_HP = 1, .itemCommon = ITEM_OVAL_STONE, .genderRatio = MON_FEMALE, @@ -8626,7 +8872,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 105, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 30, - .expYield = 395, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 395 : 255, .evYield_HP = 2, .itemCommon = ITEM_LUCKY_PUNCH, .genderRatio = MON_FEMALE, @@ -8676,7 +8922,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 135, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 30, - .expYield = 608, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 608 : 255, .evYield_HP = (P_UPDATED_EVS >= GEN_4) ? 3 : 2, .itemRare = ITEM_LUCKY_EGG, .genderRatio = MON_FEMALE, @@ -8727,7 +8973,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 40, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 87, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 87 : 166, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -8776,7 +9022,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 30, - .expYield = 187, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 187 : 211, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -8849,7 +9095,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 90, .baseSpAttack = 40, .baseSpDefense = 80, - .expYield = 172, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 175, .abilities = { ABILITY_EARLY_BIRD, ABILITY_SCRAPPY, ABILITY_INNER_FOCUS }, .cryId = CRY_KANGASKHAN, .weight = 800, @@ -8913,7 +9159,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 25, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 225, - .expYield = 59, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 59 : 83, .evYield_SpAttack = 1, .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), @@ -8962,7 +9208,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 75, - .expYield = 154, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 154 : 155, .evYield_Defense = 1, .evYield_SpAttack = 1, .itemRare = ITEM_DRAGON_SCALE, @@ -9014,7 +9260,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_WATER, TYPE_DRAGON }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 270, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 243, + #else + .expYield = 207, + #endif .evYield_Attack = 1, .evYield_SpAttack = 1, .evYield_SpDefense = 1, @@ -9067,7 +9319,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 225, - .expYield = 64, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 64 : 111, .evYield_Attack = 1, .itemRare = ITEM_MYSTIC_WATER, .genderRatio = PERCENT_FEMALE(50), @@ -9118,7 +9370,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 60, - .expYield = 158, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 170, .evYield_Attack = 2, .itemRare = ITEM_MYSTIC_WATER, .genderRatio = PERCENT_FEMALE(50), @@ -9170,7 +9422,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 225, - .expYield = 68, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 68 : 106, .evYield_Speed = 1, .itemCommon = ITEM_STARDUST, .itemRare = ITEM_STAR_PIECE, @@ -9221,7 +9473,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 85, .types = { TYPE_WATER, TYPE_PSYCHIC }, .catchRate = 60, - .expYield = 182, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 182 : 207, .evYield_Speed = 2, .itemCommon = ITEM_STARDUST, .itemRare = ITEM_STAR_PIECE, @@ -9277,7 +9529,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, #endif .catchRate = 145, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 78, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, @@ -9319,7 +9571,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #define MR_MIME_MISC_INFO \ .catchRate = 45, \ - .expYield = 161, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 161 : 136, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 25, \ .friendship = STANDARD_FRIENDSHIP, \ @@ -9471,7 +9723,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 80, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 45, - .expYield = 100, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 100 : 187, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, @@ -9541,7 +9793,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 65, .baseSpAttack = 55, .baseSpDefense = 80, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 200, .abilities = { ABILITY_SWARM, ABILITY_TECHNICIAN, ABILITY_LIGHT_METAL }, .cryId = CRY_SCIZOR, .height = 18, @@ -9668,7 +9920,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 65, .types = { TYPE_ICE, TYPE_PSYCHIC }, .catchRate = 45, - .expYield = 61, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 87, .evYield_SpAttack = 1, .genderRatio = MON_FEMALE, .eggCycles = 25, @@ -9718,7 +9970,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_ICE, TYPE_PSYCHIC }, .catchRate = 45, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 137, .evYield_SpAttack = 2, .genderRatio = MON_FEMALE, .eggCycles = 25, @@ -9768,7 +10020,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 45, - .expYield = 72, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 72 : 106, .evYield_Speed = 1, .itemRare = ITEM_ELECTIRIZER, .genderRatio = PERCENT_FEMALE(25), @@ -9819,7 +10071,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 85, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 45, - .expYield = 172, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 156, .evYield_Speed = 2, .itemRare = ITEM_ELECTIRIZER, .genderRatio = PERCENT_FEMALE(25), @@ -9871,7 +10123,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 85, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 30, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 270, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 243, + #else + .expYield = 199, + #endif .evYield_Attack = 3, .itemRare = ITEM_ELECTIRIZER, .genderRatio = PERCENT_FEMALE(25), @@ -9923,7 +10181,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 45, - .expYield = 73, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 73 : 117, .evYield_Speed = 1, .itemRare = ITEM_MAGMARIZER, .genderRatio = PERCENT_FEMALE(25), @@ -9974,7 +10232,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 85, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 45, - .expYield = 173, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 167, .evYield_SpAttack = 2, .itemRare = ITEM_MAGMARIZER, .genderRatio = PERCENT_FEMALE(25), @@ -10025,7 +10283,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 30, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 270, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 243, + #else + .expYield = 199, + #endif .evYield_SpAttack = 3, .itemRare = ITEM_MAGMARIZER, .genderRatio = PERCENT_FEMALE(25), @@ -10094,7 +10358,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 55, .baseSpDefense = 70, .types = { TYPE_BUG, TYPE_BUG }, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 200, .abilities = { ABILITY_HYPER_CUTTER, ABILITY_MOLD_BREAKER, ABILITY_MOXIE }, .cryId = CRY_PINSIR, .height = 15, @@ -10160,24 +10424,24 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #endif //P_FAMILY_PINSIR #if P_FAMILY_TAUROS -#define TAUROS_MISC_INFO \ - .catchRate = 45, \ - .expYield = 172, \ - .genderRatio = MON_MALE, \ - .eggCycles = 20, \ - .friendship = STANDARD_FRIENDSHIP, \ - .growthRate = GROWTH_SLOW, \ - .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ - .speciesName = _("Tauros"), \ - .cryId = CRY_TAUROS, \ - .natDexNum = NATIONAL_DEX_TAUROS, \ - .categoryName = _("Wild Bull"), \ - .height = 14, \ - .pokemonScale = 256, \ - .pokemonOffset = 0, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Tauros) \ +#define TAUROS_MISC_INFO \ + .catchRate = 45, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 211,\ + .genderRatio = MON_MALE, \ + .eggCycles = 20, \ + .friendship = STANDARD_FRIENDSHIP, \ + .growthRate = GROWTH_SLOW, \ + .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ + .speciesName = _("Tauros"), \ + .cryId = CRY_TAUROS, \ + .natDexNum = NATIONAL_DEX_TAUROS, \ + .categoryName = _("Wild Bull"), \ + .height = 14, \ + .pokemonScale = 256, \ + .pokemonOffset = 0, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Tauros) \ .formSpeciesIdTable = sTaurosFormSpeciesIdTable [SPECIES_TAUROS] = @@ -10302,7 +10566,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 20, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 255, - .expYield = 40, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 40 : 20, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 5, @@ -10374,7 +10638,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 60, .baseSpDefense = 100, .types = { TYPE_WATER, TYPE_FLYING }, - .expYield = 189, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 189 : 214, .abilities = { ABILITY_INTIMIDATE, ABILITY_NONE, ABILITY_MOXIE }, .cryId = CRY_GYARADOS, .weight = 2350, @@ -10441,7 +10705,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, \ .types = { TYPE_WATER, TYPE_ICE }, \ .catchRate = 45, \ - .expYield = 187, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 187 : 219, \ .evYield_HP = 2, \ .itemCommon = ITEM_MYSTIC_WATER, \ .itemRare = ITEM_MYSTIC_WATER, \ @@ -10526,7 +10790,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 48, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 35, - .expYield = 101, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 101 : 61, .evYield_HP = 1, .itemCommon = ITEM_QUICK_POWDER, .itemRare = ITEM_METAL_POWDER, @@ -10576,7 +10840,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 65, \ .types = { TYPE_NORMAL, TYPE_NORMAL }, \ .catchRate = 45, \ - .expYield = 65, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 92, \ .evYield_SpDefense = 1, \ .genderRatio = PERCENT_FEMALE(12.5), \ .eggCycles = 35, \ @@ -10669,7 +10933,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 196, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, @@ -10716,7 +10980,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 45, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 197, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, @@ -10763,7 +11027,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 110, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 45, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 198, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, @@ -10811,7 +11075,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 45, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 197, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, @@ -10858,7 +11122,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 130, .types = { TYPE_DARK, TYPE_DARK }, .catchRate = 45, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 197, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, @@ -10907,7 +11171,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 65, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 196, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, @@ -10954,7 +11218,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 95, .types = { TYPE_ICE, TYPE_ICE }, .catchRate = 45, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 196, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 35, @@ -11054,7 +11318,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 75, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, - .expYield = 79, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 79 : 130, .evYield_SpAttack = 1, .genderRatio = MON_GENDERLESS, .eggCycles = 20, @@ -11155,7 +11419,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 75, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 30, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 268, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 241, + #else + .expYield = 185, + #endif .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 20, @@ -11207,7 +11477,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 55, .types = { TYPE_ROCK, TYPE_WATER }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 71, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 99, + #else + .expYield = 120, + #endif .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -11255,7 +11531,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 70, .types = { TYPE_ROCK, TYPE_WATER }, .catchRate = 45, - .expYield = 173, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 199, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -11304,7 +11580,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 45, .types = { TYPE_ROCK, TYPE_WATER }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 71, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 99, + #else + .expYield = 119, + #endif .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -11352,7 +11634,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 70, .types = { TYPE_ROCK, TYPE_WATER }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 173, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 199, + #else + .expYield = 201, + #endif .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -11418,7 +11706,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpeed = 130, .baseSpAttack = 60, .baseSpDefense = 75, - .expYield = 180, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 180 : 202, .abilities = { ABILITY_ROCK_HEAD, ABILITY_PRESSURE, ABILITY_UNNERVE }, .cryId = CRY_AERODACTYL, .height = 18, @@ -11494,7 +11782,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 85, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 50, - .expYield = 78, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 78 : 94, .evYield_HP = 1, .itemCommon = ITEM_LEFTOVERS, .itemRare = ITEM_LEFTOVERS, @@ -11544,7 +11832,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 110, \ .types = { TYPE_NORMAL, TYPE_NORMAL }, \ .catchRate = 25, \ - .expYield = 189, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 189 : 154, \ .evYield_HP = 2, \ .itemCommon = ITEM_LEFTOVERS, \ .itemRare = ITEM_LEFTOVERS, \ @@ -11619,22 +11907,22 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #endif //P_FAMILY_SNORLAX #if P_FAMILY_ARTICUNO -#define ARTICUNO_MISC_INFO \ - .catchRate = 3, \ - .genderRatio = MON_GENDERLESS, \ - .friendship = 35, \ - .growthRate = GROWTH_SLOW, \ +#define ARTICUNO_MISC_INFO \ + .catchRate = 3, \ + .genderRatio = MON_GENDERLESS, \ + .friendship = 35, \ + .growthRate = GROWTH_SLOW, \ .eggGroups = { EGG_GROUP_NO_EGGS_DISCOVERED, EGG_GROUP_NO_EGGS_DISCOVERED },\ - .speciesName = _("Articuno"), \ - .cryId = CRY_ARTICUNO, \ - .natDexNum = NATIONAL_DEX_ARTICUNO, \ - .height = 17, \ - .pokemonScale = 256, \ - .pokemonOffset = 0, \ - .trainerScale = 309, \ - .trainerOffset = 2, \ - FOOTPRINT(Articuno) \ - .formSpeciesIdTable = sArticunoFormSpeciesIdTable, \ + .speciesName = _("Articuno"), \ + .cryId = CRY_ARTICUNO, \ + .natDexNum = NATIONAL_DEX_ARTICUNO, \ + .height = 17, \ + .pokemonScale = 256, \ + .pokemonOffset = 0, \ + .trainerScale = 309, \ + .trainerOffset = 2, \ + FOOTPRINT(Articuno) \ + .formSpeciesIdTable = sArticunoFormSpeciesIdTable, \ .isLegendary = TRUE [SPECIES_ARTICUNO] = @@ -11647,7 +11935,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 95, .baseSpDefense = 125, .types = { TYPE_ICE, TYPE_FLYING }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 215, + #endif .evYield_SpDefense = 3, .eggCycles = 80, .abilities = { ABILITY_PRESSURE, ABILITY_NONE, ABILITY_SNOW_CLOAK }, @@ -11740,7 +12034,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 125, .baseSpDefense = 90, .types = { TYPE_ELECTRIC, TYPE_FLYING }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 216, + #endif .evYield_SpAttack = 3, .eggCycles = 80, #if P_UPDATED_ABILITIES >= GEN_6 @@ -11834,7 +12134,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 125, .baseSpDefense = 85, .types = { TYPE_FIRE, TYPE_FLYING }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 217, + #endif .evYield_SpAttack = 3, .eggCycles = 80, .abilities = { ABILITY_PRESSURE, ABILITY_NONE, ABILITY_FLAME_BODY }, @@ -11907,7 +12213,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 50, .types = { TYPE_DRAGON, TYPE_DRAGON }, .catchRate = 45, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 67, .evYield_Attack = 1, .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), @@ -11956,7 +12262,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 70, .types = { TYPE_DRAGON, TYPE_DRAGON }, .catchRate = 45, - .expYield = 147, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 147 : 144, .evYield_Attack = 2, .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), @@ -12005,7 +12311,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 100, .types = { TYPE_DRAGON, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 218, + #endif .evYield_Attack = 3, .itemRare = ITEM_DRAGON_SCALE, .genderRatio = PERCENT_FEMALE(50), @@ -12073,7 +12385,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 154, .baseSpDefense = 90, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 340, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 306, + #else + .expYield = 220, + #endif .abilities = { ABILITY_PRESSURE, ABILITY_NONE, ABILITY_UNNERVE }, .cryId = CRY_MEWTWO, .height = 20, @@ -12109,7 +12427,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 154, .baseSpDefense = 100, .types = { TYPE_PSYCHIC, TYPE_FIGHTING }, - .expYield = 351, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 390 : 351, .abilities = { ABILITY_STEADFAST, ABILITY_STEADFAST, ABILITY_STEADFAST }, .isMegaEvolution = TRUE, .cryId = CRY_MEWTWO_MEGA_X, @@ -12145,7 +12463,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpAttack = 194, .baseSpDefense = 120, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, - .expYield = 351, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 390 : 351, .abilities = { ABILITY_INSOMNIA, ABILITY_INSOMNIA, ABILITY_INSOMNIA }, .isMegaEvolution = TRUE, .cryId = CRY_MEWTWO_MEGA_Y, @@ -12185,7 +12503,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseSpDefense = 100, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 64, + #endif .evYield_HP = 3, .itemCommon = ITEM_LUM_BERRY, .itemRare = ITEM_LUM_BERRY, diff --git a/src/data/pokemon/species_info/gen_2.h b/src/data/pokemon/species_info/gen_2.h index e232fbef29..92198af5ec 100644 --- a/src/data/pokemon/species_info/gen_2.h +++ b/src/data/pokemon/species_info/gen_2.h @@ -62,7 +62,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 80, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 141, .evYield_Defense = 1, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -111,7 +111,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 100, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 263, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 236, + #else + .expYield = 208, + #endif .evYield_Defense = 1, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(12.5), @@ -163,7 +169,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 50, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 45, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 65, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -251,9 +257,17 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = {EVO_NONE, 0, SPECIES_TYPHLOSION_HISUIAN}), }, +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define TYPHLOSION_EXP_YIELD 267 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define TYPHLOSION_EXP_YIELD 240 +#else + #define TYPHLOSION_EXP_YIELD 209 +#endif + #define TYPHLOSION_MISC_INFO \ .catchRate = 45, \ - .expYield = 240, \ + .expYield = TYPHLOSION_EXP_YIELD, \ .evYield_SpAttack = 3, \ .genderRatio = PERCENT_FEMALE(12.5), \ .eggCycles = 20, \ @@ -353,7 +367,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 48, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 63, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 63 : 66, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -401,7 +415,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 63, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 143, .evYield_Attack = 1, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -451,7 +465,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 83, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 210, + #endif .evYield_Attack = 2, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -502,7 +522,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 45, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 255, - .expYield = 43, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 43 : 57, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -550,7 +570,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 55, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 90, - .expYield = 145, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 145 : 116, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -599,7 +619,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 56, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 255, - .expYield = 52, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 52 : 58, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -647,7 +667,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 96, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 158, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 155, + #else + .expYield = 162, + #endif .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -696,7 +722,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 80, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 255, - .expYield = 53, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 53 : 54, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -746,7 +772,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 110, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 90, - .expYield = 137, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 137 : 134, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -798,7 +824,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 40, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 255, - .expYield = 50, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 50 : 54, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -846,7 +872,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = P_UPDATED_STATS >= GEN_7 ? 70 : 60, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 140, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 137, + #else + .expYield = 134, + #endif .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -895,7 +927,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 56, .types = { TYPE_WATER, TYPE_ELECTRIC }, .catchRate = 190, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 90, .evYield_HP = 1, .itemRare = ITEM_DEEP_SEA_SCALE, .genderRatio = PERCENT_FEMALE(50), @@ -944,7 +976,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 76, .types = { TYPE_WATER, TYPE_ELECTRIC }, .catchRate = 75, - .expYield = 161, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 161 : 156, .evYield_HP = 2, .itemRare = ITEM_DEEP_SEA_SCALE, .genderRatio = PERCENT_FEMALE(50), @@ -996,7 +1028,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TOGEPI_FAMILY_TYPE, TOGEPI_FAMILY_TYPE }, .catchRate = 190, - .expYield = 49, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 49 : 74, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 10, @@ -1044,7 +1076,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 105, .types = { TOGEPI_FAMILY_TYPE, TYPE_FLYING }, .catchRate = 75, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 114, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 10, @@ -1097,7 +1129,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .types = { TYPE_NORMAL, TYPE_FLYING }, #endif .catchRate = 30, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 273, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 245, + #else + .expYield = 220, + #endif .evYield_SpAttack = 2, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -1150,7 +1188,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 45, .types = { TYPE_PSYCHIC, TYPE_FLYING }, .catchRate = 190, - .expYield = 64, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 64 : 73, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1199,7 +1237,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 70, .types = { TYPE_PSYCHIC, TYPE_FLYING }, .catchRate = 75, - .expYield = 165, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 165 : 171, .evYield_Speed = 1, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), @@ -1250,7 +1288,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 45, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 235, - .expYield = 56, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 56 : 59, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1299,7 +1337,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 60, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 120, - .expYield = 128, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 128 : 117, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1372,7 +1410,15 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpAttack = 115, .baseSpDefense = 90, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 255, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 230, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 225, + #else + .expYield = 194, + #endif .abilities = { ABILITY_STATIC, ABILITY_NONE, ABILITY_PLUS }, .cryId = CRY_AMPHAROS, .description = COMPOUND_STRING( @@ -1403,7 +1449,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpAttack = 165, .baseSpDefense = 110, .types = { TYPE_ELECTRIC, TYPE_DRAGON }, - .expYield = 275, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 305 : 275, .abilities = { ABILITY_MOLD_BREAKER, ABILITY_MOLD_BREAKER, ABILITY_MOLD_BREAKER }, .cryId = CRY_AMPHAROS_MEGA, .description = COMPOUND_STRING( @@ -1441,7 +1487,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .types = { TYPE_NORMAL, TYPE_NORMAL }, #endif .catchRate = 150, - .expYield = 38, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 38 : 33, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 10, @@ -1494,7 +1540,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .types = { TYPE_WATER, TYPE_WATER }, #endif .catchRate = 190, - .expYield = 88, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 88 : 58, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, @@ -1546,7 +1592,15 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .types = { TYPE_WATER, TYPE_WATER }, #endif .catchRate = 75, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 210, + #elif P_UPDATED_EXP_YIELDS >= GEN_6 .expYield = 189, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 185, + #else + .expYield = 153, + #endif .evYield_HP = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, @@ -1596,7 +1650,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 45, .types = { TYPE_ROCK, TYPE_ROCK }, .catchRate = 255, - .expYield = 58, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 68, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1645,7 +1699,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TYPE_ROCK, TYPE_ROCK }, .catchRate = 65, - .expYield = 144, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 144 : 135, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1696,7 +1750,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 55, .types = { TYPE_GRASS, TYPE_FLYING }, .catchRate = 255, - .expYield = 50, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 50 : 74, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1745,7 +1799,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TYPE_GRASS, TYPE_FLYING }, .catchRate = 120, - .expYield = 119, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 119 : 136, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1794,7 +1848,15 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 95 : 85, .types = { TYPE_GRASS, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 230, + #elif P_UPDATED_EXP_YIELDS >= GEN_6 .expYield = 207, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 203, + #else + .expYield = 176, + #endif .evYield_Speed = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1844,7 +1906,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 55, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, - .expYield = 72, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 72 : 94, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1895,7 +1957,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 66, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, - .expYield = 169, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 169 : 186, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1947,7 +2009,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 30, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 235, - .expYield = 36, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 36 : 52, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1995,7 +2057,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 85, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 120, - .expYield = 149, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 149 : 146, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2044,7 +2106,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 45, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 75, - .expYield = 78, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 78 : 147, .evYield_Speed = (P_UPDATED_EVS >= GEN_4) ? 1 : 2, .itemRare = ITEM_WIDE_LENS, .genderRatio = PERCENT_FEMALE(50), @@ -2095,7 +2157,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 56, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 30, - .expYield = 180, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 180 : 198, .evYield_Attack = 2, .itemRare = ITEM_WIDE_LENS, .genderRatio = PERCENT_FEMALE(50), @@ -2145,7 +2207,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpAttack = 25, \ .baseSpDefense = 25, \ .catchRate = 255, \ - .expYield = 42, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 42 : 52, \ .evYield_HP = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -2201,7 +2263,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TYPE_WATER, TYPE_GROUND }, .catchRate = 90, - .expYield = 151, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 151 : 137, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2328,7 +2390,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 42, .types = { TYPE_DARK, TYPE_FLYING }, .catchRate = 30, - .expYield = 81, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 81 : 107, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2380,7 +2442,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 52, .types = { TYPE_DARK, TYPE_FLYING }, .catchRate = 30, - .expYield = 177, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 177 : 187, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2430,7 +2492,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 85, .types = { TYPE_GHOST, TYPE_GHOST }, .catchRate = 45, - .expYield = 87, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 87 : 147, .evYield_SpAttack = (P_UPDATED_EVS >= GEN_4) ? 0 : 1, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), @@ -2481,7 +2543,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 105, .types = { TYPE_GHOST, TYPE_GHOST }, .catchRate = 45, - .expYield = 173, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 187, .evYield_SpAttack = 1, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), @@ -2532,7 +2594,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 48, \ .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, \ .catchRate = 225, \ - .expYield = 118, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 118 : 61, \ .evYield_Attack = 1, \ .evYield_SpAttack = 1, \ .genderRatio = MON_GENDERLESS, \ @@ -2819,7 +2881,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 48, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 125, - .expYield = 52, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 52 : 44, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2869,7 +2931,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 58, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 177, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2923,7 +2985,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TYPE_NORMAL, TYPE_PSYCHIC }, .catchRate = 60, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 149, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3024,7 +3086,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 35, .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 190, - .expYield = 58, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 60, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3072,7 +3134,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 60, .types = { TYPE_BUG, TYPE_STEEL }, .catchRate = 75, - .expYield = 163, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 163 : 118, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3121,7 +3183,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 190, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 145, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 125, + #else + .expYield = 75, + #endif .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3238,7 +3306,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TYPE_GROUND, TYPE_FLYING }, .catchRate = 60, - .expYield = 86, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 86 : 108, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3291,7 +3359,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 75, .types = { TYPE_GROUND, TYPE_FLYING }, .catchRate = 30, - .expYield = 179, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 179 : 192, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3346,7 +3414,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .types = { TYPE_NORMAL, TYPE_NORMAL }, #endif .catchRate = 190, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 63, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, @@ -3398,7 +3466,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .types = { TYPE_NORMAL, TYPE_NORMAL }, #endif .catchRate = 75, - .expYield = 158, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 178, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, @@ -3437,6 +3505,15 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = #endif //P_FAMILY_SNUBBULL #if P_FAMILY_QWILFISH + +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define QWILFISH_EXP_YIELD 88 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define QWILFISH_EXP_YIELD 86 +#else + #define QWILFISH_EXP_YIELD 100 +#endif + #define QWILFISH_MISC_INFO \ .baseHP = 65, \ .baseAttack = 95, \ @@ -3445,7 +3522,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpAttack = 55, \ .baseSpDefense = 55, \ .catchRate = 45, \ - .expYield = 88, \ + .expYield = QWILFISH_EXP_YIELD, \ .evYield_Attack = 1, \ .itemRare = ITEM_POISON_BARB, \ .genderRatio = PERCENT_FEMALE(50), \ @@ -3576,7 +3653,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 230, .types = { TYPE_BUG, TYPE_ROCK }, .catchRate = 190, - .expYield = 177, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 177 : 80, .evYield_Defense = 1, .evYield_SpDefense = 1, .itemCommon = ITEM_BERRY_JUICE, @@ -3645,7 +3722,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpeed = 85, .baseSpAttack = 40, .baseSpDefense = 95, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 200, .abilities = { ABILITY_SWARM, ABILITY_GUTS, ABILITY_MOXIE }, .cryId = CRY_HERACROSS, .height = 15, @@ -3711,33 +3788,33 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = #endif //P_FAMILY_HERACROSS #if P_FAMILY_SNEASEL -#define SNEASEL_MISC_INFO \ - .baseHP = 55, \ - .baseAttack = 95, \ - .baseDefense = 55, \ - .baseSpeed = 115, \ - .baseSpAttack = 35, \ - .baseSpDefense = 75, \ - .catchRate = 60, \ - .expYield = 86, \ - .evYield_Speed = 1, \ - .itemRare = ITEM_QUICK_CLAW, \ - .genderRatio = PERCENT_FEMALE(50), \ - .eggCycles = 20, \ - .friendship = 35, \ - .growthRate = GROWTH_MEDIUM_SLOW, \ - .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ - .noFlip = TRUE, \ - .speciesName = _("Sneasel"), \ - .cryId = CRY_SNEASEL, \ - .natDexNum = NATIONAL_DEX_SNEASEL, \ - .categoryName = _("Sharp Claw"), \ - .height = 9, \ - .pokemonScale = 413, \ - .pokemonOffset = -3, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Sneasel) \ +#define SNEASEL_MISC_INFO \ + .baseHP = 55, \ + .baseAttack = 95, \ + .baseDefense = 55, \ + .baseSpeed = 115, \ + .baseSpAttack = 35, \ + .baseSpDefense = 75, \ + .catchRate = 60, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 86 : 132, \ + .evYield_Speed = 1, \ + .itemRare = ITEM_QUICK_CLAW, \ + .genderRatio = PERCENT_FEMALE(50), \ + .eggCycles = 20, \ + .friendship = 35, \ + .growthRate = GROWTH_MEDIUM_SLOW, \ + .eggGroups = { EGG_GROUP_FIELD, EGG_GROUP_FIELD }, \ + .noFlip = TRUE, \ + .speciesName = _("Sneasel"), \ + .cryId = CRY_SNEASEL, \ + .natDexNum = NATIONAL_DEX_SNEASEL, \ + .categoryName = _("Sharp Claw"), \ + .height = 9, \ + .pokemonScale = 413, \ + .pokemonOffset = -3, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Sneasel) \ .formSpeciesIdTable = sSneaselFormSpeciesIdTable [SPECIES_SNEASEL] = @@ -3779,7 +3856,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 85, .types = { TYPE_DARK, TYPE_ICE }, .catchRate = 45, - .expYield = 179, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 179 : 199, .evYield_Attack = 1, .evYield_Speed = 1, .itemRare = ITEM_QUICK_CLAW, @@ -3911,7 +3988,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 50, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 120, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 124, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3960,7 +4037,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 75, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 60, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 189, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4102,7 +4179,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 40, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 190, - .expYield = 50, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 50 : 78, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4150,7 +4227,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 80, .types = { TYPE_FIRE, TYPE_ROCK }, .catchRate = 75, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 151, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 144, + #else + .expYield = 154, + #endif .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4200,7 +4283,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 30, .types = { TYPE_ICE, TYPE_GROUND }, .catchRate = 225, - .expYield = 50, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 50 : 78, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4248,7 +4331,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 60, .types = { TYPE_ICE, TYPE_GROUND }, .catchRate = 75, - .expYield = 158, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 160, .evYield_HP = 1, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), @@ -4300,7 +4383,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 60, .types = { TYPE_ICE, TYPE_GROUND }, .catchRate = 50, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 207, + #endif .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4341,12 +4430,19 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = #endif //P_FAMILY_SWINUB #if P_FAMILY_CORSOLA +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define CORSOLA_EXP_YIELD 144 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define CORSOLA_EXP_YIELD 133 +#else + #define CORSOLA_EXP_YIELD 113 +#endif #define CORSOLA_HP (P_UPDATED_STATS >= GEN_7 ? 65 : 55) #define CORSOLA_DEFENSES (P_UPDATED_STATS >= GEN_7 ? 95 : 85) #define CORSOLA_MISC_INFO \ .catchRate = 60, \ - .expYield = 144, \ + .expYield = CORSOLA_EXP_YIELD, \ .evYield_SpDefense = 1, \ .genderRatio = PERCENT_FEMALE(75), \ .eggCycles = 20, \ @@ -4490,7 +4586,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 35, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 190, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 78, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4538,7 +4634,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 75, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 75, - .expYield = 168, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 168 : 164, .evYield_Attack = 1, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), @@ -4591,7 +4687,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 45, .types = { TYPE_ICE, TYPE_FLYING }, .catchRate = 45, - .expYield = 116, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 116 : 183, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4641,7 +4737,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 120, .types = { TYPE_WATER, TYPE_FLYING }, .catchRate = 25, - .expYield = 69, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 69 : 108, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, @@ -4690,7 +4786,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 140, .types = { TYPE_WATER, TYPE_FLYING }, .catchRate = 25, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 170, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 163, + #else + .expYield = 168, + #endif .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, @@ -4740,7 +4842,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 70, .types = { TYPE_STEEL, TYPE_FLYING }, .catchRate = 25, - .expYield = 163, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 163 : 168, .evYield_Defense = 2, .itemRare = ITEM_METAL_COAT, .genderRatio = PERCENT_FEMALE(50), @@ -4790,7 +4892,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 50, .types = { TYPE_DARK, TYPE_FIRE }, .catchRate = 120, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 114, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4855,7 +4957,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpeed = 95, .baseSpAttack = 110, .baseSpDefense = 80, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 204, .abilities = { ABILITY_EARLY_BIRD, ABILITY_FLASH_FIRE, ABILITY_UNNERVE }, .cryId = CRY_HOUNDOOM, .height = 14, @@ -4930,7 +5032,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 40, .types = { TYPE_GROUND, TYPE_GROUND }, .catchRate = 120, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 124, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4978,7 +5080,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 60, .types = { TYPE_GROUND, TYPE_GROUND }, .catchRate = 60, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 189, .evYield_Attack = 1, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), @@ -5030,7 +5132,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 65, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, - .expYield = 163, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 163 : 165, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5130,7 +5232,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 45, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, - .expYield = 88, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 88 : 106, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5179,7 +5281,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 70, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, - .expYield = 172, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 200, .evYield_Defense = 2, .itemCommon = ITEM_MOOMOO_MILK, .itemRare = ITEM_MOOMOO_MILK, @@ -5230,7 +5332,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 100, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 216, + #endif .evYield_Speed = 2, .evYield_SpAttack = 1, .genderRatio = MON_GENDERLESS, @@ -5285,7 +5393,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 75, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 217, + #endif .evYield_HP = 1, .evYield_Attack = 2, .genderRatio = MON_GENDERLESS, @@ -5340,7 +5454,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 115, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 215, + #endif .evYield_Defense = 1, .evYield_SpDefense = 2, .genderRatio = MON_GENDERLESS, @@ -5395,7 +5515,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 50, .types = { TYPE_ROCK, TYPE_GROUND }, .catchRate = 45, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 67, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, @@ -5508,7 +5628,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpeed = 61, .baseSpAttack = 95, .baseSpDefense = 100, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 218, + #endif .abilities = { ABILITY_SAND_STREAM, ABILITY_NONE, ABILITY_UNNERVE }, .cryId = CRY_TYRANITAR, .height = 20, @@ -5544,7 +5670,7 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpeed = 71, .baseSpAttack = 95, .baseSpDefense = 120, - .expYield = 315, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 350 : 315, .abilities = { ABILITY_SAND_STREAM, ABILITY_SAND_STREAM, ABILITY_SAND_STREAM }, .cryId = CRY_TYRANITAR_MEGA, .height = 25, @@ -5583,7 +5709,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 154, .types = { TYPE_PSYCHIC, TYPE_FLYING }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 340, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 306, + #else + .expYield = 220, + #endif .evYield_SpDefense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -5635,7 +5767,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 154, .types = { TYPE_FIRE, TYPE_FLYING }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 340, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 306, + #else + .expYield = 220, + #endif .evYield_SpDefense = 3, .itemCommon = ITEM_SACRED_ASH, .itemRare = ITEM_SACRED_ASH, @@ -5688,7 +5826,13 @@ const struct SpeciesInfo gSpeciesInfoGen2[] = .baseSpDefense = 100, .types = { TYPE_PSYCHIC, TYPE_GRASS }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 64, + #endif .evYield_HP = 3, .itemCommon = ITEM_LUM_BERRY, .itemRare = ITEM_LUM_BERRY, diff --git a/src/data/pokemon/species_info/gen_3.h b/src/data/pokemon/species_info/gen_3.h index 781c2beb49..410f73b371 100644 --- a/src/data/pokemon/species_info/gen_3.h +++ b/src/data/pokemon/species_info/gen_3.h @@ -14,7 +14,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 65, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -62,7 +62,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 65, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 141, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -127,7 +127,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 105, .baseSpDefense = 85, .types = { TYPE_GRASS, TYPE_GRASS }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 208, + #endif .abilities = { ABILITY_OVERGROW, ABILITY_NONE, ABILITY_UNBURDEN }, .cryId = CRY_SCEPTILE, .height = 17, @@ -163,7 +169,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 145, .baseSpDefense = 85, .types = { TYPE_GRASS, TYPE_DRAGON }, - .expYield = 284, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 315 : 284, .abilities = { ABILITY_LIGHTNING_ROD, ABILITY_LIGHTNING_ROD, ABILITY_LIGHTNING_ROD }, .cryId = CRY_SCEPTILE_MEGA, .height = 19, @@ -202,7 +208,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 45, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 65, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -325,7 +331,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 80, .baseSpAttack = 110, .baseSpDefense = 70, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 209, + #endif .abilities = { ABILITY_BLAZE, ABILITY_NONE, ABILITY_SPEED_BOOST }, .cryId = CRY_BLAZIKEN, .description = COMPOUND_STRING( @@ -356,7 +368,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 100, .baseSpAttack = 130, .baseSpDefense = 80, - .expYield = 284, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 315 : 284, .abilities = { ABILITY_SPEED_BOOST, ABILITY_SPEED_BOOST, ABILITY_SPEED_BOOST }, .cryId = CRY_BLAZIKEN_MEGA, .description = COMPOUND_STRING( @@ -389,7 +401,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 65, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -437,7 +449,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_WATER, TYPE_GROUND }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 143, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -502,7 +514,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 60, .baseSpAttack = 85, .baseSpDefense = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 268, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 241, + #else + .expYield = 210, + #endif .abilities = { ABILITY_TORRENT, ABILITY_NONE, ABILITY_DAMP }, .cryId = CRY_SWAMPERT, .height = 15, @@ -537,7 +555,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 70, .baseSpAttack = 95, .baseSpDefense = 110, - .expYield = 286, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 318 : 286, .abilities = { ABILITY_SWIFT_SWIM, ABILITY_SWIFT_SWIM, ABILITY_SWIFT_SWIM }, .cryId = CRY_SWAMPERT_MEGA, .height = 19, @@ -576,7 +594,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_DARK, TYPE_DARK }, .catchRate = 255, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 56, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 44, + #else + .expYield = 55, + #endif .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -624,7 +648,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_DARK, TYPE_DARK }, .catchRate = 127, - .expYield = 147, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 147 : 128, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -663,6 +687,14 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif //P_FAMILY_POOCHYENA #if P_FAMILY_ZIGZAGOON +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define ZIGZAGOON_EXP_YIELD 56 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define ZIGZAGOON_EXP_YIELD 48 +#else + #define ZIGZAGOON_EXP_YIELD 60 +#endif + #define ZIGZAGOON_MISC_INFO \ .baseHP = 38, \ .baseAttack = 30, \ @@ -671,7 +703,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 30, \ .baseSpDefense = 41, \ .catchRate = 255, \ - .expYield = 56, \ + .expYield = ZIGZAGOON_EXP_YIELD, \ .evYield_Speed = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 15, \ @@ -700,7 +732,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 50, \ .baseSpDefense = 61, \ .catchRate = 90, \ - .expYield = 147, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 147 : 128, \ .evYield_Speed = 2, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 15, \ @@ -878,7 +910,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 255, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 56, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 39, + #else + .expYield = 54, + #endif .evYield_HP = 1, .itemCommon = ITEM_PECHA_BERRY, .itemRare = ITEM_BRIGHT_POWDER, @@ -929,7 +967,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 25, .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 120, - .expYield = 72, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_4) ? 72 : 71, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -977,7 +1015,15 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 198, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 178, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 173, + #else + .expYield = 161, + #endif .evYield_SpAttack = 3, .itemRare = ITEM_SHED_SHELL, .genderRatio = PERCENT_FEMALE(50), @@ -1028,7 +1074,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 25, .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 120, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 72, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 41, + #else + .expYield = 72, + #endif .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1076,7 +1128,17 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 90, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 193, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 173, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 135, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 161, + #else + .expYield = 160, + #endif .evYield_SpDefense = 3, .itemRare = ITEM_SHED_SHELL, .genderRatio = PERCENT_FEMALE(50), @@ -1129,7 +1191,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_WATER, TYPE_GRASS }, .catchRate = 255, - .expYield = 44, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 44 : 74, .evYield_SpDefense = 1, .itemRare = ITEM_MENTAL_HERB, .genderRatio = PERCENT_FEMALE(50), @@ -1178,7 +1240,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_WATER, TYPE_GRASS }, .catchRate = 120, - .expYield = 119, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 119 : 141, .evYield_SpDefense = 2, .itemRare = ITEM_MENTAL_HERB, .genderRatio = PERCENT_FEMALE(50), @@ -1227,7 +1289,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 100, .types = { TYPE_WATER, TYPE_GRASS }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 240, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 216, + #else + .expYield = 181, + #endif .evYield_SpDefense = 3, .itemRare = ITEM_MENTAL_HERB, .genderRatio = PERCENT_FEMALE(50), @@ -1279,7 +1347,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 255, - .expYield = 44, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 44 : 74, .evYield_Defense = 1, .itemRare = ITEM_POWER_HERB, .genderRatio = PERCENT_FEMALE(50), @@ -1328,7 +1396,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 40, .types = { TYPE_GRASS, TYPE_DARK }, .catchRate = 120, - .expYield = 119, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 119 : 141, .evYield_Attack = 2, .itemRare = ITEM_POWER_HERB, .genderRatio = PERCENT_FEMALE(50), @@ -1379,7 +1447,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_GRASS, TYPE_DARK }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 240, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 216, + #else + .expYield = 181, + #endif .evYield_Attack = 3, .itemRare = ITEM_POWER_HERB, .genderRatio = PERCENT_FEMALE(50), @@ -1435,7 +1509,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 200, - .expYield = 54, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 54 : 59, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1483,7 +1557,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 159, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 151, + #else + .expYield = 162, + #endif .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1532,7 +1612,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_WATER, TYPE_FLYING }, .catchRate = 190, - .expYield = 54, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 54 : 64, .evYield_Speed = 1, .itemCommon = ITEM_PRETTY_FEATHER, .genderRatio = PERCENT_FEMALE(50), @@ -1582,7 +1662,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_WATER, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 154, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 151, + #else + .expYield = 164, + #endif .evYield_Defense = 2, .itemCommon = ITEM_PRETTY_FEATHER, .genderRatio = PERCENT_FEMALE(50), @@ -1641,7 +1727,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 35, .types = { TYPE_PSYCHIC, RALTS_FAMILY_TYPE2 }, .catchRate = 235, - .expYield = 40, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 40 : 70, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1689,7 +1775,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_PSYCHIC, RALTS_FAMILY_TYPE2 }, .catchRate = 120, - .expYield = 97, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 97 : 140, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1761,7 +1847,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 80, .baseSpAttack = 125, .baseSpDefense = 115, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 259, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 233, + #else + .expYield = 208, + #endif .abilities = { ABILITY_SYNCHRONIZE, ABILITY_TRACE, ABILITY_TELEPATHY }, .cryId = CRY_GARDEVOIR, .description = COMPOUND_STRING( @@ -1790,7 +1882,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 100, .baseSpAttack = 165, .baseSpDefense = 135, - .expYield = 278, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 309 : 278, .abilities = { ABILITY_PIXILATE, ABILITY_PIXILATE, ABILITY_PIXILATE }, .cryId = CRY_GARDEVOIR_MEGA, .description = COMPOUND_STRING( @@ -1844,7 +1936,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 80, .baseSpAttack = 65, .baseSpDefense = 115, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 259, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 233, + #else + .expYield = 208, + #endif #if P_UPDATED_ABILITIES >= GEN_9 .abilities = { ABILITY_STEADFAST, ABILITY_SHARPNESS, ABILITY_JUSTIFIED }, #else @@ -1878,7 +1976,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 110, .baseSpAttack = 65, .baseSpDefense = 115, - .expYield = 278, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 309 : 278, .abilities = { ABILITY_INNER_FOCUS, ABILITY_INNER_FOCUS, ABILITY_INNER_FOCUS }, .cryId = CRY_GALLADE_MEGA, .weight = 564, @@ -1913,7 +2011,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 52, .types = { TYPE_BUG, TYPE_WATER }, .catchRate = 200, - .expYield = 54, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 54 : 63, .evYield_Speed = 1, .itemCommon = ITEM_HONEY, .genderRatio = PERCENT_FEMALE(50), @@ -1967,7 +2065,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 75, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 159, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 145, + #else + .expYield = 128, + #endif .evYield_SpAttack = 1, .evYield_SpDefense = 1, .itemRare = ITEM_SILVER_POWDER, @@ -2019,7 +2123,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 255, - .expYield = 59, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 59 : 65, .evYield_HP = 1, .itemCommon = ITEM_TINY_MUSHROOM, .itemRare = ITEM_BIG_MUSHROOM, @@ -2069,7 +2173,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_GRASS, TYPE_FIGHTING }, .catchRate = 90, - .expYield = 161, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 161 : 165, .evYield_Attack = 2, .itemCommon = ITEM_TINY_MUSHROOM, .itemRare = ITEM_BIG_MUSHROOM, @@ -2120,7 +2224,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 35, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 255, - .expYield = 56, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 56 : 83, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -2168,7 +2272,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 120, - .expYield = 154, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 154 : 126, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -2216,7 +2320,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 65, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 285, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 252, + #else + .expYield = 210, + #endif .evYield_HP = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -2265,7 +2375,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_BUG, TYPE_GROUND }, .catchRate = 255, - .expYield = 53, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 53 : 65, .evYield_Defense = 1, .itemRare = ITEM_SOFT_SAND, .genderRatio = PERCENT_FEMALE(50), @@ -2315,7 +2425,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 120, - .expYield = 160, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 160 : 155, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -2363,7 +2473,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_BUG, TYPE_GHOST }, .catchRate = 45, - .expYield = 83, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 83 : 95, .evYield_HP = 2, .genderRatio = MON_GENDERLESS, .eggCycles = 15, @@ -2413,7 +2523,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 23, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 190, - .expYield = 48, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 48 : 68, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2509,7 +2619,15 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 73 : 63, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 245, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 221, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 216, + #else + .expYield = 184, + #endif .evYield_HP = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2558,7 +2676,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 180, - .expYield = 47, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 47 : 87, .evYield_HP = 1, .itemRare = ITEM_BLACK_BELT, .genderRatio = PERCENT_FEMALE(25), @@ -2607,7 +2725,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 200, - .expYield = 166, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 166 : 184, .evYield_HP = 2, .itemRare = ITEM_KINGS_ROCK, .genderRatio = PERCENT_FEMALE(25), @@ -2657,7 +2775,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 90, .types = { TYPE_ROCK, TYPE_ROCK }, .catchRate = 255, - .expYield = 75, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 75 : 108, .evYield_Defense = 1, .itemRare = ITEM_MAGNET, .genderRatio = PERCENT_FEMALE(50), @@ -2708,7 +2826,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 150, .types = { TYPE_ROCK, TYPE_STEEL }, .catchRate = 60, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 198, .evYield_Defense = 1, .evYield_SpDefense = 2, .itemRare = ITEM_MAGNET, @@ -2761,7 +2879,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 35, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 255, - .expYield = 52, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 52 : 65, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 15, @@ -2809,7 +2927,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 60, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 140, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 133, + #else + .expYield = 138, + #endif .evYield_HP = 1, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(75), @@ -2878,7 +3002,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 50, .baseSpAttack = 65, .baseSpDefense = 65, - .expYield = 133, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 133 : 98, .itemRare = ITEM_WIDE_LENS, .abilities = { ABILITY_KEEN_EYE, ABILITY_STALL, ABILITY_PRANKSTER }, .cryId = CRY_SABLEYE, @@ -2974,7 +3098,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 50, .baseSpAttack = 55, .baseSpDefense = 55, - .expYield = 133, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 133 : 98, .itemRare = ITEM_IRON_BALL, .abilities = { ABILITY_HYPER_CUTTER, ABILITY_INTIMIDATE, ABILITY_SHEER_FORCE }, .cryId = CRY_MAWILE, @@ -3049,7 +3173,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 40, .types = { TYPE_STEEL, TYPE_ROCK }, .catchRate = 180, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 96, .evYield_Defense = 1, .itemRare = ITEM_HARD_STONE, .genderRatio = PERCENT_FEMALE(50), @@ -3098,7 +3222,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_STEEL, TYPE_ROCK }, .catchRate = 90, - .expYield = 151, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 151 : 152, .evYield_Defense = 2, .itemRare = ITEM_HARD_STONE, .genderRatio = PERCENT_FEMALE(50), @@ -3165,7 +3289,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 60, .baseSpDefense = 60, .types = { TYPE_STEEL, TYPE_ROCK }, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 205, + #endif .abilities = { ABILITY_STURDY, ABILITY_ROCK_HEAD, ABILITY_HEAVY_METAL }, .cryId = CRY_AGGRON, .height = 21, @@ -3201,7 +3331,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 60, .baseSpDefense = 80, .types = { TYPE_STEEL, TYPE_STEEL }, - .expYield = 284, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 315 : 284, .abilities = { ABILITY_FILTER, ABILITY_FILTER, ABILITY_FILTER }, .cryId = CRY_AGGRON_MEGA, .height = 22, @@ -3240,7 +3370,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_FIGHTING, TYPE_PSYCHIC }, .catchRate = 180, - .expYield = 56, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 56 : 91, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3313,7 +3443,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 80, .baseSpAttack = 60, .baseSpDefense = 75, - .expYield = 144, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 144 : 153, .abilities = { ABILITY_PURE_POWER, ABILITY_NONE, ABILITY_TELEPATHY }, .cryId = CRY_MEDICHAM, .description = COMPOUND_STRING( @@ -3377,7 +3507,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 40, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 120, - .expYield = 59, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 59 : 104, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3442,7 +3572,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 105, .baseSpAttack = 105, .baseSpDefense = 60, - .expYield = 166, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 166 : 168, .abilities = { ABILITY_STATIC, ABILITY_LIGHTNING_ROD, ABILITY_MINUS }, .cryId = CRY_MANECTRIC, .height = 15, @@ -3515,7 +3645,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 75, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 200, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 120, .evYield_Speed = 1, .itemRare = ITEM_CELL_BATTERY, .genderRatio = PERCENT_FEMALE(50), @@ -3565,7 +3695,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 85, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 200, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 120, .evYield_Speed = 1, .itemRare = ITEM_CELL_BATTERY, .genderRatio = PERCENT_FEMALE(50), @@ -3620,7 +3750,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 150, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 151, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 140, + #else + .expYield = 146, + #endif .evYield_Speed = 1, .itemRare = ITEM_BRIGHT_POWDER, .genderRatio = MON_MALE, @@ -3673,7 +3809,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 150, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 151, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 140, + #else + .expYield = 146, + #endif .evYield_Speed = 1, .itemRare = ITEM_BRIGHT_POWDER, .genderRatio = MON_FEMALE, @@ -3724,7 +3866,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 255, - .expYield = 56, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 56 : 68, .evYield_SpAttack = 1, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -3775,7 +3917,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 80, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 150, - .expYield = 140, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 140 : 152, .evYield_SpAttack = (P_UPDATED_EVS >= GEN_4) ? 2 : 1, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -3828,7 +3970,15 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 105, .types = { TYPE_GRASS, TYPE_POISON }, .catchRate = 75, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 258, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 232, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 227, + #else + .expYield = 204, + #endif .evYield_SpAttack = 3, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -3882,7 +4032,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 53, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 225, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 75, .evYield_HP = 1, .itemCommon = ITEM_ORAN_BERRY, .itemRare = ITEM_SITRUS_BERRY, @@ -3934,7 +4084,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 83, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 75, - .expYield = 163, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 163 : 168, .evYield_HP = 2, .itemCommon = ITEM_ORAN_BERRY, .itemRare = ITEM_SITRUS_BERRY, @@ -3987,7 +4137,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 20, .types = { TYPE_WATER, TYPE_DARK }, .catchRate = 225, - .expYield = 61, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 88, .evYield_Attack = 1, .itemRare = ITEM_DEEP_SEA_TOOTH, .genderRatio = PERCENT_FEMALE(50), @@ -4054,7 +4204,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 95, .baseSpAttack = 95, .baseSpDefense = 40, - .expYield = 161, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 161 : 175, .abilities = { ABILITY_ROUGH_SKIN, ABILITY_NONE, ABILITY_SPEED_BOOST }, .cryId = CRY_SHARPEDO, .height = 18, @@ -4129,7 +4279,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 35, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 125, - .expYield = 80, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 80 : 137, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, @@ -4177,7 +4327,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 45, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 60, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 206, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, @@ -4227,7 +4377,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 45, .types = { TYPE_FIRE, TYPE_GROUND }, .catchRate = 255, - .expYield = 61, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 88, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4295,7 +4445,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 40, .baseSpAttack = 105, .baseSpDefense = 75, - .expYield = 161, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 161 : 175, .abilities = { ABILITY_MAGMA_ARMOR, ABILITY_SOLID_ROCK, ABILITY_ANGER_POINT }, .cryId = CRY_CAMERUPT, .height = 19, @@ -4371,7 +4521,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 90, - .expYield = 165, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 165 : 161, .evYield_Defense = 2, .itemRare = ITEM_CHARCOAL, .genderRatio = PERCENT_FEMALE(50), @@ -4421,7 +4571,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 80, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 255, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 89, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4469,7 +4619,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 110, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 60, - .expYield = 165, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 165 : 164, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4519,7 +4669,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 255, - .expYield = 126, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 126 : 85, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -4569,7 +4719,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 45, .types = { TYPE_GROUND, TYPE_GROUND }, .catchRate = 255, - .expYield = 58, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 73, .evYield_Attack = 1, .itemRare = ITEM_SOFT_SAND, .genderRatio = PERCENT_FEMALE(50), @@ -4622,7 +4772,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_GROUND, TYPE_DRAGON }, .catchRate = 120, - .expYield = 119, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 119 : 126, .evYield_Attack = 1, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), @@ -4675,7 +4825,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 80, .types = { TYPE_GROUND, TYPE_DRAGON }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 260, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 234, + #else + .expYield = 197, + #endif .evYield_Attack = 1, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), @@ -4730,7 +4886,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 40, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 190, - .expYield = 67, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 67 : 97, .evYield_SpAttack = 1, .itemRare = ITEM_STICKY_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -4779,7 +4935,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_GRASS, TYPE_DARK }, .catchRate = 60, - .expYield = 166, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 166 : 177, .evYield_Attack = 1, .evYield_SpAttack = 1, .itemRare = ITEM_STICKY_BARB, @@ -4831,7 +4987,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 75, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 255, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 74, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -4896,7 +5052,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 70, .baseSpDefense = 105, .types = { TYPE_DRAGON, TYPE_FLYING }, - .expYield = 172, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 188, .abilities = { ABILITY_NATURAL_CURE, ABILITY_NONE, ABILITY_CLOUD_NINE }, .cryId = CRY_ALTARIA, .height = 11, @@ -4972,7 +5128,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 90, - .expYield = 160, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 160 : 165, .evYield_Attack = 2, .itemRare = ITEM_QUICK_CLAW, .genderRatio = PERCENT_FEMALE(50), @@ -5023,7 +5179,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 90, - .expYield = 160, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 160 : 165, .evYield_Attack = 1, .evYield_SpAttack = 1, .itemRare = ITEM_SHED_SHELL, @@ -5075,7 +5231,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 85, .types = { TYPE_ROCK, TYPE_PSYCHIC }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 161, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 154, + #else + .expYield = 150, + #endif .evYield_SpAttack = 2, .itemCommon = ITEM_STARDUST, .itemRare = ITEM_MOON_STONE, @@ -5127,7 +5289,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 65, .types = { TYPE_ROCK, TYPE_PSYCHIC }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 161, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 154, + #else + .expYield = 150, + #endif .evYield_Attack = 2, .itemCommon = ITEM_STARDUST, .itemRare = ITEM_SUN_STONE, @@ -5179,7 +5347,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 41, .types = { TYPE_WATER, TYPE_GROUND }, .catchRate = 190, - .expYield = 58, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 92, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5228,7 +5396,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 71, .types = { TYPE_WATER, TYPE_GROUND }, .catchRate = 75, - .expYield = 164, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 164 : 158, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5277,7 +5445,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 35, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 205, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 111, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -5325,7 +5493,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_WATER, TYPE_DARK }, .catchRate = 155, - .expYield = 164, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 164 : 161, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -5374,7 +5542,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_GROUND, TYPE_PSYCHIC }, .catchRate = 255, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 58, .evYield_SpDefense = 1, .itemRare = ITEM_LIGHT_CLAY, .genderRatio = MON_GENDERLESS, @@ -5424,7 +5592,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 120, .types = { TYPE_GROUND, TYPE_PSYCHIC }, .catchRate = 90, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 189, .evYield_SpDefense = 2, .itemRare = ITEM_LIGHT_CLAY, .genderRatio = MON_GENDERLESS, @@ -5475,7 +5643,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 87, .types = { TYPE_ROCK, TYPE_GRASS }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 71, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 99, + #else + .expYield = 121, + #endif .evYield_SpDefense = 1, .itemRare = ITEM_BIG_ROOT, .genderRatio = PERCENT_FEMALE(12.5), @@ -5524,7 +5698,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 107, .types = { TYPE_ROCK, TYPE_GRASS }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 173, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 199, + #else + .expYield = 201, + #endif .evYield_SpDefense = 2, .itemRare = ITEM_BIG_ROOT, .genderRatio = PERCENT_FEMALE(12.5), @@ -5574,7 +5754,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_ROCK, TYPE_BUG }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 71, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 99, + #else + .expYield = 119, + #endif .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -5622,7 +5808,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 80, .types = { TYPE_ROCK, TYPE_BUG }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 173, + #elif P_UPDATED_EXP_YIELDS >= GEN_4 + .expYield = 199, + #else + .expYield = 200, + #endif .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -5671,7 +5863,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 255, - .expYield = 40, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 40 : 61, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5721,7 +5913,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 125, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 60, - .expYield = 189, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 189 : 213, .evYield_SpDefense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5771,7 +5963,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpAttack = 70, \ .baseSpDefense = 70, \ .catchRate = 45, \ - .expYield = 147, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 147 : 145,\ .evYield_HP = 1, \ .itemCommon = ITEM_MYSTIC_WATER, \ .itemRare = ITEM_MYSTIC_WATER, \ @@ -5896,7 +6088,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 120, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 200, - .expYield = 154, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 154 : 132, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5946,7 +6138,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 33, .types = { TYPE_GHOST, TYPE_GHOST }, .catchRate = 225, - .expYield = 59, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 59 : 97, .evYield_Attack = 1, .itemRare = ITEM_SPELL_TAG, .genderRatio = PERCENT_FEMALE(50), @@ -6014,7 +6206,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 65, .baseSpAttack = 83, .baseSpDefense = 63, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 179, .abilities = { ABILITY_INSOMNIA, ABILITY_FRISK, ABILITY_CURSED_BODY }, .cryId = CRY_BANETTE, .height = 11, @@ -6088,7 +6280,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 90, .types = { TYPE_GHOST, TYPE_GHOST }, .catchRate = 190, - .expYield = 59, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 59 : 97, .evYield_Defense = (P_UPDATED_EVS >= GEN_4) ? 0 : 1, .evYield_SpDefense = 1, .itemRare = ITEM_SPELL_TAG, @@ -6139,7 +6331,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 130, .types = { TYPE_GHOST, TYPE_GHOST }, .catchRate = 90, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 179, .evYield_Defense = 1, .evYield_SpDefense = (P_UPDATED_EVS >= GEN_4) ? 1 : 2, .itemRare = ITEM_SPELL_TAG, @@ -6192,7 +6384,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 135, .types = { TYPE_GHOST, TYPE_GHOST }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 263, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 236, + #else + .expYield = 210, + #endif .evYield_Defense = 1, .evYield_SpDefense = 2, .itemRare = ITEM_SPELL_TAG, @@ -6245,7 +6443,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 87, .types = { TYPE_GRASS, TYPE_FLYING }, .catchRate = 200, - .expYield = 161, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 161 : 169, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, @@ -6295,7 +6493,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 120, - .expYield = 57, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 57 : 74, .evYield_SpAttack = 1, .itemRare = ITEM_CLEANSE_TAG, .genderRatio = PERCENT_FEMALE(50), @@ -6351,7 +6549,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 159, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 149, + #else + .expYield = 147, + #endif .evYield_SpAttack = 1, .evYield_SpDefense = 1, .itemRare = ITEM_CLEANSE_TAG, @@ -6426,7 +6630,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 75, .baseSpAttack = 75, .baseSpDefense = 60, - .expYield = 163, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 163 : 174, .abilities = { ABILITY_PRESSURE, ABILITY_SUPER_LUCK, ABILITY_JUSTIFIED }, .cryId = CRY_ABSOL, .weight = 470, @@ -6491,7 +6695,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_ICE, TYPE_ICE }, .catchRate = 190, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 74, .evYield_HP = 1, .itemRare = ITEM_SNOWBALL, .genderRatio = PERCENT_FEMALE(50), @@ -6559,7 +6763,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 80, .baseSpAttack = 80, .baseSpDefense = 80, - .expYield = 168, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 168 : 187, .abilities = { ABILITY_INNER_FOCUS, ABILITY_ICE_BODY, ABILITY_MOODY }, .cryId = CRY_GLALIE, .height = 15, @@ -6633,7 +6837,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_ICE, TYPE_GHOST }, .catchRate = 75, - .expYield = 168, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 168 : 187, .evYield_Speed = 2, .genderRatio = MON_FEMALE, .eggCycles = 20, @@ -6684,7 +6888,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_ICE, TYPE_WATER }, .catchRate = 255, - .expYield = 58, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 75, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6733,7 +6937,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 70, .types = { TYPE_ICE, TYPE_WATER }, .catchRate = 120, - .expYield = 144, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 144 : 128, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6781,7 +6985,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 90, .types = { TYPE_ICE, TYPE_WATER }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 192, + #endif .evYield_HP = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6830,7 +7040,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 55, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 255, - .expYield = 69, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 69 : 142, .evYield_Defense = 1, .itemCommon = ITEM_PEARL, .itemRare = ITEM_BIG_PEARL, @@ -6883,7 +7093,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 75, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 60, - .expYield = 170, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 170 : 178, .evYield_Attack = 1, .evYield_Defense = 1, .itemRare = ITEM_DEEP_SEA_TOOTH, @@ -6932,7 +7142,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 75, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 60, - .expYield = 170, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 170 : 178, .evYield_SpAttack = 2, .itemRare = ITEM_DEEP_SEA_SCALE, .genderRatio = PERCENT_FEMALE(50), @@ -6982,7 +7192,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 65, .types = { TYPE_WATER, TYPE_ROCK }, .catchRate = 25, - .expYield = 170, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 170 : 198, .evYield_HP = 1, .evYield_Defense = 1, .itemRare = ITEM_DEEP_SEA_SCALE, @@ -7035,7 +7245,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 65, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 225, - .expYield = 116, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 116 : 110, .evYield_Speed = 1, .itemCommon = ITEM_HEART_SCALE, .genderRatio = PERCENT_FEMALE(75), @@ -7085,7 +7295,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 30, .types = { TYPE_DRAGON, TYPE_DRAGON }, .catchRate = 45, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 89, .evYield_Attack = 1, .itemRare = ITEM_DRAGON_FANG, .genderRatio = PERCENT_FEMALE(50), @@ -7134,7 +7344,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 50, .types = { TYPE_DRAGON, TYPE_DRAGON }, .catchRate = 45, - .expYield = 147, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 147 : 144, .evYield_Defense = 2, .itemRare = ITEM_DRAGON_FANG, .genderRatio = PERCENT_FEMALE(50), @@ -7201,7 +7411,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 100, .baseSpAttack = 110, .baseSpDefense = 80, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 218, + #endif .abilities = { ABILITY_INTIMIDATE, ABILITY_NONE, ABILITY_MOXIE }, .cryId = CRY_SALAMENCE, .height = 15, @@ -7237,7 +7453,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 120, .baseSpAttack = 120, .baseSpDefense = 90, - .expYield = 315, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 350 : 315, .abilities = { ABILITY_AERILATE, ABILITY_AERILATE, ABILITY_AERILATE }, .cryId = CRY_SALAMENCE_MEGA, .height = 18, @@ -7276,7 +7492,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 60, .types = { TYPE_STEEL, TYPE_PSYCHIC }, .catchRate = 3, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 103, .evYield_Defense = 1, .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, @@ -7326,7 +7542,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 80, .types = { TYPE_STEEL, TYPE_PSYCHIC }, .catchRate = 3, - .expYield = 147, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 147 : 153, .evYield_Defense = 2, .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, @@ -7393,7 +7609,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 70, .baseSpAttack = 95, .baseSpDefense = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 210, + #endif .abilities = { ABILITY_CLEAR_BODY, ABILITY_NONE, ABILITY_LIGHT_METAL }, .cryId = CRY_METAGROSS, .height = 16, @@ -7428,7 +7650,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 110, .baseSpAttack = 105, .baseSpDefense = 110, - .expYield = 315, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 350 : 315, .abilities = { ABILITY_TOUGH_CLAWS, ABILITY_TOUGH_CLAWS, ABILITY_TOUGH_CLAWS }, .cryId = CRY_METAGROSS_MEGA, .height = 25, @@ -7467,7 +7689,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 100, .types = { TYPE_ROCK, TYPE_ROCK }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 217, + #endif .evYield_Defense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 80, @@ -7518,7 +7746,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 200, .types = { TYPE_ICE, TYPE_ICE }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 216, + #endif .evYield_SpDefense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 80, @@ -7568,7 +7802,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 150, .types = { TYPE_STEEL, TYPE_STEEL }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 215, + #endif .evYield_Defense = 2, .evYield_SpDefense = 1, .genderRatio = MON_GENDERLESS, @@ -7636,7 +7876,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 110, .baseSpAttack = 110, .baseSpDefense = 130, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 211, + #endif .abilities = { ABILITY_LEVITATE, ABILITY_NONE }, .bodyColor = BODY_COLOR_RED, .cryId = CRY_LATIAS, @@ -7673,7 +7919,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 110, .baseSpAttack = 140, .baseSpDefense = 150, - .expYield = 315, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 350 : 315, .abilities = { ABILITY_LEVITATE, ABILITY_LEVITATE, ABILITY_LEVITATE }, .bodyColor = BODY_COLOR_PURPLE, .cryId = CRY_LATIAS_MEGA, @@ -7731,7 +7977,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 110, .baseSpAttack = 130, .baseSpDefense = 110, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 211, + #endif .abilities = { ABILITY_LEVITATE, ABILITY_NONE }, .bodyColor = BODY_COLOR_BLUE, .cryId = CRY_LATIOS, @@ -7768,7 +8020,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 110, .baseSpAttack = 160, .baseSpDefense = 120, - .expYield = 315, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 350 : 315, .abilities = { ABILITY_LEVITATE, ABILITY_LEVITATE, ABILITY_LEVITATE }, .bodyColor = BODY_COLOR_PURPLE, .cryId = CRY_LATIOS_MEGA, @@ -7799,24 +8051,23 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif //P_FAMILY_LATIOS #if P_FAMILY_KYOGRE -#define KYOGRE_MISC_INFO \ - .types = { TYPE_WATER, TYPE_WATER }, \ - .catchRate = 3, \ - .expYield = 302, \ - .evYield_SpAttack = 3, \ - .genderRatio = MON_GENDERLESS, \ - .eggCycles = 120, \ - .friendship = 0, \ - .growthRate = GROWTH_SLOW, \ +#define KYOGRE_MISC_INFO \ + .types = { TYPE_WATER, TYPE_WATER }, \ + .catchRate = 3, \ + .evYield_SpAttack = 3, \ + .genderRatio = MON_GENDERLESS, \ + .eggCycles = 120, \ + .friendship = 0, \ + .growthRate = GROWTH_SLOW, \ .eggGroups = { EGG_GROUP_NO_EGGS_DISCOVERED, EGG_GROUP_NO_EGGS_DISCOVERED },\ - .bodyColor = BODY_COLOR_BLUE, \ - .isLegendary = TRUE, \ - .speciesName = _("Kyogre"), \ - .natDexNum = NATIONAL_DEX_KYOGRE, \ - .categoryName = _("Sea Basin"), \ - FOOTPRINT(Kyogre) \ - LEARNSETS(Kyogre), \ - .formSpeciesIdTable = sKyogreFormSpeciesIdTable, \ + .bodyColor = BODY_COLOR_BLUE, \ + .isLegendary = TRUE, \ + .speciesName = _("Kyogre"), \ + .natDexNum = NATIONAL_DEX_KYOGRE, \ + .categoryName = _("Sea Basin"), \ + FOOTPRINT(Kyogre) \ + LEARNSETS(Kyogre), \ + .formSpeciesIdTable = sKyogreFormSpeciesIdTable, \ .formChangeTable = sKyogreFormChangeTable [SPECIES_KYOGRE] = @@ -7828,6 +8079,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 90, .baseSpAttack = 150, .baseSpDefense = 140, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 335, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 302, + #else + .expYield = 218, + #endif .abilities = { ABILITY_DRIZZLE, ABILITY_NONE }, .cryId = CRY_KYOGRE, .height = 45, @@ -7862,6 +8120,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 90, .baseSpAttack = 180, .baseSpDefense = 160, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 385 : 347, .abilities = { ABILITY_PRIMORDIAL_SEA, ABILITY_PRIMORDIAL_SEA }, .cryId = CRY_KYOGRE_PRIMAL, .height = 98, @@ -7890,24 +8149,23 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif //P_FAMILY_KYOGRE #if P_FAMILY_GROUDON -#define GROUDON_MISC_INFO \ - .catchRate = 3, \ - .expYield = 302, \ - .evYield_Attack = 3, \ - .genderRatio = MON_GENDERLESS, \ - .eggCycles = 120, \ - .friendship = 0, \ - .growthRate = GROWTH_SLOW, \ +#define GROUDON_MISC_INFO \ + .catchRate = 3, \ + .evYield_Attack = 3, \ + .genderRatio = MON_GENDERLESS, \ + .eggCycles = 120, \ + .friendship = 0, \ + .growthRate = GROWTH_SLOW, \ .eggGroups = { EGG_GROUP_NO_EGGS_DISCOVERED, EGG_GROUP_NO_EGGS_DISCOVERED },\ - .bodyColor = BODY_COLOR_RED, \ - .isLegendary = TRUE, \ - .speciesName = _("Groudon"), \ - .cryId = CRY_GROUDON, \ - .natDexNum = NATIONAL_DEX_GROUDON, \ - .categoryName = _("Continent"), \ - FOOTPRINT(Groudon) \ - LEARNSETS(Groudon), \ - .formSpeciesIdTable = sGroudonFormSpeciesIdTable, \ + .bodyColor = BODY_COLOR_RED, \ + .isLegendary = TRUE, \ + .speciesName = _("Groudon"), \ + .cryId = CRY_GROUDON, \ + .natDexNum = NATIONAL_DEX_GROUDON, \ + .categoryName = _("Continent"), \ + FOOTPRINT(Groudon) \ + LEARNSETS(Groudon), \ + .formSpeciesIdTable = sGroudonFormSpeciesIdTable, \ .formChangeTable = sGroudonFormChangeTable [SPECIES_GROUDON] = @@ -7919,6 +8177,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 90, .baseSpAttack = 100, .baseSpDefense = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 335, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 302, + #else + .expYield = 218, + #endif .types = { TYPE_GROUND, TYPE_GROUND }, .abilities = { ABILITY_DROUGHT, ABILITY_NONE }, .height = 35, @@ -7953,6 +8218,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 90, .baseSpAttack = 150, .baseSpDefense = 90, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 385 : 347, .types = { TYPE_GROUND, TYPE_FIRE }, .abilities = { ABILITY_DESOLATE_LAND, ABILITY_DESOLATE_LAND }, .height = 50, @@ -7982,26 +8248,25 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif //P_FAMILY_GROUDON #if P_FAMILY_RAYQUAZA -#define RAYQUAZA_MISC_INFO \ - .types = { TYPE_DRAGON, TYPE_FLYING }, \ - .catchRate = 45, \ - .expYield = 306, \ - .evYield_Attack = 2, \ - .evYield_SpAttack = 1, \ - .genderRatio = MON_GENDERLESS, \ - .eggCycles = 120, \ - .friendship = 0, \ - .growthRate = GROWTH_SLOW, \ +#define RAYQUAZA_MISC_INFO \ + .types = { TYPE_DRAGON, TYPE_FLYING }, \ + .catchRate = 45, \ + .evYield_Attack = 2, \ + .evYield_SpAttack = 1, \ + .genderRatio = MON_GENDERLESS, \ + .eggCycles = 120, \ + .friendship = 0, \ + .growthRate = GROWTH_SLOW, \ .eggGroups = { EGG_GROUP_NO_EGGS_DISCOVERED, EGG_GROUP_NO_EGGS_DISCOVERED },\ - .bodyColor = BODY_COLOR_GREEN, \ - .speciesName = _("Rayquaza"), \ - .cryId = CRY_RAYQUAZA, \ - .natDexNum = NATIONAL_DEX_RAYQUAZA, \ - .categoryName = _("Sky High"), \ - FOOTPRINT(Rayquaza) \ - LEARNSETS(Rayquaza), \ - .formSpeciesIdTable = sRayquazaFormSpeciesIdTable, \ - .formChangeTable = sRayquazaFormChangeTable, \ + .bodyColor = BODY_COLOR_GREEN, \ + .speciesName = _("Rayquaza"), \ + .cryId = CRY_RAYQUAZA, \ + .natDexNum = NATIONAL_DEX_RAYQUAZA, \ + .categoryName = _("Sky High"), \ + FOOTPRINT(Rayquaza) \ + LEARNSETS(Rayquaza), \ + .formSpeciesIdTable = sRayquazaFormSpeciesIdTable, \ + .formChangeTable = sRayquazaFormChangeTable, \ .isLegendary = TRUE [SPECIES_RAYQUAZA] = @@ -8013,6 +8278,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 95, .baseSpAttack = 150, .baseSpDefense = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 340, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 306, + #else + .expYield = 220, + #endif .abilities = { ABILITY_AIR_LOCK, ABILITY_NONE }, .height = 70, .weight = 2065, @@ -8048,6 +8320,7 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpeed = 115, .baseSpAttack = 180, .baseSpDefense = 100, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 390 : 351, .abilities = { ABILITY_DELTA_STREAM, ABILITY_DELTA_STREAM, ABILITY_DELTA_STREAM }, .height = 108, .weight = 3920, @@ -8086,7 +8359,13 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = .baseSpDefense = 100, .types = { TYPE_STEEL, TYPE_PSYCHIC }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 215, + #endif .evYield_HP = 3, .itemCommon = ITEM_STAR_PIECE, .itemRare = ITEM_STAR_PIECE, @@ -8129,30 +8408,38 @@ const struct SpeciesInfo gSpeciesInfoGen3[] = #endif //P_FAMILY_JIRACHI #if P_FAMILY_DEOXYS -#define DEOXYS_MISC_INFO \ - .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, \ - .catchRate = 3, \ - .expYield = 270, \ - .genderRatio = MON_GENDERLESS, \ - .eggCycles = 120, \ - .friendship = 0, \ - .growthRate = GROWTH_SLOW, \ +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define DEOXYS_EXP_YIELD 300 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define DEOXYS_EXP_YIELD 270 +#else + #define DEOXYS_EXP_YIELD 215 +#endif + +#define DEOXYS_MISC_INFO \ + .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, \ + .catchRate = 3, \ + .expYield = DEOXYS_EXP_YIELD, \ + .genderRatio = MON_GENDERLESS, \ + .eggCycles = 120, \ + .friendship = 0, \ + .growthRate = GROWTH_SLOW, \ .eggGroups = { EGG_GROUP_NO_EGGS_DISCOVERED, EGG_GROUP_NO_EGGS_DISCOVERED },\ - .abilities = { ABILITY_PRESSURE, ABILITY_NONE }, \ - .bodyColor = BODY_COLOR_RED, \ - .isMythical = TRUE, \ - .speciesName = _("Deoxys"), \ - .cryId = CRY_DEOXYS, \ - .natDexNum = NATIONAL_DEX_DEOXYS, \ - .categoryName = _("DNA"), \ - .height = 17, \ - .weight = 608, \ - .description = gDeoxysNormalPokedexText, \ - .pokemonScale = 256, \ - .pokemonOffset = 0, \ - .trainerScale = 290, \ - .trainerOffset = 2, \ - FOOTPRINT(Deoxys) \ + .abilities = { ABILITY_PRESSURE, ABILITY_NONE }, \ + .bodyColor = BODY_COLOR_RED, \ + .isMythical = TRUE, \ + .speciesName = _("Deoxys"), \ + .cryId = CRY_DEOXYS, \ + .natDexNum = NATIONAL_DEX_DEOXYS, \ + .categoryName = _("DNA"), \ + .height = 17, \ + .weight = 608, \ + .description = gDeoxysNormalPokedexText, \ + .pokemonScale = 256, \ + .pokemonOffset = 0, \ + .trainerScale = 290, \ + .trainerOffset = 2, \ + FOOTPRINT(Deoxys) \ .formSpeciesIdTable = sDeoxysFormSpeciesIdTable [SPECIES_DEOXYS_NORMAL] = diff --git a/src/data/pokemon/species_info/gen_4.h b/src/data/pokemon/species_info/gen_4.h index de8cf69f99..78f7587756 100644 --- a/src/data/pokemon/species_info/gen_4.h +++ b/src/data/pokemon/species_info/gen_4.h @@ -62,7 +62,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 65, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 141, .evYield_Attack = 1, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -111,7 +111,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 85, .types = { TYPE_GRASS, TYPE_GROUND }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 263, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 236, + #else + .expYield = 208, + #endif .evYield_Attack = 2, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), @@ -162,7 +168,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 44, .types = { TYPE_FIRE, TYPE_FIRE }, .catchRate = 45, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 65, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -261,7 +267,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 71, .types = { TYPE_FIRE, TYPE_FIGHTING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 267, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 240, + #else + .expYield = 209, + #endif .evYield_Attack = 1, .evYield_Speed = 1, .evYield_SpAttack = 1, @@ -312,7 +324,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 56, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 63, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 63 : 66, .evYield_SpAttack = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -364,7 +376,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 76, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 45, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 143, .evYield_SpAttack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -416,7 +428,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 101, .types = { TYPE_WATER, TYPE_STEEL }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 265, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 239, + #else + .expYield = 210, + #endif .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -469,7 +487,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 30, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 255, - .expYield = 49, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 49 : 56, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -519,7 +537,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 40, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 120, - .expYield = 119, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 119 : 113, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -569,7 +587,15 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 60 : 50, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 243, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 218, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 + .expYield = 214, + #else + .expYield = 172, + #endif .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -619,7 +645,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 40, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 255, - .expYield = 50, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 50 : 58, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -669,7 +695,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 60, .types = { TYPE_NORMAL, TYPE_WATER }, .catchRate = 127, - .expYield = 144, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 144 : 116, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -719,7 +745,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 41, .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 255, - .expYield = 39, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 39 : 54, .evYield_Defense = 1, .itemRare = ITEM_METRONOME, .genderRatio = PERCENT_FEMALE(50), @@ -770,7 +796,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 51, .types = { TYPE_BUG, TYPE_BUG }, .catchRate = 45, - .expYield = 134, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 134 : 159, .evYield_Attack = 2, .itemRare = ITEM_METRONOME, .genderRatio = PERCENT_FEMALE(50), @@ -822,7 +848,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 34, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 235, - .expYield = 53, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 53 : 60, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -872,7 +898,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 49, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 120, - .expYield = 127, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 127 : 117, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -922,7 +948,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 79, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 262, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 235, + #else + .expYield = 194, + #endif .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -973,7 +1005,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 30, .types = { TYPE_ROCK, TYPE_ROCK }, .catchRate = 45, - .expYield = 70, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 70 : 99, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -1021,7 +1053,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 50, .types = { TYPE_ROCK, TYPE_ROCK }, .catchRate = 45, - .expYield = 173, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 199, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -1070,7 +1102,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 88, .types = { TYPE_ROCK, TYPE_STEEL }, .catchRate = 45, - .expYield = 70, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 70 : 99, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -1118,7 +1150,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 138, .types = { TYPE_ROCK, TYPE_STEEL }, .catchRate = 45, - .expYield = 173, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 199, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 30, @@ -1166,7 +1198,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 45, \ .types = { TYPE_BUG, TYPE_BUG }, \ .catchRate = 120, \ - .expYield = 45, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 45 : 61, \ .evYield_SpDefense = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 15, \ @@ -1252,7 +1284,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = #define WORMADAM_MISC_INFO \ .catchRate = 45, \ - .expYield = 148, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 148 : 159, \ .itemRare = ITEM_SILVER_POWDER, \ .genderRatio = MON_FEMALE, \ .eggCycles = 15, \ @@ -1362,7 +1394,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 50, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 45, - .expYield = 148, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 148 : 159, .evYield_Attack = 1, .evYield_SpAttack = 1, .itemRare = ITEM_SILVER_POWDER, @@ -1414,7 +1446,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 42, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 120, - .expYield = 49, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 49 : 63, .evYield_Speed = 1, .itemRare = ITEM_HONEY, .genderRatio = PERCENT_FEMALE(12.5), @@ -1465,7 +1497,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 102, .types = { TYPE_BUG, TYPE_FLYING }, .catchRate = 45, - .expYield = 166, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 166 : 188, .evYield_Defense = 1, .evYield_SpDefense = 1, .itemRare = ITEM_POISON_BARB, @@ -1517,7 +1549,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 90, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 200, - .expYield = 142, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 120, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, @@ -1567,7 +1599,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 30, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 190, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 75, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1616,7 +1648,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 50, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 75, - .expYield = 173, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 178, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -1666,7 +1698,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 53, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 190, - .expYield = 55, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 55 : 68, .evYield_SpAttack = 1, .itemRare = ITEM_MIRACLE_SEED, .genderRatio = PERCENT_FEMALE(50), @@ -1705,37 +1737,37 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .evolutions = EVOLUTION({EVO_LEVEL, 25, SPECIES_CHERRIM_OVERCAST}), }, -#define CHERRIM_MISC_INFO \ - .baseHP = 70, \ - .baseAttack = 60, \ - .baseDefense = 70, \ - .baseSpeed = 85, \ - .baseSpAttack = 87, \ - .baseSpDefense = 78, \ - .types = { TYPE_GRASS, TYPE_GRASS }, \ - .catchRate = 75, \ - .expYield = 158, \ - .evYield_SpAttack = 2, \ - .itemRare = ITEM_MIRACLE_SEED, \ - .genderRatio = PERCENT_FEMALE(50), \ - .eggCycles = 20, \ - .friendship = STANDARD_FRIENDSHIP, \ - .growthRate = GROWTH_MEDIUM_FAST, \ - .eggGroups = { EGG_GROUP_FAIRY, EGG_GROUP_GRASS }, \ - .abilities = { ABILITY_FLOWER_GIFT, ABILITY_NONE }, \ - .speciesName = _("Cherrim"), \ - .cryId = CRY_CHERRIM, \ - .natDexNum = NATIONAL_DEX_CHERRIM, \ - .categoryName = _("Blossom"), \ - .height = 5, \ - .weight = 93, \ - .pokemonScale = 432, \ - .pokemonOffset = 13, \ - .trainerScale = 256, \ - .trainerOffset = 0, \ - FOOTPRINT(Cherrim) \ - LEARNSETS(Cherrim), \ - .formSpeciesIdTable = sCherrimFormSpeciesIdTable, \ +#define CHERRIM_MISC_INFO \ + .baseHP = 70, \ + .baseAttack = 60, \ + .baseDefense = 70, \ + .baseSpeed = 85, \ + .baseSpAttack = 87, \ + .baseSpDefense = 78, \ + .types = { TYPE_GRASS, TYPE_GRASS }, \ + .catchRate = 75, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 133,\ + .evYield_SpAttack = 2, \ + .itemRare = ITEM_MIRACLE_SEED, \ + .genderRatio = PERCENT_FEMALE(50), \ + .eggCycles = 20, \ + .friendship = STANDARD_FRIENDSHIP, \ + .growthRate = GROWTH_MEDIUM_FAST, \ + .eggGroups = { EGG_GROUP_FAIRY, EGG_GROUP_GRASS }, \ + .abilities = { ABILITY_FLOWER_GIFT, ABILITY_NONE }, \ + .speciesName = _("Cherrim"), \ + .cryId = CRY_CHERRIM, \ + .natDexNum = NATIONAL_DEX_CHERRIM, \ + .categoryName = _("Blossom"), \ + .height = 5, \ + .weight = 93, \ + .pokemonScale = 432, \ + .pokemonOffset = 13, \ + .trainerScale = 256, \ + .trainerOffset = 0, \ + FOOTPRINT(Cherrim) \ + LEARNSETS(Cherrim), \ + .formSpeciesIdTable = sCherrimFormSpeciesIdTable, \ .formChangeTable = sCherrimFormChangeTable [SPECIES_CHERRIM_OVERCAST] = @@ -1789,7 +1821,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 62, \ .types = { TYPE_WATER, TYPE_WATER }, \ .catchRate = 190, \ - .expYield = 65, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 73, \ .evYield_HP = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -1858,7 +1890,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 82, \ .types = { TYPE_WATER, TYPE_GROUND }, \ .catchRate = 75, \ - .expYield = 166, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 166 : 176, \ .evYield_HP = 2, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ @@ -1927,7 +1959,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 44, .types = { TYPE_GHOST, TYPE_FLYING }, .catchRate = 125, - .expYield = 70, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 70 : 127, .evYield_HP = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 30, @@ -1976,7 +2008,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 54, .types = { TYPE_GHOST, TYPE_FLYING }, .catchRate = 60, - .expYield = 174, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 174 : 204, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 30, @@ -2026,7 +2058,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 56, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 190, - .expYield = 70, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 70 : 84, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2091,7 +2123,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpAttack = 54, .baseSpDefense = 96, .types = { TYPE_NORMAL, TYPE_NORMAL }, - .expYield = 168, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 168 : 178, .abilities = { ABILITY_CUTE_CHARM, ABILITY_KLUTZ, ABILITY_LIMBER }, .cryId = CRY_LOPUNNY, .height = 12, @@ -2166,7 +2198,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 37, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 190, - .expYield = 62, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 71, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, @@ -2214,7 +2246,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 59, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 75, - .expYield = 158, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 183, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, @@ -2263,7 +2295,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 41, .types = { TYPE_POISON, TYPE_DARK }, .catchRate = 225, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 79, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2311,7 +2343,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 61, .types = { TYPE_POISON, TYPE_DARK }, .catchRate = 60, - .expYield = 168, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 168 : 209, .evYield_HP = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2360,7 +2392,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 86, .types = { TYPE_STEEL, TYPE_PSYCHIC }, .catchRate = 255, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 72, .evYield_Defense = 1, .itemRare = ITEM_METAL_COAT, .genderRatio = MON_GENDERLESS, @@ -2410,7 +2442,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 116, .types = { TYPE_STEEL, TYPE_PSYCHIC }, .catchRate = 90, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 188, .evYield_Defense = 1, .evYield_SpDefense = 1, .itemRare = ITEM_METAL_COAT, @@ -2462,7 +2494,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 42, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 30, - .expYield = 144, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 144 : 107, .evYield_Attack = 1, .itemRare = ITEM_METRONOME, .genderRatio = PERCENT_FEMALE(50), @@ -2512,7 +2544,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 108, .types = { TYPE_GHOST, TYPE_DARK }, .catchRate = 100, - .expYield = 170, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 170 : 168, .evYield_Defense = 1, .evYield_SpDefense = 1, .genderRatio = PERCENT_FEMALE(50), @@ -2562,7 +2594,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 45, .types = { TYPE_DRAGON, TYPE_GROUND }, .catchRate = 45, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 67, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, @@ -2685,7 +2717,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpeed = 102, .baseSpAttack = 80, .baseSpDefense = 85, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 218, + #endif .abilities = { ABILITY_SAND_VEIL, ABILITY_NONE, ABILITY_ROUGH_SKIN }, .cryId = CRY_GARCHOMP, .description = COMPOUND_STRING( @@ -2715,7 +2753,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpeed = 92, .baseSpAttack = 120, .baseSpDefense = 95, - .expYield = 315, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 350 : 315, .abilities = { ABILITY_SAND_FORCE, ABILITY_SAND_FORCE, ABILITY_SAND_FORCE }, .cryId = CRY_GARCHOMP_MEGA, .description = COMPOUND_STRING( @@ -2748,7 +2786,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 40, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 75, - .expYield = 57, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 57 : 72, .evYield_Attack = 1, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 25, @@ -2814,7 +2852,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpeed = 90, .baseSpAttack = 115, .baseSpDefense = 70, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 204, .abilities = { ABILITY_STEADFAST, ABILITY_INNER_FOCUS, ABILITY_JUSTIFIED }, .cryId = CRY_LUCARIO, .height = 12, @@ -2888,7 +2926,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 42, .types = { TYPE_GROUND, TYPE_GROUND }, .catchRate = 140, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 95, .evYield_Defense = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 30, @@ -2940,7 +2978,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 72, .types = { TYPE_GROUND, TYPE_GROUND }, .catchRate = 60, - .expYield = 184, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 198, .evYield_Defense = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 30, @@ -2993,7 +3031,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 55, .types = { TYPE_POISON, TYPE_BUG }, .catchRate = 120, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 114, .evYield_Defense = 1, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -3042,7 +3080,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 75, .types = { TYPE_POISON, TYPE_DARK }, .catchRate = 45, - .expYield = 175, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 204, .evYield_Defense = 2, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -3092,7 +3130,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 40, .types = { TYPE_POISON, TYPE_FIGHTING }, .catchRate = 140, - .expYield = 60, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 83, .evYield_Attack = 1, .itemRare = ITEM_BLACK_SLUDGE, .genderRatio = PERCENT_FEMALE(50), @@ -3143,7 +3181,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 65, .types = { TYPE_POISON, TYPE_FIGHTING }, .catchRate = 75, - .expYield = 172, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 181, .evYield_Attack = 2, .itemRare = ITEM_BLACK_SLUDGE, .genderRatio = PERCENT_FEMALE(50), @@ -3195,7 +3233,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 72, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 200, - .expYield = 159, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 164, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 25, @@ -3245,7 +3283,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 61, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 190, - .expYield = 66, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 66 : 90, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3295,7 +3333,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 86, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 75, - .expYield = 161, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 161 : 156, .evYield_Speed = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -3346,7 +3384,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 60, .types = { TYPE_GRASS, TYPE_ICE }, .catchRate = 120, - .expYield = 67, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 67 : 131, .evYield_Attack = 1, .itemRare = ITEM_NEVER_MELT_ICE, .genderRatio = PERCENT_FEMALE(50), @@ -3416,7 +3454,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpeed = 60, .baseSpAttack = 92, .baseSpDefense = 85, - .expYield = 173, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 214, .abilities = { ABILITY_SNOW_WARNING, ABILITY_NONE, ABILITY_SOUNDPROOF }, .cryId = CRY_ABOMASNOW, .height = 22, @@ -3517,7 +3555,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpAttack = 95, .baseSpDefense = 77, .types = { TYPE_ELECTRIC, TYPE_GHOST }, - .expYield = 154, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 154 : 132, .description = COMPOUND_STRING( "Its body is composed of plasma and loves\n" "to surprise others. One boy's invention led\n" @@ -3535,6 +3573,14 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = ICON(Rotom, 0), }, +#if P_UPDATED_EXP_YIELDS >= GEN_7 + #define ROTOM_APPLIANCE_EXP_YIELD 182 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define ROTOM_APPLIANCE_EXP_YIELD 154 +#else + #define ROTOM_APPLIANCE_EXP_YIELD 132 +#endif + #define ROTOM_APPLIANCE_INFO(form) \ .baseHP = 50, \ .baseAttack = 65, \ @@ -3542,7 +3588,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpeed = 86, \ .baseSpAttack = 105, \ .baseSpDefense = 107, \ - .expYield = 182 + .expYield = ROTOM_APPLIANCE_EXP_YIELD [SPECIES_ROTOM_HEAT] = { @@ -3668,7 +3714,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 130, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 210, + #endif .evYield_Defense = 2, .evYield_SpDefense = 1, .genderRatio = MON_GENDERLESS, @@ -3720,7 +3772,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 105, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 210, + #endif .evYield_Attack = 1, .evYield_SpAttack = 1, .evYield_SpDefense = 1, @@ -3773,7 +3831,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 70, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 290, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 261, + #else + .expYield = 210, + #endif .evYield_Attack = 2, .evYield_SpAttack = 1, .genderRatio = MON_GENDERLESS, @@ -3815,10 +3879,18 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = #endif //P_FAMILY_AZELF #if P_FAMILY_DIALGA +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define DIALGA_EXP_YIELD 340 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define DIALGA_EXP_YIELD 306 +#else + #define DIALGA_EXP_YIELD 220 +#endif + #define DIALGA_MISC_INFO \ .types = { TYPE_STEEL, TYPE_DRAGON }, \ .catchRate = 3, \ - .expYield = 306, \ + .expYield = DIALGA_EXP_YIELD, \ .evYield_SpAttack = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ @@ -3901,10 +3973,18 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = #endif //P_FAMILY_DIALGA #if P_FAMILY_PALKIA +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define PALKIA_EXP_YIELD 340 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define PALKIA_EXP_YIELD 306 +#else + #define PALKIA_EXP_YIELD 220 +#endif + #define PALKIA_MISC_INFO \ .types = { TYPE_WATER, TYPE_DRAGON }, \ .catchRate = 3, \ - .expYield = 306, \ + .expYield = PALKIA_EXP_YIELD, \ .evYield_SpAttack = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ @@ -3997,7 +4077,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 106, .types = { TYPE_FIRE, TYPE_STEEL }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 215, + #endif .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 10, @@ -4047,7 +4133,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 110, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 335, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 302, + #else + .expYield = 220, + #endif .evYield_Attack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4087,10 +4179,18 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = #endif //P_FAMILY_REGIGIGAS #if P_FAMILY_GIRATINA +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define GIRATINA_EXP_YIELD 340 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define GIRATINA_EXP_YIELD 306 +#else + #define GIRATINA_EXP_YIELD 220 +#endif + #define GIRATINA_MISC_INFO \ .types = { TYPE_GHOST, TYPE_DRAGON }, \ .catchRate = 3, \ - .expYield = 306, \ + .expYield = GIRATINA_EXP_YIELD, \ .evYield_HP = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ @@ -4185,7 +4285,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = P_UPDATED_STATS >= GEN_9 ? 120 : 130, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 210, + #endif .evYield_SpDefense = 3, .genderRatio = MON_FEMALE, .eggCycles = 120, @@ -4236,7 +4342,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 80, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 30, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 240, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 216, + #else + .expYield = 165, + #endif .evYield_HP = 1, .genderRatio = MON_GENDERLESS, .eggCycles = 40, @@ -4285,7 +4397,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 100, .types = { TYPE_WATER, TYPE_WATER }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 215, + #endif .evYield_HP = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 10, @@ -4336,7 +4454,13 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 90, .types = { TYPE_DARK, TYPE_DARK }, .catchRate = 3, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 300, + #elif P_UPDATED_EXP_YIELDS >= GEN_5 .expYield = 270, + #else + .expYield = 210, + #endif .evYield_Speed = 1, .evYield_SpAttack = 2, .genderRatio = MON_GENDERLESS, @@ -4378,9 +4502,17 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = #endif //P_FAMILY_DARKRAI #if P_FAMILY_SHAYMIN +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define SHAYMIN_EXP_YIELD 300 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define SHAYMIN_EXP_YIELD 270 +#else + #define SHAYMIN_EXP_YIELD 64 +#endif + #define SHAYMIN_MISC_INFO \ .catchRate = 45, \ - .expYield = 270, \ + .expYield = SHAYMIN_EXP_YIELD, \ .itemCommon = ITEM_LUM_BERRY, \ .itemRare = ITEM_LUM_BERRY, \ .genderRatio = MON_GENDERLESS, \ @@ -4476,6 +4608,14 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = #endif //P_FAMILY_SHAYMIN #if P_FAMILY_ARCEUS +#if P_UPDATED_EXP_YIELDS >= GEN_8 + #define ARCEUS_EXP_YIELD 360 +#elif P_UPDATED_EXP_YIELDS >= GEN_5 + #define ARCEUS_EXP_YIELD 324 +#else + #define ARCEUS_EXP_YIELD 255 +#endif + #define ARCEUS_SPECIES_INFO(type, typeName) \ { \ .baseHP = 120, \ @@ -4486,7 +4626,7 @@ const struct SpeciesInfo gSpeciesInfoGen4[] = .baseSpDefense = 120, \ .types = { type, type }, \ .catchRate = 3, \ - .expYield = 324, \ + .expYield = ARCEUS_EXP_YIELD, \ .evYield_HP = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ diff --git a/src/data/pokemon/species_info/gen_5.h b/src/data/pokemon/species_info/gen_5.h index 01d568af40..6365ef8531 100644 --- a/src/data/pokemon/species_info/gen_5.h +++ b/src/data/pokemon/species_info/gen_5.h @@ -14,7 +14,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 100, .types = { TYPE_PSYCHIC, TYPE_FIRE }, .catchRate = 3, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .evYield_HP = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -160,7 +160,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 95, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 238, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 264 : 238, .evYield_Speed = 3, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -305,7 +305,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 65, .types = { TYPE_FIRE, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 238, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 264 : 238, .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -444,7 +444,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = #define SAMUROTT_MISC_INFO \ .catchRate = 45, \ - .expYield = 238, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 264 : 238, \ .genderRatio = PERCENT_FEMALE(12.5), \ .eggCycles = 20, \ .friendship = STANDARD_FRIENDSHIP, \ @@ -731,7 +731,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 90, .types = { TYPE_NORMAL, TYPE_NORMAL }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 250, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 225, + #else + .expYield = 221, + #endif .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1365,7 +1371,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 55, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 244, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 220, + #else + .expYield = 215, + #endif .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1617,7 +1629,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 80 : 70, .types = { TYPE_ROCK, TYPE_ROCK }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 258, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 232, + #else + .expYield = 227, + #endif .evYield_Attack = 3, .itemCommon = ITEM_EVERSTONE, .itemRare = ITEM_HARD_STONE, @@ -1668,7 +1686,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 43, .types = { TYPE_PSYCHIC, TYPE_FLYING }, .catchRate = 190, - .expYield = 65, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_7) ? 65 : 63, .evYield_Speed = 1, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -2058,7 +2076,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 65, .types = { TYPE_FIGHTING, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 227, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 253 : 227, .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(25), .eggCycles = 20, @@ -2203,7 +2221,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 75, .types = { TYPE_WATER, TYPE_GROUND }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 255, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 229, + #else + .expYield = 225, + #endif .evYield_HP = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -2451,7 +2475,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 80 : 70, .types = { TYPE_BUG, TYPE_GRASS }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 250, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 225, + #else + .expYield = 221, + #endif .evYield_Attack = 3, .itemRare = ITEM_MENTAL_HERB, .genderRatio = PERCENT_FEMALE(50), @@ -2607,7 +2637,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 69, .types = { TYPE_BUG, TYPE_POISON }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 243, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 218, + #else + .expYield = 214, + #endif .evYield_Speed = 3, .itemRare = ITEM_POISON_BARB, .genderRatio = PERCENT_FEMALE(50), @@ -3187,7 +3223,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 70, .types = { TYPE_GROUND, TYPE_DARK }, .catchRate = 45, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 260, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 234, + #else + .expYield = 229, + #endif .evYield_Attack = 3, .itemCommon = ITEM_BLACK_GLASSES, .genderRatio = PERCENT_FEMALE(50), @@ -3303,10 +3345,10 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .evYield_Attack = 2, \ DARMANITAN_MISC_INFO -#define DARMANITAN_ZEN_MODE_MISC_INFO \ - .expYield = 189, \ - .evYield_SpAttack = 2, \ - .categoryName = _("Blazing"), \ +#define DARMANITAN_ZEN_MODE_MISC_INFO \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_7) ? 189 : 168,\ + .evYield_SpAttack = 2, \ + .categoryName = _("Blazing"), \ DARMANITAN_MISC_INFO #define DARMANITAN_UNOVAN_MISC_INFO \ @@ -3575,7 +3617,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 75, .types = { TYPE_BUG, TYPE_ROCK }, .catchRate = 75, - .expYield = 170, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_7) ? 170 : 166, .evYield_Defense = 2, .itemRare = ITEM_HARD_STONE, .genderRatio = PERCENT_FEMALE(50), @@ -4649,7 +4691,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 110, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 50, - .expYield = 221, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 245 : 221, .evYield_SpDefense = 3, .genderRatio = PERCENT_FEMALE(75), .eggCycles = 20, @@ -4797,7 +4839,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 85, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 50, - .expYield = 221, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 245 : 221, .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -5042,7 +5084,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 95, .types = { TYPE_ICE, TYPE_ICE }, .catchRate = 45, - .expYield = 241, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 268 : 241, .evYield_SpAttack = 3, .itemCommon = ITEM_NEVER_MELT_ICE, .genderRatio = PERCENT_FEMALE(50), @@ -5979,7 +6021,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 85, .types = { TYPE_STEEL, TYPE_STEEL }, .catchRate = 30, - .expYield = 234, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 260 : 234, .evYield_Defense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 20, @@ -6128,7 +6170,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 80, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 30, - .expYield = 232, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 258 : 232, .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6381,7 +6423,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 90, .types = { TYPE_GHOST, TYPE_FIRE }, .catchRate = 45, - .expYield = 234, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 260 : 234, .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6531,7 +6573,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 70, .types = { TYPE_DRAGON, TYPE_DRAGON }, .catchRate = 45, - .expYield = 243, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 270 : 243, .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, @@ -6628,7 +6670,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 80, .types = { TYPE_ICE, TYPE_ICE }, .catchRate = 60, - .expYield = 177, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_7) ? 177 : 170, .evYield_Attack = 2, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 20, @@ -6682,7 +6724,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = #endif .types = { TYPE_ICE, TYPE_ICE }, .catchRate = 25, - .expYield = 180, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_7) ? 180 : 170, .evYield_SpDefense = 2, .itemRare = ITEM_NEVER_MELT_ICE, .genderRatio = MON_GENDERLESS, @@ -7796,7 +7838,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 90, .types = { TYPE_DARK, TYPE_DRAGON }, .catchRate = 45, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 40, @@ -7894,7 +7936,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 105, .types = { TYPE_BUG, TYPE_FIRE }, .catchRate = 15, - .expYield = 248, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 275 : 248, .evYield_SpAttack = 3, .itemCommon = ITEM_SILVER_POWDER, .itemRare = ITEM_SILVER_POWDER, @@ -7946,7 +7988,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 72, .types = { TYPE_STEEL, TYPE_FIGHTING }, .catchRate = 3, - .expYield = 261, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 290 : 261, .evYield_Defense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 80, @@ -7996,7 +8038,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 90, .types = { TYPE_ROCK, TYPE_FIGHTING }, .catchRate = 3, - .expYield = 261, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 290 : 261, .evYield_Attack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 80, @@ -8046,7 +8088,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 129, .types = { TYPE_GRASS, TYPE_FIGHTING }, .catchRate = 3, - .expYield = 261, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 290 : 261, .evYield_SpDefense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 80, @@ -8089,7 +8131,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = #define TORNADUS_MISC_INFO \ .types = { TYPE_FLYING, TYPE_FLYING }, \ .catchRate = 3, \ - .expYield = 261, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 290 : 261, \ .evYield_Attack = 3, \ .genderRatio = MON_MALE, \ .eggCycles = 120, \ @@ -8177,7 +8219,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = #define THUNDURUS_MISC_INFO \ .types = { TYPE_ELECTRIC, TYPE_FLYING }, \ .catchRate = 3, \ - .expYield = 261, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 290 : 261, \ .genderRatio = MON_MALE, \ .eggCycles = 120, \ .friendship = 90, \ @@ -8274,7 +8316,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 120, .types = { TYPE_DRAGON, TYPE_FIRE }, .catchRate = 3, - .expYield = 306, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -8324,7 +8366,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 100, .types = { TYPE_DRAGON, TYPE_ELECTRIC }, .catchRate = 3, - .expYield = 306, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, .evYield_Attack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -8367,7 +8409,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = #define LANDORUS_MISC_INFO \ .types = { TYPE_GROUND, TYPE_FLYING }, \ .catchRate = 3, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, \ .genderRatio = MON_MALE, \ .eggCycles = 120, \ .friendship = 90, \ @@ -8480,7 +8522,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpeed = 95, .baseSpAttack = 130, .baseSpDefense = 90, - .expYield = 297, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 330 : 297, .evYield_HP = 1, .evYield_Attack = 1, .evYield_SpAttack = 1, @@ -8518,7 +8560,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpeed = 95, .baseSpAttack = 170, .baseSpDefense = 100, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 350, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 315, + #else + .expYield = 297, + #endif .evYield_SpAttack = 3, .abilities = { ABILITY_TURBOBLAZE, ABILITY_NONE }, .cryId = CRY_KYUREM_WHITE, @@ -8555,7 +8603,13 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpeed = 95, .baseSpAttack = 120, .baseSpDefense = 90, + #if P_UPDATED_EXP_YIELDS >= GEN_8 + .expYield = 350, + #elif P_UPDATED_EXP_YIELDS >= GEN_7 .expYield = 315, + #else + .expYield = 297, + #endif .evYield_Attack = 3, .abilities = { ABILITY_TERAVOLT, ABILITY_NONE }, .cryId = CRY_KYUREM_BLACK, @@ -8595,7 +8649,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 90, \ .types = { TYPE_WATER, TYPE_FIGHTING }, \ .catchRate = 3, \ - .expYield = 261, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 290 : 261, \ .evYield_SpAttack = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 80, \ @@ -8663,7 +8717,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = #if P_FAMILY_MELOETTA #define MELOETTA_MISC_INFO \ .catchRate = 3, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, \ .evYield_Speed = 1, \ .itemCommon = ITEM_STAR_PIECE, \ .itemRare = ITEM_STAR_PIECE, \ @@ -8760,7 +8814,7 @@ const struct SpeciesInfo gSpeciesInfoGen5[] = .baseSpDefense = 95, \ .types = { TYPE_BUG, TYPE_STEEL }, \ .catchRate = 3, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, \ .evYield_Attack = 1, \ .evYield_Speed = 1, \ .evYield_SpAttack = 1, \ diff --git a/src/data/pokemon/species_info/gen_6.h b/src/data/pokemon/species_info/gen_6.h index 4366c6117d..20b0c69451 100644 --- a/src/data/pokemon/species_info/gen_6.h +++ b/src/data/pokemon/species_info/gen_6.h @@ -110,7 +110,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpDefense = 75, .types = { TYPE_GRASS, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 239, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 265 : 239, .evYield_Defense = 3, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -255,7 +255,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpDefense = 100, .types = { TYPE_FIRE, TYPE_PSYCHIC }, .catchRate = 45, - .expYield = 240, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 267 : 240, .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 20, @@ -390,21 +390,21 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .evolutions = EVOLUTION({EVO_LEVEL, 36, SPECIES_GRENINJA}), }, -#define GRENINJA_NORMAL_MISC_INFO \ - .baseHP = 72, \ - .baseAttack = 95, \ - .baseDefense = 67, \ - .baseSpeed = 122, \ - .baseSpAttack = 103, \ - .baseSpDefense = 71, \ - .expYield = 239, \ - .description = gGreninjaPokedexText,\ - FRONT_PIC(Greninja, 64, 56), \ - .frontPicYOffset = 7, \ - .frontAnimFrames = sAnims_Greninja, \ - BACK_PIC(Greninja, 64, 48), \ - .backPicYOffset = 11, \ - PALETTES(Greninja), \ +#define GRENINJA_NORMAL_MISC_INFO \ + .baseHP = 72, \ + .baseAttack = 95, \ + .baseDefense = 67, \ + .baseSpeed = 122, \ + .baseSpAttack = 103, \ + .baseSpDefense = 71, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 265 : 239,\ + .description = gGreninjaPokedexText, \ + FRONT_PIC(Greninja, 64, 56), \ + .frontPicYOffset = 7, \ + .frontAnimFrames = sAnims_Greninja, \ + BACK_PIC(Greninja, 64, 48), \ + .backPicYOffset = 11, \ + PALETTES(Greninja), \ ICON(Greninja, 0) #define GRENINJA_MISC_INFO \ @@ -834,7 +834,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpDefense = 50, \ .types = { TYPE_BUG, TYPE_FLYING }, \ .catchRate = 45, \ - .expYield = 185, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 206 : 185, \ .evYield_HP = 1, \ .evYield_Speed = 1, \ .evYield_SpAttack = 1, \ @@ -1366,7 +1366,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpDefense = 154, \ .types = { TYPE_FAIRY, TYPE_FAIRY }, \ .catchRate = 45, \ - .expYield = 248, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 276 : 248, \ .evYield_SpDefense = 3, \ .genderRatio = MON_FEMALE, \ .eggCycles = 20, \ @@ -2003,7 +2003,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = #define AEGISLASH_MISC_INFO \ .types = { TYPE_STEEL, TYPE_GHOST }, \ .catchRate = 45, \ - .expYield = 234, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 250 : 234,\ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 20, \ .friendship = STANDARD_FRIENDSHIP, \ @@ -3232,7 +3232,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = #define GOODRA_MISC_INFO \ .catchRate = 45, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270,\ .evYield_SpDefense = 3, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 40, \ @@ -4045,7 +4045,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpDefense = 98, \ .types = { TYPE_FAIRY, TYPE_FAIRY }, \ .catchRate = 45, \ - .expYield = 306, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, \ .evYield_HP = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ @@ -4096,7 +4096,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpDefense = 98, .types = { TYPE_DARK, TYPE_FLYING }, .catchRate = 45, - .expYield = 306, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, .evYield_HP = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4164,7 +4164,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpeed = 95, \ .baseSpAttack = 81, \ .baseSpDefense = 95, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270,\ .bodyColor = BODY_COLOR_GREEN, \ .cryId = CRY_ZYGARDE_50, \ .height = 50, \ @@ -4199,7 +4199,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpeed = 115, \ .baseSpAttack = 61, \ .baseSpDefense = 85, \ - .expYield = 219, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 243 : 219,\ .bodyColor = BODY_COLOR_BLACK, \ .cryId = CRY_ZYGARDE_10, \ .height = 12, \ @@ -4239,7 +4239,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpeed = 85, .baseSpAttack = 91, .baseSpDefense = 95, - .expYield = 319, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 354 : 319, .bodyColor = BODY_COLOR_BLACK, .cryId = CRY_ZYGARDE_COMPLETE, .height = 45, @@ -4296,7 +4296,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpeed = 50, .baseSpAttack = 100, .baseSpDefense = 150, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .abilities = { ABILITY_CLEAR_BODY, ABILITY_NONE }, .cryId = CRY_DIANCIE, .height = 7, @@ -4362,7 +4362,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = #if P_FAMILY_HOOPA #define HOOPA_MISC_INFO \ .catchRate = 3, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, \ .evYield_SpAttack = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ @@ -4463,7 +4463,7 @@ const struct SpeciesInfo gSpeciesInfoGen6[] = .baseSpDefense = 90, .types = { TYPE_FIRE, TYPE_WATER }, .catchRate = 3, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, diff --git a/src/data/pokemon/species_info/gen_7.h b/src/data/pokemon/species_info/gen_7.h index d3f223ab46..1b6c584f26 100644 --- a/src/data/pokemon/species_info/gen_7.h +++ b/src/data/pokemon/species_info/gen_7.h @@ -104,7 +104,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = #define DECIDUEYE_MISC_INFO \ .catchRate = 45, \ - .expYield = 239, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 265 : 239,\ .evYield_Attack = 3, \ .genderRatio = PERCENT_FEMALE(12.5), \ .eggCycles = 15, \ @@ -293,7 +293,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 90, .types = { TYPE_FIRE, TYPE_DARK }, .catchRate = 45, - .expYield = 239, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 265 : 239, .evYield_Attack = 3, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 15, @@ -438,7 +438,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 116, .types = { TYPE_WATER, TYPE_FAIRY }, .catchRate = 45, - .expYield = 239, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 265 : 239, .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(12.5), .eggCycles = 15, @@ -585,7 +585,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 75, .types = { TYPE_NORMAL, TYPE_FLYING }, .catchRate = 45, - .expYield = 218, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 243 : 218, .evYield_Attack = 3, .itemRare = ITEM_RAWST_BERRY, .genderRatio = PERCENT_FEMALE(50), @@ -832,7 +832,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 75, .types = { TYPE_BUG, TYPE_ELECTRIC }, .catchRate = 45, - .expYield = 225, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 250 : 225, .evYield_SpAttack = 3, .genderRatio = PERCENT_FEMALE(50), .eggCycles = 15, @@ -1362,7 +1362,6 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = #define WISHIWASHI_MISC_INFO \ .types = { TYPE_WATER, TYPE_WATER }, \ .catchRate = 60, \ - .expYield = 61, \ .evYield_HP = 1, \ .genderRatio = PERCENT_FEMALE(50), \ .eggCycles = 15, \ @@ -1392,6 +1391,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpeed = 40, .baseSpAttack = 25, .baseSpDefense = 25, + .expYield = 61, .cryId = CRY_WISHIWASHI_SOLO, .height = 2, .weight = 3, @@ -1421,6 +1421,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpeed = 30, .baseSpAttack = 140, .baseSpDefense = 135, + .expYield = 217, .cryId = CRY_WISHIWASHI_SCHOOL, .height = 82, .weight = 786, @@ -2244,7 +2245,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 98, .types = { TYPE_GRASS, TYPE_GRASS }, .catchRate = 45, - .expYield = 230, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 255 : 230, .evYield_Attack = 3, .itemCommon = ITEM_GRASSY_SEED, .genderRatio = MON_FEMALE, @@ -3373,7 +3374,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 105, .types = { TYPE_DRAGON, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .evYield_Defense = 3, .itemCommon = ITEM_RAZOR_CLAW, .genderRatio = PERCENT_FEMALE(50), @@ -3423,7 +3424,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 75, .types = { TYPE_ELECTRIC, TYPE_FAIRY }, .catchRate = 3, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_Speed = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 15, @@ -3474,7 +3475,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 115, .types = { TYPE_PSYCHIC, TYPE_FAIRY }, .catchRate = 3, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 15, @@ -3525,7 +3526,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 95, .types = { TYPE_GRASS, TYPE_FAIRY }, .catchRate = 3, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_Attack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 15, @@ -3576,7 +3577,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 130, .types = { TYPE_WATER, TYPE_FAIRY }, .catchRate = 3, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_SpDefense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 15, @@ -3730,7 +3731,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 89, .types = { TYPE_PSYCHIC, TYPE_STEEL }, .catchRate = 45, - .expYield = 306, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, .evYield_Attack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -3778,7 +3779,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 107, .types = { TYPE_PSYCHIC, TYPE_GHOST }, .catchRate = 45, - .expYield = 306, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -3829,7 +3830,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 131, .types = { TYPE_ROCK, TYPE_POISON }, .catchRate = 45, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_SpDefense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -3880,7 +3881,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 53, .types = { TYPE_BUG, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_Attack = 1, .evYield_Defense = 2, .genderRatio = MON_GENDERLESS, @@ -3931,7 +3932,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 37, .types = { TYPE_BUG, TYPE_FIGHTING }, .catchRate = 45, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_Speed = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -3981,7 +3982,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 71, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 45, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4031,7 +4032,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 101, .types = { TYPE_STEEL, TYPE_FLYING }, .catchRate = 45, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_Attack = 1, .evYield_Defense = 1, .evYield_SpAttack = 1, @@ -4083,7 +4084,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 31, .types = { TYPE_GRASS, TYPE_STEEL }, .catchRate = 45, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_Attack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4134,7 +4135,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 53, .types = { TYPE_DARK, TYPE_DRAGON }, .catchRate = 45, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_HP = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4204,7 +4205,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 89, .types = { TYPE_PSYCHIC, TYPE_PSYCHIC }, .catchRate = 255, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .evYield_Attack = 1, .evYield_SpAttack = 2, .abilities = { ABILITY_PRISM_ARMOR, ABILITY_NONE }, @@ -4241,7 +4242,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 109, .types = { TYPE_PSYCHIC, TYPE_STEEL }, .catchRate = 255, - .expYield = 306, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, .evYield_Attack = 3, .abilities = { ABILITY_PRISM_ARMOR, ABILITY_NONE }, .bodyColor = BODY_COLOR_YELLOW, @@ -4277,7 +4278,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 127, .types = { TYPE_PSYCHIC, TYPE_GHOST }, .catchRate = 255, - .expYield = 306, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 340 : 306, .evYield_SpAttack = 3, .abilities = { ABILITY_PRISM_ARMOR, ABILITY_NONE }, .bodyColor = BODY_COLOR_BLUE, @@ -4315,7 +4316,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 97, .types = { TYPE_PSYCHIC, TYPE_DRAGON }, .catchRate = 255, - .expYield = 339, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 377 : 339, .evYield_Attack = 1, .evYield_Speed = 1, .evYield_SpAttack = 1, @@ -4356,7 +4357,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 115, \ .types = { TYPE_STEEL, TYPE_FAIRY }, \ .catchRate = 3, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, \ .evYield_SpAttack = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \ @@ -4421,7 +4422,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 90, .types = { TYPE_FIGHTING, TYPE_GHOST }, .catchRate = 3, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .evYield_Attack = 2, .evYield_Speed = 1, .genderRatio = MON_GENDERLESS, @@ -4473,7 +4474,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 67, .types = { TYPE_POISON, TYPE_POISON }, .catchRate = 45, - .expYield = 189, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 210 : 189, .evYield_Speed = 1, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4522,7 +4523,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 73, .types = { TYPE_POISON, TYPE_DRAGON }, .catchRate = 45, - .expYield = 243, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 270 : 243, .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4572,7 +4573,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 101, .types = { TYPE_ROCK, TYPE_STEEL }, .catchRate = 30, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_Defense = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4622,7 +4623,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 79, .types = { TYPE_FIRE, TYPE_GHOST }, .catchRate = 30, - .expYield = 257, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 285 : 257, .evYield_SpAttack = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4672,7 +4673,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 80, .types = { TYPE_ELECTRIC, TYPE_ELECTRIC }, .catchRate = 3, - .expYield = 270, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, .evYield_Speed = 3, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4721,7 +4722,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 35, .types = { TYPE_STEEL, TYPE_STEEL }, .catchRate = 3, - .expYield = 135, + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 150 : 135, .evYield_Attack = 1, .genderRatio = MON_GENDERLESS, .eggCycles = 120, @@ -4767,7 +4768,7 @@ const struct SpeciesInfo gSpeciesInfoGen7[] = .baseSpDefense = 65, \ .types = { TYPE_STEEL, TYPE_STEEL }, \ .catchRate = 3, \ - .expYield = 270, \ + .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, \ .evYield_Attack = 3, \ .genderRatio = MON_GENDERLESS, \ .eggCycles = 120, \