Add HOME relearner for LA (#11409)
Some checks are pending
Node.js CI / build (18.x) (push) Waiting to run

* Add HOME relearner for LA

* Update dex-species.ts

Workaround for a crash caused by using the LA mod in dexsearch

* Fix more crashes

* `gen8legendsarceus` -> `gen8legends`
This commit is contained in:
dot-Comfey 2025-08-31 22:59:04 -07:00 committed by GitHub
parent c3e0bbd61d
commit 7357f0fa8f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 7995 additions and 34 deletions

View File

@ -52524,6 +52524,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["swift", "extrasensory", "mysticalpower", "hypnosis"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -52635,6 +52636,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["swift", "extrasensory", "mysticalpower", "recover"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -52749,6 +52751,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["swift", "extrasensory", "mysticalpower", "doublehit"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -52767,17 +52770,17 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
confide: ["7M", "6M"],
cut: ["6M", "5M", "4M"],
doubleteam: ["7M", "6M", "5M", "4M"],
dracometeor: ["9M", "9S14", "8T", "7T", "7S9", "7S10", "6T", "5T", "5S4", "4T"],
dracometeor: ["9M", "9S15", "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", "9S14", "8M", "8L72", "7T", "7L33", "6T", "6L33", "5T", "5L33", "4T", "4L33", "4S1"],
earthpower: ["9M", "9L72", "9S15", "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", "9S14", "8M", "7M", "6M", "5M", "4M"],
fireblast: ["9M", "9S15", "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"],
@ -52829,7 +52832,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", "9S14", "8T"],
steelbeam: ["9M", "9S15", "8T"],
stompingtantrum: ["9M", "8M", "7T"],
stoneedge: ["9M", "8M", "7M", "6M", "5M", "4M"],
strength: ["6M", "5M", "4M"],
@ -52862,6 +52865,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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: 8, level: 65, moves: ["earthpower", "irontail", "flashcannon", "roaroftime"], source: 'gen8legends'},
{generation: 9, level: 75, nature: "Quiet", isHidden: true, perfectIVs: 4, moves: ["dracometeor", "earthpower", "fireblast", "steelbeam"]},
],
eventOnly: true,
@ -52890,7 +52894,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", "9S14", "8T", "7T", "7S9", "7S10", "6T", "5T", "5S4", "4T"],
dracometeor: ["9M", "9S15", "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"],
@ -52901,7 +52905,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", "9S14", "8M", "7M", "6M", "5M", "4M"],
fireblast: ["9M", "9S15", "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"],
@ -52916,7 +52920,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
heavyslam: ["9M", "8M"],
hiddenpower: ["7M", "6M", "5M", "4M"],
honeclaws: ["6M", "5M"],
hydropump: ["9M", "9L88", "9S14", "8M", "8L88", "8S12", "7L50", "7S7", "7S8", "7S9", "7S10", "6L50", "6S5", "6S6", "5L50", "5S4", "4L42"],
hydropump: ["9M", "9L88", "9S15", "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"],
@ -52959,7 +52963,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
swift: ["9M", "8M", "4T"],
takedown: ["9M"],
terablast: ["9M"],
thunder: ["9M", "9S14", "8M", "7M", "6M", "5M", "4M"],
thunder: ["9M", "9S15", "8M", "7M", "6M", "5M", "4M"],
thunderbolt: ["9M", "8M", "7M", "6M", "5M", "4M"],
thunderwave: ["9M", "8M", "7M", "6M", "5M", "4M"],
toxic: ["7M", "6M", "5M", "4M"],
@ -52985,6 +52989,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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: 8, level: 65, moves: ["earthpower", "aquatail", "hydropump", "spacialrend"], source: 'gen8legends'},
{generation: 9, level: 75, nature: "Modest", isHidden: true, perfectIVs: 4, moves: ["dracometeor", "thunder", "fireblast", "hydropump"]},
],
eventOnly: true,
@ -53092,6 +53097,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["ironhead", "crunch", "earthpower", "magmastorm"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -53193,6 +53199,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["zenheadbutt", "ironhead", "crushgrip", "gigaimpact"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -53307,6 +53314,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["dragonclaw", "dragonpulse", "earthpower", "shadowforce"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -53404,6 +53412,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["psychocut", "psychic", "moonblast", "lunarblessing"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -53482,7 +53491,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
},
manaphy: {
learnset: {
acidarmor: ["9L31", "9S8", "7L31", "6L31", "5L31", "4L31", "4S2"],
acidarmor: ["9L31", "9S9", "7L31", "6L31", "5L31", "4L31", "4S2"],
alluringvoice: ["9M"],
ancientpower: ["4T"],
aquaring: ["9L54", "7L54", "7S6", "6L54", "5L54", "4L54", "4S3"],
@ -53491,7 +53500,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", "9S8", "7L24", "6L24", "5L24", "4L24"],
bubblebeam: ["9L24", "9S9", "7L24", "6L24", "5L24", "4L24"],
calmmind: ["9M", "7M", "6M", "5M", "4M"],
charm: ["9M", "9L9", "7L9", "6L9", "5L9", "4L9"],
chillingwater: ["9M"],
@ -53558,10 +53567,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", "9S8", "7T", "7L46", "7S6", "6T", "6L46", "5L46", "4M", "4L46", "4S2", "4S3"],
waterpulse: ["9M", "9L46", "9S9", "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", "9S8", "7L39", "6L39", "5L39", "4M", "4L39", "4S2"],
whirlpool: ["9M", "9L39", "9S9", "7L39", "6L39", "5L39", "4M", "4L39", "4S2"],
zenheadbutt: ["9M"],
},
eventData: [
@ -53573,6 +53582,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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: 8, level: 50, moves: ["waterpulse", "zenheadbutt", "moonblast", "bubble"], source: 'gen8legends'},
{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,
@ -53588,12 +53598,12 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
confuseray: ["9M"],
curse: ["9M"],
cut: ["6M", "5M", "4M"],
darkpulse: ["9M", "9L93", "9S9", "7M", "7L93", "6M", "6L93", "6S5", "5T", "5L93", "4M", "4L93", "4S2"],
darkpulse: ["9M", "9L93", "9S10", "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", "9S9", "7M", "7L84", "6M", "6L84", "6S5", "5M", "5L84", "4M", "4L84"],
dreameater: ["9L84", "9S10", "7M", "7L84", "6M", "6L84", "6S5", "5M", "5L84", "4M", "4L84"],
embargo: ["7M", "6M", "5M", "4M", "4L75"],
endure: ["9M", "4M"],
facade: ["9M", "7M", "6M", "5M", "4M"],
@ -53610,7 +53620,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
hex: ["9M"],
hiddenpower: ["7M", "6M", "5M", "4M"],
hyperbeam: ["9M", "7M", "6M", "5M", "4M"],
hypnosis: ["9L20", "9S9", "7L20", "6L20", "5L20", "4L20", "4S0", "4S1", "4S3"],
hypnosis: ["9L20", "9S10", "7L20", "6L20", "5L20", "4L20", "4S0", "4S1", "4S3"],
icebeam: ["9M", "7M", "6M", "5M", "4M"],
icywind: ["9M", "7T", "6T", "5T", "4T"],
incinerate: ["6M", "5M"],
@ -53645,7 +53655,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
round: ["7M", "6M", "5M"],
scaryface: ["9M"],
secretpower: ["6M", "4M"],
shadowball: ["9M", "9S9", "7M", "6M", "5M", "4M", "4S2"],
shadowball: ["9M", "9S10", "7M", "6M", "5M", "4M", "4S2"],
shadowclaw: ["9M", "7M", "6M", "5M", "4M"],
shockwave: ["7T", "6T", "4M"],
sleeptalk: ["9M", "7M", "6M", "5T", "4M"],
@ -53686,6 +53696,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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: 8, level: 70, moves: ["hex", "darkpulse", "psychic", "darkvoid"], source: 'gen8legends'},
{generation: 9, level: 50, moves: ["darkpulse", "shadowball", "hypnosis", "dreameater"], pokeball: "cherishball"},
],
eventOnly: true,
@ -53773,6 +53784,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 70, moves: ["seedflare", "energyball", "airslash", "earthpower"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -53964,6 +53976,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{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'},
{generation: 8, level: 75, moves: ["recover", "calmmind", "judgment", "hyperbeam"], pokeball: "pokeball", source: 'gen8legends'},
],
eventOnly: true,
},
@ -66526,6 +66539,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["airslash", "crunch", "tailwind", "raindance"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["hurricane", "heatwave", "grassknot", "tailwind"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["hurricane", "agility", "icywind", "heatwave"]},
{generation: 8, level: 70, moves: ["extrasensory", "crunch", "hurricane", "bleakwindstorm"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -66634,6 +66648,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 7, level: 60, moves: ["discharge", "crunch", "charge", "nastyplot"], pokeball: "cherishball"},
{generation: 7, level: 100, moves: ["thunderbolt", "focusblast", "grassknot", "nastyplot"], pokeball: "cherishball"},
{generation: 8, level: 70, shiny: 1, moves: ["thunder", "raindance", "weatherball", "sludgewave"]},
{generation: 8, level: 70, moves: ["extrasensory", "crunch", "thunder", "wildboltstorm"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -66951,6 +66966,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
{generation: 6, level: 50, nature: "Adamant", ivs: {hp: 31, atk: 31, def: 31, spa: 1, spd: 31, spe: 24}, moves: ["earthquake", "knockoff", "uturn", "rocktomb"], pokeball: "cherishball"},
{generation: 7, level: 60, shiny: 1, moves: ["earthpower", "rockslide", "earthquake", "sandstorm"]},
{generation: 8, level: 70, shiny: 1, moves: ["sandtomb", "rockslide", "bulldoze", "focusblast"]},
{generation: 8, level: 70, moves: ["extrasensory", "crunch", "earthpower", "sandsearstorm"], source: 'gen8legends'},
],
eventOnly: true,
},
@ -86940,7 +86956,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
drainingkiss: ["9M", "9L20", "9S1"],
earthpower: ["9M"],
endure: ["9M"],
extrasensory: ["9L45", "9S1", "8S0"],
extrasensory: ["9L45", "9S1"],
facade: ["9M"],
fairywind: ["9L1"],
flatter: ["9L10"],
@ -86956,7 +86972,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
ironhead: ["9M"],
mistyexplosion: ["9M"],
mistyterrain: ["9M"],
moonblast: ["9L65", "9S1", "8S0"],
moonblast: ["9L65", "9S1"],
mysticalfire: ["9L35"],
outrage: ["9M", "9L70"],
playrough: ["9M"],
@ -86968,7 +86984,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
scaryface: ["9M"],
sleeptalk: ["9M"],
sludgebomb: ["9M"],
springtidestorm: ["9L75", "8S0"],
springtidestorm: ["9L75"],
substitute: ["9M"],
sunnyday: ["9M"],
superpower: ["9L55"],
@ -86983,7 +86999,7 @@ export const Learnsets: import('../sim/dex-species').LearnsetDataTable = {
zenheadbutt: ["9M"],
},
eventData: [
{generation: 8, level: 70, perfectIVs: 3, moves: ["extrasensory", "moonblast", "springtidestorm"], pokeball: "strangeball"}, // Legends: Arceus
{generation: 8, level: 70, perfectIVs: 3, moves: ["extrasensory", "crunch", "moonblast", "springtidestorm"], pokeball: "strangeball", source: 'gen8legends'},
{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,

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,4 @@
export const Scripts: ModdedBattleScriptsData = {
gen: 8,
inherit: 'gen8',
};

View File

@ -512,9 +512,9 @@ export class DexSpecies {
species.doublesTier = this.dex.data.FormatsData[species.id.slice(0, -5)].doublesTier || species.tier as any;
species.natDexTier = this.dex.data.FormatsData[species.id.slice(0, -5)].natDexTier || species.tier;
} else if (species.battleOnly) {
species.tier = this.dex.data.FormatsData[toID(species.battleOnly)].tier || 'Illegal';
species.doublesTier = this.dex.data.FormatsData[toID(species.battleOnly)].doublesTier || species.tier as any;
species.natDexTier = this.dex.data.FormatsData[toID(species.battleOnly)].natDexTier || species.tier;
species.tier = this.dex.data.FormatsData[toID(species.battleOnly)]?.tier || 'Illegal';
species.doublesTier = this.dex.data.FormatsData[toID(species.battleOnly)]?.doublesTier || species.tier as any;
species.natDexTier = this.dex.data.FormatsData[toID(species.battleOnly)]?.natDexTier || species.tier;
} else {
const baseFormatsData = this.dex.data.FormatsData[toID(species.baseSpecies)];
if (!baseFormatsData) {

View File

@ -2721,16 +2721,22 @@ 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 (canUseHomeRelearner) {
const fullSources = [];
let learnsetData = this.getExternalLearnsetData(species.id, 'gen8bdsp');
if (!['nincada', 'spinda'].includes(species.id) && learnsetData?.learnset?.[move.id]) {
fullSources.push(...learnsetData.learnset[move.id]);
}
learnsetData = this.getExternalLearnsetData(species.id, 'gen8legends');
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;
}
fullSources.push(...learnsetData.learnset[move.id]);
}
for (const source of fullSources) {
// Non-event sources from BDSP/LA 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) {

View File

@ -230,7 +230,7 @@ describe('Dex data', () => {
it('should have valid Learnsets entries', function () {
this.timeout(0);
const mods = [Dex.mod('gen2'), Dex.mod('gen7letsgo'), Dex.mod('gen8bdsp'), Dex];
const mods = [Dex.mod('gen2'), Dex.mod('gen7letsgo'), Dex.mod('gen8bdsp'), Dex.mod('gen8legends'), Dex];
for (const mod of mods) {
for (const speciesid in mod.data.Learnsets) {
const species = Dex.species.get(speciesid);
@ -292,7 +292,7 @@ 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`);
const effectiveMod = mod.currentMod === 'gen8bdsp' ? 'gen8bdsp' : undefined;
const effectiveMod = ['gen8bdsp', 'gen8legends'].includes(mod.currentMod) ? mod.currentMod : 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

@ -248,6 +248,7 @@ describe('Team Validator', () => {
{ 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 } },
{ species: 'phione', level: 46, ability: 'hydration', moves: ['takeheart'], evs: { hp: 1 } },
];
assert.legalTeam(team, 'gen9ubers');
});