Add BDSP HOME relearner and fix BDSP event legality (#11374)

* Allow BDSP moves to be learned via HOME relearner

* Update team-validator.ts

Commented out my changes to see if this was causing a test to fail; turns out my code isn't at fault.

* Update team-validator.ts

* Don't get learnset for Pokemon that don't exist in BDSP

Without the isNonstandard check, the learnset will be taken from the base learnsets.ts file, which could result in detecting moves that are actually not from BDSP.

* Fix BDSP legality

* Update team-validator.ts

* Fix test and learnsets

* Update data.js

* Prevent illegal transfers to/from BDSP

Nincada from outside BDSP cannot be sent to BDSP, Nincada from BDSP cannot be sent to other Switch games, and Spinda cannot be sent from or to BDSP. Currently this has no effect in regular Gen 9, but it technically does in Gen 9 Natdex (I have no idea if anything changes), and it may affect future generations.
This commit is contained in:
dot-Comfey 2025-08-27 11:15:59 -07:00 committed by GitHub
parent d0696157a3
commit b27ddb4ae2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
6 changed files with 309 additions and 317 deletions

View File

@ -22041,7 +22041,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
auroraveil: ["7M"],
avalanche: ["9M", "8M", "4M"],
bide: ["7V"],
blizzard: ["9M", "9L65", "9S9", "8M", "8L65", "8V", "7M", "7L78", "7V", "6M", "6L71", "5M", "5L71", "4M", "4L71", "3M", "3L73"],
blizzard: ["9M", "9L65", "9S10", "8M", "8L65", "8V", "7M", "7L78", "7V", "6M", "6L71", "5M", "5L71", "4M", "4L71", "3M", "3L73"],
bravebird: ["9M", "8M"],
bubblebeam: ["7V"],
confide: ["7M", "6M"],
@ -22062,12 +22062,12 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
gigaimpact: ["9M", "8M", "7M", "6M", "5M", "4M"],
gust: ["9L1", "8L1", "8V", "7L1", "7V", "6L1", "5L1", "4L1", "3L1"],
hail: ["8M", "8L50", "7M", "7L57", "7S7", "6M", "6L57", "6S5", "6S6", "5M", "5L85", "4M", "4L85", "3M"],
haze: ["9M", "9L60", "9S9", "3S2"],
haze: ["9M", "9L60", "9S10", "3S2"],
headbutt: ["8V"],
healbell: ["3S2"],
helpinghand: ["9M"],
hiddenpower: ["7M", "7V", "6M", "5M", "4M", "3M"],
hurricane: ["9M", "9L55", "9S9", "8M", "8L55", "8S8", "7L92", "6L1", "5L92"],
hurricane: ["9M", "9L55", "9S10", "8M", "8L55", "8S8", "7L92", "6L1", "5L92"],
hyperbeam: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
icebeam: ["9M", "9L45", "8M", "8L45", "8V", "8S8", "7M", "7L71", "7V", "6M", "6L43", "6S5", "6S6", "5M", "5L43", "4M", "4L43", "4S3", "4S4", "3M", "3L49", "3S0", "3S1", "3S2"],
iceshard: ["9L15", "8L15", "8V", "7L15", "6L15", "5L15", "4L15"],
@ -22100,7 +22100,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
round: ["8M", "7M", "6M", "5M"],
sandstorm: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
secretpower: ["6M", "4M", "3M"],
sheercold: ["9L70", "9S9", "8L70", "7L99", "6L1", "5L78", "4L78", "3L85"],
sheercold: ["9L70", "9S10", "8L70", "7L99", "6L1", "5L78", "4L78", "3L85"],
signalbeam: ["7T", "6T", "5T", "4T"],
skyattack: ["8V", "7T", "7V", "6T", "5T", "4T", "3T"],
skydrop: ["7M", "6M", "5M"],
@ -22134,6 +22134,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 70, isHidden: true, moves: ["freezedry", "icebeam", "hail", "reflect"], pokeball: "cherishball"},
{generation: 7, level: 60, shiny: 1, moves: ["ancientpower", "freezedry", "reflect", "hail"]},
{generation: 8, level: 70, shiny: 1, moves: ["icebeam", "freezedry", "hurricane", "mist"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['sheercold', 'blizzard', 'mindreader', 'hurricane'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["sheercold", "blizzard", "hurricane", "haze"]},
],
encounters: [
@ -22223,7 +22224,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
confide: ["7M", "6M"],
curse: ["7V"],
defog: ["7T", "4M"],
detect: ["9L60", "9S9", "8L60", "7L15", "7V", "6L15", "5L15", "4L15", "4S4", "3L37", "3S0", "3S1"],
detect: ["9L60", "9S10", "8L60", "7L15", "7V", "6L15", "5L15", "4L15", "4S4", "3L37", "3S0", "3S1"],
discharge: ["9L45", "8L45", "7L50", "7S7", "6L50", "6S5", "6S6", "5L50", "4L50", "4S3"],
doubleedge: ["7V", "3T"],
doubleteam: ["7M", "7V", "6M", "5M", "4M", "3M"],
@ -22249,7 +22250,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
laserfocus: ["7T"],
leer: ["8V"],
lightscreen: ["9M", "9L10", "8M", "8L10", "8V", "7M", "7L64", "7V", "6M", "6L64", "6S5", "5M", "5L64", "4M", "4L64", "3M", "3L73"],
magneticflux: ["9L65", "9S9", "8L65", "7L92"],
magneticflux: ["9L65", "9S10", "8L65", "7L92"],
metalsound: ["9M", "3S2"],
mimic: ["7V", "3T"],
mudslap: ["7V", "4T", "3T"],
@ -22286,7 +22287,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
tailwind: ["9M", "7T", "6T", "5T", "4T"],
takedown: ["9M", "7V"],
terablast: ["9M"],
thunder: ["9M", "9L55", "9S9", "8M", "8L55", "8V", "8S8", "7M", "7L78", "7V", "6M", "6L78", "5M", "5L78", "4M", "4L78", "3M", "3L85"],
thunder: ["9M", "9L55", "9S10", "8M", "8L55", "8V", "8S8", "7M", "7L78", "7V", "6M", "6L78", "5M", "5L78", "4M", "4L78", "3M", "3L85"],
thunderbolt: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M", "3S2"],
thundershock: ["9L5", "8L5", "8V", "7L1", "7V", "6L1", "6S6", "5L1", "4L1", "3L1"],
thunderwave: ["9M", "9L1", "8M", "8L1", "8V", "7M", "7L8", "7V", "6M", "6L8", "5M", "5L8", "4M", "4L8", "4S4", "3T", "3L13", "3S0"],
@ -22297,7 +22298,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
weatherball: ["9M", "8M"],
whirlwind: ["7V"],
wildcharge: ["9M", "8M", "7M", "6M", "5M"],
zapcannon: ["9L70", "9S9", "8L70", "7L99", "7V", "6L1", "5L92"],
zapcannon: ["9L70", "9S10", "8L70", "7L99", "7V", "6L1", "5L92"],
},
eventData: [
{generation: 3, level: 50, shiny: 1, moves: ["thunderwave", "agility", "detect", "drillpeck"]},
@ -22309,6 +22310,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 70, isHidden: true, moves: ["discharge", "thundershock", "raindance", "agility"], pokeball: "cherishball"},
{generation: 7, level: 60, shiny: 1, moves: ["ancientpower", "discharge", "pluck", "raindance"]},
{generation: 8, level: 70, shiny: 1, moves: ["thunder", "drillpeck", "bravebird", "agility"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['zapcannon', 'magneticflux', 'detect', 'thunder'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["zapcannon", "magneticflux", "detect", "thunder"]},
],
encounters: [
@ -22407,7 +22409,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
doubleteam: ["7M", "7V", "6M", "5M", "4M", "3M"],
dualwingbeat: ["9M", "8T"],
ember: ["9L5", "8L5", "8V", "7L1", "7V", "6L1", "5L1", "4L1", "3L1"],
endure: ["9M", "9L60", "9S9", "8M", "8L60", "7L22", "7V", "6L22", "5L22", "4M", "4L22", "4S4", "3T", "3L37", "3S0", "3S1"],
endure: ["9M", "9L60", "9S10", "8M", "8L60", "7L22", "7V", "6L22", "5L22", "4M", "4L22", "4S4", "3T", "3L37", "3S0", "3S1"],
extrasensory: ["3S2"],
facade: ["9M", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
fireblast: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
@ -22423,7 +22425,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
heatwave: ["9M", "9L45", "8M", "8L45", "8V", "8S8", "7T", "7L64", "6T", "6L1", "6S5", "6S6", "5T", "5L64", "4T", "4L64", "3L73"],
helpinghand: ["9M"],
hiddenpower: ["7M", "7V", "6M", "5M", "4M", "3M"],
hurricane: ["9M", "9L55", "9S9", "8M", "8L55", "7L92", "6L1", "5L92"],
hurricane: ["9M", "9L55", "9S10", "8M", "8L55", "7L92", "6L1", "5L92"],
hyperbeam: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
incinerate: ["9L30", "8L30", "6M", "5M"],
laserfocus: ["7T"],
@ -22434,7 +22436,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
mysticalfire: ["8M"],
naturalgift: ["4M"],
ominouswind: ["4T"],
overheat: ["9M", "9L65", "9S9", "8M", "7M", "6M", "5M", "4M", "3M"],
overheat: ["9M", "9L65", "9S10", "8M", "7M", "6M", "5M", "4M", "3M"],
peck: ["7V"],
pluck: ["5M", "4M"],
protect: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
@ -22452,7 +22454,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
sandstorm: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
scorchingsands: ["9M", "8T"],
secretpower: ["6M", "4M", "3M"],
skyattack: ["9L70", "9S9", "8L70", "8V", "7T", "7L78", "7V", "6T", "6L1", "6S6", "5T", "5L78", "4T", "4L78", "3T", "3L85"],
skyattack: ["9L70", "9S10", "8L70", "8V", "7T", "7L78", "7V", "6T", "6L1", "6S6", "5T", "5L78", "4T", "4L78", "3T", "3L85"],
skydrop: ["7M", "6M", "5M"],
sleeptalk: ["9M", "8M", "7M", "7V", "6M", "5T", "4M", "3T"],
snore: ["8M", "7T", "7V", "6T", "5T", "4T", "3T"],
@ -22484,6 +22486,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 70, isHidden: true, moves: ["skyattack", "heatwave", "sunnyday", "safeguard"], pokeball: "cherishball"},
{generation: 7, level: 60, shiny: 1, moves: ["ancientpower", "flamethrower", "airslash", "sunnyday"]},
{generation: 8, level: 70, shiny: 1, moves: ["heatwave", "wingattack", "leer", "firespin"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['skyattack', 'burnup', 'endure', 'hurricane'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["skyattack", "overheat", "endure", "hurricane"]},
],
encounters: [
@ -22909,7 +22912,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
amnesia: ["9M", "9L32", "8M", "8L32", "8V", "7L79", "7V", "6L79", "5L50", "4L57", "4S1", "3L77"],
ancientpower: ["9L8", "8L8"],
aquatail: ["7T", "6T", "5T", "4T"],
aurasphere: ["9M", "9L40", "9S8", "8M", "8L40", "7L70", "6L70", "6S4", "6S5", "5L93", "5S2", "4L100"],
aurasphere: ["9M", "9L40", "9S9", "8M", "8L40", "7L70", "6L70", "6S4", "6S5", "5L93", "5S2", "4L100"],
avalanche: ["9M", "8M", "4M"],
barrier: ["8V", "7L64", "7V", "6L64", "6S4", "5L1", "4L8", "3L11"],
bide: ["7V"],
@ -22920,7 +22923,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
bubblebeam: ["7V"],
bulkup: ["9M", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
bulldoze: ["9M", "8M", "7M", "6M", "5M"],
calmmind: ["9M", "9S8", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
calmmind: ["9M", "9S9", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
chargebeam: ["7M", "6M", "5M", "4M"],
chillingwater: ["9M"],
confide: ["7M", "6M"],
@ -22967,7 +22970,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
hiddenpower: ["7M", "7V", "6M", "5M", "4M", "3M"],
hurricane: ["9M", "8M", "5S3"],
hyperbeam: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
icebeam: ["9M", "9S8", "8M", "8V", "7M", "7V", "6M", "5M", "5S3", "4M", "3M"],
icebeam: ["9M", "9S9", "8M", "8V", "7M", "7V", "6M", "5M", "5S3", "4M", "3M"],
icepunch: ["9M", "8M", "8V", "7T", "7V", "6T", "5T", "4T", "3T"],
icywind: ["9M", "8M", "7T", "7V", "6T", "5T", "4T", "3T"],
imprison: ["9M"],
@ -23007,7 +23010,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
psychocut: ["9L16", "8M", "8L16", "7L36", "7S6", "6L36", "5L43", "4L50", "4S1"],
psychup: ["9M", "7M", "7L22", "7V", "6M", "6L22", "5M", "5L22", "4M", "4L29", "3T", "3L33"],
psyshock: ["9M", "8M", "7M", "6M", "5M"],
psystrike: ["9L72", "9S8", "8L72", "7L100", "6L100", "6S5", "5L100", "5S2", "5S3"],
psystrike: ["9L72", "9S9", "8L72", "7L100", "6L100", "6S5", "5L100", "5S2", "5S3"],
psywave: ["8V", "7L1", "7V"],
rage: ["7V"],
raindance: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
@ -23081,6 +23084,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 100, shiny: true, isHidden: true, moves: ["psystrike", "psychic", "recover", "aurasphere"], pokeball: "cherishball"},
{generation: 7, level: 60, shiny: 1, moves: ["psychic", "recover", "swift", "psychocut"]},
{generation: 8, level: 70, shiny: 1, moves: ["psychic", "disable", "recover", "blizzard"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['mist', 'guardswap', 'powerswap', 'psychic'], source: 'gen8bdsp'},
{generation: 9, level: 100, nature: "Modest", perfectIVs: 6, isHidden: true, moves: ["psystrike", "aurasphere", "icebeam", "calmmind"]},
],
encounters: [
@ -23096,7 +23100,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
afteryou: ["7T", "6T", "5T"],
agility: ["9M", "8M"],
aircutter: ["9M", "4T"],
airslash: ["9M", "9S26", "8M"],
airslash: ["9M", "9S27", "8M"],
alluringvoice: ["9M"],
allyswitch: ["8M", "7T", "5M"],
amnesia: ["9M", "9L10", "8M", "8L10", "8V", "7L60", "6L60", "5L60", "4L60", "4S17"],
@ -23104,7 +23108,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
aquatail: ["7T", "6T", "5T", "4T"],
assurance: ["8M"],
attract: ["8M", "7M", "7V", "6M", "5M", "4M", "3M"],
aurasphere: ["9M", "9L90", "9S26", "8M", "8L90", "7L100", "6L100", "5L100", "4L100", "4S14", "4S15", "4S16", "4S17", "4S18", "4S19"],
aurasphere: ["9M", "9L90", "9S27", "8M", "8L90", "7L100", "6L100", "5L100", "4L100", "4S14", "4S15", "4S16", "4S17", "4S18", "4S19"],
auroraveil: ["7M"],
avalanche: ["9M", "8M", "4M"],
barrier: ["8V", "7L40", "7S24", "6L40", "5L40", "4L40", "4S15"],
@ -23151,8 +23155,8 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
curse: ["9M", "7V"],
cut: ["7V", "6M", "5M", "4M", "3M"],
darkestlariat: ["8M"],
darkpulse: ["9M", "9S26", "8M", "8V", "7M", "6M", "5T", "4M"],
dazzlinggleam: ["9M", "9S26", "8M", "8V", "7M", "6M"],
darkpulse: ["9M", "9S27", "8M", "8V", "7M", "6M", "5T", "4M"],
dazzlinggleam: ["9M", "9S27", "8M", "8V", "7M", "6M"],
defensecurl: ["7V", "3T"],
defog: ["7T", "4M"],
detect: ["7V"],
@ -23166,7 +23170,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
dragoncheer: ["9M"],
dragonclaw: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
dragondance: ["9M", "8M"],
dragonpulse: ["9M", "9S26", "8M", "8V", "7T", "6T", "5T", "4M"],
dragonpulse: ["9M", "9S27", "8M", "8V", "7T", "6T", "5T", "4M"],
dragonrage: ["7V"],
dragontail: ["9M", "8V", "7M", "6M", "5M"],
drainingkiss: ["9M", "8M"],
@ -23176,7 +23180,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
dualchop: ["7T", "6T", "5T"],
dualwingbeat: ["9M", "8T"],
dynamicpunch: ["7V", "3T"],
earthpower: ["9M", "9S26", "8M", "7T", "6T", "5T", "4T"],
earthpower: ["9M", "9S27", "8M", "7T", "6T", "5T", "4T"],
earthquake: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
echoedvoice: ["7M", "6M", "5M"],
eerieimpulse: ["9M", "8M"],
@ -23188,7 +23192,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
encore: ["9M", "8M"],
endeavor: ["9M", "7T", "6T", "5T", "4T"],
endure: ["9M", "8M", "7V", "4M", "3T"],
energyball: ["9M", "9S26", "8M", "7M", "6M", "5M", "4M"],
energyball: ["9M", "9S27", "8M", "7M", "6M", "5M", "4M"],
expandingforce: ["9M", "8T"],
explosion: ["7M", "7V", "6M", "5M", "4M", "3T"],
facade: ["9M", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
@ -23204,10 +23208,10 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
firespin: ["9M", "8M"],
fissure: ["7V"],
flamecharge: ["9M", "7M", "6M", "5M"],
flamethrower: ["9M", "9S26", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
flamethrower: ["9M", "9S27", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
flareblitz: ["9M", "8M"],
flash: ["7V", "6M", "5M", "4M", "3M"],
flashcannon: ["9M", "9S26", "8M", "8V", "7M", "6M", "5M", "4M"],
flashcannon: ["9M", "9S27", "8M", "8V", "7M", "6M", "5M", "4M"],
fling: ["9M", "8M", "7M", "6M", "5M", "4M"],
flipturn: ["9M", "8T"],
fly: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
@ -23249,9 +23253,9 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
hydrocannon: ["9M"],
hydropump: ["9M", "8M"],
hyperbeam: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
hypervoice: ["9M", "9S26", "8M", "7T", "6T", "5T"],
hypervoice: ["9M", "9S27", "8M", "7T", "6T", "5T"],
hypnosis: ["4S20", "3S6", "3S7"],
icebeam: ["9M", "9S26", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
icebeam: ["9M", "9S27", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
icefang: ["9M", "8M"],
icepunch: ["9M", "8M", "8V", "7T", "7V", "6T", "5T", "4T", "3T"],
icespinner: ["9M"],
@ -23270,8 +23274,8 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
leafblade: ["8M"],
leafstorm: ["9M", "8M"],
leechlife: ["9M", "8M", "7M"],
lifedew: ["9L40", "9S26", "8L40"],
lightscreen: ["9M", "9S26", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
lifedew: ["9L40", "9S27", "8L40"],
lightscreen: ["9M", "9S27", "8M", "8V", "7M", "6M", "5M", "4M", "3M"],
liquidation: ["9M", "8M", "7T"],
lowkick: ["9M", "8M", "7T", "6T", "5T", "4T"],
lowsweep: ["9M", "8M", "7M", "6M", "5M"],
@ -23314,11 +23318,11 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
pluck: ["5M", "4M"],
poisonjab: ["9M", "8M", "8V", "7M", "6M", "5M", "4M"],
poisontail: ["9M"],
pollenpuff: ["9M", "9S26", "8M"],
pollenpuff: ["9M", "9S27", "8M"],
poltergeist: ["9M", "8T"],
pounce: ["9M"],
pound: ["9L1", "8L1", "8V", "8S25", "7L1", "7V", "7S23", "6L1", "6S22", "5L1", "4L1", "4S21", "3L1", "3S0", "3S1"],
powergem: ["9M", "9S26", "8M"],
powergem: ["9M", "9S27", "8M"],
powerswap: ["8M"],
poweruppunch: ["6M"],
powerwhip: ["8M"],
@ -23330,7 +23334,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
psychicterrain: ["9M", "8M"],
psychocut: ["8M"],
psychup: ["9M", "7M", "7V", "6M", "5M", "4M", "3T"],
psyshock: ["9M", "9S26", "8M", "7M", "6M", "5M"],
psyshock: ["9M", "9S27", "8M", "7M", "6M", "5M"],
psywave: ["8V", "7V"],
quash: ["7M", "6M", "5M"],
rage: ["7V"],
@ -23369,7 +23373,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
seedbomb: ["9M", "8M", "7T", "6T", "5T", "4T"],
seismictoss: ["8V", "7V", "3T"],
selfdestruct: ["8M", "8V", "7V", "3T"],
shadowball: ["9M", "9S26", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
shadowball: ["9M", "9S27", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
shadowclaw: ["9M", "8M", "7M", "6M", "5M", "4M"],
shockwave: ["7T", "6T", "4M", "3M"],
signalbeam: ["7T", "6T", "5T", "4T"],
@ -23380,7 +23384,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
skyattack: ["7T", "7V", "6T", "5T", "4T", "3T"],
skydrop: ["7M", "6M", "5M"],
sleeptalk: ["9M", "8M", "7M", "7V", "6M", "5T", "4M", "3T"],
sludgebomb: ["9M", "9S26", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
sludgebomb: ["9M", "9S27", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
sludgewave: ["9M", "8M", "7M", "6M", "5M"],
smackdown: ["9M", "7M", "6M", "5M"],
smartstrike: ["9M", "8M", "7M"],
@ -23411,10 +23415,10 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
supercellslam: ["9M"],
superfang: ["9M", "7T", "6T", "5T", "4T"],
superpower: ["8M", "8V", "7T", "6T", "5T", "4T"],
surf: ["9M", "9S26", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
surf: ["9M", "9S27", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
swagger: ["7M", "7V", "6M", "5M", "4M", "3T"],
sweetscent: ["7V"],
swift: ["9M", "9S26", "8M", "8V", "7V", "4T", "3T"],
swift: ["9M", "9S27", "8M", "8V", "7V", "4T", "3T"],
swordsdance: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3T"],
synthesis: ["7T", "6T", "5T", "4T", "4S20"],
tailslap: ["8M"],
@ -23429,7 +23433,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
thief: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
throatchop: ["9M", "8M", "7T"],
thunder: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
thunderbolt: ["9M", "9S26", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
thunderbolt: ["9M", "9S27", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
thunderfang: ["9M", "8M"],
thunderpunch: ["9M", "8M", "8V", "7T", "7V", "6T", "5T", "4T", "3T"],
thunderwave: ["9M", "8M", "8V", "7M", "7V", "6M", "5M", "4M", "3T"],
@ -23493,6 +23497,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 5, perfectIVs: 5, moves: ["pound"], pokeball: "pokeball"},
{generation: 7, level: 50, moves: ["psychic", "barrier", "metronome", "transform"], pokeball: "cherishball"},
{generation: 8, level: 1, moves: ["pound"], pokeball: "pokeball"},
{generation: 8, level: 1, moves: ['pound', 'reflecttype'], source: 'gen8bdsp'},
{generation: 9, level: 5, moves: ["pollenpuff", "darkpulse", "dragonpulse", "thunderbolt", "dazzlinggleam", "aurasphere", "flamethrower", "airslash", "shadowball", "energyball", "earthpower", "icebeam", "hypervoice", "sludgebomb", "psyshock", "powergem", "flashcannon", "surf", "swift", "lightscreen", "lifedew"], pokeball: "pokeball"},
],
eventOnly: true,
@ -32376,7 +32381,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
cut: ["7V", "6M", "5M", "4M", "3M"],
detect: ["7V"],
dig: ["8M", "7V", "6M", "5M", "4M", "3M"],
discharge: ["9L54", "9S9", "8L54", "7L1", "7S5", "7S6", "6L1", "5L57", "4L57"],
discharge: ["9L54", "9S10", "8L54", "7L1", "7S5", "7S6", "6L1", "5L57", "4L57"],
doubleedge: ["9M", "3T"],
doubleteam: ["7M", "7V", "6M", "5M", "4M", "3M"],
eerieimpulse: ["9M", "8M"],
@ -32384,7 +32389,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
electroball: ["9M"],
electroweb: ["9M"],
endure: ["9M", "8M", "7V", "4M", "3T"],
extrasensory: ["9L48", "9S9", "8L48", "7L1", "7S7", "6L1", "5L64", "4L64"],
extrasensory: ["9L48", "9S10", "8L48", "7L1", "7S7", "6L1", "5L64", "4L64"],
extremespeed: ["9L1", "8L1", "8S8", "4S3"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
flash: ["7V", "6M", "5M", "4M", "3M"],
@ -32408,8 +32413,8 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
psychup: ["7M", "7V", "6M", "5M", "4M", "3T"],
quash: ["7M", "6M", "5M"],
quickattack: ["9L1", "8L1", "7L22", "7V", "6L22", "5L22", "4L22", "4S2", "3L31", "3S0", "3S1"],
raindance: ["9M", "9L66", "9S9", "8M", "8L66", "7M", "7L71", "7V", "6M", "6L71", "5M", "5L71", "4M", "4L71", "3M"],
reflect: ["9M", "9L60", "9S9", "8M", "8L60", "7M", "7L36", "7V", "7S5", "7S6", "6M", "6L36", "6S4", "5M", "5L36", "4M", "4L36", "4S2", "3M", "3L51", "3S1"],
raindance: ["9M", "9L66", "9S10", "8M", "8L66", "7M", "7L71", "7V", "6M", "6L71", "5M", "5L71", "4M", "4L71", "3M"],
reflect: ["9M", "9L60", "9S10", "8M", "8L60", "7M", "7L36", "7V", "7S5", "7S6", "6M", "6L36", "6S4", "5M", "5L36", "4M", "4L36", "4S2", "3M", "3L51", "3S1"],
rest: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
return: ["7M", "7V", "6M", "5M", "4M", "3M"],
risingvoltage: ["8T"],
@ -32459,6 +32464,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["reflect", "crunch", "thunderfang", "discharge"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["thunderbolt", "voltswitch", "extrasensory", "calmmind"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["thunderbolt", "howl", "extremespeed", "weatherball"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['raindance', 'reflect', 'discharge', 'extrasensory'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["raindance", "reflect", "discharge", "extrasensory"]},
],
encounters: [
@ -32486,7 +32492,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
ember: ["9L1", "8L1", "7L8", "7V", "6L8", "5L8", "4L8", "3L11", "3S0"],
endure: ["9M", "8M", "7V", "4M", "3T"],
eruption: ["9L78", "8L78", "7L1", "6L1", "5L85", "4L85"],
extrasensory: ["9L48", "9S9", "8L48", "7L1", "6L1", "5L64", "4L64"],
extrasensory: ["9L48", "9S10", "8L48", "7L1", "6L1", "5L64", "4L64"],
extremespeed: ["9L1", "8L1", "8S8", "4S3"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
fireblast: ["9M", "9L72", "8M", "8L72", "7M", "7L71", "7V", "6M", "6L71", "5M", "5L71", "4M", "4L71", "3M", "3L71"],
@ -32509,7 +32515,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
ironhead: ["9M", "8M", "7T", "7S7", "6T", "5T", "4T"],
irontail: ["8M", "7T", "7V", "6T", "5T", "4M", "3M"],
laserfocus: ["7T"],
lavaplume: ["9L54", "9S9", "8L54", "7L1", "7S5", "7S6", "6L1", "5L57", "4L57"],
lavaplume: ["9L54", "9S10", "8L54", "7L1", "7S5", "7S6", "6L1", "5L57", "4L57"],
leer: ["9L1", "8L1", "7L1", "7V", "6L1", "5L1", "4L1", "3L1"],
mimic: ["3T"],
mudslap: ["7V", "4T", "3T"],
@ -32543,8 +32549,8 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
stoneedge: ["9M", "8M", "7M", "7S7", "6M", "5M", "4M"],
strength: ["7V", "6M", "5M", "4M", "3M"],
substitute: ["9M", "8M", "7M", "6M", "5M", "4M", "3T"],
sunnyday: ["9M", "9L66", "9S9", "8M", "8L66", "7M", "7V", "6M", "5M", "4M", "3M"],
swagger: ["9L60", "9S9", "8L60", "7M", "7L43", "7V", "7S5", "7S6", "6M", "6L43", "6S4", "5M", "5L43", "4M", "4L43", "3T", "3L61", "3S1"],
sunnyday: ["9M", "9L66", "9S10", "8M", "8L66", "7M", "7V", "6M", "5M", "4M", "3M"],
swagger: ["9L60", "9S10", "8L60", "7M", "7L43", "7V", "7S5", "7S6", "6M", "6L43", "6S4", "5M", "5L43", "4M", "4L43", "3T", "3L61", "3S1"],
swift: ["9M", "8M", "7V", "4T", "3T"],
takedown: ["9M"],
terablast: ["9M"],
@ -32563,6 +32569,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["stomp", "bite", "swagger", "lavaplume"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["sacredfire", "stoneedge", "ironhead", "flamecharge"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["flamethrower", "scaryface", "extremespeed", "crunch"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['sunnyday', 'swagger', 'lavaplume', 'extrasensory'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["sunnyday", "swagger", "lavaplume", "extrasensory"]},
],
encounters: [
@ -32596,7 +32603,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
doubleedge: ["9M", "3T"],
doubleteam: ["7M", "7V", "6M", "5M", "4M", "3M"],
endure: ["9M", "8M", "7V", "4M", "3T"],
extrasensory: ["9L48", "9S8", "8L48", "8S7", "7L64", "6L1", "5L64", "4L64"],
extrasensory: ["9L48", "9S9", "8L48", "8S7", "7L64", "6L1", "5L64", "4L64"],
extremespeed: ["9L1", "8L1", "8S7", "4S4"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
frustration: ["7M", "7V", "6M", "5M", "4M", "3M"],
@ -32617,7 +32624,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
leer: ["9L1", "8L1", "7L1", "7V", "6L1", "5L1", "4L1", "3L1", "3S2"],
liquidation: ["9M", "8M", "8S7"],
mimic: ["3T"],
mirrorcoat: ["9L60", "9S8", "8L60", "7L43", "7V", "6L43", "6S5", "5L43", "4L43", "3L61", "3S1"],
mirrorcoat: ["9L60", "9S9", "8L60", "7L43", "7V", "6L43", "6S5", "5L43", "4L43", "3L61", "3S1"],
mist: ["9L1", "8L1", "7L36", "7V", "7S6", "6L36", "6S5", "5L36", "4L36", "4S3", "3L51", "3S1"],
mudslap: ["7V", "4T", "3T"],
naturalgift: ["4M"],
@ -32625,7 +32632,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
protect: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
psychup: ["7M", "7V", "6M", "5M", "4M", "3T"],
quash: ["7M", "6M", "5M"],
raindance: ["9M", "9L66", "9S8", "8M", "8L66", "7M", "7L1", "7V", "7S6", "6M", "6L15", "5M", "5L15", "4M", "4L15", "4S3", "3M", "3L21", "3S0", "3S2"],
raindance: ["9M", "9L66", "9S9", "8M", "8L66", "7M", "7L1", "7V", "7S6", "6M", "6L15", "5M", "5L15", "4M", "4L15", "4S3", "3M", "3L21", "3S0", "3S2"],
reflect: ["8M", "7M", "6M", "5M", "4M", "3M"],
rest: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
return: ["7M", "7V", "6M", "5M", "4M", "3M"],
@ -32645,7 +32652,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
snowscape: ["9M"],
substitute: ["9M", "8M", "7M", "6M", "5M", "4M", "3T"],
sunnyday: ["8M", "7M", "7V", "6M", "5M", "4M", "3M"],
surf: ["9M", "9L54", "9S8", "8M", "8L54", "7M", "7V", "6M", "5M", "4M", "3M"],
surf: ["9M", "9L54", "9S9", "8M", "8L54", "7M", "7V", "6M", "5M", "4M", "3M"],
swagger: ["7M", "7V", "6M", "5M", "4M", "3T"],
swift: ["9M", "8M", "7V", "4T", "3T"],
tailwind: ["9M", "9L36", "8L36", "7T", "7L57", "6T", "6L1", "5T", "5L57", "4T", "4L57"],
@ -32668,6 +32675,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, shiny: 1, moves: ["aurorabeam", "mist", "mirrorcoat", "icefang"]},
{generation: 7, level: 60, shiny: 1, moves: ["bubblebeam", "aurorabeam", "mist", "raindance"]},
{generation: 8, level: 70, shiny: 1, moves: ["liquidation", "extrasensory", "extremespeed", "calmmind"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['raindance', 'mirrorcoat', 'surf', 'extrasensory'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["raindance", "mirrorcoat", "surf", "extrasensory"]},
],
encounters: [
@ -33003,7 +33011,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
learnset: {
acrobatics: ["9M"],
aerialace: ["9M", "7M", "6M", "5M", "4M", "3M"],
aeroblast: ["9L54", "9S12", "8L54", "7L43", "7V", "7S7", "7S8", "7S9", "7S10", "6L43", "6S5", "6S6", "5L43", "4L43", "4S2", "4S3", "3L77"],
aeroblast: ["9L54", "9S13", "8L54", "7L43", "7V", "7S7", "7S8", "7S9", "7S10", "6L43", "6S5", "6S6", "5L43", "4L43", "4S2", "4S3", "3L77"],
aircutter: ["9M", "4T"],
airslash: ["9M", "8M"],
ancientpower: ["9L1", "8L1", "8S11", "7L57", "7V", "7S7", "7S9", "6L57", "5L57", "4T", "4L57", "4S3", "3L88"],
@ -33034,7 +33042,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
earthquake: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M", "3S1"],
echoedvoice: ["7M", "6M", "5M"],
endure: ["9M", "8M", "7V", "4M", "3T"],
extrasensory: ["9L36", "9S12", "8L36", "8S11", "7L23", "7S7", "7S9", "6L23", "5L23", "4L23", "4S2"],
extrasensory: ["9L36", "9S13", "8L36", "8S11", "7L23", "7S7", "7S9", "6L23", "5L23", "4L23", "4S2"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
featherdance: ["3S1"],
flash: ["6M", "5M", "4M"],
@ -33073,8 +33081,8 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
psychup: ["9M", "7M", "7V", "6M", "5M", "4M", "3T"],
psyshock: ["9M", "8M", "7M", "6M", "5M"],
punishment: ["7L50", "6L50", "6S5", "5L50", "4L50", "4S3"],
raindance: ["9M", "9L63", "9S12", "8M", "8L63", "7M", "7L29", "7V", "6M", "6L29", "6S5", "5M", "5L29", "4M", "4L29", "4S2", "3M", "3L55", "3S0"],
recover: ["9L45", "9S12", "8L45", "7L71", "7V", "6L71", "5L71", "4L23", "3L33", "3S0"],
raindance: ["9M", "9L63", "9S13", "8M", "8L63", "7M", "7L29", "7V", "6M", "6L29", "6S5", "5M", "5L29", "4M", "4L29", "4S2", "3M", "3L55", "3S0"],
recover: ["9L45", "9S13", "8L45", "7L71", "7V", "6L71", "5L71", "4L23", "3L33", "3S0"],
reflect: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
rest: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
return: ["7M", "7V", "6M", "5M", "4M", "3M"],
@ -33134,6 +33142,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["skillswap", "aeroblast", "extrasensory", "ancientpower"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["aeroblast", "earthpower", "psychic", "tailwind"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["dragonpulse", "extrasensory", "whirlpool", "ancientpower"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['raindance', 'aeroblast', 'recover', 'extrasensory'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["raindance", "aeroblast", "recover", "extrasensory"]},
],
encounters: [
@ -33167,7 +33176,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
earthquake: ["9M", "8M", "7M", "7V", "7S9", "6M", "5M", "4M", "3M"],
echoedvoice: ["7M", "6M", "5M"],
endure: ["9M", "8M", "7V", "4M", "3T"],
extrasensory: ["9L36", "9S11", "8L36", "8S10", "7L23", "7S7", "7S8", "6L23", "5L23", "4L23", "4S1"],
extrasensory: ["9L36", "9S12", "8L36", "8S10", "7L23", "7S7", "7S8", "6L23", "5L23", "4L23", "4S1"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
fireblast: ["9M", "9L72", "8M", "8L72", "7M", "7L37", "7V", "6M", "6L37", "6S4", "5M", "5L37", "4M", "4L29", "4S1", "3M", "3L44", "3S0"],
firespin: ["9M", "8M"],
@ -33206,7 +33215,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
psychup: ["9M", "7M", "7V", "6M", "5M", "4M", "3T"],
punishment: ["7L50", "6L50", "6S4", "5L50", "4L50", "4S2"],
raindance: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
recover: ["9L45", "9S11", "8L45", "7L71", "7V", "7S6", "6L71", "6S5", "5L71", "4L23", "3L33", "3S0"],
recover: ["9L45", "9S12", "8L45", "7L71", "7V", "7S6", "6L71", "6S5", "5L71", "4L23", "3L33", "3S0"],
reflect: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
rest: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
return: ["7M", "7V", "6M", "5M", "4M", "3M"],
@ -33214,7 +33223,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
rocksmash: ["7V", "6M", "5M", "4M", "3M"],
roost: ["7M", "6M", "5T", "4M"],
round: ["8M", "7M", "6M", "5M"],
sacredfire: ["9L54", "9S11", "8L54", "7L43", "7V", "7S6", "7S7", "7S8", "7S9", "6L43", "6S4", "6S5", "5L43", "4L43", "4S1", "4S2", "3L77"],
sacredfire: ["9L54", "9S12", "8L54", "7L43", "7V", "7S6", "7S7", "7S8", "7S9", "6L43", "6S4", "6S5", "5L43", "4L43", "4S1", "4S2", "3L77"],
safeguard: ["9L18", "8M", "8L18", "7M", "7L65", "7V", "7S6", "6M", "6L65", "5M", "5L65", "4M", "4L9", "4S2", "3M", "3L11"],
sandstorm: ["9M", "8M", "7M", "7V", "6M", "5M", "4M", "3M"],
scorchingsands: ["9M", "8T"],
@ -33230,7 +33239,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
steelwing: ["8M", "7M", "7V", "6M", "4M", "3M"],
strength: ["7V", "6M", "5M", "4M", "3M"],
substitute: ["9M", "8M", "7M", "6M", "5M", "4M", "3T"],
sunnyday: ["9M", "9L63", "9S11", "8M", "8L63", "8S10", "7M", "7L29", "7V", "6M", "6L29", "6S4", "5M", "5L29", "4M", "4L29", "4S1", "3M", "3L55", "3S0"],
sunnyday: ["9M", "9L63", "9S12", "8M", "8L63", "8S10", "7M", "7L29", "7V", "6M", "6L29", "6S4", "5M", "5L29", "4M", "4L29", "4S1", "3M", "3L55", "3S0"],
swagger: ["7M", "7V", "6M", "5M", "4M", "3T"],
swift: ["9M", "8M", "7V", "4T", "4L43", "3T", "3L66", "3S0"],
tailwind: ["9M", "7T", "7S9", "6T", "5T", "4T"],
@ -33259,6 +33268,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["burnup", "sacredfire", "extrasensory", "ancientpower"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["sacredfire", "bravebird", "earthquake", "tailwind"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["flareblitz", "extrasensory", "sunnyday", "ancientpower"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['sunnyday', 'sacredfire', 'recover', 'extrasensory'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["sunnyday", "sacredfire", "recover", "extrasensory"]},
],
encounters: [
@ -45653,6 +45663,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, isHidden: true, moves: ["explosion", "icepunch", "stoneedge", "hammerarm"], pokeball: "pokeball"},
{generation: 7, level: 60, shiny: 1, moves: ["stoneedge", "hammerarm", "lockon", "zapcannon"]},
{generation: 8, level: 70, shiny: 1, moves: ["superpower", "stoneedge", "hammerarm", "curse"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['zapcannon', 'lockon', 'superpower', 'stoneedge'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -45751,6 +45762,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, isHidden: true, moves: ["thunderbolt", "amnesia", "icebeam", "hail"], pokeball: "pokeball"},
{generation: 7, level: 60, shiny: 1, moves: ["icebeam", "hammerarm", "lockon", "zapcannon"]},
{generation: 8, level: 70, shiny: 1, moves: ["icebeam", "zapcannon", "amnesia", "icywind"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['zapcannon', 'lockon', 'superpower', 'blizzard'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -45855,6 +45867,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, isHidden: true, moves: ["ironhead", "rockslide", "gravity", "irondefense"], pokeball: "pokeball"},
{generation: 7, level: 60, shiny: 1, moves: ["flashcannon", "hammerarm", "lockon", "zapcannon"]},
{generation: 8, level: 70, shiny: 1, moves: ["heavyslam", "flashcannon", "irondefense", "chargebeam"]},
{generation: 8, level: 70, shiny: 1, isHidden: true, moves: ['zapcannon', 'lockon', 'superpower', 'heavyslam'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -45906,8 +45919,8 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
futuresight: ["9M", "8M"],
gigaimpact: ["9M", "8M", "7M", "6M", "5M", "4M"],
grassknot: ["9M", "8M", "7M", "6M", "5M", "4M"],
guardsplit: ["9L65", "9S12", "8L65", "7L46", "6L1", "5L75"],
healingwish: ["9L70", "9S12", "8L70", "7L1", "6L1", "5L85", "4L60"],
guardsplit: ["9L65", "9S13", "8L65", "7L46", "6L1", "5L75"],
healingwish: ["9L70", "9S13", "8L70", "7L1", "6L1", "5L85", "4L60"],
healpulse: ["9L50", "8L50", "7L16", "6L1", "6S6", "5L65", "5S5"],
helpinghand: ["9M", "9L5", "8M", "8L5", "7T", "7L1", "6T", "6L1", "5T", "5L10", "4T", "4L10", "3L10"],
hiddenpower: ["7M", "6M", "5M", "4M", "3M"],
@ -45928,7 +45941,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
naturalgift: ["4M"],
outrage: ["9M", "8M", "7T", "6T", "5T", "4T"],
protect: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
psychic: ["9M", "9L60", "9S12", "8M", "8L60", "7M", "7L51", "7S9", "6M", "6L51", "5M", "5L60", "5S5", "4M", "4L65", "3M", "3L40", "3S0", "3S1", "3S2"],
psychic: ["9M", "9L60", "9S13", "8M", "8L60", "7M", "7L51", "7S9", "6M", "6L51", "5M", "5L60", "5S5", "4M", "4L65", "3M", "3L40", "3S0", "3S1", "3S2"],
psychocut: ["8M"],
psychoshift: ["8L75", "7L28", "7S7", "7S8", "6L28", "6S6", "5L50", "5S5", "4L50"],
psychup: ["9M", "7M", "6M", "5M", "4M", "3T"],
@ -45937,7 +45950,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
raindance: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
recover: ["9L10", "8L10", "7L32", "6L32", "5L45", "4L45", "3L45", "3S1", "3S2"],
reflect: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
reflecttype: ["9L55", "9S12", "8L55", "8S10", "7L36", "6L1", "5L70"],
reflecttype: ["9L55", "9S13", "8L55", "8S10", "7L36", "6L1", "5L70"],
refresh: ["7L13", "6L13", "5L30", "4L30", "4S3", "4S4", "3L30", "3S0"],
rest: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
retaliate: ["8M", "6M", "5M"],
@ -45997,6 +46010,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 100, moves: ["mistball", "psychic", "dracometeor", "tailwind"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["reflecttype", "dragonbreath", "zenheadbutt", "surf"]},
{generation: 8, level: 70, nature: "Bashful", moves: ["mistball", "dragonpulse", "dive", "sweetkiss"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ['healingwish', 'guardsplit', 'psychic', 'reflecttype'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["healingwish", "guardsplit", "psychic", "reflecttype"]},
],
eventOnly: true,
@ -46026,11 +46040,11 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
doubleedge: ["9M", "3T"],
doubleteam: ["7M", "6M", "5M", "4M", "3M"],
dracometeor: ["9M", "8T", "7T", "7S10", "6T", "5T", "4T"],
dragonbreath: ["9L25", "9S12", "8L25", "7L20", "7S8", "7S9", "6L20", "6S6", "5L20", "4L20", "4S3", "3L20"],
dragonbreath: ["9L25", "9S13", "8L25", "7L20", "7S8", "7S9", "6L20", "6S6", "5L20", "4L20", "4S3", "3L20"],
dragoncheer: ["9M"],
dragonclaw: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
dragondance: ["9M", "9L1", "8M", "8L1", "8S11", "7L7", "6L1", "5L55", "5S5", "4L55", "3L50", "3S1", "3S2"],
dragonpulse: ["9M", "9L45", "9S12", "8M", "8L45", "8S11", "7T", "7L56", "7S8", "7S9", "6T", "6L1", "6S7", "5T", "5L80", "4M", "4L70"],
dragonpulse: ["9M", "9L45", "9S13", "8M", "8L45", "8S11", "7T", "7L56", "7S8", "7S9", "6T", "6L1", "6S7", "5T", "5L80", "4M", "4L70"],
dreameater: ["7M", "6M", "5M", "4M", "3T"],
dualwingbeat: ["9M", "8T"],
earthquake: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
@ -46057,7 +46071,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
lastresort: ["7T", "6T", "5T", "4T"],
lightscreen: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
liquidation: ["9M"],
lusterpurge: ["9L35", "9S12", "8L35", "7L24", "7S8", "7S9", "7S10", "6L24", "6S6", "6S7", "5L35", "4L35", "4S3", "4S4", "3L35", "3S0", "3S1", "3S2"],
lusterpurge: ["9L35", "9S13", "8L35", "7L24", "7S8", "7S9", "7S10", "6L24", "6S6", "6S7", "5L35", "4L35", "4S3", "4S4", "3L35", "3S0", "3S1", "3S2"],
magiccoat: ["7T", "6T", "5T", "4T"],
memento: ["9L70", "8L70", "7L1", "6L1", "5L85", "4L60", "3L5"],
mimic: ["3T"],
@ -46118,7 +46132,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
weatherball: ["9M"],
whirlpool: ["8M", "4M"],
wonderroom: ["8M", "7T", "6T", "5T"],
zenheadbutt: ["9M", "9L40", "9S12", "8M", "8L40", "8S11", "7T", "7L41", "6T", "6L40", "5T", "5L40", "4T", "4L40", "4S4"],
zenheadbutt: ["9M", "9L40", "9S13", "8M", "8L40", "8S11", "7T", "7L41", "6T", "6L40", "5T", "5L40", "4T", "4L40", "4S4"],
},
eventData: [
{generation: 3, level: 40, shiny: 1, moves: ["protect", "refresh", "lusterpurge", "psychic"]},
@ -46133,6 +46147,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["lusterpurge", "dragonpulse", "psychoshift", "dragonbreath"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["lusterpurge", "psychic", "dracometeor", "tailwind"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["dragondance", "dragonpulse", "zenheadbutt", "aurasphere"]},
{generation: 8, level: 70, shiny: 1, moves: ['memento', 'powersplit', 'psychic', 'simplebeam'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["lusterpurge", "dragonpulse", "zenheadbutt", "dragonbreath"]},
],
eventOnly: true,
@ -46140,7 +46155,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
kyogre: {
learnset: {
ancientpower: ["9L1", "8L1", "7L1", "6L1", "5L45", "5S3", "4T", "4L15", "4S2", "3L15"],
aquaring: ["9L54", "9S12", "8L54", "8S11", "7L30", "6L30", "6S5", "5L30", "4L30", "4S2"],
aquaring: ["9L54", "9S13", "8L54", "8S11", "7L30", "6L30", "6S5", "5L30", "4L30", "4S2"],
aquatail: ["9L9", "8L9", "7T", "7L15", "6T", "6L15", "5T", "5L65", "4T", "4L65"],
avalanche: ["9M", "8M", "4M"],
blizzard: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
@ -46168,12 +46183,12 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
hiddenpower: ["7M", "6M", "5M", "4M", "3M"],
hydropump: ["9M", "9L72", "8M", "8L72", "7L75", "6L75", "5L90", "4L45", "3L45", "3S0", "3S1"],
hyperbeam: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
icebeam: ["9M", "9L36", "9S12", "8M", "8L36", "7M", "7L35", "7S7", "7S8", "7S9", "7S10", "6M", "6L35", "6S5", "6S6", "5M", "5L35", "5S3", "5S4", "4M", "4L35", "4S2", "3M", "3L35", "3S0"],
icebeam: ["9M", "9L36", "9S13", "8M", "8L36", "7M", "7L35", "7S7", "7S8", "7S9", "7S10", "6M", "6L35", "6S5", "6S6", "5M", "5L35", "5S3", "5S4", "4M", "4L35", "4S2", "3M", "3L35", "3S0"],
icywind: ["9M", "8M", "7T", "6T", "5T", "4T", "3T"],
ironhead: ["9M", "8M", "7T", "6T", "5T", "4T"],
liquidation: ["9M", "8M", "7T"],
mimic: ["3T"],
muddywater: ["9M", "9L27", "9S12", "8M", "8L27", "7L60", "7S7", "7S8", "7S9", "6L20", "5L20", "4L20"],
muddywater: ["9M", "9L27", "9S13", "8M", "8L27", "7L60", "7S7", "7S8", "7S9", "6L20", "5L20", "4L20"],
mudslap: ["4T", "3T"],
naturalgift: ["4M"],
originpulse: ["9L1", "8L63", "7L45", "7S7", "7S8", "7S9", "7S10", "6L45", "6S5"],
@ -46191,7 +46206,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
scald: ["8M", "7M", "6M", "5M"],
scaryface: ["9M", "9L1", "8M", "8L1", "7L5", "6L5", "5L5", "4L5", "3L5"],
secretpower: ["6M", "4M", "3M"],
sheercold: ["9L45", "9S12", "8L45", "7L65", "6L65", "6S6", "5L75", "5S4", "4L60", "3L60", "3S1"],
sheercold: ["9L45", "9S13", "8L45", "7L65", "6L65", "6S6", "5L75", "5S4", "4L60", "3L60", "3S1"],
shockwave: ["7T", "6T", "4M", "3M"],
signalbeam: ["7T", "6T", "5T", "4T"],
sleeptalk: ["9M", "8M", "7M", "6M", "5T", "4M", "3T"],
@ -46226,6 +46241,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["icebeam", "originpulse", "calmmind", "muddywater"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["originpulse", "icebeam", "waterspout", "calmmind"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["surf", "bodyslam", "aquaring", "thunder"]},
{generation: 8, level: 70, shiny: 1, moves: ['originpulse', 'aquaring', 'sheercold', 'icebeam'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["aquaring", "sheercold", "icebeam", "muddywater"]},
],
eventOnly: true,
@ -46254,14 +46270,14 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
dragontail: ["7M", "6M", "5M"],
dynamicpunch: ["3T"],
earthpower: ["9M", "9L9", "8M", "8L9", "7T", "7L15", "7S10", "6T", "6L15", "5T", "5L65", "5S4", "4T", "4L65"],
earthquake: ["9M", "9L27", "9S12", "8M", "8L27", "8S11", "7M", "7L35", "7S7", "7S8", "7S9", "6M", "6L35", "6S5", "5M", "5L35", "5S3", "4M", "4L35", "4S2", "3M", "3L35", "3S0"],
earthquake: ["9M", "9L27", "9S13", "8M", "8L27", "8S11", "7M", "7L35", "7S7", "7S8", "7S9", "6M", "6L35", "6S5", "5M", "5L35", "5S3", "4M", "4L35", "4S2", "3M", "3L35", "3S0"],
endure: ["9M", "8M", "4M", "3T"],
eruption: ["9L90", "8L90", "7L90", "6L50", "5L50", "5S3", "5S4", "4L50", "4S2", "3L75"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
fireblast: ["9M", "9L72", "8M", "8L72", "7M", "7L75", "6M", "6L75", "5M", "5L90", "4M", "4L45", "3M", "3L45", "3S0", "3S1"],
firefang: ["9M"],
firepunch: ["9M", "8M", "7T", "7S10", "6T", "6S6", "5T", "4T", "3T"],
fissure: ["9L45", "9S12", "8L45", "7L65", "6L65", "5L75", "4L60", "3L60", "3S1"],
fissure: ["9L45", "9S13", "8L45", "7L65", "6L65", "5L75", "4L60", "3L60", "3S1"],
flamethrower: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
fling: ["9M", "8M", "7M", "6M", "5M", "4M"],
focusblast: ["9M", "8M", "7M", "6M", "5M", "4M"],
@ -46269,7 +46285,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
frustration: ["7M", "6M", "5M", "4M", "3M"],
furycutter: ["4T", "3T"],
gigaimpact: ["9M", "8M", "7M", "6M", "5M", "4M"],
hammerarm: ["9L36", "9S12", "8L36", "8S11", "7L80", "6L20", "6S6", "5L20", "5S4", "4L20"],
hammerarm: ["9L36", "9S13", "8L36", "8S11", "7L80", "6L20", "6S6", "5L20", "5S4", "4L20"],
headbutt: ["4T"],
heatcrash: ["9M", "8M"],
heatwave: ["9M"],
@ -46295,7 +46311,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
precipiceblades: ["9L1", "8L63", "7L45", "7S7", "7S8", "7S9", "7S10", "6L45", "6S5"],
protect: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
psychup: ["7M", "6M", "5M", "4M", "3T"],
rest: ["9M", "9L54", "9S12", "8M", "8L54", "7M", "7L30", "6M", "6L30", "6S5", "5M", "5L30", "4M", "4L30", "4S2", "3M", "3L50", "3S1"],
rest: ["9M", "9L54", "9S13", "8M", "8L54", "7M", "7L30", "6M", "6L30", "6S5", "5M", "5L30", "4M", "4L30", "4S2", "3M", "3L50", "3S1"],
return: ["7M", "6M", "5M", "4M", "3M"],
roar: ["9M", "7M", "6M", "5M", "4M", "3M"],
rockblast: ["9M"],
@ -46354,6 +46370,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["earthquake", "precipiceblades", "bulkup", "solarbeam"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["precipiceblades", "earthpower", "firepunch", "swordsdance"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["earthquake", "scaryface", "lavaplume", "hammerarm"]},
{generation: 8, level: 70, shiny: 1, moves: ['precipiceblades', 'rest', 'fissure', 'hammerarm'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["rest", "fissure", "hammerarm", "earthquake"]},
],
eventOnly: true,
@ -46386,7 +46403,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
dragoncheer: ["9M"],
dragonclaw: ["9M", "8M", "7M", "6M", "6S6", "5M", "4M", "4L20", "3M", "3L20"],
dragondance: ["9M", "9L18", "8M", "8L18", "7L60", "7S8", "6L60", "6S4", "6S6", "5L60", "5S2", "4L30", "3L30"],
dragonpulse: ["9M", "9L36", "9S10", "8M", "8L36", "7T", "7L50", "7S8", "6T", "6L50", "6S4", "6S5", "5T", "5L90", "5S2", "5S3", "4M", "4L75"],
dragonpulse: ["9M", "9L36", "9S11", "8M", "8L36", "7T", "7L50", "7S8", "6T", "6L50", "6S4", "6S5", "5T", "5L90", "5S2", "5S3", "4M", "4L75"],
dragontail: ["9M", "7M", "6M", "5M"],
earthpower: ["9M", "8M", "7T", "6T", "5T", "4T"],
earthquake: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
@ -46398,7 +46415,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
fireblast: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
flamethrower: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
fling: ["9M", "8M", "7M", "6M", "5M", "4M"],
fly: ["9M", "9L63", "9S10", "8M", "8L63", "7M", "7L65", "6M", "6L65", "6S7", "5M", "5L65", "4M", "4L45", "3M", "3L45", "3S0"],
fly: ["9M", "9L63", "9S11", "8M", "8L63", "7M", "7L65", "6M", "6L65", "6S7", "5M", "5L65", "4M", "4L45", "3M", "3L45", "3S0"],
focusblast: ["9M", "8M", "7M", "6M", "5M", "4M"],
frustration: ["7M", "6M", "5M", "4M", "3M"],
furycutter: ["4T", "3T"],
@ -46411,7 +46428,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
hurricane: ["9M", "9L72", "8M", "8L72"],
hydropump: ["9M", "8M"],
hyperbeam: ["9M", "9L90", "8M", "8L90", "7M", "7L90", "6M", "6L80", "5M", "5L80", "5S3", "4M", "4L65", "3M", "3L75"],
hypervoice: ["9M", "9L45", "9S10", "8M", "8L45", "7T", "7L75", "6T", "6L20", "5T", "5L20", "4L20"],
hypervoice: ["9M", "9L45", "9S11", "8M", "8L45", "7T", "7L75", "6T", "6L20", "5T", "5L20", "4L20"],
icebeam: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
icywind: ["9M", "8M", "7T", "6T", "5T", "4T", "3T"],
incinerate: ["6M", "5M"],
@ -46426,7 +46443,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
protect: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
psychup: ["7M", "6M", "5M", "4M", "3T"],
raindance: ["9M", "8M", "7M", "6M", "5M", "4M", "3M"],
rest: ["9M", "9L54", "9S10", "8M", "8L54", "7M", "7L35", "7S8", "6M", "6L30", "5M", "5L30", "4M", "4L30", "4S1", "3M", "3L50", "3S0"],
rest: ["9M", "9L54", "9S11", "8M", "8L54", "7M", "7L35", "7S8", "6M", "6L30", "5M", "5L30", "4M", "4L30", "4S1", "3M", "3L50", "3S0"],
return: ["7M", "6M", "5M", "4M", "3M"],
roar: ["9M", "7M", "6M", "5M", "4M", "3M"],
rockslide: ["9M", "8M", "7M", "6M", "5M", "4M", "3T"],
@ -46479,6 +46496,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 100, shiny: true, moves: ["dragonascent", "dracometeor", "fly", "celebrate"], pokeball: "cherishball"},
{generation: 7, level: 60, shiny: 1, moves: ["rest", "extremespeed", "dragonpulse", "dragondance"]},
{generation: 8, level: 70, shiny: 1, moves: ["dragonascent", "brutalswing", "extremespeed", "twister"]},
{generation: 8, level: 70, shiny: 1, moves: ['fly', 'rest', 'hypervoice', 'dragonpulse'], source: 'gen8bdsp'},
{generation: 9, level: 70, moves: ["fly", "rest", "hypervoice", "dragonpulse"]},
],
eventOnly: true,
@ -46616,6 +46634,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 100, moves: ["wish", "confusion", "rest"], pokeball: "cherishball"},
{generation: 7, level: 15, moves: ["swift", "wish", "healingwish", "rest"], pokeball: "cherishball"},
{generation: 8, level: 70, nature: "Timid", moves: ["meteormash", "psychic", "rest", "wish"], pokeball: "cherishball"},
{generation: 8, level: 5, moves: ['confusion', 'wish'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -52504,6 +52523,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, shiny: 1, moves: ["yawn", "futuresight", "amnesia", "extrasensory"]},
{generation: 7, level: 60, shiny: 1, moves: ["extrasensory", "yawn", "amnesia", "swift"]},
{generation: 8, level: 70, shiny: 1, moves: ["psychic", "futuresight", "magicroom", "shadowball"]},
{generation: 8, level: 50, shiny: 1, moves: ['psychic', 'amnesia', 'extrasensory', 'imprison'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -52614,6 +52634,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, shiny: 1, moves: ["luckychant", "futuresight", "charm", "extrasensory"]},
{generation: 7, level: 60, shiny: 1, moves: ["extrasensory", "charm", "futuresight", "swift"]},
{generation: 8, level: 70, shiny: 1, moves: ["psychic", "charm", "drainingkiss", "triattack"]},
{generation: 8, level: 50, shiny: 1, moves: ['psychic', 'charm', 'extrasensory', 'imprison'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -52727,6 +52748,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, shiny: 1, moves: ["uproar", "futuresight", "nastyplot", "extrasensory"]},
{generation: 7, level: 60, shiny: 1, moves: ["extrasensory", "nastyplot", "uproar", "swift"]},
{generation: 8, level: 70, shiny: 1, moves: ["psychic", "dazzlinggleam", "nastyplot", "facade"]},
{generation: 8, level: 50, shiny: 1, moves: ['psychic', 'nastyplot', 'extrasensory', 'imprison'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -52745,17 +52767,17 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
confide: ["7M", "6M"],
cut: ["6M", "5M", "4M"],
doubleteam: ["7M", "6M", "5M", "4M"],
dracometeor: ["9M", "9S13", "8T", "7T", "7S9", "7S10", "6T", "5T", "5S4", "4T"],
dracometeor: ["9M", "9S14", "8T", "7T", "7S9", "7S10", "6T", "5T", "5S4", "4T"],
dragonbreath: ["9L8", "8L8", "7L1", "6L1", "5L1", "5S3", "4L1", "4S2"],
dragonclaw: ["9M", "9L40", "8M", "8L40", "8S11", "7M", "7L28", "6M", "6L28", "5M", "5L28", "4M", "4L28", "4S0"],
dragonpulse: ["9M", "8M", "7T", "6T", "5T", "5S4", "4M"],
dragontail: ["9M", "7M", "6M", "5M"],
earthpower: ["9M", "9L72", "9S13", "8M", "8L72", "7T", "7L33", "6T", "6L33", "5T", "5L33", "4T", "4L33", "4S1"],
earthpower: ["9M", "9L72", "9S14", "8M", "8L72", "7T", "7L33", "6T", "6L33", "5T", "5L33", "4T", "4L33", "4S1"],
earthquake: ["9M", "8M", "7M", "6M", "5M", "4M"],
echoedvoice: ["7M", "6M", "5M"],
endure: ["9M", "8M", "4M"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M"],
fireblast: ["9M", "9S13", "8M", "7M", "6M", "5M", "4M"],
fireblast: ["9M", "9S14", "8M", "7M", "6M", "5M", "4M"],
flamethrower: ["9M", "8M", "7M", "6M", "5M", "4M"],
flash: ["6M", "5M", "4M"],
flashcannon: ["9M", "9L32", "8M", "8L32", "8S12", "8S11", "7M", "7L50", "7S7", "7S8", "7S9", "7S10", "6M", "6L50", "6S5", "6S6", "5M", "5L50", "4M", "4L42"],
@ -52807,7 +52829,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
sleeptalk: ["9M", "8M", "7M", "6M", "5T", "4M"],
snore: ["8M", "7T", "6T", "5T", "4T"],
stealthrock: ["9M", "8M", "7T", "6T", "5T", "4M"],
steelbeam: ["9M", "9S13", "8T"],
steelbeam: ["9M", "9S14", "8T"],
stompingtantrum: ["9M", "8M", "7T"],
stoneedge: ["9M", "8M", "7M", "6M", "5M", "4M"],
strength: ["6M", "5M", "4M"],
@ -52839,6 +52861,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 50, moves: ["flashcannon", "dracometeor", "roaroftime", "aurasphere"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["slash", "ancientpower", "flashcannon", "dragonclaw"]},
{generation: 8, level: 70, nature: "Bold", isHidden: true, moves: ["roaroftime", "flashcannon", "metalburst", "overheat"], pokeball: "cherishball"},
{generation: 8, level: 47, shiny: 1, moves: ['roaroftime', 'flashcannon', 'slash', 'ancientpower'], source: 'gen8bdsp'},
{generation: 9, level: 75, nature: "Quiet", isHidden: true, perfectIVs: 4, moves: ["dracometeor", "earthpower", "fireblast", "steelbeam"]},
],
eventOnly: true,
@ -52867,7 +52890,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
cut: ["6M", "5M", "4M"],
dive: ["8M", "6M", "5M", "4T"],
doubleteam: ["7M", "6M", "5M", "4M"],
dracometeor: ["9M", "9S13", "8T", "7T", "7S9", "7S10", "6T", "5T", "5S4", "4T"],
dracometeor: ["9M", "9S14", "8T", "7T", "7S9", "7S10", "6T", "5T", "5S4", "4T"],
dragonbreath: ["9L8", "8L8", "7L1", "6L1", "5L1", "5S3", "4L1", "4S2"],
dragonclaw: ["9M", "8M", "8L40", "8S11", "7M", "7L28", "6M", "6L28", "5M", "5L28", "4M", "4L28", "4S0"],
dragonpulse: ["9M", "8M", "7T", "6T", "5T", "4M"],
@ -52878,7 +52901,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
echoedvoice: ["7M", "6M", "5M"],
endure: ["9M", "8M", "4M"],
facade: ["9M", "8M", "7M", "6M", "5M", "4M"],
fireblast: ["9M", "9S13", "8M", "7M", "6M", "5M", "4M"],
fireblast: ["9M", "9S14", "8M", "7M", "6M", "5M", "4M"],
flamethrower: ["9M", "8M", "7M", "6M", "5M", "4M"],
fling: ["9M", "8M", "7M", "6M", "5M", "4M"],
focusblast: ["9M", "8M", "7M", "6M", "5M", "4M"],
@ -52893,7 +52916,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
heavyslam: ["9M", "8M"],
hiddenpower: ["7M", "6M", "5M", "4M"],
honeclaws: ["6M", "5M"],
hydropump: ["9M", "9L88", "9S13", "8M", "8L88", "8S12", "7L50", "7S7", "7S8", "7S9", "7S10", "6L50", "6S5", "6S6", "5L50", "5S4", "4L42"],
hydropump: ["9M", "9L88", "9S14", "8M", "8L88", "8S12", "7L50", "7S7", "7S8", "7S9", "7S10", "6L50", "6S5", "6S6", "5L50", "5S4", "4L42"],
hyperbeam: ["9M", "8M", "7M", "6M", "5M", "4M"],
hypervoice: ["9M", "8M", "7T", "6T", "5T"],
icebeam: ["9M", "8M", "7M", "6M", "5M", "4M"],
@ -52936,7 +52959,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
swift: ["9M", "8M", "4T"],
takedown: ["9M"],
terablast: ["9M"],
thunder: ["9M", "9S13", "8M", "7M", "6M", "5M", "4M"],
thunder: ["9M", "9S14", "8M", "7M", "6M", "5M", "4M"],
thunderbolt: ["9M", "8M", "7M", "6M", "5M", "4M"],
thunderwave: ["9M", "8M", "7M", "6M", "5M", "4M"],
toxic: ["7M", "6M", "5M", "4M"],
@ -52961,6 +52984,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 50, moves: ["hydropump", "dracometeor", "spacialrend", "aurasphere"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["slash", "surf", "ancientpower", "dragonclaw"]},
{generation: 8, level: 70, nature: "Hasty", isHidden: true, moves: ["spacialrend", "hydropump", "aurasphere", "earthpower"], pokeball: "cherishball"},
{generation: 8, level: 47, shiny: 1, moves: ['spacialrend', 'aquaring', 'slash', 'ancientpower'], source: 'gen8bdsp'},
{generation: 9, level: 75, nature: "Modest", isHidden: true, perfectIVs: 4, moves: ["dracometeor", "thunder", "fireblast", "hydropump"]},
],
eventOnly: true,
@ -53067,6 +53091,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["crunch", "scaryface", "lavaplume", "firespin"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["magmastorm", "heatwave", "earthpower", "flashcannon"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["metalsound", "lavaplume", "crunch", "ironhead"]},
{generation: 8, level: 70, shiny: 1, moves: ['stoneedge', 'heatwave', 'earthpower', 'metalsound'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -53167,6 +53192,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["zenheadbutt", "revenge", "dizzypunch", "confuseray"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["crushgrip", "drainpunch", "zenheadbutt", "heavyslam"], pokeball: "cherishball"},
{generation: 8, level: 100, shiny: 1, moves: ["gigaimpact", "zenheadbutt", "hammerarm", "crushgrip"]},
{generation: 8, level: 70, shiny: 1, moves: ['crushgrip', 'gigaimpact', 'hammerarm', 'heavyslam'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -53280,6 +53306,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 100, nature: "Brave", isHidden: true, moves: ["aurasphere", "dracometeor", "shadowforce", "ironhead"], pokeball: "cherishball"},
{generation: 7, level: 60, shiny: 1, moves: ["shadowforce", "aurasphere", "earthpower", "dragonclaw"]},
{generation: 8, level: 70, shiny: 1, moves: ["dragonclaw", "scaryface", "shadowball", "ancientpower"]},
{generation: 8, level: 70, shiny: 1, moves: ['dragonclaw', 'aurasphere', 'painsplit', 'shadowforce'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -53376,6 +53403,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, shiny: 1, moves: ["mist", "aurorabeam", "futuresight", "slash"]},
{generation: 7, level: 60, shiny: 1, moves: ["aurorabeam", "futuresight", "slash", "moonlight"]},
{generation: 8, level: 70, shiny: 1, moves: ["icywind", "moonblast", "psychocut", "psyshock"]},
{generation: 8, level: 50, shiny: 1, moves: ['safeguard', 'moonlight', 'psychocut', 'slash'], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -53454,7 +53482,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
},
manaphy: {
learnset: {
acidarmor: ["9L31", "9S7", "7L31", "6L31", "5L31", "4L31", "4S2"],
acidarmor: ["9L31", "9S8", "7L31", "6L31", "5L31", "4L31", "4S2"],
alluringvoice: ["9M"],
ancientpower: ["4T"],
aquaring: ["9L54", "7L54", "7S6", "6L54", "5L54", "4L54", "4S3"],
@ -53463,7 +53491,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
bounce: ["7T", "6T", "5T", "4T"],
brine: ["4M"],
bubble: ["7L1", "6L1", "6S4", "6S5", "5L1", "4L1", "4S0", "4S1"],
bubblebeam: ["9L24", "9S7", "7L24", "6L24", "5L24", "4L24"],
bubblebeam: ["9L24", "9S8", "7L24", "6L24", "5L24", "4L24"],
calmmind: ["9M", "7M", "6M", "5M", "4M"],
charm: ["9M", "9L9", "7L9", "6L9", "5L9", "4L9"],
chillingwater: ["9M"],
@ -53530,10 +53558,10 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
uturn: ["9M", "7M", "6M", "5M", "4M"],
waterfall: ["9M", "7M", "6M", "5M", "4M"],
watergun: ["9L1"],
waterpulse: ["9M", "9L46", "9S7", "7T", "7L46", "7S6", "6T", "6L46", "5L46", "4M", "4L46", "4S2", "4S3"],
waterpulse: ["9M", "9L46", "9S8", "7T", "7L46", "7S6", "6T", "6L46", "5L46", "4M", "4L46", "4S2", "4S3"],
watersport: ["7L1", "6L1", "6S4", "6S5", "5L1", "4L1", "4S0", "4S1", "4S3"],
weatherball: ["9M"],
whirlpool: ["9M", "9L39", "9S7", "7L39", "6L39", "5L39", "4M", "4L39", "4S2"],
whirlpool: ["9M", "9L39", "9S8", "7L39", "6L39", "5L39", "4M", "4L39", "4S2"],
zenheadbutt: ["9M"],
},
eventData: [
@ -53544,6 +53572,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 1, moves: ["tailglow", "bubble", "watersport", "heartswap"], pokeball: "cherishball"},
{generation: 6, level: 100, moves: ["tailglow", "bubble", "watersport"], pokeball: "cherishball"},
{generation: 7, level: 15, moves: ["tailglow", "waterpulse", "aquaring", "heartswap"], pokeball: "cherishball"},
{generation: 8, moves: ['tailglow', 'watergun'], pokeball: 'pokeball', source: 'gen8bdsp'},
{generation: 9, level: 50, shiny: true, nature: "Calm", ivs: {hp: 31, atk: 20, def: 31, spa: 20, spd: 31, spe: 20}, moves: ["bubblebeam", "acidarmor", "whirlpool", "waterpulse"], pokeball: "cherishball"},
],
eventOnly: true,
@ -53559,12 +53588,12 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
confuseray: ["9M"],
curse: ["9M"],
cut: ["6M", "5M", "4M"],
darkpulse: ["9M", "9L93", "9S8", "7M", "7L93", "6M", "6L93", "6S5", "5T", "5L93", "4M", "4L93", "4S2"],
darkpulse: ["9M", "9L93", "9S9", "7M", "7L93", "6M", "6L93", "6S5", "5T", "5L93", "4M", "4L93", "4S2"],
darkvoid: ["9L66", "7L66", "7S7", "6L66", "6S5", "6S6", "5L66", "5S4", "4L66", "4S2"],
disable: ["9L1", "7L1", "6L1", "5L1", "4L1"],
doubleteam: ["9L47", "7M", "7L47", "6M", "6L47", "5M", "5L47", "4M", "4L47", "4S2", "4S3"],
drainpunch: ["9M", "7T", "6T", "5T", "4M"],
dreameater: ["9L84", "9S8", "7M", "7L84", "6M", "6L84", "6S5", "5M", "5L84", "4M", "4L84"],
dreameater: ["9L84", "9S9", "7M", "7L84", "6M", "6L84", "6S5", "5M", "5L84", "4M", "4L84"],
embargo: ["7M", "6M", "5M", "4M", "4L75"],
endure: ["9M", "4M"],
facade: ["9M", "7M", "6M", "5M", "4M"],
@ -53581,7 +53610,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
hex: ["9M"],
hiddenpower: ["7M", "6M", "5M", "4M"],
hyperbeam: ["9M", "7M", "6M", "5M", "4M"],
hypnosis: ["9L20", "9S8", "7L20", "6L20", "5L20", "4L20", "4S0", "4S1", "4S3"],
hypnosis: ["9L20", "9S9", "7L20", "6L20", "5L20", "4L20", "4S0", "4S1", "4S3"],
icebeam: ["9M", "7M", "6M", "5M", "4M"],
icywind: ["9M", "7T", "6T", "5T", "4T"],
incinerate: ["6M", "5M"],
@ -53616,7 +53645,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
round: ["7M", "6M", "5M"],
scaryface: ["9M"],
secretpower: ["6M", "4M"],
shadowball: ["9M", "9S8", "7M", "6M", "5M", "4M", "4S2"],
shadowball: ["9M", "9S9", "7M", "6M", "5M", "4M", "4S2"],
shadowclaw: ["9M", "7M", "6M", "5M", "4M"],
shockwave: ["7T", "6T", "4M"],
sleeptalk: ["9M", "7M", "6M", "5T", "4M"],
@ -53656,6 +53685,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, moves: ["darkvoid", "darkpulse", "phantomforce", "dreameater"], pokeball: "cherishball"},
{generation: 6, level: 100, moves: ["darkvoid", "ominouswind", "nightmare", "feintattack"], pokeball: "cherishball"},
{generation: 7, level: 50, moves: ["darkvoid", "feintattack", "nightmare", "ominouswind"], pokeball: "cherishball"},
{generation: 8, level: 50, shiny: 1, moves: ["hypnosis", "suckerpunch", "foulplay", "doubleteam"], source: 'gen8bdsp'},
{generation: 9, level: 50, moves: ["darkpulse", "shadowball", "hypnosis", "dreameater"], pokeball: "cherishball"},
],
eventOnly: true,
@ -53742,6 +53772,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 15, moves: ["growth", "magicalleaf", "seedflare", "airslash"], pokeball: "cherishball"},
{generation: 6, level: 100, moves: ["seedflare", "aromatherapy", "substitute", "energyball"], pokeball: "cherishball"},
{generation: 7, level: 20, moves: ["return", "growth", "seedflare", "celebrate"], pokeball: "cherishball"},
{generation: 8, level: 30, shiny: 1, moves: ["growth", "magicalleaf", "leechseed", "synthesis"], source: 'gen8bdsp'},
],
eventOnly: true,
},
@ -53932,6 +53963,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 100, shiny: 1, moves: ["judgment", "blastburn", "hydrocannon", "earthpower"], pokeball: "cherishball"},
{generation: 6, level: 100, moves: ["judgment", "perishsong", "hyperbeam", "recover"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["judgment", "extremespeed", "recover", "hyperbeam"], pokeball: "cherishball"},
{generation: 8, level: 80, shiny: 1, moves: ["healingwish", "futuresight", "recover", "hyperbeam"], source: 'gen8bdsp'},
],
eventOnly: true,
},

File diff suppressed because it is too large Load Diff

View File

@ -65,6 +65,7 @@ interface EventInfo {
japan?: boolean;
/** For Emerald event eggs to allow Pomeg glitched moves */
emeraldEventEgg?: boolean;
source?: string;
}
type Effect = Ability | Item | ActiveMove | Species | Condition | Format;

View File

@ -2721,6 +2721,18 @@ export class TeamValidator {
if (!canLearnSpecies.includes(toID(species.baseSpecies))) canLearnSpecies.push(toID(species.baseSpecies));
minLearnGen = Math.min(minLearnGen, learnedGen);
}
if (canUseHomeRelearner && !['nincada', 'spinda'].includes(species.id)) {
const learnsetData = this.getExternalLearnsetData(species.id, 'gen8bdsp');
if (learnsetData?.learnset?.[move.id]) {
for (const source of learnsetData.learnset[move.id]) {
// Non-event sources from BDSP should always be legal through HOME relearner,
// assuming the Pokemon's level is high enough
if (source.charAt(1) === 'S') continue;
if (source.charAt(1) === 'L' && level < parseInt(source.substr(2))) continue;
return null;
}
}
}
if (ruleTable.has('mimicglitch') && species.gen < 5) {
// include the Mimic Glitch when checking this mon's learnset
const glitchMoves = ['metronome', 'copycat', 'transform', 'mimic', 'assist'];
@ -2860,6 +2872,12 @@ export class TeamValidator {
return null;
}
getExternalLearnsetData(species: ID, mod: string) {
const moddedDex = this.dex.mod(mod);
if (moddedDex.species.get(species).isNonstandard) return null;
return moddedDex.species.getLearnsetData(species);
}
static fillStats(stats: SparseStatsTable | null, fillNum = 0): StatsTable {
const filledStats: StatsTable = { hp: fillNum, atk: fillNum, def: fillNum, spa: fillNum, spd: fillNum, spe: fillNum };
if (stats) {

View File

@ -230,14 +230,14 @@ describe('Dex data', () => {
it('should have valid Learnsets entries', function () {
this.timeout(0);
const learnsetsArray = [Dex.mod('gen2').data.Learnsets, Dex.mod('gen7letsgo').data.Learnsets, Dex.mod('gen8bdsp').data.Learnsets, Dex.data.Learnsets];
for (const Learnsets of learnsetsArray) {
for (const speciesid in Learnsets) {
const mods = [Dex.mod('gen2'), Dex.mod('gen7letsgo'), Dex.mod('gen8bdsp'), Dex];
for (const mod of mods) {
for (const speciesid in mod.data.Learnsets) {
const species = Dex.species.get(speciesid);
assert.equal(speciesid, species.id, `Key "${speciesid}" in Learnsets should be a Species ID`);
assert(species.exists, `Key "${speciesid}" in Learnsets should be a pokemon`);
let entry = Learnsets[speciesid];
if (!entry.learnset) entry = Learnsets[toID(species.changesFrom || species.baseSpecies)];
let entry = mod.data.Learnsets[speciesid];
if (!entry.learnset) entry = mod.data.Learnsets[toID(species.changesFrom || species.baseSpecies)];
for (const moveid in entry.learnset) {
const move = Dex.moves.get(moveid);
assert.equal(moveid, move.id, `Move key "${moveid}" of Learnsets entry ${species.name} should be a Move ID`);
@ -292,7 +292,8 @@ describe('Dex data', () => {
}
assert.equal(eventMove, toID(eventMove), `${species.name}'s event move "${eventMove}" must be an ID`);
assert(entry.learnset, `${species.name} has event moves but no learnset`);
assert(entry.learnset[eventMove]?.includes(learned), `${species.name}'s event move ${Dex.moves.get(eventMove).name} should exist as "${learned}"`);
const effectiveMod = mod.currentMod === 'gen8bdsp' ? 'gen8bdsp' : undefined;
if (eventEntry.source === effectiveMod) assert(entry.learnset[eventMove]?.includes(learned), `${species.name}'s event move ${Dex.moves.get(eventMove).name} should exist as "${learned}"`);
}
}
}

View File

@ -246,6 +246,8 @@ describe('Team Validator', () => {
const team = [
{ species: 'bronzor', level: 1, ability: 'levitate', moves: ['hypnosis'] },
{ species: 'porygon', level: 25, ability: 'trace', moves: ['triattack'], evs: { hp: 1 } },
// Darkrai from Pokemon GO with Dream Eater learned via BDSP TM
{ species: 'darkrai', level: 15, ability: 'baddreams', moves: ['dreameater'], evs: { hp: 1 } },
];
assert.legalTeam(team, 'gen9ubers');
});