@pkmn/sim 0.5.16 → 0.5.19

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.
Files changed (79) hide show
  1. package/build/config/formats.js +97 -114
  2. package/build/config/formats.js.map +1 -1
  3. package/build/data/aliases.js +2 -2
  4. package/build/data/aliases.js.map +1 -1
  5. package/build/data/items.js +1 -3
  6. package/build/data/items.js.map +1 -1
  7. package/build/data/learnsets.js +50 -11
  8. package/build/data/learnsets.js.map +1 -1
  9. package/build/data/mods/gen1/formats-data.js +1 -1
  10. package/build/data/mods/gen1/formats-data.js.map +1 -1
  11. package/build/data/mods/gen1/moves.js +3 -10
  12. package/build/data/mods/gen1/moves.js.map +1 -1
  13. package/build/data/mods/gen3/moves.js +0 -7
  14. package/build/data/mods/gen3/moves.js.map +1 -1
  15. package/build/data/mods/gen3/scripts.js +2 -2
  16. package/build/data/mods/gen3/scripts.js.map +1 -1
  17. package/build/data/mods/gen4/moves.js +1 -1
  18. package/build/data/mods/gen4/moves.js.map +1 -1
  19. package/build/data/mods/gen4/rulesets.js +2 -1
  20. package/build/data/mods/gen4/rulesets.js.map +1 -1
  21. package/build/data/mods/gen5/rulesets.js +2 -1
  22. package/build/data/mods/gen5/rulesets.js.map +1 -1
  23. package/build/data/mods/gen7/formats-data.js +5 -5
  24. package/build/data/mods/gen7/formats-data.js.map +1 -1
  25. package/build/data/mods/gen7/rulesets.js +2 -1
  26. package/build/data/mods/gen7/rulesets.js.map +1 -1
  27. package/build/data/moves.js +57 -78
  28. package/build/data/moves.js.map +1 -1
  29. package/build/data/pokedex.js +10 -3
  30. package/build/data/pokedex.js.map +1 -1
  31. package/build/data/rulesets.js +3 -4
  32. package/build/data/rulesets.js.map +1 -1
  33. package/build/data/text/items.js +1 -0
  34. package/build/data/text/items.js.map +1 -1
  35. package/build/data/text/moves.js +5 -3
  36. package/build/data/text/moves.js.map +1 -1
  37. package/build/sim/battle-actions.js +9 -1
  38. package/build/sim/battle-actions.js.map +1 -1
  39. package/build/sim/battle.js +39 -1
  40. package/build/sim/battle.js.map +1 -1
  41. package/build/sim/dex-conditions.d.ts +1 -0
  42. package/build/sim/dex-conditions.js.map +1 -1
  43. package/build/sim/exported-global-types.d.ts +1 -0
  44. package/build/sim/global-types.d.ts +1 -0
  45. package/build/sim/state.d.ts +1 -1
  46. package/build/sim/state.js +6 -6
  47. package/build/sim/state.js.map +1 -1
  48. package/build/sim/team-validator.js +15 -4
  49. package/build/sim/team-validator.js.map +1 -1
  50. package/build/sim/teams.d.ts +2 -2
  51. package/build/sim/tools/exhaustive-runner.d.ts +9 -0
  52. package/build/sim/tools/exhaustive-runner.js +18 -7
  53. package/build/sim/tools/exhaustive-runner.js.map +1 -1
  54. package/config/formats.ts +100 -117
  55. package/data/aliases.ts +2 -2
  56. package/data/items.ts +1 -3
  57. package/data/learnsets.ts +50 -11
  58. package/data/mods/gen1/formats-data.ts +1 -1
  59. package/data/mods/gen1/moves.ts +3 -10
  60. package/data/mods/gen3/moves.ts +0 -7
  61. package/data/mods/gen3/scripts.ts +3 -3
  62. package/data/mods/gen4/moves.ts +1 -1
  63. package/data/mods/gen4/rulesets.ts +2 -1
  64. package/data/mods/gen5/rulesets.ts +2 -1
  65. package/data/mods/gen7/formats-data.ts +5 -5
  66. package/data/mods/gen7/rulesets.ts +2 -1
  67. package/data/moves.ts +57 -69
  68. package/data/pokedex.ts +10 -3
  69. package/data/rulesets.ts +3 -6
  70. package/data/text/items.ts +2 -0
  71. package/data/text/moves.ts +6 -3
  72. package/package.json +1 -1
  73. package/sim/battle-actions.ts +13 -1
  74. package/sim/battle.ts +38 -1
  75. package/sim/dex-conditions.ts +1 -0
  76. package/sim/exported-global-types.ts +3 -0
  77. package/sim/global-types.ts +3 -0
  78. package/sim/team-validator.ts +16 -4
  79. package/sim/tools/exhaustive-runner.ts +30 -11
