diff --git a/PKHeX/Legality/Core.cs b/PKHeX/Legality/Core.cs index 1a58199f9..0f4809a4a 100644 --- a/PKHeX/Legality/Core.cs +++ b/PKHeX/Legality/Core.cs @@ -159,14 +159,14 @@ private static EncounterArea[] getEncounterTables(byte[] mini, string ident) { return EncounterArea.getArray(Data.unpackMini(mini, ident)); } - private static EncounterArea[] addExtraTableSlots(EncounterArea[] GameSlots, EncounterArea[] SpecialSlots) + private static IEnumerable addExtraTableSlots(IEnumerable GameSlots, IEnumerable SpecialSlots) { foreach (EncounterArea g in GameSlots) { foreach (var slots in SpecialSlots.Where(l => l.Location == g.Location)) g.Slots = g.Slots.Concat(slots.Slots).ToArray(); } - return GameSlots; + return GameSlots.Concat(SpecialSlots.Where(s => !GameSlots.Any(g => g.Location == s.Location))).ToArray(); } private static void ReduceAreasSize(ref EncounterArea[] Areas) { @@ -318,17 +318,17 @@ private static void MarkG7SMSlots(ref EncounterArea[] Areas) } private static EncounterArea[] getTables1() { - var red = EncounterArea.getArray1_GW(Resources.encounter_red); - var blu = EncounterArea.getArray1_GW(Resources.encounter_blue); - var ylw = EncounterArea.getArray1_GW(Resources.encounter_yellow); + var red_gw = EncounterArea.getArray1_GW(Resources.encounter_red); + var blu_gw = EncounterArea.getArray1_GW(Resources.encounter_blue); + var ylw_gw = EncounterArea.getArray1_GW(Resources.encounter_yellow); var rb_fish = EncounterArea.getArray1_F(Resources.encounter_rb_f); var ylw_fish = EncounterArea.getArray1_FY(Resources.encounter_yellow_f); - red = addExtraTableSlots(red, rb_fish); - blu = addExtraTableSlots(blu, rb_fish); - ylw = addExtraTableSlots(ylw, ylw_fish); + var red = addExtraTableSlots(red_gw, rb_fish); + var blu = addExtraTableSlots(blu_gw, rb_fish); + var ylw = addExtraTableSlots(ylw_gw, ylw_fish); - var table = addExtraTableSlots(addExtraTableSlots(red, blu), ylw); + var table = addExtraTableSlots(addExtraTableSlots(red, blu), ylw).ToArray(); Array.Resize(ref table, table.Length + 1); table[table.Length - 1] = FishOldGood_RBY; @@ -348,7 +348,7 @@ private static EncounterArea[] getTables2(GameVersion Version) var h_g = EncounterArea.getArray2_H(Resources.encounter_gold_h); var h_s = EncounterArea.getArray2_H(Resources.encounter_silver_h); - Slots = addExtraTableSlots(addExtraTableSlots(addExtraTableSlots(addExtraTableSlots(g, s), h_g), h_s),f); + Slots = addExtraTableSlots(addExtraTableSlots(addExtraTableSlots(addExtraTableSlots(g, s), h_g), h_s),f).ToArray(); } if (Version == GameVersion.C || Version == GameVersion.GSC) { @@ -358,7 +358,7 @@ private static EncounterArea[] getTables2(GameVersion Version) var h_c = EncounterArea.getArray2_H(Resources.encounter_crystal_h); var extra = addExtraTableSlots(addExtraTableSlots(c, h_c),f); - return Version == GameVersion.C ? extra : addExtraTableSlots(Slots, extra); + return Version == GameVersion.C ? extra.ToArray() : addExtraTableSlots(Slots, extra).ToArray(); } return Slots; @@ -406,11 +406,11 @@ private static EncounterArea[] getTables2(GameVersion Version) MarkG3Slots_FRLG(ref FR_Slots); MarkG3Slots_FRLG(ref LG_Slots); - SlotsR = addExtraTableSlots(R_Slots, SlotsRSEAlt); - SlotsS = addExtraTableSlots(S_Slots, SlotsRSEAlt); - SlotsE = addExtraTableSlots(E_Slots, SlotsRSEAlt); - SlotsFR = addExtraTableSlots(FR_Slots, SlotsFRLGAlt); - SlotsLG = addExtraTableSlots(LG_Slots, SlotsFRLGAlt); + SlotsR = addExtraTableSlots(R_Slots, SlotsRSEAlt).ToArray(); + SlotsS = addExtraTableSlots(S_Slots, SlotsRSEAlt).ToArray(); + SlotsE = addExtraTableSlots(E_Slots, SlotsRSEAlt).ToArray(); + SlotsFR = addExtraTableSlots(FR_Slots, SlotsFRLGAlt).ToArray(); + SlotsLG = addExtraTableSlots(LG_Slots, SlotsFRLGAlt).ToArray(); Evolves3 = new EvolutionTree(new[] { Resources.evos_g3 }, GameVersion.RS, PersonalTable.RS, MaxSpeciesID_3); @@ -465,11 +465,11 @@ private static EncounterArea[] getTables2(GameVersion Version) MarkG4Slots(ref HG_Headbutt_Slots); MarkG4Slots(ref SS_Headbutt_Slots); - SlotsD = addExtraTableSlots(addExtraTableSlots(D_Slots, D_HoneyTrees_Slots), SlotsDPPPtAlt); - SlotsP = addExtraTableSlots(addExtraTableSlots(P_Slots, P_HoneyTrees_Slots), SlotsDPPPtAlt); - SlotsPt = addExtraTableSlots(addExtraTableSlots(Pt_Slots, Pt_HoneyTrees_Slots), SlotsDPPPtAlt); - SlotsHG = addExtraTableSlots(addExtraTableSlots(HG_Slots, HG_Headbutt_Slots), SlotsHGSSAlt); - SlotsSS = addExtraTableSlots(addExtraTableSlots(SS_Slots, SS_Headbutt_Slots), SlotsHGSSAlt); + SlotsD = addExtraTableSlots(addExtraTableSlots(D_Slots, D_HoneyTrees_Slots), SlotsDPPPtAlt).ToArray(); + SlotsP = addExtraTableSlots(addExtraTableSlots(P_Slots, P_HoneyTrees_Slots), SlotsDPPPtAlt).ToArray(); + SlotsPt = addExtraTableSlots(addExtraTableSlots(Pt_Slots, Pt_HoneyTrees_Slots), SlotsDPPPtAlt).ToArray(); + SlotsHG = addExtraTableSlots(addExtraTableSlots(HG_Slots, HG_Headbutt_Slots), SlotsHGSSAlt).ToArray(); + SlotsSS = addExtraTableSlots(addExtraTableSlots(SS_Slots, SS_Headbutt_Slots), SlotsHGSSAlt).ToArray(); Evolves4 = new EvolutionTree(new[] { Resources.evos_g4 }, GameVersion.DP, PersonalTable.DP, MaxSpeciesID_4); @@ -491,8 +491,8 @@ private static EncounterArea[] getTables2(GameVersion Version) MarkG5Slots(ref WSlots); MarkBWSwarmSlots(ref SlotsB_Swarm); MarkBWSwarmSlots(ref SlotsW_Swarm); - SlotsB = addExtraTableSlots(BSlots, SlotsB_Swarm); - SlotsW = addExtraTableSlots(WSlots, SlotsW_Swarm); + SlotsB = addExtraTableSlots(BSlots, SlotsB_Swarm).ToArray(); + SlotsW = addExtraTableSlots(WSlots, SlotsW_Swarm).ToArray(); var B2Slots = getEncounterTables(GameVersion.B2); var W2Slots = getEncounterTables(GameVersion.W2); @@ -518,8 +518,8 @@ private static EncounterArea[] getTables2(GameVersion Version) var YSlots = getEncounterTables(GameVersion.Y); MarkG6XYSlots(ref XSlots); MarkG6XYSlots(ref YSlots); - SlotsX = addExtraTableSlots(XSlots, SlotsXYAlt); - SlotsY = addExtraTableSlots(YSlots, SlotsXYAlt); + SlotsX = addExtraTableSlots(XSlots, SlotsXYAlt).ToArray(); + SlotsY = addExtraTableSlots(YSlots, SlotsXYAlt).ToArray(); SlotsA = getEncounterTables(GameVersion.AS); SlotsO = getEncounterTables(GameVersion.OR); diff --git a/PKHeX/Legality/Tables4.cs b/PKHeX/Legality/Tables4.cs index b5525857b..0474a7890 100644 --- a/PKHeX/Legality/Tables4.cs +++ b/PKHeX/Legality/Tables4.cs @@ -450,7 +450,7 @@ public static partial class Legal private static readonly int[] Shellos_EastSeaLocation_DP = { 28, // Route 213 - 34, // Route 224 + 39, // Route 224 }; private static readonly int[] Shellos_EastSeaLocation_Pt = diff --git a/PKHeX/Resources/text/en/legality_en.txt b/PKHeX/Resources/text/en/legality_en.txt index 64c45d171..74ac36425 100644 --- a/PKHeX/Resources/text/en/legality_en.txt +++ b/PKHeX/Resources/text/en/legality_en.txt @@ -1,248 +1,248 @@ -V = Valid. -V193 = Legal! -V190 = Internal error. -V189 = Analysis not available for this Pokémon. -V196 = {0}: {1} -V191 = {0} Move {1}: {2} -V192 = {0} Relearn Move {1}: {2} -V195 = Encounter Type: {0} -V205 = OT -V206 = HT -V167 = Empty Move. -V171 = Egg Move. -V172 = Relearnable Move. -V173 = Learned by TM/HM. -V174 = Learned by Move Tutor. -V175 = Special Non-Relearn Move. -V177 = Learned by Level-up. -V203 = Genderless Pokémon should not have a gender. -V201 = Encryption Constant is not set. -V204 = Held item is unreleased. -V187 = Species does not exist in origin game. -V188 = Fateful Encounter with no matching Encounter. Has the Mystery Gift data been contributed? -V194 = Ingame Trade for Sun/Moon not implemented. -V207 = PID is not set. -V208 = Encryption Constant matches PID. -V209 = Static Encounter shiny mismatch. -V210 = Wurmple evolution Encryption Constant mismatch. -V211 = Encryption Constant matches shinyxored PID. -V212 = Wurmple Evolution: {0} -V213 = Silcoon -V214 = Cascoon -V215 = PID should be equal to EC [with top bit flipped]! -V216 = PID should be equal to EC! -V14 = Egg matches language Egg name. -V17 = Nickname does not match another species name. -V18 = Nickname matches species name. -V19 = Nickname matches demo language name. -V11 = Ingame Trade OT and Nickname have not been altered. -V1 = Nickname too long. -V2 = Nickname is empty. -V4 = Language ID > 8. -V5 = Language ID > 10. -V3 = Species index invalid for Nickname comparison. -V20 = Nickname does not match species name. -V13 = Egg name does not match language Egg name. -V12 = Eggs must be nicknamed. -V7 = Ingame Trade invalid version? -V8 = Ingame Trade invalid index? -V10 = Ingame Trade OT has been altered. -V9 = Ingame Trade Nickname has been altered. -V15 = Nickname matches another species name (+language). -V16 = Nickname flagged, matches species name. -V21 = Matches: {0} {1} -V25 = EV total cannot be above 510. -V22 = Eggs cannot receive EVs. -V23 = All EVs are zero, but leveled above Met Level. -V24 = 2 EVs remaining. -V26 = EVs cannot go above 252. -V27 = EVs are all equal. -V31 = All IVs are 0. -V32 = All IVs are equal. -V28 = Should have at least {0} IVs {get; set;} = 31. -V29 = Friend Safari captures should have at least 2 IVs = 31. -V30 = IVs do not match Mystery Gift Data. -V38 = OT Name too long. -V39 = Incorrect RBY event OT Name. -V34 = SID should be 0. -V33 = TID and SID are 0. -V35 = TID and SID are equal. -V36 = TID is zero. -V37 = SID is zero. -V40 = Can't Hyper Train a pokemon that isn't level 100. -V41 = Can't Hyper Train a pokemon with perfect IVs. -V42 = Can't Hyper Train a perfect IV. -V49 = Valid Pokémon Link gift. -V47 = Pokémon Link gift Shiny mismatch. -V48 = Pokémon Link gift should not be Fateful Encounter. -V43 = Can't find matching Pokémon Link gift. -V44 = Can't obtain this Pokémon Link gift in XY. -V45 = Can't obtain this Pokémon Link gift in ORAS. -V46 = Can't obtain this Pokémon Link gift in SM. -V63 = Valid un-hatched egg. -V53 = Able to hatch an egg at Met Location. -V56 = Able to hatch a traded egg at Met Location. -V54 = Can't hatch an egg at Met Location. -V55 = Can't obtain egg from Egg Location. -V57 = Can't transfer eggs between generations. -V50 = Can't obtain egg for this species. -V51 = Invalid Met Location for hatched egg. -V52 = Invalid Met Level, expected {0}. -V58 = Invalid Met Level for transfer. -V59 = Invalid Egg Location, expected none. -V60 = Invalid Met Location, expected Pal Park. -V61 = Invalid Met Location, expected Transporter. -V62 = Invalid Egg Location, shouldn't be 'traded' while an egg. -V66 = Valid Friend Safari encounter. -V64 = Friend Safari: Not valid color. -V6 = Friend Safari: Not average sized. -V65 = Friend Safari: Not Spring form. -V67 = Valid Wild Encounter at location (Pressure/Hustle/Vital Spirit). -V68 = Valid Wild Encounter at location. -V69 = Valid Wild Encounter at location (White Flute & Pressure/Hustle/Vital Spirit). -V70 = Valid Wild Encounter at location (White Flute). -V71 = Valid Wild Encounter at location (Black Flute & Pressure/Hustle/Vital Spirit). -V72 = Valid Wild Encounter at location (Black Flute). -V73 = Valid Wild Encounter at location (DexNav). -V76 = Valid ingame trade. -V75 = Valid gift/static encounter. -V74 = Static encounter relearn move mismatch. -V77 = Can't obtain Species from Virtual Console games. -V79 = Can't obtain Special encounter in Virtual Console games. -V78 = Unable to match to a Mystery Gift in the database. -V80 = Unable to match an encounter from origin game. -V81 = Invalid Transfer Met Location. -V82 = Mewtwo cannot be transferred while knowing Pay Day. -V88 = Current level is not below met level. -V83 = Met Level does not match Mystery Gift level. -V84 = Current Level below Mystery Gift level. -V85 = Current level is below met level. -V86 = Evolution not valid (or level/trade evolution unsatisfied). -V87 = Current experience matches level threshold. -V89 = Can't Super Train an egg. -V90 = Super Training missions are not available in games visited. -V91 = Can't have active Super Training unlocked flag for origins. -V92 = Can't have active Super Training complete flag for origins. -V93 = Super Training complete flag mismatch. -V94 = Distribution Super Training missions are not released. -V95 = Can't receive Ribbon(s) as an egg. -V96 = GBA Champion Ribbon -V97 = Artist Ribbon -V98 = National Ribbon (Purified) -V99 = Sinnoh Champion Ribbon -V100 = Legend Ribbon -V104 = Record Ribbon -V101 = Missing Ribbons: {0} -V102 = Invalid Ribbons: {0} -V103 = All ribbons accounted for. -V105 = Battle Memory Ribbon -V106 = Contest Memory Ribbon -V107 = Ability is not valid for species/form. -V108 = Hidden Ability mismatch for encounter type. -V109 = Ability modified with Ability Capsule. -V110 = Ability does not match Mystery Gift. -V111 = Hidden Ability on non-SOS wild encounter. -V300 = Hidden Ability on non-horde/friend safari wild encounter. -V112 = Hidden Ability not available. -V217 = Hidden Grotto captures should have Hidden Ability. -V115 = Ability matches ability number. -V113 = Ability does not match PID. -V114 = Ability does not match ability number. -V119 = Correct ball for encounter type. -V118 = Can't have ball for encounter type. -V116 = Can't have Heavy Ball for light, low-catch rate species (Gen VII). -V117 = Can't have Master Ball for regular egg. -V120 = Can't have Cherish Ball for regular egg. -V121 = Can't obtain species in Ball. -V122 = Can't obtain Hidden Ability with Ball. -V123 = Ball possible for species. -V125 = No check satisfied, assuming illegal. -V126 = Ball unobtainable in origin generation. -V145 = History block is valid. -V155 = {0} Memory is valid. -V127 = Skipped History check due to other check being invalid. -V128 = No History Block to check. -V129 = OT Affection should be 0. -V130 = Can't have any OT Memory. -V124 = Current handler cannot be past gen OT for transferred specimen. -V131 = HT Gender invalid: {0} -V132 = Event OT Friendship does not match base friendship. -V133 = Event OT Affection should be zero. -V134 = Current handler should not be Event OT. -V138 = Contest Stats should be 0. -V301 = Invalid Console Region. -V302 = Geolocation: Country is not in 3DS region. -V303 = Geolocation: Country is in 3DS region. -V137 = GeoLocation Memory: Memories should be present. -V135 = GeoLocation Memory: Gap/Blank present. -V136 = GeoLocation Memory: Region without Country. -V146 = GeoLocation Memory: HT Name present but has no previous Country. -V147 = GeoLocation Memory: Previous country of residence present with no Handling Trainer. -V139 = Untraded: Current handler should not be the Handling Trainer. -V140 = Untraded: Handling Trainer Friendship should be 0. -V141 = Untraded: Handling Trainer Affection should be 0. -V142 = Untraded: Requires a trade evolution. -V143 = Untraded: Beauty is not high enough for Level-up Evolution. -V144 = Untraded: Beauty is high enough but still Level 1. -V148 = Memory: Handling Trainer Memory present with no Handling Trainer name. -V150 = Memory: Handling Trainer Memory missing. -V152 = Memory: Original Trainer Memory missing. -V329 = Memory: Not cleared properly. -V149 = Memory: Can't have Handling Trainer Memory as egg. -V151 = Memory: Can't have Original Trainer Memory as egg. -V164 = {0} Memory: Species can be captured in game. -V153 = {0} Memory: Species can't learn this move. -V154 = {0} Memory: Location doesn't have a Pokemon Center. -V160 = {0} Memory: {0} did not hatch this. -V202 = {0} Memory: {0} did not catch this. -V161 = {0} Memory: Link Trade is not a valid first memory. -V162 = {0} Memory: Can't obtain Location on {0} Version. -V163 = {0} Memory: Can't obtain Memory on {0} Version. -V165 = {0} Memory: Can't capture species in game. -V197 = {0} Memory: Should be index {1}. -V198 = {0} Memory: Intensity should be index {1}. -V199 = {0} Memory: TextVar should be index {1}. -V200 = {0} Memory: Feeling should be index {1}. -V168 = Duplicate Move. -V176 = Invalid Move. -V166 = Invalid Move (Sketch). -V169 = Keldeo Move/Form mismatch. -V181 = Expected the following Relearn Moves: {0} -V170 = Relearn Moves missing: {0} -V178 = Expected: {0}. -V179 = Base egg move. -V180 = Base egg move missing. -V182 = Not an expected Relearnable move. -V183 = Not an expected DexNav move. -V184 = Expected no Relearn Move in slot. -V185 = Egg Moves Source: {0}. -V186 = Egg Move set check unimplemented. -V156 = Should have a Link Trade HT Memory. -V157 = Should have a HT Memory TextVar value (somewhere). -V158 = Should have a HT Memory Intensity value (1st). -V159 = Should have a HT Memory Feeling value 0-9. -V318 = Form is Valid. -V304 = Form Count is out of range. Expected <= {0}, got {1}. -V305 = Cosplay Pikachu cannot have the default form. -V306 = Only Cosplay Pikachu can have this form. -V307 = Event Pikachu cannot have the default form. -V308 = Held item does not match Form. -V309 = Held item matches Form. -V310 = Form cannot exist outside of a battle. -V311 = Event Vivillon pattern on pre-evolution. -V312 = Invalid Vivillon pattern. -V313 = Valid Vivillon pattern. -V314 = Invalid Eternal Flower encounter. -V315 = Valid Eternal Flower encounter. -V316 = Form cannot exist outside of Party. -V317 = Form cannot be obtained for pre-Alola generation games. -V319 = Cannot apply PP Ups to an Egg. -V320 = Cannot increase Contest Stats of an Egg. -V321 = Mystery Gift Fateful Encounter. -V322 = Mystery Gift Fateful Encounter flag missing. -V323 = Special ingame Fateful Encounter. -V324 = Special ingame Fateful Encounter flag missing. -V325 = Fateful Encounter should not be checked. -V326 = Special ingame N's Sparkle flag missing. -V327 = Special ingame N's Sparkle flag should not be checked. +V = Valid. +V193 = Legal! +V190 = Internal error. +V189 = Analysis not available for this Pokémon. +V196 = {0}: {1} +V191 = {0} Move {1}: {2} +V192 = {0} Relearn Move {1}: {2} +V195 = Encounter Type: {0} +V205 = OT +V206 = HT +V167 = Empty Move. +V171 = Egg Move. +V172 = Relearnable Move. +V173 = Learned by TM/HM. +V174 = Learned by Move Tutor. +V175 = Special Non-Relearn Move. +V177 = Learned by Level-up. +V203 = Genderless Pokémon should not have a gender. +V201 = Encryption Constant is not set. +V204 = Held item is unreleased. +V187 = Species does not exist in origin game. +V188 = Fateful Encounter with no matching Encounter. Has the Mystery Gift data been contributed? +V194 = Ingame Trade for Sun/Moon not implemented. +V207 = PID is not set. +V208 = Encryption Constant matches PID. +V209 = Static Encounter shiny mismatch. +V210 = Wurmple evolution Encryption Constant mismatch. +V211 = Encryption Constant matches shinyxored PID. +V212 = Wurmple Evolution: {0} +V213 = Silcoon +V214 = Cascoon +V215 = PID should be equal to EC [with top bit flipped]! +V216 = PID should be equal to EC! +V14 = Egg matches language Egg name. +V17 = Nickname does not match another species name. +V18 = Nickname matches species name. +V19 = Nickname matches demo language name. +V11 = Ingame Trade OT and Nickname have not been altered. +V1 = Nickname too long. +V2 = Nickname is empty. +V4 = Language ID > 8. +V5 = Language ID > 10. +V3 = Species index invalid for Nickname comparison. +V20 = Nickname does not match species name. +V13 = Egg name does not match language Egg name. +V12 = Eggs must be nicknamed. +V7 = Ingame Trade invalid version? +V8 = Ingame Trade invalid index? +V10 = Ingame Trade OT has been altered. +V9 = Ingame Trade Nickname has been altered. +V15 = Nickname matches another species name (+language). +V16 = Nickname flagged, matches species name. +V21 = Matches: {0} {1} +V25 = EV total cannot be above 510. +V22 = Eggs cannot receive EVs. +V23 = All EVs are zero, but leveled above Met Level. +V24 = 2 EVs remaining. +V26 = EVs cannot go above 252. +V27 = EVs are all equal. +V31 = All IVs are 0. +V32 = All IVs are equal. +V28 = Should have at least {0} IVs {get; set;} = 31. +V29 = Friend Safari captures should have at least 2 IVs = 31. +V30 = IVs do not match Mystery Gift Data. +V38 = OT Name too long. +V39 = Incorrect RBY event OT Name. +V34 = SID should be 0. +V33 = TID and SID are 0. +V35 = TID and SID are equal. +V36 = TID is zero. +V37 = SID is zero. +V40 = Can't Hyper Train a pokemon that isn't level 100. +V41 = Can't Hyper Train a pokemon with perfect IVs. +V42 = Can't Hyper Train a perfect IV. +V49 = Valid Pokémon Link gift. +V47 = Pokémon Link gift Shiny mismatch. +V48 = Pokémon Link gift should not be Fateful Encounter. +V43 = Can't find matching Pokémon Link gift. +V44 = Can't obtain this Pokémon Link gift in XY. +V45 = Can't obtain this Pokémon Link gift in ORAS. +V46 = Can't obtain this Pokémon Link gift in SM. +V63 = Valid un-hatched egg. +V53 = Able to hatch an egg at Met Location. +V56 = Able to hatch a traded egg at Met Location. +V54 = Can't hatch an egg at Met Location. +V55 = Can't obtain egg from Egg Location. +V57 = Can't transfer eggs between generations. +V50 = Can't obtain egg for this species. +V51 = Invalid Met Location for hatched egg. +V52 = Invalid Met Level, expected {0}. +V58 = Invalid Met Level for transfer. +V59 = Invalid Egg Location, expected none. +V60 = Invalid Met Location, expected Pal Park. +V61 = Invalid Met Location, expected Transporter. +V62 = Invalid Egg Location, shouldn't be 'traded' while an egg. +V66 = Valid Friend Safari encounter. +V64 = Friend Safari: Not valid color. +V6 = Friend Safari: Not average sized. +V65 = Friend Safari: Not Spring form. +V67 = Valid Wild Encounter at location (Pressure/Hustle/Vital Spirit). +V68 = Valid Wild Encounter at location. +V69 = Valid Wild Encounter at location (White Flute & Pressure/Hustle/Vital Spirit). +V70 = Valid Wild Encounter at location (White Flute). +V71 = Valid Wild Encounter at location (Black Flute & Pressure/Hustle/Vital Spirit). +V72 = Valid Wild Encounter at location (Black Flute). +V73 = Valid Wild Encounter at location (DexNav). +V76 = Valid ingame trade. +V75 = Valid gift/static encounter. +V74 = Static encounter relearn move mismatch. +V77 = Can't obtain Species from Virtual Console games. +V79 = Can't obtain Special encounter in Virtual Console games. +V78 = Unable to match to a Mystery Gift in the database. +V80 = Unable to match an encounter from origin game. +V81 = Invalid Transfer Met Location. +V82 = Mewtwo cannot be transferred while knowing Pay Day. +V88 = Current level is not below met level. +V83 = Met Level does not match Mystery Gift level. +V84 = Current Level below Mystery Gift level. +V85 = Current level is below met level. +V86 = Evolution not valid (or level/trade evolution unsatisfied). +V87 = Current experience matches level threshold. +V89 = Can't Super Train an egg. +V90 = Super Training missions are not available in games visited. +V91 = Can't have active Super Training unlocked flag for origins. +V92 = Can't have active Super Training complete flag for origins. +V93 = Super Training complete flag mismatch. +V94 = Distribution Super Training missions are not released. +V95 = Can't receive Ribbon(s) as an egg. +V96 = GBA Champion Ribbon +V97 = Artist Ribbon +V98 = National Ribbon (Purified) +V99 = Sinnoh Champion Ribbon +V100 = Legend Ribbon +V104 = Record Ribbon +V101 = Missing Ribbons: {0} +V102 = Invalid Ribbons: {0} +V103 = All ribbons accounted for. +V105 = Battle Memory Ribbon +V106 = Contest Memory Ribbon +V107 = Ability is not valid for species/form. +V108 = Hidden Ability mismatch for encounter type. +V109 = Ability modified with Ability Capsule. +V110 = Ability does not match Mystery Gift. +V111 = Hidden Ability on non-SOS wild encounter. +V300 = Hidden Ability on non-horde/friend safari wild encounter. +V112 = Hidden Ability not available. +V217 = Hidden Grotto captures should have Hidden Ability. +V115 = Ability matches ability number. +V113 = Ability does not match PID. +V114 = Ability does not match ability number. +V119 = Correct ball for encounter type. +V118 = Can't have ball for encounter type. +V116 = Can't have Heavy Ball for light, low-catch rate species (Gen VII). +V117 = Can't have Master Ball for regular egg. +V120 = Can't have Cherish Ball for regular egg. +V121 = Can't obtain species in Ball. +V122 = Can't obtain Hidden Ability with Ball. +V123 = Ball possible for species. +V125 = No check satisfied, assuming illegal. +V126 = Ball unobtainable in origin generation. +V145 = History block is valid. +V155 = {0} Memory is valid. +V127 = Skipped History check due to other check being invalid. +V128 = No History Block to check. +V129 = OT Affection should be 0. +V130 = Can't have any OT Memory. +V124 = Current handler cannot be past gen OT for transferred specimen. +V131 = HT Gender invalid: {0} +V132 = Event OT Friendship does not match base friendship. +V133 = Event OT Affection should be zero. +V134 = Current handler should not be Event OT. +V138 = Contest Stats should be 0. +V301 = Invalid Console Region. +V302 = Geolocation: Country is not in 3DS region. +V303 = Geolocation: Country is in 3DS region. +V137 = GeoLocation Memory: Memories should be present. +V135 = GeoLocation Memory: Gap/Blank present. +V136 = GeoLocation Memory: Region without Country. +V146 = GeoLocation Memory: HT Name present but has no previous Country. +V147 = GeoLocation Memory: Previous country of residence present with no Handling Trainer. +V139 = Untraded: Current handler should not be the Handling Trainer. +V140 = Untraded: Handling Trainer Friendship should be 0. +V141 = Untraded: Handling Trainer Affection should be 0. +V142 = Untraded: Requires a trade evolution. +V143 = Untraded: Beauty is not high enough for Level-up Evolution. +V144 = Untraded: Beauty is high enough but still Level 1. +V148 = Memory: Handling Trainer Memory present with no Handling Trainer name. +V150 = Memory: Handling Trainer Memory missing. +V152 = Memory: Original Trainer Memory missing. +V329 = Memory: Not cleared properly. +V149 = Memory: Can't have Handling Trainer Memory as egg. +V151 = Memory: Can't have Original Trainer Memory as egg. +V164 = {0} Memory: Species can be captured in game. +V153 = {0} Memory: Species can't learn this move. +V154 = {0} Memory: Location doesn't have a Pokemon Center. +V160 = {0} Memory: {0} did not hatch this. +V202 = {0} Memory: {0} did not catch this. +V161 = {0} Memory: Link Trade is not a valid first memory. +V162 = {0} Memory: Can't obtain Location on {0} Version. +V163 = {0} Memory: Can't obtain Memory on {0} Version. +V165 = {0} Memory: Can't capture species in game. +V197 = {0} Memory: Should be index {1}. +V198 = {0} Memory: Intensity should be index {1}. +V199 = {0} Memory: TextVar should be index {1}. +V200 = {0} Memory: Feeling should be index {1}. +V168 = Duplicate Move. +V176 = Invalid Move. +V166 = Invalid Move (Sketch). +V169 = Keldeo Move/Form mismatch. +V181 = Expected the following Relearn Moves: {0} +V170 = Relearn Moves missing: {0} +V178 = Expected: {0}. +V179 = Base egg move. +V180 = Base egg move missing. +V182 = Not an expected Relearnable move. +V183 = Not an expected DexNav move. +V184 = Expected no Relearn Move in slot. +V185 = Egg Moves Source: {0}. +V186 = Egg Move set check unimplemented. +V156 = Should have a Link Trade HT Memory. +V157 = Should have a HT Memory TextVar value (somewhere). +V158 = Should have a HT Memory Intensity value (1st). +V159 = Should have a HT Memory Feeling value 0-9. +V318 = Form is Valid. +V304 = Form Count is out of range. Expected <= {0}, got {1}. +V305 = Cosplay Pikachu cannot have the default form. +V306 = Only Cosplay Pikachu can have this form. +V307 = Event Pikachu cannot have the default form. +V308 = Held item does not match Form. +V309 = Held item matches Form. +V310 = Form cannot exist outside of a battle. +V311 = Event Vivillon pattern on pre-evolution. +V312 = Invalid Vivillon pattern. +V313 = Valid Vivillon pattern. +V314 = Invalid Eternal Flower encounter. +V315 = Valid Eternal Flower encounter. +V316 = Form cannot exist outside of Party. +V317 = Form cannot be obtained for pre-Alola generation games. +V319 = Cannot apply PP Ups to an Egg. +V320 = Cannot increase Contest Stats of an Egg. +V321 = Mystery Gift Fateful Encounter. +V322 = Mystery Gift Fateful Encounter flag missing. +V323 = Special ingame Fateful Encounter. +V324 = Special ingame Fateful Encounter flag missing. +V325 = Fateful Encounter should not be checked. +V326 = Special ingame N's Sparkle flag missing. +V327 = Special ingame N's Sparkle flag should not be checked. V328 = Version Specific evolution requires a trade to opposite version. A Handling Trainer is required. \ No newline at end of file