From 3eae7a0c96136d5bca974dc3e8573d5ca4f72f0f Mon Sep 17 00:00:00 2001 From: Eduardo Quezada Date: Thu, 6 Mar 2025 07:09:53 -0300 Subject: [PATCH] Gen 1's Special base stat (#6330) --- .../pokemon/species_info/gen_1_families.h | 274 ++++++++++-------- 1 file changed, 150 insertions(+), 124 deletions(-) diff --git a/src/data/pokemon/species_info/gen_1_families.h b/src/data/pokemon/species_info/gen_1_families.h index b1b58928e5..0bde1f347a 100644 --- a/src/data/pokemon/species_info/gen_1_families.h +++ b/src/data/pokemon/species_info/gen_1_families.h @@ -369,7 +369,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 52, .baseDefense = 43, .baseSpeed = 65, - .baseSpAttack = 60, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 60 : 50, .baseSpDefense = 50, .types = MON_TYPES(TYPE_FIRE), .catchRate = 45, @@ -438,7 +438,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 64, .baseDefense = 58, .baseSpeed = 80, - .baseSpAttack = 80, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 80 : 65, .baseSpDefense = 65, .types = MON_TYPES(TYPE_FIRE), .catchRate = 45, @@ -507,7 +507,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 84, .baseDefense = 78, .baseSpeed = 100, - .baseSpAttack = 109, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 109 : 85, .baseSpDefense = 85, .types = MON_TYPES(TYPE_FIRE, TYPE_FLYING), .catchRate = 45, @@ -719,7 +719,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 84, .baseDefense = 78, .baseSpeed = 100, - .baseSpAttack = 109, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 109 : 85, .baseSpDefense = 85, .types = MON_TYPES(TYPE_FIRE, TYPE_FLYING), .catchRate = 45, @@ -780,7 +780,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 65, .baseSpeed = 43, .baseSpAttack = 50, - .baseSpDefense = 64, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 64 : 50, .types = MON_TYPES(TYPE_WATER), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 63 : 66, @@ -850,7 +850,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 80, .baseSpeed = 58, .baseSpAttack = 65, - .baseSpDefense = 80, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 80 : 65, .types = MON_TYPES(TYPE_WATER), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 143, @@ -919,7 +919,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 100, .baseSpeed = 78, .baseSpAttack = 85, - .baseSpDefense = 105, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 105 : 85, .types = MON_TYPES(TYPE_WATER), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -1067,7 +1067,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 100, .baseSpeed = 78, .baseSpAttack = 85, - .baseSpDefense = 105, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 105 : 85, .types = MON_TYPES(TYPE_WATER), .catchRate = 45, .expYield = 239, @@ -1592,7 +1592,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 40, .baseSpeed = 75, .baseSpAttack = 45, - .baseSpDefense = 80, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 80 : 45, .types = MON_TYPES(TYPE_BUG, TYPE_POISON), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -2055,7 +2055,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 35, .baseSpeed = 72, .baseSpAttack = 25, - .baseSpDefense = 35, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 35 : 25, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 255, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 51 : 57, @@ -2139,7 +2139,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 60, .baseSpeed = 97, .baseSpAttack = 50, - .baseSpDefense = 70, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 70 : 50, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 127, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 145 : 116, @@ -2576,7 +2576,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 44, .baseSpeed = 55, .baseSpAttack = 40, - .baseSpDefense = 54, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 54 : 40, .types = MON_TYPES(TYPE_POISON), .catchRate = 255, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 58 : 62, @@ -2649,7 +2649,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 69, .baseSpeed = 80, .baseSpAttack = 65, - .baseSpDefense = 79, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 79 : 65, .types = MON_TYPES(TYPE_POISON), .catchRate = 90, #if P_UPDATED_EXP_YIELDS >= GEN_7 @@ -2873,7 +2873,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = P_UPDATED_STATS >= GEN_6 ? 40 : 30, .baseSpeed = 90, .baseSpAttack = 50, - .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 50 : 40, + .baseSpDefense = P_UPDATED_STATS >= GEN_6 || P_UPDATED_STATS == GEN_1 ? 50 : 40, .types = MON_TYPES(TYPE_ELECTRIC), .catchRate = 190, .expYield = PIKACHU_EXP_YIELD, @@ -3731,7 +3731,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = P_UPDATED_STATS >= GEN_6 ? 40 : 30, .baseSpeed = 90, .baseSpAttack = 50, - .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 50 : 40, + .baseSpDefense = P_UPDATED_STATS >= GEN_6 || P_UPDATED_STATS == GEN_1 ? 50 : 40, .types = MON_TYPES(TYPE_ELECTRIC), .catchRate = 190, .expYield = PIKACHU_EXP_YIELD, @@ -3881,7 +3881,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 55, .baseSpeed = RAICHU_SPEED, .baseSpAttack = 90, - .baseSpDefense = 80, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 80 : 90, .types = MON_TYPES(TYPE_ELECTRIC), .catchRate = 75, .expYield = RAICHU_EXP_YIELD, @@ -4031,7 +4031,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 75, .baseDefense = 85, .baseSpeed = 40, - .baseSpAttack = 20, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 20 : 30, .baseSpDefense = 30, .types = MON_TYPES(TYPE_GROUND), .catchRate = 255, @@ -4104,7 +4104,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 100, .baseDefense = 110, .baseSpeed = 65, - .baseSpAttack = 45, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 45 : 55, .baseSpDefense = 55, .types = MON_TYPES(TYPE_GROUND), .catchRate = 90, @@ -4465,7 +4465,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 87, .baseSpeed = 76, .baseSpAttack = 75, - .baseSpDefense = 85, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 85 : 75, .types = MON_TYPES(TYPE_POISON, TYPE_GROUND), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -4687,7 +4687,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = P_UPDATED_STATS >= GEN_6 ? 102 : 92, .baseDefense = 77, .baseSpeed = 85, - .baseSpAttack = 85, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 85 : 75, .baseSpDefense = 75, .types = MON_TYPES(TYPE_POISON, TYPE_GROUND), .catchRate = 45, @@ -4855,7 +4855,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 48, .baseSpeed = 35, .baseSpAttack = 60, - .baseSpDefense = 65, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 65 : 60, .types = CLEFAIRY_FAMILY_TYPES, .catchRate = 150, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 113 : 68, @@ -4929,7 +4929,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 73, .baseSpeed = 60, .baseSpAttack = P_UPDATED_STATS >= GEN_6 ? 95 : 85, - .baseSpDefense = 90, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 90 : 85, .types = CLEFAIRY_FAMILY_TYPES, .catchRate = 25, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -5011,7 +5011,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 41, .baseDefense = 40, .baseSpeed = 65, - .baseSpAttack = 50, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 50 : 65, .baseSpDefense = 65, .types = MON_TYPES(TYPE_FIRE), .catchRate = 190, @@ -5084,7 +5084,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 76, .baseDefense = 75, .baseSpeed = 100, - .baseSpAttack = 81, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 81 : 100, .baseSpDefense = 100, .types = MON_TYPES(TYPE_FIRE), .catchRate = 75, @@ -5379,7 +5379,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 45, .baseDefense = 20, .baseSpeed = 20, - .baseSpAttack = 45, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 45 : 25, .baseSpDefense = 25, .types = JIGGLYPUFF_FAMILY_TYPES, .catchRate = 170, @@ -5449,13 +5449,21 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .evolutions = EVOLUTION({EVO_ITEM, ITEM_MOON_STONE, SPECIES_WIGGLYTUFF}), }, +#if P_UPDATED_STATS >= GEN_6 +#define WIGGLYTUFF_SP_ATK 85 +#elif P_UPDATED_STATS >= GEN_2 +#define WIGGLYTUFF_SP_ATK 75 +#else +#define WIGGLYTUFF_SP_ATK 50 +#endif + [SPECIES_WIGGLYTUFF] = { .baseHP = 140, .baseAttack = 70, .baseDefense = 45, .baseSpeed = 45, - .baseSpAttack = P_UPDATED_STATS >= GEN_6 ? 85 : 75, + .baseSpAttack = WIGGLYTUFF_SP_ATK, .baseSpDefense = 50, .types = JIGGLYPUFF_FAMILY_TYPES, .catchRate = 50, @@ -5540,7 +5548,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 45, .baseDefense = 35, .baseSpeed = 55, - .baseSpAttack = 30, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 30 : 40, .baseSpDefense = 40, .types = MON_TYPES(TYPE_POISON, TYPE_FLYING), .catchRate = 255, @@ -5633,7 +5641,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 80, .baseDefense = 70, .baseSpeed = 90, - .baseSpAttack = 65, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 65 : 75, .baseSpDefense = 75, .types = MON_TYPES(TYPE_POISON, TYPE_FLYING), .catchRate = 90, @@ -5824,7 +5832,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 55, .baseSpeed = 30, .baseSpAttack = 75, - .baseSpDefense = 65, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 65 : 75, .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), .catchRate = 255, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 64 : 78, @@ -5898,7 +5906,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 70, .baseSpeed = 40, .baseSpAttack = 85, - .baseSpDefense = 75, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 75 : 85, .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), .catchRate = 120, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 138 : 132, @@ -5982,7 +5990,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 85, .baseSpeed = 50, .baseSpAttack = P_UPDATED_STATS >= GEN_6 ? 110 : 100, - .baseSpDefense = 90, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 90 : 100, .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -6162,7 +6170,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 70, .baseDefense = 55, .baseSpeed = 25, - .baseSpAttack = 45, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 45 : 55, .baseSpDefense = 55, .types = MON_TYPES(TYPE_BUG, TYPE_GRASS), .catchRate = 190, @@ -6251,7 +6259,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 95, .baseDefense = 80, .baseSpeed = 30, - .baseSpAttack = 60, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 60 : 80, .baseSpDefense = 80, .types = MON_TYPES(TYPE_BUG, TYPE_GRASS), .catchRate = 75, @@ -6332,7 +6340,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 50, .baseSpeed = 45, .baseSpAttack = 40, - .baseSpDefense = 55, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 55 : 40, .types = MON_TYPES(TYPE_BUG, TYPE_POISON), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 75, @@ -6409,7 +6417,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 60, .baseSpeed = 90, .baseSpAttack = 90, - .baseSpDefense = 75, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 75 : 90, .types = MON_TYPES(TYPE_BUG, TYPE_POISON), .catchRate = 75, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 158 : 138, @@ -6506,15 +6514,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #define DUGTRIO_EXP_YIELD 153 #endif -#define DUGTRIO_ATTACK (P_UPDATED_STATS >= GEN_7 ? 100 : 80) - [SPECIES_DIGLETT] = { .baseHP = 10, .baseAttack = 55, .baseDefense = 25, .baseSpeed = 95, - .baseSpAttack = 35, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 35 : 45, .baseSpDefense = 45, .types = MON_TYPES(TYPE_GROUND), .catchRate = 255, @@ -6583,10 +6589,10 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = [SPECIES_DUGTRIO] = { .baseHP = 35, - .baseAttack = DUGTRIO_ATTACK, + .baseAttack = P_UPDATED_STATS >= GEN_7 ? 100 : 80, .baseDefense = 50, .baseSpeed = 120, - .baseSpAttack = 50, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 50 : 70, .baseSpDefense = 70, .types = MON_TYPES(TYPE_GROUND), .catchRate = 50, @@ -6729,7 +6735,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = [SPECIES_DUGTRIO_ALOLA] = { .baseHP = 35, - .baseAttack = DUGTRIO_ATTACK, + .baseAttack = 100, .baseDefense = 60, .baseSpeed = 110, .baseSpAttack = 50, @@ -7285,7 +7291,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 52, .baseDefense = 48, .baseSpeed = 55, - .baseSpAttack = 65, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 65 : 50, .baseSpDefense = 50, .types = MON_TYPES(TYPE_WATER), .catchRate = 190, @@ -7356,7 +7362,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 82, .baseDefense = 78, .baseSpeed = 85, - .baseSpAttack = 95, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 95 : 80, .baseSpDefense = 80, .types = MON_TYPES(TYPE_WATER), .catchRate = 75, @@ -7428,7 +7434,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 35, .baseSpeed = 70, .baseSpAttack = 35, - .baseSpDefense = 45, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 45 : 35, .types = MON_TYPES(TYPE_FIGHTING), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 74, @@ -7505,7 +7511,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 60, .baseSpeed = 95, .baseSpAttack = 60, - .baseSpDefense = 70, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 70 : 60, .types = MON_TYPES(TYPE_FIGHTING), .catchRate = 75, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 149, @@ -7647,7 +7653,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 70, .baseDefense = 45, .baseSpeed = 60, - .baseSpAttack = 70, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 70 : 50, .baseSpDefense = 50, .types = MON_TYPES(TYPE_FIRE), .catchRate = 190, @@ -7721,7 +7727,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 110, .baseDefense = 80, .baseSpeed = 95, - .baseSpAttack = 100, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 100 : 80, .baseSpDefense = 80, .types = MON_TYPES(TYPE_FIRE), .catchRate = 75, @@ -8070,7 +8076,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 95, .baseSpeed = 70, .baseSpAttack = 70, - .baseSpDefense = 90, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 90 : 70, .types = MON_TYPES(TYPE_WATER, TYPE_FIGHTING), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -8242,7 +8248,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 15, .baseSpeed = 90, .baseSpAttack = 105, - .baseSpDefense = 55, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 55 : 105, .types = MON_TYPES(TYPE_PSYCHIC), .catchRate = 200, #if P_UPDATED_EXP_YIELDS >= GEN_5 @@ -8320,7 +8326,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 30, .baseSpeed = 105, .baseSpAttack = 120, - .baseSpDefense = 70, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 70 : 120, .types = MON_TYPES(TYPE_PSYCHIC), .catchRate = 100, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 140 : 145, @@ -8397,7 +8403,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = {EVO_ITEM, ITEM_LINKING_CORD, SPECIES_ALAKAZAM}), }, -#define ALAKAZAM_SP_DEF (P_UPDATED_STATS >= GEN_6 ? 95 : 85) +#if P_UPDATED_STATS >= GEN_6 +#define ALAKAZAM_SP_DEF 95 +#elif P_UPDATED_STATS >= GEN_2 +#define ALAKAZAM_SP_DEF 85 +#else +#define ALAKAZAM_SP_DEF 135 +#endif [SPECIES_ALAKAZAM] = { @@ -8498,7 +8510,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 65, .baseSpeed = 150, .baseSpAttack = 175, - .baseSpDefense = ALAKAZAM_SP_DEF + 10, + .baseSpDefense = 105, .types = MON_TYPES(TYPE_PSYCHIC), .catchRate = 50, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_8) ? 300 : 270, @@ -8652,7 +8664,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 70, .baseSpeed = 45, .baseSpAttack = 50, - .baseSpDefense = 60, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 60 : 50, .types = MON_TYPES(TYPE_FIGHTING), .catchRate = 90, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 146, @@ -8735,7 +8747,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 80, .baseSpeed = 55, .baseSpAttack = 65, - .baseSpDefense = 85, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 85 : 65, .types = MON_TYPES(TYPE_FIGHTING), .catchRate = 45, .expYield = MACHAMP_EXP_YIELD, @@ -8814,7 +8826,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 80, .baseSpeed = 55, .baseSpAttack = 65, - .baseSpDefense = 85, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 85 : 65, .types = MON_TYPES(TYPE_FIGHTING), .catchRate = 45, .expYield = MACHAMP_EXP_YIELD, @@ -8879,7 +8891,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 35, .baseSpeed = 40, .baseSpAttack = 70, - .baseSpDefense = 30, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 30 : 70, .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), .catchRate = 255, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 60 : 84, @@ -8948,7 +8960,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 50, .baseSpeed = 55, .baseSpAttack = 85, - .baseSpDefense = 45, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 45 : 85, .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), .catchRate = 120, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 137 : 151, @@ -9014,6 +9026,14 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .evolutions = EVOLUTION({EVO_ITEM, ITEM_LEAF_STONE, SPECIES_VICTREEBEL}), }, +#if P_UPDATED_STATS >= GEN_6 + #define VICTREEBEL_SP_DEF 70 +#elif P_UPDATED_STATS >= GEN_2 + #define VICTREEBEL_SP_DEF 60 +#else + #define VICTREEBEL_SP_DEF 100 +#endif + [SPECIES_VICTREEBEL] = { .baseHP = 80, @@ -9021,7 +9041,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 65, .baseSpeed = 70, .baseSpAttack = 100, - .baseSpDefense = P_UPDATED_STATS >= GEN_6 ? 70 : 60, + .baseSpDefense = VICTREEBEL_SP_DEF, .types = MON_TYPES(TYPE_GRASS, TYPE_POISON), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -9101,7 +9121,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 40, .baseDefense = 35, .baseSpeed = 70, - .baseSpAttack = 50, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 50 : 100, .baseSpDefense = 100, .types = MON_TYPES(TYPE_WATER, TYPE_POISON), .catchRate = 190, @@ -9173,7 +9193,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 70, .baseDefense = 65, .baseSpeed = 100, - .baseSpAttack = 80, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 80 : 120, .baseSpDefense = 120, .types = MON_TYPES(TYPE_WATER, TYPE_POISON), .catchRate = 60, @@ -9412,7 +9432,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 130, .baseSpeed = 45, .baseSpAttack = 55, - .baseSpDefense = 65, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 65 : 55, .types = MON_TYPES(TYPE_ROCK, TYPE_GROUND), .catchRate = 45, .expYield = GOLEM_EXP_YIELD, @@ -10036,7 +10056,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 75, .baseDefense = 110, .baseSpeed = 30, - .baseSpAttack = 100, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 100 : 80, .baseSpDefense = 80, .types = MON_TYPES(TYPE_WATER, TYPE_PSYCHIC), .catchRate = 75, @@ -10453,7 +10473,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 70, .baseSpeed = 45, .baseSpAttack = 95, - .baseSpDefense = 55, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 55 : 95, .types = MON_TYPES(TYPE_ELECTRIC, TYPE_STEEL), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 89, @@ -10525,7 +10545,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 95, .baseSpeed = 70, .baseSpAttack = 120, - .baseSpDefense = 70, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 70 : 120, .types = MON_TYPES(TYPE_ELECTRIC, TYPE_STEEL), .catchRate = 60, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 163 : 161, @@ -10691,7 +10711,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 55, .baseSpeed = 60, .baseSpAttack = 58, - .baseSpDefense = 62, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 62 : 58, .types = MON_TYPES(TYPE_NORMAL, TYPE_FLYING), .catchRate = 45, .expYield = FARFETCHD_EXP_YIELD, @@ -11083,7 +11103,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 45, .baseDefense = 55, .baseSpeed = 45, - .baseSpAttack = 45, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 45 : 70, .baseSpDefense = 70, .types = MON_TYPES(TYPE_WATER), .catchRate = 190, @@ -11157,7 +11177,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 70, .baseDefense = 80, .baseSpeed = 70, - .baseSpAttack = 70, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 70 : 95, .baseSpDefense = 95, .types = MON_TYPES(TYPE_WATER, TYPE_ICE), .catchRate = 75, @@ -11231,7 +11251,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 50, .baseSpeed = 25, .baseSpAttack = 40, - .baseSpDefense = 50, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 50 : 40, .types = MON_TYPES(TYPE_POISON), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 90, @@ -11304,7 +11324,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 75, .baseSpeed = 50, .baseSpAttack = 65, - .baseSpDefense = 100, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 100 : 65, .types = MON_TYPES(TYPE_POISON), .catchRate = 75, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 157, @@ -11517,7 +11537,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 100, .baseSpeed = 40, .baseSpAttack = 45, - .baseSpDefense = 25, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 25 : 45, .types = MON_TYPES(TYPE_WATER), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 61 : 97, @@ -11594,7 +11614,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 180, .baseSpeed = 70, .baseSpAttack = 85, - .baseSpDefense = 45, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 45 : 85, .types = MON_TYPES(TYPE_WATER, TYPE_ICE), .catchRate = 60, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 203, @@ -11670,7 +11690,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 30, .baseSpeed = 80, .baseSpAttack = 100, - .baseSpDefense = 35, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 35 : 100, .types = MON_TYPES(TYPE_GHOST, TYPE_POISON), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 62 : 95, @@ -11744,7 +11764,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 45, .baseSpeed = 95, .baseSpAttack = 115, - .baseSpDefense = 55, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 55 : 115, .types = MON_TYPES(TYPE_GHOST, TYPE_POISON), .catchRate = 90, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 142 : 126, @@ -11823,7 +11843,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 60, .baseSpeed = 110, .baseSpAttack = 130, - .baseSpDefense = 75, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 75 : 130, .types = MON_TYPES(TYPE_GHOST, TYPE_POISON), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -11969,7 +11989,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 60, .baseSpeed = 110, .baseSpAttack = 130, - .baseSpDefense = 75, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 75 : 130, .types = MON_TYPES(TYPE_GHOST, TYPE_POISON), .catchRate = 45, .expYield = 225, @@ -12029,7 +12049,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 160, .baseSpeed = 70, .baseSpAttack = 30, - .baseSpDefense = 45, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 45 : 30, .types = MON_TYPES(TYPE_ROCK, TYPE_GROUND), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 77 : 108, @@ -12258,7 +12278,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 48, .baseDefense = 45, .baseSpeed = 42, - .baseSpAttack = 43, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 43 : 90, .baseSpDefense = 90, .types = MON_TYPES(TYPE_PSYCHIC), .catchRate = 190, @@ -12335,7 +12355,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 73, .baseDefense = 70, .baseSpeed = 67, - .baseSpAttack = 73, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 73 : 115, .baseSpDefense = 115, .types = MON_TYPES(TYPE_PSYCHIC), .catchRate = 75, @@ -12916,7 +12936,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 80, .baseSpeed = 40, .baseSpAttack = 60, - .baseSpDefense = 45, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 45 : 60, .types = MON_TYPES(TYPE_GRASS, TYPE_PSYCHIC), .catchRate = 90, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 65 : 98, @@ -12994,7 +13014,13 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = #define EXEGGUTOR_EXP_YIELD 212 #endif -#define EXEGGUTOR_SP_DEF (P_UPDATED_STATS >= GEN_7 ? 75 : 65) +#if P_UPDATED_STATS >= GEN_7 + #define EXEGGUTOR_SP_DEF 75 +#elif P_UPDATED_STATS >= GEN_2 + #define EXEGGUTOR_SP_DEF 65 +#else + #define EXEGGUTOR_SP_DEF 125 +#endif [SPECIES_EXEGGUTOR] = { @@ -13139,7 +13165,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 95, .baseSpeed = 35, .baseSpAttack = 40, - .baseSpDefense = 50, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 50 : 40, .types = MON_TYPES(TYPE_GROUND), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 64 : 87, @@ -13215,7 +13241,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 110, .baseSpeed = 45, .baseSpAttack = 50, - .baseSpDefense = 80, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 80 : 50, .types = MON_TYPES(TYPE_GROUND), .catchRate = 75, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 149 : 124, @@ -13493,7 +13519,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 53, .baseSpeed = 87, .baseSpAttack = 35, - .baseSpDefense = 110, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 110 : 35, .types = MON_TYPES(TYPE_FIGHTING), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 139, @@ -13564,7 +13590,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 79, .baseSpeed = 76, .baseSpAttack = 35, - .baseSpDefense = 110, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 110 : 35, .types = MON_TYPES(TYPE_FIGHTING), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 159 : 140, @@ -13720,7 +13746,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 75, .baseSpeed = 30, .baseSpAttack = 60, - .baseSpDefense = 75, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 75 : 60, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 77 : 127, @@ -13867,7 +13893,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 95, .baseSpeed = 35, .baseSpAttack = 60, - .baseSpDefense = 45, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 45 : 60, .types = MON_TYPES(TYPE_POISON), .catchRate = 190, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 68 : 114, @@ -13945,7 +13971,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 120, .baseSpeed = 60, .baseSpAttack = 85, - .baseSpDefense = 70, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 70 : 85, .types = MON_TYPES(TYPE_POISON), .catchRate = 60, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 173, @@ -14423,7 +14449,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 5, .baseDefense = 5, .baseSpeed = 50, - .baseSpAttack = 35, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 35 : 105, .baseSpDefense = 105, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 30, @@ -14566,7 +14592,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 115, .baseSpeed = 60, .baseSpAttack = 100, - .baseSpDefense = 40, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 40 : 100, .types = MON_TYPES(TYPE_GRASS), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 87 : 166, @@ -14725,7 +14751,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 80, .baseSpeed = 90, .baseSpAttack = 40, - .baseSpDefense = 80, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 80 : 40, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 172 : 175, @@ -14869,7 +14895,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 70, .baseSpeed = 60, .baseSpAttack = 70, - .baseSpDefense = 25, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 25 : 70, .types = MON_TYPES(TYPE_WATER), .catchRate = 225, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 59 : 83, @@ -14945,7 +14971,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 95, .baseSpeed = 85, .baseSpAttack = 95, - .baseSpDefense = 45, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 45 : 95, .types = MON_TYPES(TYPE_WATER), .catchRate = 75, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 154 : 155, @@ -15107,7 +15133,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 67, .baseDefense = 60, .baseSpeed = 63, - .baseSpAttack = 35, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 35 : 50, .baseSpDefense = 50, .types = MON_TYPES(TYPE_WATER), .catchRate = 225, @@ -15196,7 +15222,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 92, .baseDefense = 65, .baseSpeed = 68, - .baseSpAttack = 65, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 65 : 80, .baseSpDefense = 80, .types = MON_TYPES(TYPE_WATER), .catchRate = 60, @@ -15282,7 +15308,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 55, .baseSpeed = 85, .baseSpAttack = 70, - .baseSpDefense = 55, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 55 : 70, .types = MON_TYPES(TYPE_WATER), .catchRate = 225, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 68 : 106, @@ -15355,7 +15381,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 85, .baseSpeed = 115, .baseSpAttack = 100, - .baseSpDefense = 85, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 85 : 100, .types = MON_TYPES(TYPE_WATER, TYPE_PSYCHIC), .catchRate = 60, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 182 : 207, @@ -15511,7 +15537,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 65, .baseSpeed = 90, .baseSpAttack = 100, - .baseSpDefense = 120, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 120 : 100, #if P_UPDATED_TYPES >= GEN_6 .types = MON_TYPES(TYPE_PSYCHIC, TYPE_FAIRY), #else @@ -15720,7 +15746,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 80, .baseSpeed = 105, .baseSpAttack = 55, - .baseSpDefense = 80, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 80 : 55, .types = MON_TYPES(TYPE_BUG, TYPE_FLYING), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 100 : 187, @@ -16109,7 +16135,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 50, .baseDefense = 35, .baseSpeed = 95, - .baseSpAttack = 115, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 115 : 95, .baseSpDefense = 95, .types = MON_TYPES(TYPE_ICE, TYPE_PSYCHIC), .catchRate = 45, @@ -16257,7 +16283,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 83, .baseDefense = 57, .baseSpeed = 105, - .baseSpAttack = 95, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 95 : 85, .baseSpDefense = 85, .types = MON_TYPES(TYPE_ELECTRIC), .catchRate = 45, @@ -16482,7 +16508,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 95, .baseDefense = 57, .baseSpeed = 93, - .baseSpAttack = 100, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 100 : 85, .baseSpDefense = 85, .types = MON_TYPES(TYPE_FIRE), .catchRate = 45, @@ -16630,7 +16656,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 100, .baseSpeed = 85, .baseSpAttack = 55, - .baseSpDefense = 70, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 70 : 55, .types = MON_TYPES(TYPE_BUG), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 175 : 200, @@ -16779,7 +16805,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 100, .baseDefense = 95, .baseSpeed = 110, - .baseSpAttack = 40, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 40 : 70, .baseSpDefense = 70, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 45, @@ -17056,7 +17082,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 10, .baseDefense = 55, .baseSpeed = 80, - .baseSpAttack = 15, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 15 : 20, .baseSpDefense = 20, .types = MON_TYPES(TYPE_WATER), .catchRate = 255, @@ -17144,7 +17170,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 125, .baseDefense = 79, .baseSpeed = 81, - .baseSpAttack = 60, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 60 : 100, .baseSpDefense = 100, .types = MON_TYPES(TYPE_WATER, TYPE_FLYING), .catchRate = 45, @@ -17299,7 +17325,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 85, .baseDefense = 80, .baseSpeed = 60, - .baseSpAttack = 85, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 85 : 95, .baseSpDefense = 95, .types = MON_TYPES(TYPE_WATER, TYPE_ICE), .catchRate = 45, @@ -17371,7 +17397,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 85, .baseDefense = 80, .baseSpeed = 60, - .baseSpAttack = 85, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 85 : 95, .baseSpDefense = 95, .types = MON_TYPES(TYPE_WATER, TYPE_ICE), .catchRate = 45, @@ -17507,7 +17533,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 55, .baseDefense = 50, .baseSpeed = 55, - .baseSpAttack = 45, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 45 : 65, .baseSpDefense = 65, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 45, @@ -17600,7 +17626,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 55, .baseDefense = 50, .baseSpeed = 55, - .baseSpAttack = 45, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 45 : 65, .baseSpDefense = 65, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 45, @@ -17736,7 +17762,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 60, .baseSpeed = 65, .baseSpAttack = 110, - .baseSpDefense = 95, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 95 : 110, .types = MON_TYPES(TYPE_WATER), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 196, @@ -17802,7 +17828,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 60, .baseSpeed = 130, .baseSpAttack = 110, - .baseSpDefense = 95, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 95 : 110, .types = MON_TYPES(TYPE_ELECTRIC), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 184 : 197, @@ -17867,7 +17893,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 130, .baseDefense = 60, .baseSpeed = 65, - .baseSpAttack = 95, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 95 : 110, .baseSpDefense = 110, .types = MON_TYPES(TYPE_FIRE), .catchRate = 45, @@ -18276,7 +18302,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 60, .baseDefense = 70, .baseSpeed = 40, - .baseSpAttack = 85, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 85 : 75, .baseSpDefense = 75, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 45, @@ -18508,7 +18534,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 100, .baseSpeed = 35, .baseSpAttack = 90, - .baseSpDefense = 55, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 55 : 90, .types = MON_TYPES(TYPE_ROCK, TYPE_WATER), .catchRate = 45, #if P_UPDATED_EXP_YIELDS >= GEN_5 @@ -18588,7 +18614,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 125, .baseSpeed = 55, .baseSpAttack = 115, - .baseSpDefense = 70, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 70 : 115, .types = MON_TYPES(TYPE_ROCK, TYPE_WATER), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 173 : 199, @@ -18657,7 +18683,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 80, .baseDefense = 90, .baseSpeed = 55, - .baseSpAttack = 55, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 55 : 45, .baseSpDefense = 45, .types = MON_TYPES(TYPE_ROCK, TYPE_WATER), .catchRate = 45, @@ -18737,7 +18763,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 115, .baseDefense = 105, .baseSpeed = 80, - .baseSpAttack = 65, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 65 : 70, .baseSpDefense = 70, .types = MON_TYPES(TYPE_ROCK, TYPE_WATER), .catchRate = 45, @@ -18814,7 +18840,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 65, .baseSpeed = 130, .baseSpAttack = 60, - .baseSpDefense = 75, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 75 : 60, .types = MON_TYPES(TYPE_ROCK, TYPE_FLYING), .catchRate = 45, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 180 : 202, @@ -19032,7 +19058,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 65, .baseSpeed = 30, .baseSpAttack = 65, - .baseSpDefense = 110, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 110 : 65, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 25, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 189 : 154, @@ -19105,7 +19131,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 65, .baseSpeed = 30, .baseSpAttack = 65, - .baseSpDefense = 110, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 110 : 65, .types = MON_TYPES(TYPE_NORMAL), .catchRate = 25, .expYield = (P_UPDATED_EXP_YIELDS >= GEN_5) ? 189 : 154, @@ -19167,7 +19193,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseAttack = 85, .baseDefense = 100, .baseSpeed = 85, - .baseSpAttack = 95, + .baseSpAttack = P_UPDATED_STATS >= GEN_2 ? 95 : 125, .baseSpDefense = 125, .types = MON_TYPES(TYPE_ICE, TYPE_FLYING), .catchRate = 3, @@ -19318,7 +19344,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 85, .baseSpeed = 100, .baseSpAttack = 125, - .baseSpDefense = 90, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 90 : 125, .types = MON_TYPES(TYPE_ELECTRIC, TYPE_FLYING), .catchRate = 3, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -19471,7 +19497,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 90, .baseSpeed = 90, .baseSpAttack = 125, - .baseSpDefense = 85, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 85 : 125, .types = MON_TYPES(TYPE_FIRE, TYPE_FLYING), .catchRate = 3, #if P_UPDATED_EXP_YIELDS >= GEN_8 @@ -19865,7 +19891,7 @@ const struct SpeciesInfo gSpeciesInfoGen1[] = .baseDefense = 90, .baseSpeed = 130, .baseSpAttack = 154, - .baseSpDefense = 90, + .baseSpDefense = P_UPDATED_STATS >= GEN_2 ? 90 : 154, .types = MON_TYPES(TYPE_PSYCHIC), .catchRate = 3, #if P_UPDATED_EXP_YIELDS >= GEN_8