@@ -236,7 +236,7 @@ exports.Formats = [
236
236
  'Larvesta', 'Magby', 'Magnemite', 'Mareanie', 'Mienfoo', 'Mudbray', 'Munchlax', 'Natu', 'Onix', 'Pawniard',
237
237
  'Ponyta', 'Ponyta-Galar', 'Porygon', 'Slowpoke-Base', 'Staryu', 'Timburr', 'Trapinch', 'Tyrunt',
238
238
  // LC UUBL
239
- 'Farfetch\u2019d-Galar', 'Scorbunny', 'Shellder', 'Wingull',
239
+ 'Archen', 'Farfetch\u2019d-Galar', 'Scorbunny', 'Shellder', 'Wingull',
240
240
  ],
241
241
  },
242
242
  {
@@ -330,7 +330,7 @@ exports.Formats = [
330
330
  gameType: 'doubles',
331
331
  searchShow: false,
332
332
  ruleset: ['Standard Doubles', 'Little Cup', 'Dynamax Clause', 'Swagger Clause', 'Sleep Clause Mod'],
333
- banlist: ['Corsola-Galar', 'Cutiefly', 'Ponyta-Base', 'Scyther', 'Sneasel', 'Swirlix', 'Tangela', 'Vulpix', 'Vulpix-Alola', 'Ally Switch'],
333
+ banlist: ['Corsola-Galar', 'Cutiefly', 'Ponyta-Base', 'Scyther', 'Sneasel', 'Swirlix', 'Tangela', 'Vulpix-Base', 'Ally Switch'],
334
334
  },
335
335
  {
336
336
  name: "[Gen 8] VGC 2022",
@@ -570,43 +570,35 @@ exports.Formats = [
570
570
  column: 2,
571
571
  },
572
572
  {
573
- name: "[Gen 8] Crazyhouse",
574
- desc: `Pokémon you KO are added to your team and removed from the opponent's, and vice versa.`,
573
+ name: "[Gen 8] Tier Shift",
574
+ desc: `Pokémon get a +10 boost to each stat, barring HP, per tier below OU they are in.`,
575
575
  threads: [
576
- `&bullet; <a href="https://www.smogon.com/forums/threads/3699268/">Crazyhouse</a>`,
576
+ `&bullet; <a href="https://www.smogon.com/forums/threads/3662165/">Tier Shift</a>`,
577
577
  ],
578
578
  mod: 'gen8',
579
- ruleset: ['Standard', 'Crazyhouse Rule', 'Dynamax Clause', 'Sleep Moves Clause', 'Evasion Abilities Clause', '!Sleep Clause Mod'],
579
+ ruleset: ['Standard', 'Tier Shift Mod', 'Dynamax Clause'],
580
580
  banlist: [
581
- 'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Eternatus', 'Genesect', 'Giratina',
582
- 'Giratina-Origin', 'Groudon', 'Hawlucha', 'Ho-Oh', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia',
583
- 'Lunala', 'Magearna', 'Marshadow', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa',
584
- 'Rayquaza', 'Reshiram', 'Solgaleo', 'Spectrier', 'Urshifu-Base', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta',
585
- 'Zamazenta-Crowned', 'Zekrom', 'Zygarde-Base', 'Arena Trap', 'Moody', 'Power Construct', 'Shadow Tag', 'Bright Powder',
586
- 'King\'s Rock', 'Lax Incense', 'Baton Pass', 'Explosion', 'Final Gambit', 'Healing Wish', 'Lunar Dance', 'Memento',
587
- 'Misty Explosion', 'Self-Destruct',
581
+ 'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin',
582
+ 'Groudon', 'Ho-Oh', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Mewtwo',
583
+ 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram', 'Solgaleo', 'Spectrier', 'Urshifu-Base',
584
+ 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom', 'Zygarde-Base', 'Arena Trap', 'Moody', 'Power Construct', 'Sand Veil',
585
+ 'Shadow Tag', 'Snow Cloak', 'Bright Powder', 'Damp Rock', 'Eviolite', 'Heat Rock', 'King\'s Rock', 'Lax Incense', 'Baton Pass',
588
586
  ],
589
587
  },
590
588
  {
591
- name: "[Gen 8] Pokebilities AAA",
592
- desc: `Pok&eacute;mon have all of their released abilities simultaneously alongside any additional ability.`,
589
+ name: "[Gen 8] Inverse",
590
+ desc: `Weaknesses become resistances, while resistances and immunities become weaknesses.`,
593
591
  threads: [
594
- `&bullet; <a href="https://www.smogon.com/forums/posts/8821047">Pok&eacute;bilities AAA</a>`,
592
+ `&bullet; <a href="https://www.smogon.com/forums/threads/3666858/">Inverse</a>`,
595
593
  ],
596
- mod: 'pokebilities',
597
- ruleset: ['[Gen 8] Pokebilities', '!Obtainable Abilities', 'AAA Restricted Abilities', '2 Ability Clause', 'Sleep Moves Clause', '!Sleep Clause Mod'],
594
+ mod: 'gen8',
595
+ ruleset: ['Standard', 'Inverse Mod', 'Dynamax Clause'],
598
596
  banlist: [
599
- 'Blacephalon', 'Buzzwole', 'Clefable', 'Dragapult', 'Dragonite', 'Kartana', 'Keldeo', 'Kyurem', 'Melmetal', 'Mienshao',
600
- 'Obstagoon', 'Noivern', 'Pangoro', 'Perrserker', 'Rillaboom', 'Tapu Bulu', 'Tapu Lele', 'Urshifu', 'Urshifu-Rapid-Strike',
601
- 'Victini', 'Weavile', 'Zamazenta-Crowned', 'Arena Trap', 'Moody', 'Shadow Tag', 'Wonder Guard', 'Chlorophyll + Desolate Land',
602
- 'Chlorophyll + Drought', 'Electric Surge + Surge Surfer', 'Regenerator + Emergency Exit', 'Regenerator + Multiscale',
603
- 'Regenerator + Shadow Shield', 'Regenerator + Wimp Out', 'Sand Rush + Sand Stream', 'Slush Rush + Snow Warning', 'Swift Swim + Drizzle',
604
- 'Swift Swim + Primordial Sea', 'Regenerator > 2',
605
- ],
606
- restricted: [
607
- 'Comatose', 'Contrary', 'Fluffy', 'Fur Coat', 'Gorilla Tactics', 'Huge Power', 'Ice Scales', 'Illusion', 'Imposter', 'Innards Out',
608
- 'Intrepid Sword', 'Libero', 'Magnet Pull', 'Neutralizing Gas', 'Parental Bond', 'Poison Heal', 'Prankster', 'Protean',
609
- 'Pure Power', 'Simple', 'Stakeout', 'Stench', 'Speed Boost', 'Tinted Lens', 'Unburden', 'Water Bubble',
597
+ 'Cinderace', 'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Diggersby', 'Dracovish', 'Dracozolt', 'Eternatus', 'Genesect', 'Giratina',
598
+ 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala', 'Marshadow',
599
+ 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Porygon-Z', 'Rayquaza', 'Regidrago', 'Regieleki', 'Reshiram',
600
+ 'Reuniclus', 'Rillaboom', 'Solgaleo', 'Spectrier', 'Urshifu-Base', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom', 'Arena Trap',
601
+ 'Moody', 'Power Construct', 'Shadow Tag', 'King\'s Rock', 'Baton Pass',
610
602
  ],
611
603
  },
612
604
  // Other Metagames
@@ -631,25 +623,6 @@ exports.Formats = [
631
623
  'Water Bubble', 'Wonder Guard', 'Comatose + Sleep Talk', 'Rusted Sword', 'Court Change', 'Bolt Beak', 'Double Iron Bash',
632
624
  'Octolock', 'Shell Smash',
633
625
  ],
634
- onChangeSet(set) {
635
- const item = this.dex.toID(set.item);
636
- if (set.species === 'Zacian' && item === 'rustedsword') {
637
- set.species = 'Zacian-Crowned';
638
- set.ability = 'Intrepid Sword';
639
- const ironHead = set.moves.indexOf('ironhead');
640
- if (ironHead >= 0) {
641
- set.moves[ironHead] = 'behemothblade';
642
- }
643
- }
644
- if (set.species === 'Zamazenta' && item === 'rustedshield') {
645
- set.species = 'Zamazenta-Crowned';
646
- set.ability = 'Dauntless Shield';
647
- const ironHead = set.moves.indexOf('ironhead');
648
- if (ironHead >= 0) {
649
- set.moves[ironHead] = 'behemothbash';
650
- }
651
- }
652
- },
653
626
  },
654
627
  {
655
628
  name: "[Gen 8] Almost Any Ability",
@@ -670,15 +643,6 @@ exports.Formats = [
670
643
  'Innards Out', 'Intrepid Sword', 'Libero', 'Magnet Pull', 'Moody', 'Neutralizing Gas', 'Parental Bond', 'Poison Heal', 'Protean',
671
644
  'Pure Power', 'Shadow Tag', 'Simple', 'Stakeout', 'Speed Boost', 'Water Bubble', 'Wonder Guard', 'King\'s Rock', 'Baton Pass',
672
645
  ],
673
- onValidateSet(set) {
674
- // Temporary fix until battle-only is implemented properly
675
- if (this.toID(set.species) === 'zamazentacrowned' && this.toID(set.ability) !== 'dauntlessshield') {
676
- return [`Zamazenta-Crowned can only use Dauntless Shield because it is a battle-only forme.`];
677
- }
678
- if (this.toID(set.species) === 'zaciancrowned' && this.toID(set.ability) !== 'intrepidsword') {
679
- return [`Zacian-Crowned can only use Intrepid Sword because it is a battle-only forme.`];
680
- }
681
- },
682
646
  },
683
647
  {
684
648
  name: "[Gen 8] Mix and Mega",
@@ -850,9 +814,6 @@ exports.Formats = [
850
814
  const stat = Dex.stats.ids()[target.side.team.indexOf(target.set)];
851
815
  const newSpecies = this.dex.deepClone(species);
852
816
  let godSpecies = this.dex.species.get(god.species);
853
- if (godSpecies.forme === 'Crowned') {
854
- godSpecies = this.dex.species.get(godSpecies.changesFrom || godSpecies.baseSpecies);
855
- }
856
817
  if (typeof godSpecies.battleOnly === 'string') {
857
818
  godSpecies = this.dex.species.get(godSpecies.battleOnly);
858
819
  }
@@ -1723,6 +1684,17 @@ exports.Formats = [
1723
1684
  }
1724
1685
  }
1725
1686
  },
1687
+ onSwitchOut(pokemon) {
1688
+ for (const innate of Object.keys(pokemon.volatiles).filter(i => i.startsWith('ability:'))) {
1689
+ pokemon.removeVolatile(innate);
1690
+ }
1691
+ },
1692
+ onFaint(pokemon) {
1693
+ for (const innate of Object.keys(pokemon.volatiles).filter(i => i.startsWith('ability:'))) {
1694
+ const innateEffect = this.dex.conditions.get(innate);
1695
+ this.singleEvent('End', innateEffect, null, pokemon);
1696
+ }
1697
+ },
1726
1698
  onAfterMega(pokemon) {
1727
1699
  for (const innate of Object.keys(pokemon.volatiles).filter(i => i.startsWith('ability:'))) {
1728
1700
  pokemon.removeVolatile(innate);
@@ -2099,6 +2071,17 @@ exports.Formats = [
2099
2071
  team: 'randomStaffBros',
2100
2072
  ruleset: ['Dynamax Clause', 'HP Percentage Mod', 'Cancel Mod', 'Sleep Clause Mod'],
2101
2073
  onBegin() {
2074
+ if (!this.ruleTable.has('dynamaxclause')) {
2075
+ // Old joke format we're bringing back
2076
+ for (const side of this.sides) {
2077
+ side.dynamaxUsed = true;
2078
+ }
2079
+ this.add('message', 'Delphox only');
2080
+ this.add('message', 'No items');
2081
+ this.add('message', 'Final Destination');
2082
+ return;
2083
+ }
2084
+ // TODO look into making an event to put this right after turn|1
2102
2085
  // https://discordapp.com/channels/630837856075513856/630845310033330206/716126469528485909
2103
2086
  // Requires client change
2104
2087
  this.add(`raw|<div class='broadcast-green'><b>Wondering what all these custom moves, abilities, and items do?<br />Check out the <a href="https://www.smogon.com/articles/super-staff-bros-4" target="_blank">Super Staff Bros 4 Guide</a> or use /ssb to find out!</b></div>`);
@@ -2203,7 +2186,7 @@ exports.Formats = [
2203
2186
  ],
2204
2187
  mod: 'gen7',
2205
2188
  team: 'random',
2206
- ruleset: ['Obtainable', 'Sleep Clause Mod', 'HP Percentage Mod', 'Cancel Mod'],
2189
+ ruleset: ['Obtainable', 'Sleep Clause Mod', 'HP Percentage Mod', 'Cancel Mod', 'Mega Rayquaza Clause'],
2207
2190
  },
2208
2191
  {
2209
2192
  name: "[Gen 7] Random Doubles Battle",
@@ -2259,7 +2242,7 @@ exports.Formats = [
2259
2242
  name: "[Gen 6] Random Battle",
2260
2243
  mod: 'gen6',
2261
2244
  team: 'random',
2262
- ruleset: ['Obtainable', 'Sleep Clause Mod', 'HP Percentage Mod', 'Cancel Mod'],
2245
+ ruleset: ['Obtainable', 'Sleep Clause Mod', 'HP Percentage Mod', 'Cancel Mod', 'Mega Rayquaza Clause'],
2263
2246
  },
2264
2247
  {
2265
2248
  name: "[Gen 6] Battle Factory",
@@ -2335,33 +2318,35 @@ exports.Formats = [
2335
2318
  column: 3,
2336
2319
  },
2337
2320
  {
2338
- name: "[Gen 6] UU",
2321
+ name: "[Gen 7] UU",
2339
2322
  threads: [
2340
- `&bullet; <a href="https://www.smogon.com/dex/xy/formats/uu/">ORAS UU Banlist</a>`,
2341
- `&bullet; <a href="https://www.smogon.com/forums/threads/3598164/">ORAS UU Viability Rankings</a>`,
2323
+ `&bullet; <a href="https://www.smogon.com/forums/threads/3621217/">USM UU Sample Teams</a>`,
2324
+ `&bullet; <a href="https://www.smogon.com/forums/threads/3641346/">USM UU Viability Rankings</a>`,
2342
2325
  ],
2343
- mod: 'gen6',
2326
+ mod: 'gen7',
2344
2327
  // searchShow: false,
2345
- ruleset: ['[Gen 6] OU'],
2346
- banlist: ['OU', 'UUBL', 'Drizzle', 'Drought'],
2328
+ ruleset: ['[Gen 7] OU'],
2329
+ banlist: ['OU', 'UUBL', 'Drizzle', 'Drought', 'Kommonium Z', 'Mewnium Z'],
2347
2330
  },
2348
2331
  {
2349
- name: "[Gen 4] Anything Goes",
2350
- mod: 'gen4',
2332
+ name: "[Gen 6] ZU",
2333
+ threads: [
2334
+ `&bullet; <a href="https://www.smogon.com/dex/xy/formats/zu/">ORAS ZU Banlist</a>`,
2335
+ `&bullet; <a href="https://www.smogon.com/forums/posts/8034679/">ORAS ZU Viability Rankings</a>`,
2336
+ ],
2337
+ mod: 'gen6',
2351
2338
  // searchShow: false,
2352
- ruleset: ['Obtainable', 'Arceus EV Limit', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
2339
+ ruleset: ['[Gen 6] PU'],
2340
+ banlist: ['PU', 'Fraxure', 'Regigigas', 'Simisear'],
2353
2341
  },
2354
2342
  {
2355
- name: "[Gen 7] RU",
2343
+ name: "[Gen 1] Ubers",
2356
2344
  threads: [
2357
- `&bullet; <a href="https://www.smogon.com/forums/threads/3645338/">USM RU Sample Teams</a>`,
2358
- `&bullet; <a href="https://www.smogon.com/forums/threads/3645873/">USM RU Viability Rankings</a>`,
2345
+ `&bullet; <a href="https://www.smogon.com/forums/posts/8286283/">RBY Ubers</a>`,
2359
2346
  ],
2360
- mod: 'gen7',
2347
+ mod: 'gen1',
2361
2348
  // searchShow: false,
2362
- ruleset: ['[Gen 7] UU'],
2363
- banlist: ['UU', 'RUBL', 'Mimikyu', 'Aurora Veil'],
2364
- unbanlist: ['Drought'],
2349
+ ruleset: ['Standard'],
2365
2350
  },
2366
2351
  // Past Gens OU
2367
2352
  ///////////////////////////////////////////////////////////////////
@@ -2420,7 +2405,7 @@ exports.Formats = [
2420
2405
  ],
2421
2406
  mod: 'gen3',
2422
2407
  ruleset: ['Standard', 'One Boost Passer Clause'],
2423
- banlist: ['Uber', 'Sand Veil', 'Soundproof', 'Assist', 'Baton Pass + Mean Look', 'Baton Pass + Spider Web', 'Smeargle + Ingrain'],
2408
+ banlist: ['Uber', 'Sand Veil', 'Soundproof', 'Assist', 'Baton Pass + Block', 'Baton Pass + Mean Look', 'Baton Pass + Spider Web', 'Smeargle + Ingrain'],
2424
2409
  },
2425
2410
  {
2426
2411
  name: "[Gen 2] OU",
@@ -2581,15 +2566,16 @@ exports.Formats = [
2581
2566
  banlist: ['Baton Pass'],
2582
2567
  },
2583
2568
  {
2584
- name: "[Gen 7] UU",
2569
+ name: "[Gen 7] RU",
2585
2570
  threads: [
2586
- `&bullet; <a href="https://www.smogon.com/forums/threads/3621217/">USM UU Sample Teams</a>`,
2587
- `&bullet; <a href="https://www.smogon.com/forums/threads/3641346/">USM UU Viability Rankings</a>`,
2571
+ `&bullet; <a href="https://www.smogon.com/forums/threads/3645338/">USM RU Sample Teams</a>`,
2572
+ `&bullet; <a href="https://www.smogon.com/forums/threads/3645873/">USM RU Viability Rankings</a>`,
2588
2573
  ],
2589
2574
  mod: 'gen7',
2590
2575
  searchShow: false,
2591
- ruleset: ['[Gen 7] OU'],
2592
- banlist: ['OU', 'UUBL', 'Drizzle', 'Drought', 'Kommonium Z', 'Mewnium Z'],
2576
+ ruleset: ['[Gen 7] UU'],
2577
+ banlist: ['UU', 'RUBL', 'Mimikyu', 'Aurora Veil'],
2578
+ unbanlist: ['Drought'],
2593
2579
  },
2594
2580
  {
2595
2581
  name: "[Gen 7] NU",
@@ -2860,6 +2846,17 @@ exports.Formats = [
2860
2846
  searchShow: false,
2861
2847
  ruleset: ['Standard', 'Swagger Clause', 'Mega Rayquaza Clause'],
2862
2848
  },
2849
+ {
2850
+ name: "[Gen 6] UU",
2851
+ threads: [
2852
+ `&bullet; <a href="https://www.smogon.com/dex/xy/formats/uu/">ORAS UU Banlist</a>`,
2853
+ `&bullet; <a href="https://www.smogon.com/forums/threads/3598164/">ORAS UU Viability Rankings</a>`,
2854
+ ],
2855
+ mod: 'gen6',
2856
+ searchShow: false,
2857
+ ruleset: ['[Gen 6] OU'],
2858
+ banlist: ['OU', 'UUBL', 'Drizzle', 'Drought'],
2859
+ },
2863
2860
  {
2864
2861
  name: "[Gen 6] RU",
2865
2862
  threads: [
@@ -2917,8 +2914,8 @@ exports.Formats = [
2917
2914
  searchShow: false,
2918
2915
  ruleset: ['Standard', 'Swagger Clause', 'Same Type Clause'],
2919
2916
  banlist: [
2920
- 'Aegislash', 'Altaria-Mega', 'Arceus', 'Blaziken', 'Darkrai', 'Deoxys-Base', 'Deoxys-Attack', 'Dialga', 'Genesect', 'Gengar-Mega',
2921
- 'Giratina', 'Giratina-Origin', 'Greninja', 'Groudon', 'Ho-Oh', 'Hoopa-Unbound', 'Kangaskhan-Mega', 'Kyogre', 'Kyurem-White',
2917
+ 'Aegislash', 'Altaria-Mega', 'Arceus', 'Blaziken', 'Darkrai', 'Deoxys-Base', 'Deoxys-Attack', 'Deoxys-Speed', 'Dialga', 'Genesect',
2918
+ 'Gengar-Mega', 'Giratina', 'Giratina-Origin', 'Greninja', 'Groudon', 'Ho-Oh', 'Hoopa-Unbound', 'Kangaskhan-Mega', 'Kyogre', 'Kyurem-White',
2922
2919
  'Lucario-Mega', 'Lugia', 'Mawile-Mega', 'Medicham-Mega', 'Metagross-Mega', 'Mewtwo', 'Palkia', 'Rayquaza', 'Reshiram', 'Sableye-Mega',
2923
2920
  'Salamence-Mega', 'Shaymin-Sky', 'Slowbro-Mega', 'Talonflame', 'Xerneas', 'Yveltal', 'Zekrom',
2924
2921
  'Shadow Tag', 'Bright Powder', 'Damp Rock', 'Focus Band', 'King\'s Rock', 'Lax Incense', 'Quick Claw', 'Razor Fang', 'Smooth Rock',
@@ -2941,8 +2938,8 @@ exports.Formats = [
2941
2938
  banlist: [
2942
2939
  'Arceus', 'Blaziken', 'Darkrai', 'Deoxys-Base', 'Deoxys-Attack', 'Deoxys-Defense', 'Dialga', 'Giratina',
2943
2940
  'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kangaskhan-Mega', 'Kyogre', 'Kyurem-White', 'Lugia', 'Mewtwo',
2944
- 'Palkia', 'Rayquaza', 'Reshiram', 'Salamence-Mega', 'Shaymin-Sky', 'Xerneas', 'Yveltal', 'Zekrom',
2945
- 'Focus Sash', 'Soul Dew', 'Grass Whistle', 'Hypnosis', 'Perish Song', 'Sing', 'Yawn',
2941
+ 'Palkia', 'Rayquaza', 'Reshiram', 'Salamence-Mega', 'Shaymin-Sky', 'Snorlax', 'Xerneas', 'Yveltal',
2942
+ 'Zekrom', 'Focus Sash', 'Soul Dew', 'Grass Whistle', 'Hypnosis', 'Perish Song', 'Sing', 'Yawn',
2946
2943
  ],
2947
2944
  },
2948
2945
  {
@@ -2955,17 +2952,6 @@ exports.Formats = [
2955
2952
  searchShow: false,
2956
2953
  ruleset: ['Obtainable', 'Team Preview', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
2957
2954
  },
2958
- {
2959
- name: "[Gen 6] ZU",
2960
- threads: [
2961
- `&bullet; <a href="https://www.smogon.com/dex/xy/formats/zu/">ORAS ZU Banlist</a>`,
2962
- `&bullet; <a href="https://www.smogon.com/forums/posts/8034679/">ORAS ZU Viability Rankings</a>`,
2963
- ],
2964
- mod: 'gen6',
2965
- searchShow: false,
2966
- ruleset: ['[Gen 6] PU'],
2967
- banlist: ['PU', 'Fraxure', 'Regigigas', 'Simisear'],
2968
- },
2969
2955
  {
2970
2956
  name: "[Gen 6] CAP",
2971
2957
  threads: [
@@ -3190,7 +3176,7 @@ exports.Formats = [
3190
3176
  searchShow: false,
3191
3177
  ruleset: [
3192
3178
  'Picked Team Size = 1', 'Max Team Size = 3',
3193
- 'Standard', 'Baton Pass Clause', 'Swagger Clause', 'Accuracy Moves Clause',
3179
+ 'Standard', 'Baton Pass Clause', 'Swagger Clause', 'Accuracy Moves Clause', 'Sleep Moves Clause',
3194
3180
  ],
3195
3181
  banlist: ['Uber', 'Cottonee', 'Dragonite', 'Jirachi', 'Kyurem-Black', 'Mew', 'Togekiss', 'Whimsicott', 'Victini', 'Bright Powder', 'Focus Band', 'Focus Sash', 'Lax Incense', 'Quick Claw', 'Soul Dew', 'Perish Song'],
3196
3182
  unbanlist: ['Genesect', 'Landorus', 'Manaphy', 'Thundurus', 'Tornadus-Therian'],
@@ -3354,6 +3340,12 @@ exports.Formats = [
3354
3340
  'Berry Juice', 'Deep Sea Tooth', 'Dragon Rage', 'Sonic Boom', 'Swagger',
3355
3341
  ],
3356
3342
  },
3343
+ {
3344
+ name: "[Gen 4] Anything Goes",
3345
+ mod: 'gen4',
3346
+ searchShow: false,
3347
+ ruleset: ['Obtainable', 'Arceus EV Limit', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
3348
+ },
3357
3349
  {
3358
3350
  name: "[Gen 4] 1v1",
3359
3351
  desc: `Bring three Pok&eacute;mon to Team Preview and choose one to battle.`,
@@ -3378,11 +3370,11 @@ exports.Formats = [
3378
3370
  searchShow: false,
3379
3371
  ruleset: ['[Gen 4] PU'],
3380
3372
  banlist: [
3381
- 'Ampharos', 'Armaldo', 'Bellossom', 'Dragonair', 'Gabite', 'Gastrodon', 'Glaceon', 'Glalie', 'Golduck',
3382
- 'Gorebyss', 'Hippopotas', 'Kadabra', 'Machoke', 'Magmar', 'Mantine', 'Marowak', 'Metang', 'Misdreavus',
3383
- 'Monferno', 'Mr. Mime', 'Muk', 'Murkrow', 'Pinsir', 'Politoed', 'Purugly', 'Quagsire', 'Raichu',
3384
- 'Rampardos', 'Rapidash', 'Regigigas', 'Relicanth', 'Rhydon', 'Scyther', 'Sneasel', 'Snover', 'Solrock',
3385
- 'Tangela', 'Torkoal', 'Victreebel', 'Xatu', 'Zangoose', 'Damp Rock',
3373
+ 'Ampharos', 'Armaldo', 'Bellossom', 'Dragonair', 'Electabuzz', 'Gabite', 'Gastrodon', 'Glaceon', 'Glalie',
3374
+ 'Golduck', 'Gorebyss', 'Hippopotas', 'Kadabra', 'Machoke', 'Magmar', 'Mantine', 'Marowak', 'Metang',
3375
+ 'Misdreavus', 'Monferno', 'Mr. Mime', 'Muk', 'Murkrow', 'Pinsir', 'Politoed', 'Purugly', 'Quagsire',
3376
+ 'Raichu', 'Rampardos', 'Rapidash', 'Regigigas', 'Relicanth', 'Rhydon', 'Scyther', 'Sneasel', 'Snover',
3377
+ 'Solrock', 'Tangela', 'Torkoal', 'Victreebel', 'Xatu', 'Zangoose', 'Damp Rock',
3386
3378
  ],
3387
3379
  },
3388
3380
  {
@@ -3590,15 +3582,6 @@ exports.Formats = [
3590
3582
  battle: { trunc: Math.trunc },
3591
3583
  ruleset: ['HP Percentage Mod', 'Cancel Mod', 'Max Team Size = 24', 'Max Move Count = 24', 'Max Level = 9999', 'Default Level = 100'],
3592
3584
  },
3593
- {
3594
- name: "[Gen 1] Ubers",
3595
- threads: [
3596
- `&bullet; <a href="https://www.smogon.com/forums/posts/8286283/">RBY Ubers</a>`,
3597
- ],
3598
- mod: 'gen1',
3599
- searchShow: false,
3600
- ruleset: ['Standard'],
3601
- },
3602
3585
  {
3603
3586
  name: "[Gen 1] UU",
3604
3587
  threads: [