From 766f2269f31c4c44e1ac4fb1a12822c3822b4db9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bastos=20Dias?= Date: Mon, 3 Feb 2025 15:31:25 +0000 Subject: [PATCH 1/5] Fix shiny validity --- data/learnsets.ts | 62 ++++++------------------------------------- data/pokemongo.ts | 2 +- sim/team-validator.ts | 7 +++++ 3 files changed, 16 insertions(+), 55 deletions(-) diff --git a/data/learnsets.ts b/data/learnsets.ts index cb11621e80034..997ddd4a67c25 100644 --- a/data/learnsets.ts +++ b/data/learnsets.ts @@ -79965,6 +79965,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { cosmicpower: ["9L0", "8M", "8L0", "7L1"], teleport: ["9L1", "8L1", "7L1"], }, + eventOnly: true, }, solgaleo: { learnset: { @@ -80063,6 +80064,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { {generation: 8, level: 70, shiny: 1, moves: ["zenheadbutt", "firespin", "irontail", "nobleroar"]}, {generation: 9, level: 70, moves: ["flareblitz", "solarbeam", "wildcharge", "metalburst"]}, ], + eventOnly: true, }, lunala: { learnset: { @@ -80159,6 +80161,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { {generation: 8, level: 70, shiny: 1, moves: ["shadowball", "moonblast", "magiccoat", "swift"]}, {generation: 9, level: 70, moves: ["dreameater", "phantomforce", "moonblast", "psychic"]}, ], + eventOnly: true, }, nihilego: { learnset: { @@ -81220,6 +81223,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { venoshock: ["8M", "8L28", "7M", "7L13"], xscissor: ["8M", "7M"], }, + eventOnly: true, }, stakataka: { learnset: { @@ -86886,63 +86890,13 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { zenheadbutt: ["9M"], }, eventData: [ - {generation: 9, level: 50, shiny: true, nature: "Naive", ivs: {hp: 20, atk: 31, def: 20, spa: 31, spd: 20, spe: 31}, moves: ["drainingkiss", "extrasensory", "moonblast"], pokeball: "cherishball"}, + {generation: 8, level: 70, perfectIVs: 3, moves: ["extrasensory", "crunch", "moonblast", "springtidestorm"], pokeball: "strangeball"}, + {generation: 9, level: 50, shiny: true, nature: "Naive", ivs: {hp: 20, atk: 31, def: 20, spa: 31, spd: 20, spe: 31}, moves: ["drainingkiss", "extrasensory", "crunch", "moonblast"], pokeball: "cherishball"}, ], + eventOnly: true, }, enamorustherian: { - learnset: { - agility: ["9M"], - alluringvoice: ["9M"], - astonish: ["9L1"], - bodyslam: ["9M"], - calmmind: ["9M"], - dazzlinggleam: ["9M", "9L40"], - disarmingvoice: ["9M"], - drainingkiss: ["9M", "9L20"], - earthpower: ["9M"], - endure: ["9M"], - extrasensory: ["9L45"], - facade: ["9M"], - fairywind: ["9L1"], - flatter: ["9L10"], - fly: ["9M"], - focusblast: ["9M"], - gigaimpact: ["9M"], - grassknot: ["9M"], - grassyterrain: ["9M"], - healingwish: ["9L60"], - hyperbeam: ["9M"], - imprison: ["9M", "9L30"], - irondefense: ["9M", "9L25"], - ironhead: ["9M"], - mistyexplosion: ["9M"], - mistyterrain: ["9M"], - moonblast: ["9L65"], - mysticalfire: ["9L35"], - outrage: ["9M", "9L70"], - playrough: ["9M"], - protect: ["9M"], - psychic: ["9M"], - psychup: ["9M"], - raindance: ["9M"], - rest: ["9M"], - scaryface: ["9M"], - sleeptalk: ["9M"], - sludgebomb: ["9M"], - springtidestorm: ["9L75"], - substitute: ["9M"], - sunnyday: ["9M"], - superpower: ["9L55"], - tailwind: ["9M"], - takedown: ["9M"], - taunt: ["9M"], - terablast: ["9M"], - torment: ["9L5"], - twister: ["9L15"], - uproar: ["9M", "9L50"], - weatherball: ["9M"], - zenheadbutt: ["9M"], - }, + eventOnly: true, }, sprigatito: { learnset: { diff --git a/data/pokemongo.ts b/data/pokemongo.ts index 3c45b5b83663d..aa74f56e05ca5 100644 --- a/data/pokemongo.ts +++ b/data/pokemongo.ts @@ -605,7 +605,7 @@ export const PokemonGoData: import('../sim/dex-species').PokemonGoDataTable = { giratina: {encounters: ['raid', 'specialtrade']}, cresselia: {encounters: ['raid', 'research', 'specialtrade']}, darkrai: {encounters: ['raid', 'notrade']}, - shaymin: {encounters: ['research', 'noshiny', 'notrade']}, + shaymin: {encounters: ['research', 'notrade']}, victini: {encounters: ['research', 'noshiny', 'notrade']}, snivy: {encounters: ['wild']}, servine: {encounters: ['wild']}, diff --git a/sim/team-validator.ts b/sim/team-validator.ts index a498f17267e45..536f4dc6ab151 100644 --- a/sim/team-validator.ts +++ b/sim/team-validator.ts @@ -768,6 +768,10 @@ export class TeamValidator { problem = this.checkNature(set, nature, setHas); if (problem) problems.push(problem); + if (set.shiny && dex.gen === 1) { + set.shiny = false; + } + if (set.moves && Array.isArray(set.moves)) { set.moves = set.moves.filter(val => val); } @@ -1678,6 +1682,9 @@ export class TeamValidator { if (unownLetter !== expectedLetter) { problems.push(`Unown has forme ${unownLetter}, but its DVs give it the forme ${expectedLetter}.`); } + if (set.shiny && !['I', 'V'].includes(unownLetter)) { + problems.push(`Shiny Unown can only be forme I or V.`); + } } return problems; } From b1fc91eac3cb3974f8f7707450ca264606986a42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bastos=20Dias?= Date: Mon, 3 Feb 2025 15:43:56 +0000 Subject: [PATCH 2/5] Fix Enamorus learnset --- data/learnsets.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/data/learnsets.ts b/data/learnsets.ts index 997ddd4a67c25..2564f6092b3ac 100644 --- a/data/learnsets.ts +++ b/data/learnsets.ts @@ -86890,8 +86890,8 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { zenheadbutt: ["9M"], }, eventData: [ - {generation: 8, level: 70, perfectIVs: 3, moves: ["extrasensory", "crunch", "moonblast", "springtidestorm"], pokeball: "strangeball"}, - {generation: 9, level: 50, shiny: true, nature: "Naive", ivs: {hp: 20, atk: 31, def: 20, spa: 31, spd: 20, spe: 31}, moves: ["drainingkiss", "extrasensory", "crunch", "moonblast"], pokeball: "cherishball"}, + {generation: 8, level: 70, perfectIVs: 3, moves: ["extrasensory", "moonblast", "springtidestorm"], pokeball: "strangeball"}, // Legends: Arceus + {generation: 9, level: 50, shiny: true, nature: "Naive", ivs: {hp: 20, atk: 31, def: 20, spa: 31, spd: 20, spe: 31}, moves: ["drainingkiss", "extrasensory", "moonblast"], pokeball: "cherishball"}, ], eventOnly: true, }, From 7050e96ae1d06916b5b86595cec1f58296b68109 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bastos=20Dias?= <80102738+andrebastosdias@users.noreply.github.com> Date: Tue, 4 Feb 2025 05:22:06 +0000 Subject: [PATCH 3/5] Remove unnecessary code --- sim/team-validator.ts | 3 --- 1 file changed, 3 deletions(-) diff --git a/sim/team-validator.ts b/sim/team-validator.ts index 536f4dc6ab151..4ff4f81178585 100644 --- a/sim/team-validator.ts +++ b/sim/team-validator.ts @@ -1682,9 +1682,6 @@ export class TeamValidator { if (unownLetter !== expectedLetter) { problems.push(`Unown has forme ${unownLetter}, but its DVs give it the forme ${expectedLetter}.`); } - if (set.shiny && !['I', 'V'].includes(unownLetter)) { - problems.push(`Shiny Unown can only be forme I or V.`); - } } return problems; } From ecca1550e189b8012bd183b713a3c26b8b8e10c0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bastos=20Dias?= Date: Sat, 8 Feb 2025 22:37:07 +0000 Subject: [PATCH 4/5] Fix Enamorus learnset --- data/learnsets.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/data/learnsets.ts b/data/learnsets.ts index 2564f6092b3ac..a682fc3972d49 100644 --- a/data/learnsets.ts +++ b/data/learnsets.ts @@ -86844,10 +86844,10 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { calmmind: ["9M"], dazzlinggleam: ["9M", "9L40"], disarmingvoice: ["9M"], - drainingkiss: ["9M", "9L20", "9S0"], + drainingkiss: ["9M", "9L20", "9S1"], earthpower: ["9M"], endure: ["9M"], - extrasensory: ["9L45", "9S0"], + extrasensory: ["9L45", "9S0", "9S1"], facade: ["9M"], fairywind: ["9L1"], flatter: ["9L10"], @@ -86863,7 +86863,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { ironhead: ["9M"], mistyexplosion: ["9M"], mistyterrain: ["9M"], - moonblast: ["9L65", "9S0"], + moonblast: ["9L65", "9S0", "9S1"], mysticalfire: ["9L35"], outrage: ["9M", "9L70"], playrough: ["9M"], @@ -86875,7 +86875,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { scaryface: ["9M"], sleeptalk: ["9M"], sludgebomb: ["9M"], - springtidestorm: ["9L75"], + springtidestorm: ["9L75", "9S0"], substitute: ["9M"], sunnyday: ["9M"], superpower: ["9L55"], From 4a92e8a2d9086d3d9943b24617ca6f5a2a2771b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Bastos=20Dias?= Date: Sat, 8 Feb 2025 22:41:50 +0000 Subject: [PATCH 5/5] Fix Enamorus learnset gen --- data/learnsets.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/data/learnsets.ts b/data/learnsets.ts index a682fc3972d49..be7825c083c29 100644 --- a/data/learnsets.ts +++ b/data/learnsets.ts @@ -86847,7 +86847,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { drainingkiss: ["9M", "9L20", "9S1"], earthpower: ["9M"], endure: ["9M"], - extrasensory: ["9L45", "9S0", "9S1"], + extrasensory: ["9L45", "9S1", "8S0"], facade: ["9M"], fairywind: ["9L1"], flatter: ["9L10"], @@ -86863,7 +86863,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { ironhead: ["9M"], mistyexplosion: ["9M"], mistyterrain: ["9M"], - moonblast: ["9L65", "9S0", "9S1"], + moonblast: ["9L65", "9S1", "8S0"], mysticalfire: ["9L35"], outrage: ["9M", "9L70"], playrough: ["9M"], @@ -86875,7 +86875,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = { scaryface: ["9M"], sleeptalk: ["9M"], sludgebomb: ["9M"], - springtidestorm: ["9L75", "9S0"], + springtidestorm: ["9L75", "8S0"], substitute: ["9M"], sunnyday: ["9M"], superpower: ["9L55"],