@pkmn/sim 0.4.25 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/config/formats.js +272 -204
- package/build/config/formats.js.map +1 -1
- package/build/data/abilities.js +5 -1
- package/build/data/abilities.js.map +1 -1
- package/build/data/formats-data.js +48 -41
- package/build/data/formats-data.js.map +1 -1
- package/build/data/items.js +26 -2
- package/build/data/items.js.map +1 -1
- package/build/data/learnsets.js +35 -1
- package/build/data/learnsets.js.map +1 -1
- package/build/data/mods/gen1/scripts.js +12 -0
- package/build/data/mods/gen1/scripts.js.map +1 -1
- package/build/data/mods/gen2/formats-data.js +2 -2
- package/build/data/mods/gen2/formats-data.js.map +1 -1
- package/build/data/mods/gen3/formats-data.js +1 -1
- package/build/data/mods/gen3/formats-data.js.map +1 -1
- package/build/data/moves.js +9 -13
- package/build/data/moves.js.map +1 -1
- package/build/data/pokedex.js +33 -0
- package/build/data/pokedex.js.map +1 -1
- package/build/data/rulesets.js +39 -5
- package/build/data/rulesets.js.map +1 -1
- package/build/data/text/items.js +4 -0
- package/build/data/text/items.js.map +1 -1
- package/build/data/text/moves.js +1 -1
- package/build/data/text/moves.js.map +1 -1
- package/build/sim/battle-actions.js +8 -3
- package/build/sim/battle-actions.js.map +1 -1
- package/build/sim/dex-formats.js +1 -1
- package/build/sim/dex-formats.js.map +1 -1
- package/build/sim/dex-species.js +4 -3
- package/build/sim/dex-species.js.map +1 -1
- package/build/sim/exported-global-types.d.ts +1 -0
- package/build/sim/global-types.d.ts +1 -0
- package/build/sim/pokemon.js +1 -1
- package/build/sim/pokemon.js.map +1 -1
- package/build/sim/team-validator.js +3 -0
- package/build/sim/team-validator.js.map +1 -1
- package/config/formats.ts +276 -205
- package/data/abilities.ts +3 -1
- package/data/formats-data.ts +48 -41
- package/data/items.ts +26 -2
- package/data/learnsets.ts +35 -1
- package/data/mods/gen1/scripts.ts +11 -0
- package/data/mods/gen2/formats-data.ts +2 -2
- package/data/mods/gen3/formats-data.ts +1 -1
- package/data/moves.ts +9 -13
- package/data/pokedex.ts +33 -0
- package/data/rulesets.ts +35 -6
- package/data/text/items.ts +4 -0
- package/data/text/moves.ts +1 -1
- package/package.json +1 -1
- package/sim/battle-actions.ts +8 -3
- package/sim/dex-formats.ts +1 -1
- package/sim/dex-species.ts +4 -3
- package/sim/exported-global-types.ts +1 -0
- package/sim/global-types.ts +1 -0
- package/sim/pokemon.ts +1 -1
- package/sim/team-validator.ts +3 -0
package/config/formats.ts
CHANGED
|
@@ -86,7 +86,10 @@ export const Formats: FormatList = [
|
|
|
86
86
|
|
|
87
87
|
mod: 'gen8',
|
|
88
88
|
ruleset: ['Standard', 'Dynamax Clause'],
|
|
89
|
-
banlist: [
|
|
89
|
+
banlist: [
|
|
90
|
+
'Uber', 'AG', 'Arena Trap', 'Moody', 'Power Construct', 'Sand Veil', 'Shadow Tag', 'Snow Cloak',
|
|
91
|
+
'Bright Powder', 'King\'s Rock', 'Lax Incense', 'Baton Pass',
|
|
92
|
+
],
|
|
90
93
|
},
|
|
91
94
|
{
|
|
92
95
|
name: "[Gen 8] OU (Blitz)",
|
|
@@ -141,7 +144,6 @@ export const Formats: FormatList = [
|
|
|
141
144
|
mod: 'gen8',
|
|
142
145
|
ruleset: ['[Gen 8] RU'],
|
|
143
146
|
banlist: ['RU', 'NUBL', 'Drizzle', 'Drought'],
|
|
144
|
-
unbanlist: ['Indeedee'],
|
|
145
147
|
},
|
|
146
148
|
{
|
|
147
149
|
name: "[Gen 8] PU",
|
|
@@ -152,7 +154,7 @@ export const Formats: FormatList = [
|
|
|
152
154
|
|
|
153
155
|
mod: 'gen8',
|
|
154
156
|
ruleset: ['[Gen 8] NU'],
|
|
155
|
-
banlist: ['NU', 'PUBL'
|
|
157
|
+
banlist: ['NU', 'PUBL'],
|
|
156
158
|
},
|
|
157
159
|
{
|
|
158
160
|
name: "[Gen 8] LC",
|
|
@@ -231,7 +233,10 @@ export const Formats: FormatList = [
|
|
|
231
233
|
|
|
232
234
|
mod: 'gen8',
|
|
233
235
|
ruleset: ['[Gen 8] PU'],
|
|
234
|
-
banlist: [
|
|
236
|
+
banlist: [
|
|
237
|
+
'PU', 'Centiskorch', 'Drampa', 'Exeggutor-Alola', 'Gallade', 'Haunter', 'Magmortar', 'Magneton', 'Omastar', 'Rotom-Frost',
|
|
238
|
+
'Turtonator', 'Vanilluxe', 'Vikavolt', 'Silvally-Dragon', 'Silvally-Ground', 'Sneasel', 'Damp Rock', 'Grassy Seed',
|
|
239
|
+
],
|
|
235
240
|
},
|
|
236
241
|
{
|
|
237
242
|
name: "[Gen 8] LC UU",
|
|
@@ -244,9 +249,9 @@ export const Formats: FormatList = [
|
|
|
244
249
|
ruleset: ['[Gen 8] LC'],
|
|
245
250
|
banlist: [
|
|
246
251
|
// LC OU
|
|
247
|
-
'Abra', '
|
|
248
|
-
'Larvesta', 'Magnemite', 'Mareanie', 'Mienfoo', 'Mudbray', 'Munchlax', 'Natu', 'Onix', 'Pawniard',
|
|
249
|
-
'Ponyta-Galar', 'Porygon', 'Slowpoke-Base', '
|
|
252
|
+
'Abra', 'Carvanha', 'Croagunk', 'Diglett-Base', 'Dwebble', 'Ferroseed', 'Foongus', 'Frillish', 'Grookey',
|
|
253
|
+
'Koffing', 'Larvesta', 'Magnemite', 'Mareanie', 'Mienfoo', 'Mudbray', 'Munchlax', 'Natu', 'Onix', 'Pawniard',
|
|
254
|
+
'Ponyta', 'Ponyta-Galar', 'Porygon', 'Slowpoke-Base', 'Staryu', 'Timburr', 'Trapinch', 'Tyrunt', 'Vulpix',
|
|
250
255
|
// LC UUBL
|
|
251
256
|
'Farfetch\u2019d-Galar', 'Scorbunny', 'Shellder', 'Wingull',
|
|
252
257
|
],
|
|
@@ -274,6 +279,7 @@ export const Formats: FormatList = [
|
|
|
274
279
|
mod: 'gen8',
|
|
275
280
|
searchShow: false,
|
|
276
281
|
ruleset: ['[Gen 8] LC', '+CAP'],
|
|
282
|
+
banlist: ['Cawdet'],
|
|
277
283
|
},
|
|
278
284
|
{
|
|
279
285
|
name: "[Gen 8] Battle Stadium Singles",
|
|
@@ -293,6 +299,21 @@ export const Formats: FormatList = [
|
|
|
293
299
|
searchShow: false,
|
|
294
300
|
ruleset: ['Flat Rules', '!! Adjust Level = 50', 'Min Source Gen = 8'],
|
|
295
301
|
},
|
|
302
|
+
{
|
|
303
|
+
name: "[Gen 8] Test Your Luck!",
|
|
304
|
+
threads: [
|
|
305
|
+
`• <a href="https://www.smogon.com/forums/threads/3695144/">Test Your Luck! Discussion</a>`,
|
|
306
|
+
],
|
|
307
|
+
|
|
308
|
+
mod: 'gen8',
|
|
309
|
+
ruleset: ['Flat Rules', '!! Adjust Level = 50', 'VGC Timer', 'Min Source Gen = 8'],
|
|
310
|
+
banlist: ['Azelf', 'Mesprit', 'Uxie'],
|
|
311
|
+
onValidateSet(set, format) {
|
|
312
|
+
if (set.moves.length !== 1 || this.dex.moves.get(set.moves[0]).id !== 'metronome') {
|
|
313
|
+
return [`${set.name || set.species} has illegal moves.`, `(${format.name} only allows the move Metronome)`];
|
|
314
|
+
}
|
|
315
|
+
},
|
|
316
|
+
},
|
|
296
317
|
{
|
|
297
318
|
name: "[Gen 8] Custom Game",
|
|
298
319
|
|
|
@@ -365,6 +386,14 @@ export const Formats: FormatList = [
|
|
|
365
386
|
ruleset: ['Standard Doubles', 'Little Cup', 'Dynamax Clause', 'Swagger Clause', 'Sleep Clause Mod'],
|
|
366
387
|
banlist: ['Corsola-Galar', 'Cutiefly', 'Ponyta-Base', 'Scyther', 'Sneasel', 'Swirlix', 'Tangela', 'Vulpix', 'Vulpix-Alola'],
|
|
367
388
|
},
|
|
389
|
+
{
|
|
390
|
+
name: "[Gen 8] VGC 2022",
|
|
391
|
+
|
|
392
|
+
mod: 'gen8',
|
|
393
|
+
gameType: 'doubles',
|
|
394
|
+
ruleset: ['Flat Rules', '!! Adjust Level = 50', 'Min Source Gen = 8', 'VGC Timer', 'Limit Two Restricted'],
|
|
395
|
+
restricted: ['Restricted Legendary'],
|
|
396
|
+
},
|
|
368
397
|
{
|
|
369
398
|
name: "[Gen 8] VGC 2021 Series 11",
|
|
370
399
|
threads: [
|
|
@@ -506,11 +535,10 @@ export const Formats: FormatList = [
|
|
|
506
535
|
ruleset: ['[Gen 8] National Dex'],
|
|
507
536
|
banlist: [
|
|
508
537
|
// National Dex OU
|
|
509
|
-
'
|
|
510
|
-
'
|
|
511
|
-
'
|
|
512
|
-
'
|
|
513
|
-
'Weavile', 'Zapdos-Base',
|
|
538
|
+
'Blissey', 'Chansey', 'Charizard-Mega-X', 'Charizard-Mega-Y', 'Clefable', 'Corviknight', 'Diancie-Mega', 'Excadrill',
|
|
539
|
+
'Ferrothorn', 'Garchomp', 'Gliscor', 'Greninja', 'Heatran', 'Kartana', 'Kommo-o', 'Kyurem', 'Landorus-Therian', 'Lopunny-Mega',
|
|
540
|
+
'Magnezone', 'Mawile-Mega', 'Pelipper', 'Rillaboom', 'Scizor-Mega', 'Serperior', 'Slowbro-Base', 'Swampert-Mega', 'Tapu Fini',
|
|
541
|
+
'Tapu Koko', 'Tapu Lele', 'Toxapex', 'Tyranitar', 'Victini', 'Volcarona', 'Weavile', 'Zapdos-Base',
|
|
514
542
|
'ND UUBL', // National Dex UUBL
|
|
515
543
|
'Drizzle', 'Drought',
|
|
516
544
|
// Slowbronite is banned so it doesn't validate on Galarian Slowbro
|
|
@@ -518,10 +546,12 @@ export const Formats: FormatList = [
|
|
|
518
546
|
],
|
|
519
547
|
// Used to distinguish UU from below UU in the client
|
|
520
548
|
restricted: [
|
|
521
|
-
'
|
|
522
|
-
'
|
|
523
|
-
'
|
|
524
|
-
'
|
|
549
|
+
'Aegislash', 'Alakazam-Base', 'Altaria-Mega', 'Amoonguss', 'Beedrill-Mega', 'Blaziken-Base', 'Breloom', 'Celesteela',
|
|
550
|
+
'Chandelure', 'Donphan', 'Dracozolt', 'Dragonite', 'Feraligatr', 'Gastrodon', 'Hatterene', 'Hippowdon', 'Infernape',
|
|
551
|
+
'Keldeo', 'Krookodile', 'Mamoswine', 'Mandibuzz', 'Manectric-Mega', 'Medicham-Mega', 'Melmetal', 'Mienshao', 'Moltres-Base',
|
|
552
|
+
'Nidoking', 'Nidoqueen', 'Nihilego', 'Quagsire', 'Regieleki', 'Ribombee', 'Rotom-Heat', 'Rotom-Wash', 'Salamence',
|
|
553
|
+
'Scizor', 'Skarmory', 'Slowking-Base', 'Swampert-Base', 'Talonflame', 'Tangrowth', 'Tornadus-Base', 'Umbreon',
|
|
554
|
+
'Urshifu-Rapid-Strike',
|
|
525
555
|
],
|
|
526
556
|
},
|
|
527
557
|
{
|
|
@@ -614,38 +644,80 @@ export const Formats: FormatList = [
|
|
|
614
644
|
column: 2,
|
|
615
645
|
},
|
|
616
646
|
{
|
|
617
|
-
name: "[Gen 8]
|
|
618
|
-
desc: `
|
|
647
|
+
name: "[Gen 8] Pokebilities",
|
|
648
|
+
desc: `Pokémon have all of their released abilities simultaneously.`,
|
|
619
649
|
threads: [
|
|
620
|
-
`• <a href="https://www.smogon.com/forums/threads/
|
|
650
|
+
`• <a href="https://www.smogon.com/forums/threads/3679692/">Pokébilities</a>`,
|
|
621
651
|
],
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
ruleset: ['Standard', 'Dynamax Clause', 'Revelationmons Mod'],
|
|
652
|
+
mod: 'pokebilities',
|
|
653
|
+
ruleset: ['Standard', 'Dynamax Clause'],
|
|
625
654
|
banlist: [
|
|
626
|
-
'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', '
|
|
627
|
-
'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', '
|
|
628
|
-
'Lunala', 'Magearna', 'Marshadow', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', '
|
|
629
|
-
'Pheromosa', 'Rayquaza', 'Reshiram', 'Solgaleo', 'Spectrier', 'Urshifu-Base', 'Xerneas', 'Yveltal', 'Zacian',
|
|
630
|
-
'
|
|
631
|
-
|
|
655
|
+
'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Eternatus', 'Excadrill',
|
|
656
|
+
'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base',
|
|
657
|
+
'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia',
|
|
658
|
+
'Pheromosa', 'Porygon-Z', 'Rayquaza', 'Reshiram', 'Solgaleo', 'Spectrier', 'Urshifu-Base', 'Xerneas', 'Yveltal', 'Zacian',
|
|
659
|
+
'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom', 'Zygarde-Base', 'Power Construct', 'Baton Pass',
|
|
660
|
+
// Moody users
|
|
661
|
+
'Glalie', 'Octillery', 'Remoraid', 'Snorunt',
|
|
662
|
+
// Shadow Tag/Arena Trap
|
|
663
|
+
'Diglett-Base', 'Dugtrio-Base', 'Gothita', 'Gothitelle', 'Gothorita', 'Trapinch', 'Wobbuffet', 'Wynaut',
|
|
632
664
|
],
|
|
633
|
-
|
|
665
|
+
onBegin() {
|
|
666
|
+
for (const pokemon of this.getAllPokemon()) {
|
|
667
|
+
if (pokemon.ability === this.toID(pokemon.species.abilities['S'])) {
|
|
668
|
+
continue;
|
|
669
|
+
}
|
|
670
|
+
pokemon.m.innates = Object.keys(pokemon.species.abilities)
|
|
671
|
+
.filter(key => key !== 'S' && (key !== 'H' || !pokemon.species.unreleasedHidden))
|
|
672
|
+
.map(key => this.toID(pokemon.species.abilities[key as "0" | "1" | "H" | "S"]))
|
|
673
|
+
.filter(ability => ability !== pokemon.ability);
|
|
674
|
+
}
|
|
675
|
+
},
|
|
676
|
+
onSwitchInPriority: 2,
|
|
677
|
+
onSwitchIn(pokemon) {
|
|
678
|
+
if (pokemon.m.innates) {
|
|
679
|
+
for (const innate of pokemon.m.innates) {
|
|
680
|
+
pokemon.addVolatile("ability:" + innate, pokemon);
|
|
681
|
+
}
|
|
682
|
+
}
|
|
683
|
+
},
|
|
684
|
+
onAfterMega(pokemon) {
|
|
685
|
+
for (const innate of Object.keys(pokemon.volatiles).filter(i => i.startsWith('ability:'))) {
|
|
686
|
+
pokemon.removeVolatile(innate);
|
|
687
|
+
}
|
|
688
|
+
pokemon.m.innates = undefined;
|
|
689
|
+
},
|
|
634
690
|
},
|
|
635
691
|
{
|
|
636
|
-
name: "[Gen 8
|
|
637
|
-
desc: `
|
|
692
|
+
name: "[Gen 8] Camomons",
|
|
693
|
+
desc: `Pokémon change type to match their first two moves.`,
|
|
638
694
|
threads: [
|
|
639
|
-
`• <a href="https://www.smogon.com/forums/
|
|
695
|
+
`• <a href="https://www.smogon.com/forums/threads/3656413/">Camomons</a>`,
|
|
640
696
|
],
|
|
641
697
|
|
|
642
|
-
mod: '
|
|
643
|
-
|
|
698
|
+
mod: 'gen8',
|
|
699
|
+
// searchShow: false,
|
|
700
|
+
ruleset: ['Obtainable', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Team Preview', 'HP Percentage Mod', 'Cancel Mod', 'Dynamax Clause', 'Sleep Clause Mod', 'Endless Battle Clause'],
|
|
644
701
|
banlist: [
|
|
645
|
-
'
|
|
646
|
-
'
|
|
647
|
-
'
|
|
702
|
+
'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragonite', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin',
|
|
703
|
+
'Groudon', 'Ho-Oh', 'Hydreigon', 'Kartana', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Latias', 'Latios', 'Lugia',
|
|
704
|
+
'Lunala', 'Marshadow', 'Mew', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram',
|
|
705
|
+
'Reuniclus', 'Shedinja', 'Slowking-Galar', 'Solgaleo', 'Spectrier', 'Tornadus-Therian', 'Volcarona', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned',
|
|
706
|
+
'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Zeraora', 'Zygarde-Base', 'Arena Trap', 'Moody', 'Power Construct', 'Shadow Tag', 'Baton Pass',
|
|
648
707
|
],
|
|
708
|
+
onModifySpeciesPriority: 2,
|
|
709
|
+
onModifySpecies(species, target, source, effect) {
|
|
710
|
+
if (!target) return; // Chat command
|
|
711
|
+
if (effect && ['imposter', 'transform'].includes(effect.id)) return;
|
|
712
|
+
const types = [...new Set(target.baseMoveSlots.slice(0, 2).map(move => this.dex.moves.get(move.id).type))];
|
|
713
|
+
return {...species, types: types};
|
|
714
|
+
},
|
|
715
|
+
onSwitchIn(pokemon) {
|
|
716
|
+
this.add('-start', pokemon, 'typechange', (pokemon.illusion || pokemon).getTypes(true).join('/'), '[silent]');
|
|
717
|
+
},
|
|
718
|
+
onAfterMega(pokemon) {
|
|
719
|
+
this.add('-start', pokemon, 'typechange', (pokemon.illusion || pokemon).getTypes(true).join('/'), '[silent]');
|
|
720
|
+
},
|
|
649
721
|
},
|
|
650
722
|
|
|
651
723
|
// Other Metagames
|
|
@@ -764,13 +836,13 @@ export const Formats: FormatList = [
|
|
|
764
836
|
mod: 'gen8',
|
|
765
837
|
ruleset: ['Obtainable', '!Obtainable Abilities', 'Species Clause', 'Nickname Clause', '2 Ability Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Team Preview', 'HP Percentage Mod', 'Cancel Mod', 'Dynamax Clause', 'Sleep Moves Clause', 'Endless Battle Clause'],
|
|
766
838
|
banlist: [
|
|
767
|
-
'Archeops', 'Buzzwole', 'Calyrex-Ice', 'Calyrex-Shadow', 'Dialga', 'Dracovish', 'Dragapult', 'Dragonite', 'Eternatus', 'Gengar', 'Giratina',
|
|
768
|
-
'Groudon', 'Ho-Oh', 'Kartana', 'Keldeo', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Lugia', 'Lunala', 'Magearna', 'Marshadow',
|
|
769
|
-
'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Noivern', 'Palkia', 'Pheromosa', 'Rayquaza', 'Regigigas', 'Reshiram', 'Shedinja',
|
|
770
|
-
'Urshifu-Base', 'Urshifu-Rapid-Strike', 'Victini', 'Weavile', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom',
|
|
771
|
-
'Arena Trap', 'Comatose', 'Contrary', 'Fluffy', 'Fur Coat', 'Gorilla Tactics', 'Huge Power', 'Ice Scales', 'Illusion', 'Imposter',
|
|
772
|
-
'Libero', 'Magnet Pull', 'Moody', 'Neutralizing Gas', 'Parental Bond', 'Poison Heal', 'Power Construct', 'Protean', 'Pure Power',
|
|
773
|
-
'Speed Boost', 'Water Bubble', 'Wonder Guard', 'King\'s Rock', 'Baton Pass',
|
|
839
|
+
'Archeops', 'Blacephalon', 'Buzzwole', 'Calyrex-Ice', 'Calyrex-Shadow', 'Dialga', 'Dracovish', 'Dragapult', 'Dragonite', 'Eternatus', 'Gengar', 'Giratina',
|
|
840
|
+
'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Keldeo', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Lugia', 'Lunala', 'Magearna', 'Marshadow',
|
|
841
|
+
'Melmetal', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Noivern', 'Palkia', 'Pheromosa', 'Rayquaza', 'Regigigas', 'Reshiram', 'Shedinja',
|
|
842
|
+
'Solgaleo', 'Spectrier', 'Urshifu-Base', 'Urshifu-Rapid-Strike', 'Victini', 'Weavile', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom',
|
|
843
|
+
'Zeraora', 'Zygarde-Base', 'Arena Trap', 'Comatose', 'Contrary', 'Fluffy', 'Fur Coat', 'Gorilla Tactics', 'Huge Power', 'Ice Scales', 'Illusion', 'Imposter',
|
|
844
|
+
'Innards Out', 'Intrepid Sword', 'Libero', 'Magnet Pull', 'Moody', 'Neutralizing Gas', 'Parental Bond', 'Poison Heal', 'Power Construct', 'Protean', 'Pure Power',
|
|
845
|
+
'Shadow Tag', 'Simple', 'Stakeout', 'Speed Boost', 'Water Bubble', 'Wonder Guard', 'King\'s Rock', 'Baton Pass',
|
|
774
846
|
],
|
|
775
847
|
onValidateSet(set) {
|
|
776
848
|
// Temporary fix until battle-only is implemented properly
|
|
@@ -819,6 +891,61 @@ export const Formats: FormatList = [
|
|
|
819
891
|
'Rhydon', 'Scyther', 'Sneasel', 'Type: Null', 'Vulpix-Base', 'Arena Trap', 'Shadow Tag', 'Baton Pass',
|
|
820
892
|
],
|
|
821
893
|
},
|
|
894
|
+
{
|
|
895
|
+
name: "[Gen 8] Godly Gift",
|
|
896
|
+
desc: `Each Pokémon receives one base stat from a God (AG/Uber Pokémon) depending on its position in the team. If there is no Uber Pokémon, it uses the Pokémon in the first slot.`,
|
|
897
|
+
threads: [
|
|
898
|
+
`• <a href="https://www.smogon.com/forums/threads/3660461/">Godly Gift</a>`,
|
|
899
|
+
],
|
|
900
|
+
|
|
901
|
+
mod: 'gen8',
|
|
902
|
+
ruleset: ['Standard', 'Dynamax Clause', 'Sleep Moves Clause'],
|
|
903
|
+
banlist: [
|
|
904
|
+
'Blissey', 'Calyrex-Shadow', 'Chansey', 'Dragapult', 'Hawlucha', 'Marowak-Alola', 'Melmetal', 'Pikachu', 'Toxapex',
|
|
905
|
+
'Xerneas', 'Zacian', 'Zacian-Crowned', 'Uber > 1', 'AG ++ Uber > 1', 'Arena Trap', 'Huge Power', 'Moody', 'Pure Power',
|
|
906
|
+
'Shadow Tag', 'Baton Pass',
|
|
907
|
+
],
|
|
908
|
+
onValidateTeam(team) {
|
|
909
|
+
const gods = new Set<string>();
|
|
910
|
+
for (const set of team) {
|
|
911
|
+
let species = this.dex.species.get(set.species);
|
|
912
|
+
if (typeof species.battleOnly === 'string') species = this.dex.species.get(species.battleOnly);
|
|
913
|
+
if (['ag', 'uber'].includes(this.toID(species.tier)) || this.toID(set.ability) === 'powerconstruct') {
|
|
914
|
+
gods.add(species.name);
|
|
915
|
+
}
|
|
916
|
+
}
|
|
917
|
+
if (gods.size > 1) {
|
|
918
|
+
return [`You have too many Gods.`, `(${Array.from(gods).join(', ')} are Gods.)`];
|
|
919
|
+
}
|
|
920
|
+
},
|
|
921
|
+
onModifySpeciesPriority: 3,
|
|
922
|
+
onModifySpecies(species, target, source) {
|
|
923
|
+
if (source || !target?.side) return;
|
|
924
|
+
const god = target.side.team.find(set => {
|
|
925
|
+
let godSpecies = this.dex.species.get(set.species);
|
|
926
|
+
const validator = this.dex.formats.getRuleTable(this.dex.formats.get(`gen${this.gen}ou`));
|
|
927
|
+
if (this.toID(set.ability) === 'powerconstruct') {
|
|
928
|
+
return true;
|
|
929
|
+
}
|
|
930
|
+
if (set.item) {
|
|
931
|
+
const item = this.dex.items.get(set.item);
|
|
932
|
+
if (item.megaEvolves === set.species) godSpecies = this.dex.species.get(item.megaStone);
|
|
933
|
+
}
|
|
934
|
+
const isBanned = validator.isBannedSpecies(godSpecies);
|
|
935
|
+
return isBanned;
|
|
936
|
+
}) || target.side.team[0];
|
|
937
|
+
const stat = Dex.stats.ids()[target.side.team.indexOf(target.set)];
|
|
938
|
+
const newSpecies = this.dex.deepClone(species);
|
|
939
|
+
let godSpecies = this.dex.species.get(god.species);
|
|
940
|
+
if (godSpecies.forme === 'Crowned') {
|
|
941
|
+
godSpecies = this.dex.species.get(godSpecies.changesFrom || godSpecies.baseSpecies);
|
|
942
|
+
}
|
|
943
|
+
newSpecies.bst -= newSpecies.baseStats[stat];
|
|
944
|
+
newSpecies.baseStats[stat] = godSpecies.baseStats[stat];
|
|
945
|
+
newSpecies.bst += newSpecies.baseStats[stat];
|
|
946
|
+
return newSpecies;
|
|
947
|
+
},
|
|
948
|
+
},
|
|
822
949
|
{
|
|
823
950
|
name: "[Gen 8] Free-For-All",
|
|
824
951
|
threads: [
|
|
@@ -862,7 +989,10 @@ export const Formats: FormatList = [
|
|
|
862
989
|
|
|
863
990
|
mod: 'gen8bdsp',
|
|
864
991
|
ruleset: ['Standard'],
|
|
865
|
-
banlist: [
|
|
992
|
+
banlist: [
|
|
993
|
+
'Uber', 'Arena Trap', 'Drizzle', 'Moody', 'Sand Veil', 'Shadow Tag', 'Snow Cloak',
|
|
994
|
+
'Bright Powder', 'King\'s Rock', 'Lax Incense', 'Razor Fang', 'Baton Pass',
|
|
995
|
+
],
|
|
866
996
|
},
|
|
867
997
|
{
|
|
868
998
|
name: "[Gen 8 BDSP] Ubers",
|
|
@@ -877,13 +1007,20 @@ export const Formats: FormatList = [
|
|
|
877
1007
|
{
|
|
878
1008
|
name: "[Gen 8 BDSP] UU",
|
|
879
1009
|
threads: [
|
|
880
|
-
`• <a href="https://www.smogon.com/forums/threads/
|
|
1010
|
+
`• <a href="https://www.smogon.com/forums/threads/3694307/">BDSP UU</a>`,
|
|
881
1011
|
],
|
|
882
1012
|
|
|
883
1013
|
mod: 'gen8bdsp',
|
|
884
1014
|
ruleset: ['[Gen 8 BDSP] OU'],
|
|
885
1015
|
banlist: ['OU', 'UUBL'],
|
|
886
1016
|
},
|
|
1017
|
+
{
|
|
1018
|
+
name: "[Gen 8 BDSP] RU",
|
|
1019
|
+
|
|
1020
|
+
mod: 'gen8bdsp',
|
|
1021
|
+
ruleset: ['[Gen 8 BDSP] UU'],
|
|
1022
|
+
banlist: ['UU', 'RUBL'],
|
|
1023
|
+
},
|
|
887
1024
|
{
|
|
888
1025
|
name: "[Gen 8 BDSP] Monotype",
|
|
889
1026
|
threads: [
|
|
@@ -897,6 +1034,25 @@ export const Formats: FormatList = [
|
|
|
897
1034
|
'Arena Trap', 'Moody', 'Shadow Tag', 'Damp Rock', 'King\'s Rock', 'Razor Fang', 'Baton Pass',
|
|
898
1035
|
],
|
|
899
1036
|
},
|
|
1037
|
+
{
|
|
1038
|
+
name: "[Gen 8 BDSP] CAP",
|
|
1039
|
+
threads: [
|
|
1040
|
+
`• <a href="https://www.smogon.com/forums/threads/3694238/">BDSP CAP</a>`,
|
|
1041
|
+
],
|
|
1042
|
+
|
|
1043
|
+
mod: 'gen8bdsp',
|
|
1044
|
+
searchShow: false,
|
|
1045
|
+
ruleset: ['[Gen 8 BDSP] OU', '+CAP'],
|
|
1046
|
+
},
|
|
1047
|
+
{
|
|
1048
|
+
name: "[Gen 8 BDSP] 3v3 Singles",
|
|
1049
|
+
threads: [
|
|
1050
|
+
`• <a href="https://www.smogon.com/forums/threads/3695092/">BDSP 3v3 Singles</a>`,
|
|
1051
|
+
],
|
|
1052
|
+
|
|
1053
|
+
mod: 'gen8bdsp',
|
|
1054
|
+
ruleset: ['Flat Rules', 'Min Source Gen = 8'],
|
|
1055
|
+
},
|
|
900
1056
|
{
|
|
901
1057
|
name: "[Gen 8 BDSP] Doubles OU",
|
|
902
1058
|
threads: [
|
|
@@ -916,8 +1072,7 @@ export const Formats: FormatList = [
|
|
|
916
1072
|
|
|
917
1073
|
mod: 'gen8bdsp',
|
|
918
1074
|
gameType: 'doubles',
|
|
919
|
-
|
|
920
|
-
ruleset: ['Flat Rules', 'Min Source Gen = 8', 'VGC Timer'],
|
|
1075
|
+
ruleset: ['Flat Rules', 'Min Source Gen = 8'],
|
|
921
1076
|
},
|
|
922
1077
|
{
|
|
923
1078
|
name: "[Gen 8 BDSP] Pure Hackmons",
|
|
@@ -934,92 +1089,6 @@ export const Formats: FormatList = [
|
|
|
934
1089
|
section: "Challengeable OMs",
|
|
935
1090
|
column: 2,
|
|
936
1091
|
},
|
|
937
|
-
{
|
|
938
|
-
name: "[Gen 8] Camomons",
|
|
939
|
-
desc: `Pokémon change type to match their first two moves.`,
|
|
940
|
-
threads: [
|
|
941
|
-
`• <a href="https://www.smogon.com/forums/threads/3656413/">Camomons</a>`,
|
|
942
|
-
],
|
|
943
|
-
|
|
944
|
-
mod: 'gen8',
|
|
945
|
-
searchShow: false,
|
|
946
|
-
ruleset: ['Obtainable', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Team Preview', 'HP Percentage Mod', 'Cancel Mod', 'Dynamax Clause', 'Sleep Clause Mod', 'Endless Battle Clause'],
|
|
947
|
-
banlist: [
|
|
948
|
-
'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragonite', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon',
|
|
949
|
-
'Ho-Oh', 'Hydreigon', 'Kartana', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Latias', 'Latios', 'Lugia', 'Lunala', 'Marshadow',
|
|
950
|
-
'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram', 'Shedinja', 'Slowking-Galar', 'Solgaleo',
|
|
951
|
-
'Tornadus-Therian', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Zeraora', 'Zygarde-Base',
|
|
952
|
-
'Arena Trap', 'Moody', 'Power Construct', 'Shadow Tag', 'Baton Pass',
|
|
953
|
-
],
|
|
954
|
-
onModifySpeciesPriority: 2,
|
|
955
|
-
onModifySpecies(species, target, source, effect) {
|
|
956
|
-
if (!target) return; // Chat command
|
|
957
|
-
if (effect && ['imposter', 'transform'].includes(effect.id)) return;
|
|
958
|
-
const types = [...new Set(target.baseMoveSlots.slice(0, 2).map(move => this.dex.moves.get(move.id).type))];
|
|
959
|
-
return {...species, types: types};
|
|
960
|
-
},
|
|
961
|
-
onSwitchIn(pokemon) {
|
|
962
|
-
this.add('-start', pokemon, 'typechange', (pokemon.illusion || pokemon).getTypes(true).join('/'), '[silent]');
|
|
963
|
-
},
|
|
964
|
-
onAfterMega(pokemon) {
|
|
965
|
-
this.add('-start', pokemon, 'typechange', (pokemon.illusion || pokemon).getTypes(true).join('/'), '[silent]');
|
|
966
|
-
},
|
|
967
|
-
},
|
|
968
|
-
{
|
|
969
|
-
name: "[Gen 8] Godly Gift",
|
|
970
|
-
desc: `Each Pokémon receives one base stat from a God (AG/Uber Pokémon) depending on its position in the team. If there is no Uber Pokémon, it uses the Pokémon in the first slot.`,
|
|
971
|
-
threads: [
|
|
972
|
-
`• <a href="https://www.smogon.com/forums/threads/3660461/">Godly Gift</a>`,
|
|
973
|
-
],
|
|
974
|
-
|
|
975
|
-
mod: 'gen8',
|
|
976
|
-
searchShow: false,
|
|
977
|
-
ruleset: ['Standard', 'Dynamax Clause'],
|
|
978
|
-
banlist: [
|
|
979
|
-
'Blissey', 'Calyrex-Shadow', 'Chansey', 'Hawlucha', 'Marowak-Alola', 'Melmetal', 'Pikachu', 'Toxapex', 'Zacian', 'Zacian-Crowned',
|
|
980
|
-
'Uber > 1', 'AG ++ Uber > 1', 'Arena Trap', 'Huge Power', 'Moody', 'Pure Power', 'Shadow Tag', 'Baton Pass',
|
|
981
|
-
],
|
|
982
|
-
onValidateTeam(team) {
|
|
983
|
-
const gods = new Set<string>();
|
|
984
|
-
for (const set of team) {
|
|
985
|
-
let species = this.dex.species.get(set.species);
|
|
986
|
-
if (typeof species.battleOnly === 'string') species = this.dex.species.get(species.battleOnly);
|
|
987
|
-
if (['ag', 'uber'].includes(this.toID(species.tier)) || this.toID(set.ability) === 'powerconstruct') {
|
|
988
|
-
gods.add(species.name);
|
|
989
|
-
}
|
|
990
|
-
}
|
|
991
|
-
if (gods.size > 1) {
|
|
992
|
-
return [`You have too many Gods.`, `(${Array.from(gods).join(', ')} are Gods.)`];
|
|
993
|
-
}
|
|
994
|
-
},
|
|
995
|
-
onModifySpeciesPriority: 3,
|
|
996
|
-
onModifySpecies(species, target, source) {
|
|
997
|
-
if (source || !target?.side) return;
|
|
998
|
-
const god = target.side.team.find(set => {
|
|
999
|
-
let godSpecies = this.dex.species.get(set.species);
|
|
1000
|
-
const validator = this.dex.formats.getRuleTable(this.dex.formats.get(`gen${this.gen}ou`));
|
|
1001
|
-
if (this.toID(set.ability) === 'powerconstruct') {
|
|
1002
|
-
return true;
|
|
1003
|
-
}
|
|
1004
|
-
if (set.item) {
|
|
1005
|
-
const item = this.dex.items.get(set.item);
|
|
1006
|
-
if (item.megaEvolves === set.species) godSpecies = this.dex.species.get(item.megaStone);
|
|
1007
|
-
}
|
|
1008
|
-
const isBanned = validator.isBannedSpecies(godSpecies);
|
|
1009
|
-
return isBanned;
|
|
1010
|
-
}) || target.side.team[0];
|
|
1011
|
-
const stat = Dex.stats.ids()[target.side.team.indexOf(target.set)];
|
|
1012
|
-
const newSpecies = this.dex.deepClone(species);
|
|
1013
|
-
let godSpecies = this.dex.species.get(god.species);
|
|
1014
|
-
if (godSpecies.forme === 'Crowned') {
|
|
1015
|
-
godSpecies = this.dex.species.get(godSpecies.changesFrom || godSpecies.baseSpecies);
|
|
1016
|
-
}
|
|
1017
|
-
newSpecies.bst -= newSpecies.baseStats[stat];
|
|
1018
|
-
newSpecies.baseStats[stat] = godSpecies.baseStats[stat];
|
|
1019
|
-
newSpecies.bst += newSpecies.baseStats[stat];
|
|
1020
|
-
return newSpecies;
|
|
1021
|
-
},
|
|
1022
|
-
},
|
|
1023
1092
|
{
|
|
1024
1093
|
name: "[Gen 8] Inheritance",
|
|
1025
1094
|
desc: `Pokémon may use the ability and moves of another, as long as they forfeit their own learnset.`,
|
|
@@ -2039,50 +2108,40 @@ export const Formats: FormatList = [
|
|
|
2039
2108
|
column: 3,
|
|
2040
2109
|
},
|
|
2041
2110
|
{
|
|
2042
|
-
name: "[Gen
|
|
2043
|
-
threads: [
|
|
2044
|
-
`• <a href="https://www.smogon.com/forums/threads/3573896/">RBY UU Metagame Discussion</a>`,
|
|
2045
|
-
`• <a href="https://www.smogon.com/forums/threads/3647713/">RBY UU Viability Rankings</a>`,
|
|
2046
|
-
],
|
|
2111
|
+
name: "[Gen 2] UU",
|
|
2112
|
+
threads: [`• <a href="https://www.smogon.com/forums/threads/3576710/">GSC UU</a>`],
|
|
2047
2113
|
|
|
2048
|
-
mod: '
|
|
2114
|
+
mod: 'gen2',
|
|
2049
2115
|
// searchShow: false,
|
|
2050
|
-
ruleset: ['[Gen
|
|
2116
|
+
ruleset: ['[Gen 2] OU'],
|
|
2051
2117
|
banlist: ['OU', 'UUBL'],
|
|
2052
2118
|
},
|
|
2053
2119
|
{
|
|
2054
|
-
name: "[Gen
|
|
2055
|
-
desc: `Bring three Pokémon to Team Preview and choose one to battle.`,
|
|
2120
|
+
name: "[Gen 5] NU",
|
|
2056
2121
|
threads: [
|
|
2057
|
-
`• <a href="https://www.smogon.com/forums/posts/
|
|
2122
|
+
`• <a href="https://www.smogon.com/forums/posts/6431094/">BW2 Sample Teams</a>`,
|
|
2123
|
+
`• <a href="https://www.smogon.com/forums/threads/3484121/">BW2 NU Viability Rankings</a>`,
|
|
2058
2124
|
],
|
|
2059
2125
|
|
|
2060
|
-
mod: '
|
|
2126
|
+
mod: 'gen5',
|
|
2061
2127
|
// searchShow: false,
|
|
2062
|
-
ruleset: [
|
|
2063
|
-
|
|
2064
|
-
'Obtainable', 'Nickname Clause', 'Moody Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Accuracy Moves Clause', 'Swagger Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod', 'Team Preview',
|
|
2065
|
-
],
|
|
2066
|
-
banlist: [
|
|
2067
|
-
'Arceus', 'Blaziken', 'Darkrai', 'Deoxys-Base', 'Deoxys-Attack', 'Deoxys-Defense', 'Dialga', 'Giratina',
|
|
2068
|
-
'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kangaskhan-Mega', 'Kyogre', 'Kyurem-White', 'Lugia', 'Mewtwo',
|
|
2069
|
-
'Palkia', 'Rayquaza', 'Reshiram', 'Salamence-Mega', 'Shaymin-Sky', 'Xerneas', 'Yveltal', 'Zekrom',
|
|
2070
|
-
'Focus Sash', 'Soul Dew', 'Perish Song',
|
|
2071
|
-
],
|
|
2128
|
+
ruleset: ['[Gen 5] RU', '!Sleep Moves Clause', 'Sleep Clause Mod'],
|
|
2129
|
+
banlist: ['RU', 'NUBL', 'Assist', 'Copycat'],
|
|
2072
2130
|
},
|
|
2073
2131
|
{
|
|
2074
|
-
name: "[Gen 5]
|
|
2132
|
+
name: "[Gen 5] LC",
|
|
2075
2133
|
threads: [
|
|
2076
|
-
`• <a href="https://www.smogon.com/forums/
|
|
2077
|
-
`• <a href="https://www.smogon.com/forums/
|
|
2078
|
-
`• <a href="https://www.smogon.com/forums/posts/7393081/">BW2 Doubles Sample Teams</a>`,
|
|
2134
|
+
`• <a href="https://www.smogon.com/forums/posts/6431094/">BW2 Sample Teams</a>`,
|
|
2135
|
+
`• <a href="https://www.smogon.com/forums/threads/3485860/">BW2 LC Viability Rankings</a>`,
|
|
2079
2136
|
],
|
|
2080
2137
|
|
|
2081
2138
|
mod: 'gen5',
|
|
2082
|
-
gameType: 'doubles',
|
|
2083
2139
|
// searchShow: false,
|
|
2084
|
-
ruleset: ['Standard', '
|
|
2085
|
-
banlist: [
|
|
2140
|
+
ruleset: ['Standard', 'Little Cup', 'Sleep Moves Clause'],
|
|
2141
|
+
banlist: [
|
|
2142
|
+
'Gligar', 'Meditite', 'Misdreavus', 'Murkrow', 'Scraggy', 'Scyther', 'Sneasel', 'Tangela', 'Vulpix', 'Yanma',
|
|
2143
|
+
'Sand Rush', 'Sand Veil', 'Berry Juice', 'Soul Dew', 'Baton Pass', 'Dragon Rage', 'Sonic Boom', 'Swagger',
|
|
2144
|
+
],
|
|
2086
2145
|
},
|
|
2087
2146
|
|
|
2088
2147
|
// Past Gens OU
|
|
@@ -2147,8 +2206,8 @@ export const Formats: FormatList = [
|
|
|
2147
2206
|
],
|
|
2148
2207
|
|
|
2149
2208
|
mod: 'gen3',
|
|
2150
|
-
ruleset: ['Standard', '
|
|
2151
|
-
banlist: ['Uber', '
|
|
2209
|
+
ruleset: ['Standard', 'One Boost Passer Clause'],
|
|
2210
|
+
banlist: ['Uber', 'Sand Veil', 'Assist', 'Smeargle + Ingrain'],
|
|
2152
2211
|
},
|
|
2153
2212
|
{
|
|
2154
2213
|
name: "[Gen 2] OU",
|
|
@@ -2397,7 +2456,8 @@ export const Formats: FormatList = [
|
|
|
2397
2456
|
'Groudon', 'Ho-Oh', 'Hoopa-Unbound', 'Kangaskhan-Mega', 'Kartana', 'Kyogre', 'Kyurem-White', 'Lucario-Mega', 'Lugia', 'Lunala', 'Magearna',
|
|
2398
2457
|
'Marshadow', 'Mawile-Mega', 'Medicham-Mega', 'Metagross-Mega', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia',
|
|
2399
2458
|
'Pheromosa', 'Rayquaza', 'Reshiram', 'Salamence-Mega', 'Shaymin-Sky', 'Solgaleo', 'Tapu Lele', 'Xerneas', 'Yveltal', 'Zekrom', 'Zygarde',
|
|
2400
|
-
'Battle Bond', 'Shadow Tag', 'Damp Rock', '
|
|
2459
|
+
'Battle Bond', 'Shadow Tag', 'Bright Powder', 'Damp Rock', 'Focus Band', 'King\'s Rock', 'Lax Incense', 'Quick Claw', 'Razor Fang',
|
|
2460
|
+
'Smooth Rock', 'Terrain Extender', 'Baton Pass',
|
|
2401
2461
|
],
|
|
2402
2462
|
},
|
|
2403
2463
|
{
|
|
@@ -2714,6 +2774,26 @@ export const Formats: FormatList = [
|
|
|
2714
2774
|
'Soul Dew', 'Baton Pass',
|
|
2715
2775
|
],
|
|
2716
2776
|
},
|
|
2777
|
+
{
|
|
2778
|
+
name: "[Gen 6] 1v1",
|
|
2779
|
+
desc: `Bring three Pokémon to Team Preview and choose one to battle.`,
|
|
2780
|
+
threads: [
|
|
2781
|
+
`• <a href="https://www.smogon.com/forums/posts/8031459/">ORAS 1v1</a>`,
|
|
2782
|
+
],
|
|
2783
|
+
|
|
2784
|
+
mod: 'gen6',
|
|
2785
|
+
searchShow: false,
|
|
2786
|
+
ruleset: [
|
|
2787
|
+
'Max Team Size = 3', 'Picked Team Size = 1',
|
|
2788
|
+
'Obtainable', 'Nickname Clause', 'Moody Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Accuracy Moves Clause', 'Swagger Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod', 'Team Preview',
|
|
2789
|
+
],
|
|
2790
|
+
banlist: [
|
|
2791
|
+
'Arceus', 'Blaziken', 'Darkrai', 'Deoxys-Base', 'Deoxys-Attack', 'Deoxys-Defense', 'Dialga', 'Giratina',
|
|
2792
|
+
'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kangaskhan-Mega', 'Kyogre', 'Kyurem-White', 'Lugia', 'Mewtwo',
|
|
2793
|
+
'Palkia', 'Rayquaza', 'Reshiram', 'Salamence-Mega', 'Shaymin-Sky', 'Xerneas', 'Yveltal', 'Zekrom',
|
|
2794
|
+
'Focus Sash', 'Soul Dew', 'Perish Song',
|
|
2795
|
+
],
|
|
2796
|
+
},
|
|
2717
2797
|
{
|
|
2718
2798
|
name: "[Gen 6] Anything Goes",
|
|
2719
2799
|
threads: [
|
|
@@ -2736,7 +2816,7 @@ export const Formats: FormatList = [
|
|
|
2736
2816
|
mod: 'gen6',
|
|
2737
2817
|
searchShow: false,
|
|
2738
2818
|
ruleset: ['[Gen 6] OU', '+CAP'],
|
|
2739
|
-
banlist: ['Aurumoth', 'Cawmodore'],
|
|
2819
|
+
banlist: ['Aurumoth', 'Cawmodore', 'Crucibelle-Mega'],
|
|
2740
2820
|
},
|
|
2741
2821
|
{
|
|
2742
2822
|
name: "[Gen 6] Battle Spot Singles",
|
|
@@ -2912,18 +2992,6 @@ export const Formats: FormatList = [
|
|
|
2912
2992
|
banlist: ['UU', 'RUBL', 'Shadow Tag', 'Shell Smash + Baton Pass'],
|
|
2913
2993
|
unbanlist: ['Prankster + Assist', 'Prankster + Copycat', 'Baton Pass'],
|
|
2914
2994
|
},
|
|
2915
|
-
{
|
|
2916
|
-
name: "[Gen 5] NU",
|
|
2917
|
-
threads: [
|
|
2918
|
-
`• <a href="https://www.smogon.com/forums/posts/6431094/">BW2 Sample Teams</a>`,
|
|
2919
|
-
`• <a href="https://www.smogon.com/forums/threads/3484121/">BW2 NU Viability Rankings</a>`,
|
|
2920
|
-
],
|
|
2921
|
-
|
|
2922
|
-
mod: 'gen5',
|
|
2923
|
-
searchShow: false,
|
|
2924
|
-
ruleset: ['[Gen 5] RU', '!Sleep Moves Clause', 'Sleep Clause Mod'],
|
|
2925
|
-
banlist: ['RU', 'NUBL', 'Assist', 'Copycat'],
|
|
2926
|
-
},
|
|
2927
2995
|
{
|
|
2928
2996
|
name: "[Gen 5] PU",
|
|
2929
2997
|
threads: [
|
|
@@ -2935,21 +3003,6 @@ export const Formats: FormatList = [
|
|
|
2935
3003
|
ruleset: ['[Gen 5] NU', 'Sleep Moves Clause'],
|
|
2936
3004
|
banlist: ['NU', 'Combusken', 'Gothorita', 'Linoone', 'Riolu', 'Rotom-Frost', 'Simipour', 'Throh', 'Vigoroth'],
|
|
2937
3005
|
},
|
|
2938
|
-
{
|
|
2939
|
-
name: "[Gen 5] LC",
|
|
2940
|
-
threads: [
|
|
2941
|
-
`• <a href="https://www.smogon.com/forums/posts/6431094/">BW2 Sample Teams</a>`,
|
|
2942
|
-
`• <a href="https://www.smogon.com/forums/threads/3485860/">BW2 LC Viability Rankings</a>`,
|
|
2943
|
-
],
|
|
2944
|
-
|
|
2945
|
-
mod: 'gen5',
|
|
2946
|
-
searchShow: false,
|
|
2947
|
-
ruleset: ['Standard', 'Little Cup', 'Sleep Moves Clause'],
|
|
2948
|
-
banlist: [
|
|
2949
|
-
'Gligar', 'Meditite', 'Misdreavus', 'Murkrow', 'Scraggy', 'Scyther', 'Sneasel', 'Tangela', 'Vulpix', 'Yanma',
|
|
2950
|
-
'Sand Rush', 'Sand Veil', 'Berry Juice', 'Soul Dew', 'Baton Pass', 'Dragon Rage', 'Sonic Boom', 'Swagger',
|
|
2951
|
-
],
|
|
2952
|
-
},
|
|
2953
3006
|
{
|
|
2954
3007
|
name: "[Gen 5] Monotype",
|
|
2955
3008
|
desc: `All the Pokémon on a team must share a type.`,
|
|
@@ -2972,9 +3025,9 @@ export const Formats: FormatList = [
|
|
|
2972
3025
|
searchShow: false,
|
|
2973
3026
|
ruleset: [
|
|
2974
3027
|
'Picked Team Size = 1', 'Max Team Size = 3',
|
|
2975
|
-
'Standard', 'Baton Pass Clause', 'Swagger Clause',
|
|
3028
|
+
'Standard', 'Baton Pass Clause', 'Swagger Clause', 'Accuracy Moves Clause',
|
|
2976
3029
|
],
|
|
2977
|
-
banlist: ['Uber', 'Cottonee', 'Dragonite', 'Kyurem-Black', 'Togekiss', 'Whimsicott', 'Victini', 'Bright Powder', 'Focus Band', 'Focus Sash', 'Lax Incense', 'Quick Claw', 'Soul Dew', 'Perish Song'],
|
|
3030
|
+
banlist: ['Uber', 'Cottonee', 'Dragonite', 'Kyurem-Black', 'Mew', 'Togekiss', 'Whimsicott', 'Victini', 'Bright Powder', 'Focus Band', 'Focus Sash', 'Lax Incense', 'Quick Claw', 'Soul Dew', 'Perish Song'],
|
|
2978
3031
|
unbanlist: ['Genesect', 'Landorus', 'Manaphy', 'Thundurus', 'Tornadus-Therian'],
|
|
2979
3032
|
},
|
|
2980
3033
|
{
|
|
@@ -3003,6 +3056,20 @@ export const Formats: FormatList = [
|
|
|
3003
3056
|
section: 'B2/W2 Doubles',
|
|
3004
3057
|
column: 4,
|
|
3005
3058
|
},
|
|
3059
|
+
{
|
|
3060
|
+
name: "[Gen 5] Doubles OU",
|
|
3061
|
+
threads: [
|
|
3062
|
+
`• <a href="https://www.smogon.com/forums/threads/3606719/">BW2 Doubles Metagame Discussion</a>`,
|
|
3063
|
+
`• <a href="https://www.smogon.com/forums/posts/7393048/">BW2 Doubles Viability Rankings</a>`,
|
|
3064
|
+
`• <a href="https://www.smogon.com/forums/posts/7393081/">BW2 Doubles Sample Teams</a>`,
|
|
3065
|
+
],
|
|
3066
|
+
|
|
3067
|
+
mod: 'gen5',
|
|
3068
|
+
gameType: 'doubles',
|
|
3069
|
+
searchShow: false,
|
|
3070
|
+
ruleset: ['Standard', 'Evasion Abilities Clause', 'Swagger Clause', 'Sleep Clause Mod'],
|
|
3071
|
+
banlist: ['DUber', 'Soul Dew', 'Dark Void', 'Gravity'],
|
|
3072
|
+
},
|
|
3006
3073
|
{
|
|
3007
3074
|
name: "[Gen 5] VGC 2013",
|
|
3008
3075
|
|
|
@@ -3142,7 +3209,7 @@ export const Formats: FormatList = [
|
|
|
3142
3209
|
'Picked Team Size = 1', 'Max Team Size = 3',
|
|
3143
3210
|
'[Gen 4] OU', 'Accuracy Moves Clause', 'Sleep Moves Clause', 'Team Preview',
|
|
3144
3211
|
],
|
|
3145
|
-
banlist: ['Latias', 'Machamp', 'Porygon-Z', 'Snorlax', 'Togekiss', 'Focus Sash', 'Destiny Bond', 'Explosion', 'Perish Song', 'Self-Destruct'],
|
|
3212
|
+
banlist: ['Latias', 'Machamp', 'Porygon-Z', 'Shaymin', 'Snorlax', 'Togekiss', 'Focus Sash', 'Destiny Bond', 'Explosion', 'Perish Song', 'Self-Destruct'],
|
|
3146
3213
|
unbanlist: ['Wobbuffet', 'Wynaut', 'Sand Veil'],
|
|
3147
3214
|
},
|
|
3148
3215
|
{
|
|
@@ -3282,6 +3349,7 @@ export const Formats: FormatList = [
|
|
|
3282
3349
|
'[Gen 3] OU', 'Accuracy Moves Clause', 'Sleep Moves Clause', 'Team Preview',
|
|
3283
3350
|
],
|
|
3284
3351
|
banlist: ['Clefable', 'Slaking', 'Snorlax', 'Suicune', 'Destiny Bond', 'Explosion', 'Ingrain', 'Perish Song', 'Self-Destruct', 'Bright Powder', 'Focus Band', 'King\'s Rock', 'Lax Incense', 'Quick Claw'],
|
|
3352
|
+
unbanlist: ['Mr. Mime', 'Wobbuffet', 'Wynaut', 'Sand Veil'],
|
|
3285
3353
|
},
|
|
3286
3354
|
{
|
|
3287
3355
|
name: "[Gen 3] Custom Game",
|
|
@@ -3311,15 +3379,6 @@ export const Formats: FormatList = [
|
|
|
3311
3379
|
searchShow: false,
|
|
3312
3380
|
ruleset: ['Standard'],
|
|
3313
3381
|
},
|
|
3314
|
-
{
|
|
3315
|
-
name: "[Gen 2] UU",
|
|
3316
|
-
threads: [`• <a href="https://www.smogon.com/forums/threads/3576710/">GSC UU</a>`],
|
|
3317
|
-
|
|
3318
|
-
mod: 'gen2',
|
|
3319
|
-
searchShow: false,
|
|
3320
|
-
ruleset: ['[Gen 2] OU'],
|
|
3321
|
-
banlist: ['OU', 'UUBL'],
|
|
3322
|
-
},
|
|
3323
3382
|
{
|
|
3324
3383
|
name: "[Gen 2] NU",
|
|
3325
3384
|
threads: [`• <a href="https://www.smogon.com/forums/threads/3642565/">GSC NU</a>`],
|
|
@@ -3386,6 +3445,18 @@ export const Formats: FormatList = [
|
|
|
3386
3445
|
searchShow: false,
|
|
3387
3446
|
ruleset: ['Standard'],
|
|
3388
3447
|
},
|
|
3448
|
+
{
|
|
3449
|
+
name: "[Gen 1] UU",
|
|
3450
|
+
threads: [
|
|
3451
|
+
`• <a href="https://www.smogon.com/forums/threads/3573896/">RBY UU Metagame Discussion</a>`,
|
|
3452
|
+
`• <a href="https://www.smogon.com/forums/threads/3647713/">RBY UU Viability Rankings</a>`,
|
|
3453
|
+
],
|
|
3454
|
+
|
|
3455
|
+
mod: 'gen1',
|
|
3456
|
+
searchShow: false,
|
|
3457
|
+
ruleset: ['[Gen 1] OU'],
|
|
3458
|
+
banlist: ['OU', 'UUBL'],
|
|
3459
|
+
},
|
|
3389
3460
|
{
|
|
3390
3461
|
name: "[Gen 1] NU",
|
|
3391
3462
|
threads: [
|