@pkmn/sim 0.9.37 → 0.10.0

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 (243) hide show
  1. package/build/cjs/config/formats.js +185 -173
  2. package/build/cjs/config/formats.js.map +1 -1
  3. package/build/cjs/data/abilities.js +62 -72
  4. package/build/cjs/data/abilities.js.map +1 -1
  5. package/build/cjs/data/aliases.js +11 -4
  6. package/build/cjs/data/aliases.js.map +1 -1
  7. package/build/cjs/data/formats-data.js +164 -64
  8. package/build/cjs/data/formats-data.js.map +1 -1
  9. package/build/cjs/data/items.js +406 -2
  10. package/build/cjs/data/items.js.map +1 -1
  11. package/build/cjs/data/legality.js +548 -113
  12. package/build/cjs/data/legality.js.map +1 -1
  13. package/build/cjs/data/mods/gen1/conditions.js +12 -1
  14. package/build/cjs/data/mods/gen1/conditions.js.map +1 -1
  15. package/build/cjs/data/mods/gen1/scripts.js +14 -28
  16. package/build/cjs/data/mods/gen1/scripts.js.map +1 -1
  17. package/build/cjs/data/mods/gen2/formats-data.js +2 -2
  18. package/build/cjs/data/mods/gen2/formats-data.js.map +1 -1
  19. package/build/cjs/data/mods/gen3/abilities.js +1 -3
  20. package/build/cjs/data/mods/gen3/abilities.js.map +1 -1
  21. package/build/cjs/data/mods/gen3/formats-data.js +5 -11
  22. package/build/cjs/data/mods/gen3/formats-data.js.map +1 -1
  23. package/build/cjs/data/mods/gen3/moves.js +24 -0
  24. package/build/cjs/data/mods/gen3/moves.js.map +1 -1
  25. package/build/cjs/data/mods/gen4/abilities.js +2 -14
  26. package/build/cjs/data/mods/gen4/abilities.js.map +1 -1
  27. package/build/cjs/data/mods/gen4/formats-data.js.map +1 -1
  28. package/build/cjs/data/mods/gen4/moves.js +37 -6
  29. package/build/cjs/data/mods/gen4/moves.js.map +1 -1
  30. package/build/cjs/data/mods/gen5/abilities.js +4 -0
  31. package/build/cjs/data/mods/gen5/abilities.js.map +1 -1
  32. package/build/cjs/data/mods/gen5/formats-data.js.map +1 -1
  33. package/build/cjs/data/mods/gen6/pokedex.js +104 -0
  34. package/build/cjs/data/mods/gen6/pokedex.js.map +1 -1
  35. package/build/cjs/data/mods/gen7/abilities.js +11 -26
  36. package/build/cjs/data/mods/gen7/abilities.js.map +1 -1
  37. package/build/cjs/data/mods/gen7/formats-data.js +1 -1
  38. package/build/cjs/data/mods/gen7/formats-data.js.map +1 -1
  39. package/build/cjs/data/mods/gen7/pokedex.js +96 -0
  40. package/build/cjs/data/mods/gen7/pokedex.js.map +1 -1
  41. package/build/cjs/data/mods/gen8/abilities.js +0 -3
  42. package/build/cjs/data/mods/gen8/abilities.js.map +1 -1
  43. package/build/cjs/data/mods/gen8bdsp/abilities.d.ts +1 -0
  44. package/build/cjs/data/mods/gen8bdsp/abilities.js +42 -0
  45. package/build/cjs/data/mods/gen8bdsp/abilities.js.map +1 -0
  46. package/build/cjs/data/mods/gen8bdsp/formats-data.d.ts +1 -0
  47. package/build/cjs/data/mods/gen8bdsp/formats-data.js +1837 -0
  48. package/build/cjs/data/mods/gen8bdsp/formats-data.js.map +1 -0
  49. package/build/cjs/data/mods/gen8bdsp/index.d.ts +6 -0
  50. package/build/cjs/data/mods/gen8bdsp/index.js +16 -0
  51. package/build/cjs/data/mods/gen8bdsp/index.js.map +1 -0
  52. package/build/cjs/data/mods/gen8bdsp/items.d.ts +1 -0
  53. package/build/cjs/data/mods/gen8bdsp/items.js +831 -0
  54. package/build/cjs/data/mods/gen8bdsp/items.js.map +1 -0
  55. package/build/cjs/data/mods/gen8bdsp/learnsets.d.ts +3 -0
  56. package/build/cjs/data/mods/gen8bdsp/learnsets.js +25784 -0
  57. package/build/cjs/data/mods/gen8bdsp/learnsets.js.map +1 -0
  58. package/build/cjs/data/mods/gen8bdsp/legality.d.ts +3 -0
  59. package/build/cjs/data/mods/gen8bdsp/legality.js +242 -0
  60. package/build/cjs/data/mods/gen8bdsp/legality.js.map +1 -0
  61. package/build/cjs/data/mods/gen8bdsp/moves.d.ts +1 -0
  62. package/build/cjs/data/mods/gen8bdsp/moves.js +919 -0
  63. package/build/cjs/data/mods/gen8bdsp/moves.js.map +1 -0
  64. package/build/cjs/data/mods/gen8bdsp/pokedex.d.ts +1 -0
  65. package/build/cjs/data/mods/gen8bdsp/pokedex.js +99 -0
  66. package/build/cjs/data/mods/gen8bdsp/pokedex.js.map +1 -0
  67. package/build/cjs/data/mods/gen8bdsp/scripts.d.ts +1 -0
  68. package/build/cjs/data/mods/gen8bdsp/scripts.js +15 -0
  69. package/build/cjs/data/mods/gen8bdsp/scripts.js.map +1 -0
  70. package/build/cjs/data/mods/gen8legends/formats-data.d.ts +1 -0
  71. package/build/cjs/data/mods/gen8legends/formats-data.js +2775 -0
  72. package/build/cjs/data/mods/gen8legends/formats-data.js.map +1 -0
  73. package/build/cjs/data/mods/gen8legends/index.d.ts +2 -0
  74. package/build/cjs/data/mods/gen8legends/index.js +8 -0
  75. package/build/cjs/data/mods/gen8legends/index.js.map +1 -0
  76. package/build/cjs/data/mods/gen8legends/learnsets.d.ts +3 -0
  77. package/build/cjs/data/mods/gen8legends/learnsets.js +5553 -0
  78. package/build/cjs/data/mods/gen8legends/learnsets.js.map +1 -0
  79. package/build/cjs/data/mods/gen8legends/legality.d.ts +3 -0
  80. package/build/cjs/data/mods/gen8legends/legality.js +149 -0
  81. package/build/cjs/data/mods/gen8legends/legality.js.map +1 -0
  82. package/build/cjs/data/mods/gen8legends/scripts.d.ts +1 -0
  83. package/build/cjs/data/mods/gen8legends/scripts.js +8 -0
  84. package/build/cjs/data/mods/gen8legends/scripts.js.map +1 -0
  85. package/build/cjs/data/moves.js +53 -55
  86. package/build/cjs/data/moves.js.map +1 -1
  87. package/build/cjs/data/pokedex.js +735 -10
  88. package/build/cjs/data/pokedex.js.map +1 -1
  89. package/build/cjs/data/rulesets.js +78 -0
  90. package/build/cjs/data/rulesets.js.map +1 -1
  91. package/build/cjs/data/text/items.js +108 -0
  92. package/build/cjs/data/text/items.js.map +1 -1
  93. package/build/cjs/data/text/moves.js +6 -2
  94. package/build/cjs/data/text/moves.js.map +1 -1
  95. package/build/cjs/sim/battle-actions.js +17 -7
  96. package/build/cjs/sim/battle-actions.js.map +1 -1
  97. package/build/cjs/sim/battle-queue.d.ts +11 -6
  98. package/build/cjs/sim/battle-queue.js.map +1 -1
  99. package/build/cjs/sim/battle.d.ts +2 -2
  100. package/build/cjs/sim/battle.js +23 -28
  101. package/build/cjs/sim/battle.js.map +1 -1
  102. package/build/cjs/sim/dex-conditions.d.ts +2 -1
  103. package/build/cjs/sim/dex-conditions.js.map +1 -1
  104. package/build/cjs/sim/dex-formats.d.ts +2 -0
  105. package/build/cjs/sim/dex-formats.js +12 -1
  106. package/build/cjs/sim/dex-formats.js.map +1 -1
  107. package/build/cjs/sim/dex-species.d.ts +13 -2
  108. package/build/cjs/sim/dex-species.js +40 -19
  109. package/build/cjs/sim/dex-species.js.map +1 -1
  110. package/build/cjs/sim/dex.js +11 -0
  111. package/build/cjs/sim/dex.js.map +1 -1
  112. package/build/cjs/sim/exported-global-types.d.ts +5 -4
  113. package/build/cjs/sim/global-types.d.ts +5 -4
  114. package/build/cjs/sim/pokemon.d.ts +6 -4
  115. package/build/cjs/sim/pokemon.js +31 -24
  116. package/build/cjs/sim/pokemon.js.map +1 -1
  117. package/build/cjs/sim/side.js +11 -41
  118. package/build/cjs/sim/side.js.map +1 -1
  119. package/build/cjs/sim/team-validator.d.ts +1 -0
  120. package/build/cjs/sim/team-validator.js +50 -18
  121. package/build/cjs/sim/team-validator.js.map +1 -1
  122. package/build/esm/config/formats.mjs +185 -173
  123. package/build/esm/config/formats.mjs.map +1 -1
  124. package/build/esm/data/abilities.mjs +62 -72
  125. package/build/esm/data/abilities.mjs.map +1 -1
  126. package/build/esm/data/aliases.mjs +11 -4
  127. package/build/esm/data/aliases.mjs.map +1 -1
  128. package/build/esm/data/formats-data.mjs +164 -64
  129. package/build/esm/data/formats-data.mjs.map +1 -1
  130. package/build/esm/data/items.mjs +406 -2
  131. package/build/esm/data/items.mjs.map +1 -1
  132. package/build/esm/data/legality.mjs +548 -113
  133. package/build/esm/data/legality.mjs.map +1 -1
  134. package/build/esm/data/mods/gen1/conditions.mjs +12 -1
  135. package/build/esm/data/mods/gen1/conditions.mjs.map +1 -1
  136. package/build/esm/data/mods/gen1/scripts.mjs +14 -28
  137. package/build/esm/data/mods/gen1/scripts.mjs.map +1 -1
  138. package/build/esm/data/mods/gen2/formats-data.mjs +2 -2
  139. package/build/esm/data/mods/gen2/formats-data.mjs.map +1 -1
  140. package/build/esm/data/mods/gen3/abilities.mjs +1 -3
  141. package/build/esm/data/mods/gen3/abilities.mjs.map +1 -1
  142. package/build/esm/data/mods/gen3/formats-data.mjs +5 -11
  143. package/build/esm/data/mods/gen3/formats-data.mjs.map +1 -1
  144. package/build/esm/data/mods/gen3/moves.mjs +24 -0
  145. package/build/esm/data/mods/gen3/moves.mjs.map +1 -1
  146. package/build/esm/data/mods/gen4/abilities.mjs +2 -14
  147. package/build/esm/data/mods/gen4/abilities.mjs.map +1 -1
  148. package/build/esm/data/mods/gen4/formats-data.mjs.map +1 -1
  149. package/build/esm/data/mods/gen4/moves.mjs +37 -6
  150. package/build/esm/data/mods/gen4/moves.mjs.map +1 -1
  151. package/build/esm/data/mods/gen5/abilities.mjs +4 -0
  152. package/build/esm/data/mods/gen5/abilities.mjs.map +1 -1
  153. package/build/esm/data/mods/gen5/formats-data.mjs.map +1 -1
  154. package/build/esm/data/mods/gen6/pokedex.mjs +104 -0
  155. package/build/esm/data/mods/gen6/pokedex.mjs.map +1 -1
  156. package/build/esm/data/mods/gen7/abilities.mjs +11 -26
  157. package/build/esm/data/mods/gen7/abilities.mjs.map +1 -1
  158. package/build/esm/data/mods/gen7/formats-data.mjs +1 -1
  159. package/build/esm/data/mods/gen7/formats-data.mjs.map +1 -1
  160. package/build/esm/data/mods/gen7/pokedex.mjs +96 -0
  161. package/build/esm/data/mods/gen7/pokedex.mjs.map +1 -1
  162. package/build/esm/data/mods/gen8/abilities.mjs +0 -3
  163. package/build/esm/data/mods/gen8/abilities.mjs.map +1 -1
  164. package/build/esm/data/mods/gen8bdsp/abilities.d.mts +1 -0
  165. package/build/esm/data/mods/gen8bdsp/abilities.mjs +39 -0
  166. package/build/esm/data/mods/gen8bdsp/abilities.mjs.map +1 -0
  167. package/build/esm/data/mods/gen8bdsp/formats-data.d.mts +1 -0
  168. package/build/esm/data/mods/gen8bdsp/formats-data.mjs +1834 -0
  169. package/build/esm/data/mods/gen8bdsp/formats-data.mjs.map +1 -0
  170. package/build/esm/data/mods/gen8bdsp/index.d.mts +6 -0
  171. package/build/esm/data/mods/gen8bdsp/index.mjs +7 -0
  172. package/build/esm/data/mods/gen8bdsp/index.mjs.map +1 -0
  173. package/build/esm/data/mods/gen8bdsp/items.d.mts +1 -0
  174. package/build/esm/data/mods/gen8bdsp/items.mjs +828 -0
  175. package/build/esm/data/mods/gen8bdsp/items.mjs.map +1 -0
  176. package/build/esm/data/mods/gen8bdsp/learnsets.d.mts +3 -0
  177. package/build/esm/data/mods/gen8bdsp/learnsets.mjs +25781 -0
  178. package/build/esm/data/mods/gen8bdsp/learnsets.mjs.map +1 -0
  179. package/build/esm/data/mods/gen8bdsp/legality.d.mts +3 -0
  180. package/build/esm/data/mods/gen8bdsp/legality.mjs +239 -0
  181. package/build/esm/data/mods/gen8bdsp/legality.mjs.map +1 -0
  182. package/build/esm/data/mods/gen8bdsp/moves.d.mts +1 -0
  183. package/build/esm/data/mods/gen8bdsp/moves.mjs +916 -0
  184. package/build/esm/data/mods/gen8bdsp/moves.mjs.map +1 -0
  185. package/build/esm/data/mods/gen8bdsp/pokedex.d.mts +1 -0
  186. package/build/esm/data/mods/gen8bdsp/pokedex.mjs +96 -0
  187. package/build/esm/data/mods/gen8bdsp/pokedex.mjs.map +1 -0
  188. package/build/esm/data/mods/gen8bdsp/scripts.d.mts +1 -0
  189. package/build/esm/data/mods/gen8bdsp/scripts.mjs +12 -0
  190. package/build/esm/data/mods/gen8bdsp/scripts.mjs.map +1 -0
  191. package/build/esm/data/mods/gen8legends/formats-data.d.mts +1 -0
  192. package/build/esm/data/mods/gen8legends/formats-data.mjs +2772 -0
  193. package/build/esm/data/mods/gen8legends/formats-data.mjs.map +1 -0
  194. package/build/esm/data/mods/gen8legends/index.d.mts +2 -0
  195. package/build/esm/data/mods/gen8legends/index.mjs +3 -0
  196. package/build/esm/data/mods/gen8legends/index.mjs.map +1 -0
  197. package/build/esm/data/mods/gen8legends/learnsets.d.mts +3 -0
  198. package/build/esm/data/mods/gen8legends/learnsets.mjs +5550 -0
  199. package/build/esm/data/mods/gen8legends/learnsets.mjs.map +1 -0
  200. package/build/esm/data/mods/gen8legends/legality.d.mts +3 -0
  201. package/build/esm/data/mods/gen8legends/legality.mjs +146 -0
  202. package/build/esm/data/mods/gen8legends/legality.mjs.map +1 -0
  203. package/build/esm/data/mods/gen8legends/scripts.d.mts +1 -0
  204. package/build/esm/data/mods/gen8legends/scripts.mjs +5 -0
  205. package/build/esm/data/mods/gen8legends/scripts.mjs.map +1 -0
  206. package/build/esm/data/moves.mjs +53 -55
  207. package/build/esm/data/moves.mjs.map +1 -1
  208. package/build/esm/data/pokedex.mjs +735 -10
  209. package/build/esm/data/pokedex.mjs.map +1 -1
  210. package/build/esm/data/rulesets.mjs +78 -0
  211. package/build/esm/data/rulesets.mjs.map +1 -1
  212. package/build/esm/data/text/items.mjs +108 -0
  213. package/build/esm/data/text/items.mjs.map +1 -1
  214. package/build/esm/data/text/moves.mjs +6 -2
  215. package/build/esm/data/text/moves.mjs.map +1 -1
  216. package/build/esm/sim/battle-actions.mjs +17 -7
  217. package/build/esm/sim/battle-actions.mjs.map +1 -1
  218. package/build/esm/sim/battle-queue.d.mts +11 -6
  219. package/build/esm/sim/battle-queue.mjs.map +1 -1
  220. package/build/esm/sim/battle.d.mts +2 -2
  221. package/build/esm/sim/battle.mjs +23 -28
  222. package/build/esm/sim/battle.mjs.map +1 -1
  223. package/build/esm/sim/dex-conditions.d.mts +2 -1
  224. package/build/esm/sim/dex-conditions.mjs.map +1 -1
  225. package/build/esm/sim/dex-formats.d.mts +2 -0
  226. package/build/esm/sim/dex-formats.mjs +12 -1
  227. package/build/esm/sim/dex-formats.mjs.map +1 -1
  228. package/build/esm/sim/dex-species.d.mts +13 -2
  229. package/build/esm/sim/dex-species.mjs +40 -19
  230. package/build/esm/sim/dex-species.mjs.map +1 -1
  231. package/build/esm/sim/dex.mjs +11 -0
  232. package/build/esm/sim/dex.mjs.map +1 -1
  233. package/build/esm/sim/exported-global-types.d.mts +5 -4
  234. package/build/esm/sim/global-types.d.mts +5 -4
  235. package/build/esm/sim/pokemon.d.mts +6 -4
  236. package/build/esm/sim/pokemon.mjs +31 -24
  237. package/build/esm/sim/pokemon.mjs.map +1 -1
  238. package/build/esm/sim/side.mjs +11 -41
  239. package/build/esm/sim/side.mjs.map +1 -1
  240. package/build/esm/sim/team-validator.d.mts +1 -0
  241. package/build/esm/sim/team-validator.mjs +50 -18
  242. package/build/esm/sim/team-validator.mjs.map +1 -1
  243. package/package.json +2 -2
@@ -33,7 +33,7 @@ exports.Formats = [
33
33
  {
34
34
  name: '[Gen 9] Free-For-All Random Battle',
35
35
  mod: 'gen9',
36
- team: 'random',
36
+ team: 'randomFFA',
37
37
  gameType: 'freeforall',
38
38
  ruleset: [
39
39
  'Obtainable',
@@ -124,11 +124,11 @@ exports.Formats = [
124
124
  'Rufflet', 'Scraggy',
125
125
  'Scyther', 'Sneasel',
126
126
  'Sneasel-Hisui', 'Snivy',
127
- 'Stantler', 'Voltorb-Hisui',
128
- 'Vulpix', 'Vulpix-Alola',
129
- 'Yanma', 'Moody',
130
- 'Heat Rock', 'Baton Pass',
131
- 'Sticky Web'
127
+ 'Stantler', 'Torchic',
128
+ 'Voltorb-Hisui', 'Vulpix',
129
+ 'Vulpix-Alola', 'Yanma',
130
+ 'Moody', 'Heat Rock',
131
+ 'Baton Pass', 'Sticky Web'
132
132
  ]
133
133
  },
134
134
  {
@@ -225,7 +225,7 @@ exports.Formats = [
225
225
  mod: 'gen9',
226
226
  gameType: 'doubles',
227
227
  ruleset: ['Standard Doubles', 'Evasion Abilities Clause'],
228
- banlist: ['DUber', 'Shadow Tag']
228
+ banlist: ['DUber', 'Shadow Tag', 'Commander']
229
229
  },
230
230
  {
231
231
  name: '[Gen 9] Doubles Ubers',
@@ -335,21 +335,6 @@ exports.Formats = [
335
335
  ],
336
336
  restricted: ['Restricted Legendary']
337
337
  },
338
- {
339
- name: '[Gen 9] VGC 2025 Reg I (Bo3)',
340
- mod: 'gen9',
341
- gameType: 'doubles',
342
- ruleset: [
343
- 'Flat Rules',
344
- '!! Adjust Level = 50',
345
- 'Min Source Gen = 9',
346
- 'VGC Timer',
347
- 'Force Open Team Sheets',
348
- 'Best of = 3',
349
- 'Limit Two Restricted'
350
- ],
351
- restricted: ['Restricted Legendary']
352
- },
353
338
  {
354
339
  name: '[Gen 9] VGC 2025 Reg J',
355
340
  mod: 'gen9',
@@ -474,26 +459,20 @@ exports.Formats = [
474
459
  mod: 'gen9',
475
460
  ruleset: ['[Gen 9] Ubers'],
476
461
  banlist: [
477
- 'Arceus-Normal', 'Arceus-Fairy',
478
- 'Arceus-Ghost', 'Arceus-Ground',
479
- 'Arceus-Water', 'Calyrex-Ice',
480
- 'Chien-Pao', 'Deoxys-Attack',
481
- 'Deoxys-Speed', 'Ditto',
482
- 'Dondozo', 'Eternatus',
483
- 'Flutter Mane', 'Giratina-Origin',
484
- 'Glimmora', 'Gliscor',
485
- 'Groudon', 'Hatterene',
486
- 'Ho-Oh', 'Kingambit',
487
- 'Koraidon', 'Kyogre',
488
- 'Kyurem-Black', 'Landorus-Therian',
489
- 'Lunala', 'Miraidon',
490
- 'Necrozma-Dusk-Mane', 'Rayquaza',
491
- 'Ribombee', 'Skeledirge',
492
- 'Terapagos', 'Ting-Lu',
493
- 'Zacian-Crowned', 'Arceus-Dragon',
494
- 'Arceus-Fire', 'Arceus-Flying',
495
- 'Arceus-Steel', 'Necrozma-Dawn-Wings',
496
- 'Shaymin-Sky', 'Spectrier',
462
+ 'Arceus-Normal', 'Arceus-Fairy', 'Arceus-Ghost',
463
+ 'Arceus-Ground', 'Arceus-Water', 'Calyrex-Ice',
464
+ 'Chien-Pao', 'Deoxys-Attack', 'Deoxys-Speed',
465
+ 'Ditto', 'Dondozo', 'Eternatus',
466
+ 'Flutter Mane', 'Giratina', 'Giratina-Origin',
467
+ 'Glimmora', 'Gliscor', 'Grimmsnarl',
468
+ 'Groudon', 'Hatterene', 'Ho-Oh',
469
+ 'Kingambit', 'Koraidon', 'Kyogre',
470
+ 'Kyurem-Black', 'Landorus-Therian', 'Lunala',
471
+ 'Necrozma-Dusk-Mane', 'Rayquaza', 'Regieleki',
472
+ 'Ribombee', 'Skeledirge', 'Terapagos',
473
+ 'Ting-Lu', 'Zacian-Crowned', 'Arceus-Dragon',
474
+ 'Arceus-Fire', 'Arceus-Flying', 'Arceus-Steel',
475
+ 'Necrozma-Dawn-Wings', 'Shaymin-Sky', 'Spectrier',
497
476
  'Zacian', 'Zekrom'
498
477
  ]
499
478
  },
@@ -501,7 +480,7 @@ exports.Formats = [
501
480
  name: '[Gen 9] ZU',
502
481
  mod: 'gen9',
503
482
  ruleset: ['[Gen 9] PU'],
504
- banlist: ['PU', 'ZUBL', 'Unburden']
483
+ banlist: ['PU', 'ZUBL', 'Unburden', 'Heat Rock']
505
484
  },
506
485
  {
507
486
  name: '[Gen 9] Free-For-All',
@@ -545,14 +524,16 @@ exports.Formats = [
545
524
  'Elekid', 'Foongus',
546
525
  'Glimmet', 'Gothita',
547
526
  'Grookey', 'Growlithe-Hisui',
548
- 'Mareanie', 'Mienfoo',
549
- 'Mudbray', 'Pawniard',
527
+ 'Larvesta', 'Mareanie',
528
+ 'Mienfoo', 'Mudbray',
529
+ 'Munchlax', 'Pawniard',
550
530
  'Sandshrew-Alola', 'Shellder',
551
531
  'Shellos', 'Shroodle',
552
- 'Snubbull', 'Stunky',
553
- 'Tinkatink', 'Toedscool',
554
- 'Torchic', 'Vullaby',
555
- 'Wingull', 'Deerling',
532
+ 'Snover', 'Stunky',
533
+ 'Timburr', 'Tinkatink',
534
+ 'Toedscool', 'Trapinch',
535
+ 'Vullaby', 'Wingull',
536
+ 'Zorua-Hisui', 'Deerling',
556
537
  'Minccino'
557
538
  ]
558
539
  },
@@ -659,6 +640,42 @@ exports.Formats = [
659
640
  'EV limit = 510'
660
641
  ]
661
642
  },
643
+ {
644
+ name: '[Gen 8] Balanced Hackmons',
645
+ mod: 'gen8',
646
+ ruleset: [
647
+ '-Nonexistent',
648
+ 'OHKO Clause',
649
+ 'Evasion Moves Clause',
650
+ 'Forme Clause',
651
+ 'Team Preview',
652
+ 'HP Percentage Mod',
653
+ 'Cancel Mod',
654
+ 'Dynamax Clause',
655
+ 'Sleep Moves Clause',
656
+ 'Endless Battle Clause'
657
+ ],
658
+ banlist: [
659
+ 'Calyrex-Shadow', 'Cramorant-Gorging',
660
+ 'Darmanitan-Galar-Zen', 'Eternatus-Eternamax',
661
+ 'Shedinja', 'Zacian-Crowned',
662
+ 'Arena Trap', 'Contrary',
663
+ 'Gorilla Tactics', 'Huge Power',
664
+ 'Illusion', 'Innards Out',
665
+ 'Intrepid Sword', 'Libero',
666
+ 'Magnet Pull', 'Moody',
667
+ 'Neutralizing Gas', 'Parental Bond',
668
+ 'Protean', 'Pure Power',
669
+ 'Shadow Tag', 'Stakeout',
670
+ 'Water Bubble', 'Wonder Guard',
671
+ 'Comatose + Sleep Talk', 'Rusted Sword',
672
+ 'Belly Drum', 'Bolt Beak',
673
+ 'Court Change', 'Double Iron Bash',
674
+ 'Octolock', 'Shell Smash',
675
+ 'Transform'
676
+ ],
677
+ unbanlist: ['Acupressure']
678
+ },
662
679
  {
663
680
  name: '[Gen 9] National Dex',
664
681
  mod: 'gen9',
@@ -815,20 +832,21 @@ exports.Formats = [
815
832
  ruleset: ['[Gen 9] National Dex Ubers'],
816
833
  banlist: [
817
834
  'Arceus-Normal', 'Arceus-Dark', 'Arceus-Ground',
818
- 'Calyrex-Ice', 'Deoxys-Attack', 'Deoxys-Speed',
819
- 'Dondozo', 'Eternatus', 'Giratina-Origin',
820
- 'Groudon-Primal', 'Ho-Oh', 'Kyogre-Primal',
835
+ 'Calyrex-Ice', 'Chansey', 'Deoxys-Attack',
836
+ 'Deoxys-Speed', 'Ditto', 'Dondozo',
837
+ 'Eternatus', 'Giratina-Origin', 'Groudon-Primal',
838
+ 'Hatterene', 'Ho-Oh', 'Kyogre-Primal',
821
839
  'Lunala', 'Marshadow', 'Melmetal',
822
840
  'Mewtwo-Mega-Y', 'Necrozma-Dusk-Mane', 'Necrozma-Ultra',
823
- 'Salamence-Mega', 'Smeargle', 'Terapagos',
824
- 'Yveltal', 'Zacian-Crowned', 'Zygarde-50%',
825
- 'Arceus-Dragon', 'Arceus-Fairy', 'Arceus-Fire',
826
- 'Arceus-Flying', 'Arceus-Ghost', 'Arceus-Water',
827
- 'Blaziken-Mega', 'Chi-Yu', 'Flutter Mane',
828
- 'Groudon', 'Kyogre', 'Kyurem-Black',
829
- 'Rayquaza', 'Shaymin-Sky', 'Zacian',
830
- 'Zekrom', 'Power Construct', 'Light Clay',
831
- 'Ultranecrozium Z', 'Last Respects'
841
+ 'Salamence-Mega', 'Smeargle', 'Yveltal',
842
+ 'Zacian-Crowned', 'Zygarde-50%', 'Arceus-Dragon',
843
+ 'Arceus-Fairy', 'Arceus-Fire', 'Arceus-Flying',
844
+ 'Arceus-Ghost', 'Arceus-Water', 'Blaziken-Mega',
845
+ 'Chi-Yu', 'Chien-Pao', 'Dracovish',
846
+ 'Flutter Mane', 'Groudon', 'Kyogre',
847
+ 'Kyurem-Black', 'Rayquaza', 'Shaymin-Sky',
848
+ 'Zacian', 'Zekrom', 'Power Construct',
849
+ 'Light Clay', 'Ultranecrozium Z', 'Last Respects'
832
850
  ]
833
851
  },
834
852
  {
@@ -851,22 +869,23 @@ exports.Formats = [
851
869
  'Arceus', 'Archaludon', 'Blastoise-Mega',
852
870
  'Calyrex-Ice', 'Calyrex-Shadow', 'Chi-Yu',
853
871
  'Deoxys-Normal', 'Deoxys-Attack', 'Deoxys-Defense',
854
- 'Dialga', 'Dialga-Origin', 'Eternatus',
855
- 'Flutter Mane', 'Giratina', 'Giratina-Origin',
856
- 'Gouging Fire', 'Groudon', 'Ho-Oh',
857
- 'Jirachi', 'Kangaskhan-Mega', 'Koraidon',
858
- 'Kyogre', 'Kyurem-Black', 'Kyurem-White',
859
- 'Lugia', 'Lunala', 'Marshadow',
860
- 'Metagross-Mega', 'Mew', 'Mewtwo',
861
- 'Mimikyu', 'Miraidon', 'Necrozma-Dawn-Wings',
862
- 'Necrozma-Dusk-Mane', 'Ogerpon-Cornerstone', 'Palkia',
863
- 'Palkia-Origin', 'Rayquaza', 'Reshiram',
864
- 'Salamence-Mega', 'Shaymin-Sky', 'Snorlax',
865
- 'Solgaleo', 'Terapagos', 'Xerneas',
866
- 'Yveltal', 'Zacian', 'Zacian-Crowned',
867
- 'Zamazenta', 'Zamazenta-Crowned', 'Zekrom',
868
- 'Moody', 'Focus Band', 'Focus Sash',
869
- 'Fightinium Z + Detect', 'Perish Song'
872
+ 'Dialga', 'Dialga-Origin', 'Dragonite',
873
+ 'Eternatus', 'Flutter Mane', 'Giratina',
874
+ 'Giratina-Origin', 'Gouging Fire', 'Groudon',
875
+ 'Ho-Oh', 'Jirachi', 'Kangaskhan-Mega',
876
+ 'Koraidon', 'Kyogre', 'Kyurem-Black',
877
+ 'Kyurem-White', 'Lugia', 'Lunala',
878
+ 'Marshadow', 'Melmetal', 'Metagross-Mega',
879
+ 'Mew', 'Mewtwo', 'Mimikyu',
880
+ 'Miraidon', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane',
881
+ 'Ogerpon-Cornerstone', 'Palkia', 'Palkia-Origin',
882
+ 'Rayquaza', 'Reshiram', 'Salamence-Mega',
883
+ 'Shaymin-Sky', 'Snorlax', 'Solgaleo',
884
+ 'Terapagos', 'Xerneas', 'Yveltal',
885
+ 'Zacian', 'Zacian-Crowned', 'Zamazenta',
886
+ 'Zamazenta-Crowned', 'Zekrom', 'Moody',
887
+ 'Focus Band', 'Focus Sash', 'Fightinium Z + Detect',
888
+ 'Perish Song'
870
889
  ]
871
890
  },
872
891
  {
@@ -947,19 +966,6 @@ exports.Formats = [
947
966
  'Baton Pass'
948
967
  ]
949
968
  },
950
- {
951
- name: '[Gen 9] Random Battle (Hyperblitz, Auto Choose)',
952
- mod: 'gen9',
953
- team: 'random',
954
- bestOfDefault: true,
955
- ruleset: [
956
- '[Gen 9] Random Battle (Blitz)',
957
- '!! Timer Starting = 900',
958
- '!! Timer Add Per Turn = 10',
959
- '!! Timer Max Per Turn = 10',
960
- 'Timeout Auto Choose'
961
- ]
962
- },
963
969
  {
964
970
  name: '[Gen 9] Monotype Random Battle',
965
971
  mod: 'gen9',
@@ -995,20 +1001,6 @@ exports.Formats = [
995
1001
  'Illusion Level Mod'
996
1002
  ]
997
1003
  },
998
- {
999
- name: '[Gen 9] Computer-Generated Teams',
1000
- mod: 'gen9',
1001
- team: 'computerGenerated',
1002
- bestOfDefault: true,
1003
- ruleset: [
1004
- 'Obtainable',
1005
- 'Species Clause',
1006
- 'HP Percentage Mod',
1007
- 'Cancel Mod',
1008
- 'Sleep Clause Mod',
1009
- 'Illusion Level Mod'
1010
- ]
1011
- },
1012
1004
  {
1013
1005
  name: '[Gen 9] Hackmons Cup',
1014
1006
  mod: 'gen9',
@@ -1258,33 +1250,24 @@ exports.Formats = [
1258
1250
  ]
1259
1251
  },
1260
1252
  {
1261
- name: '[Gen 5] UU',
1262
- mod: 'gen5',
1263
- ruleset: ['Standard', 'Evasion Abilities Clause', 'Swagger Clause', 'Sleep Clause Mod'],
1264
- banlist: [
1265
- 'Uber',
1266
- 'OU',
1267
- 'UUBL',
1268
- 'Arena Trap',
1269
- 'Drought',
1270
- 'Sand Stream',
1271
- 'Snow Warning',
1272
- 'Prankster + Assist',
1273
- 'Prankster + Copycat',
1274
- 'Baton Pass'
1275
- ]
1253
+ name: '[Gen 7] UU',
1254
+ mod: 'gen7',
1255
+ ruleset: ['[Gen 7] OU'],
1256
+ banlist: ['OU', 'UUBL', 'Drizzle', 'Drought', 'Kommonium Z', 'Mewnium Z']
1276
1257
  },
1277
1258
  {
1278
- name: '[Gen 1] UU',
1279
- mod: 'gen1',
1280
- ruleset: ['[Gen 1] OU'],
1281
- banlist: ['OU', 'UUBL', 'Bind', 'Clamp', 'Fire Spin', 'Wrap']
1259
+ name: '[Gen 5] VGC 2013',
1260
+ mod: 'gen5',
1261
+ gameType: 'doubles',
1262
+ bestOfDefault: true,
1263
+ ruleset: ['Flat Rules'],
1264
+ banlist: ['Chatot', 'Dark Void', 'Sky Drop', 'Soul Dew']
1282
1265
  },
1283
1266
  {
1284
- name: '[Gen 6] ZU',
1285
- mod: 'gen6',
1286
- ruleset: ['[Gen 6] PU'],
1287
- banlist: ['PU', 'ZUBL', 'Light Clay']
1267
+ name: '[Gen 8] ZU',
1268
+ mod: 'gen8',
1269
+ ruleset: ['[Gen 8] PU'],
1270
+ banlist: ['PU', 'ZUBL', 'Damp Rock', 'Grassy Seed']
1288
1271
  },
1289
1272
  {
1290
1273
  name: '[Gen 8] OU',
@@ -1312,8 +1295,17 @@ exports.Formats = [
1312
1295
  {
1313
1296
  name: '[Gen 6] OU',
1314
1297
  mod: 'gen6',
1315
- ruleset: ['Standard', 'Swagger Clause'],
1316
- banlist: ['Uber', 'Arena Trap', 'Shadow Tag', 'Soul Dew', 'Baton Pass']
1298
+ ruleset: ['Standard', 'Evasion Abilities Clause', 'Swagger Clause'],
1299
+ banlist: [
1300
+ 'Uber',
1301
+ 'Arena Trap',
1302
+ 'Shadow Tag',
1303
+ "King's Rock",
1304
+ 'Quick Claw',
1305
+ 'Razor Fang',
1306
+ 'Soul Dew',
1307
+ 'Baton Pass'
1308
+ ]
1317
1309
  },
1318
1310
  {
1319
1311
  name: '[Gen 5] OU',
@@ -1353,7 +1345,13 @@ exports.Formats = [
1353
1345
  {
1354
1346
  name: '[Gen 3] OU',
1355
1347
  mod: 'gen3',
1356
- ruleset: ['Standard', 'One Boost Passer Clause', 'Freeze Clause Mod'],
1348
+ ruleset: [
1349
+ 'Standard',
1350
+ 'One Boost Passer Clause',
1351
+ 'Accuracy Trap Clause',
1352
+ 'Freeze Clause Mod',
1353
+ 'Speed Pass Clause'
1354
+ ],
1357
1355
  banlist: [
1358
1356
  'Uber',
1359
1357
  'Smeargle + Ingrain',
@@ -1399,14 +1397,14 @@ exports.Formats = [
1399
1397
  mod: 'gen5',
1400
1398
  gameType: 'doubles',
1401
1399
  ruleset: ['Standard', 'Evasion Abilities Clause', 'Swagger Clause', 'Sleep Clause Mod'],
1402
- banlist: ['DUber', 'Soul Dew', 'Dark Void', 'Gravity']
1400
+ banlist: ['DUber', 'Shadow Tag', 'Soul Dew', 'Dark Void', 'Gravity']
1403
1401
  },
1404
1402
  {
1405
1403
  name: '[Gen 4] Doubles OU',
1406
1404
  mod: 'gen4',
1407
1405
  gameType: 'doubles',
1408
1406
  ruleset: ['Standard', 'Evasion Abilities Clause'],
1409
- banlist: ['AG', 'Uber', 'Soul Dew', 'Dark Void', 'Thunder Wave'],
1407
+ banlist: ['AG', 'Uber', 'Soul Dew', 'Dark Void', 'Swagger', 'Thunder Wave'],
1410
1408
  unbanlist: ['Machamp', 'Manaphy', 'Mew', 'Salamence', 'Wobbuffet', 'Wynaut']
1411
1409
  },
1412
1410
  {
@@ -1526,12 +1524,6 @@ exports.Formats = [
1526
1524
  'Endless Battle Clause'
1527
1525
  ]
1528
1526
  },
1529
- {
1530
- name: '[Gen 8] ZU',
1531
- mod: 'gen8',
1532
- ruleset: ['[Gen 8] PU'],
1533
- banlist: ['PU', 'ZUBL', 'Damp Rock', 'Grassy Seed']
1534
- },
1535
1527
  {
1536
1528
  name: '[Gen 8] CAP',
1537
1529
  mod: 'gen8',
@@ -1621,12 +1613,6 @@ exports.Formats = [
1621
1613
  ruleset: ['Standard', 'Mega Rayquaza Clause'],
1622
1614
  banlist: ['Baton Pass']
1623
1615
  },
1624
- {
1625
- name: '[Gen 7] UU',
1626
- mod: 'gen7',
1627
- ruleset: ['[Gen 7] OU'],
1628
- banlist: ['OU', 'UUBL', 'Drizzle', 'Drought', 'Kommonium Z', 'Mewnium Z']
1629
- },
1630
1616
  {
1631
1617
  name: '[Gen 7] RU',
1632
1618
  mod: 'gen7',
@@ -1653,10 +1639,11 @@ exports.Formats = [
1653
1639
  'Porygon', 'Scyther',
1654
1640
  'Sneasel', 'Swirlix',
1655
1641
  'Tangela', 'Trapinch',
1656
- 'Vulpix-Base', 'Wingull',
1657
- 'Yanma', 'Eevium Z',
1658
- 'Baton Pass', 'Dragon Rage',
1659
- 'Sonic Boom', 'Sticky Web'
1642
+ 'Vulpix-Base', 'Vulpix-Alola',
1643
+ 'Wingull', 'Yanma',
1644
+ 'Eevium Z', 'Baton Pass',
1645
+ 'Dragon Rage', 'Sonic Boom',
1646
+ 'Sticky Web'
1660
1647
  ]
1661
1648
  },
1662
1649
  {
@@ -1836,8 +1823,14 @@ exports.Formats = [
1836
1823
  {
1837
1824
  name: '[Gen 6] UU',
1838
1825
  mod: 'gen6',
1839
- ruleset: ['[Gen 6] OU'],
1840
- banlist: ['OU', 'UUBL', 'Drizzle', 'Drought']
1826
+ ruleset: ['Standard', 'Swagger Clause'],
1827
+ banlist: [
1828
+ 'Uber', 'OU',
1829
+ 'UUBL', 'Arena Trap',
1830
+ 'Drizzle', 'Drought',
1831
+ 'Shadow Tag', 'Soul Dew',
1832
+ 'Baton Pass'
1833
+ ]
1841
1834
  },
1842
1835
  { name: '[Gen 6] RU', mod: 'gen6', ruleset: ['[Gen 6] UU'], banlist: ['UU', 'RUBL'] },
1843
1836
  { name: '[Gen 6] NU', mod: 'gen6', ruleset: ['[Gen 6] RU'], banlist: ['RU', 'NUBL'] },
@@ -1934,6 +1927,12 @@ exports.Formats = [
1934
1927
  'Cancel Mod'
1935
1928
  ]
1936
1929
  },
1930
+ {
1931
+ name: '[Gen 6] ZU',
1932
+ mod: 'gen6',
1933
+ ruleset: ['[Gen 6] PU'],
1934
+ banlist: ['PU', 'ZUBL', 'Light Clay']
1935
+ },
1937
1936
  {
1938
1937
  name: '[Gen 6] CAP',
1939
1938
  mod: 'gen6',
@@ -2029,6 +2028,23 @@ exports.Formats = [
2029
2028
  ]
2030
2029
  },
2031
2030
  { name: '[Gen 5] Ubers', mod: 'gen5', ruleset: ['Standard', 'Sleep Clause Mod'] },
2031
+ {
2032
+ name: '[Gen 5] UU',
2033
+ mod: 'gen5',
2034
+ ruleset: ['Standard', 'Evasion Abilities Clause', 'Swagger Clause', 'Sleep Clause Mod'],
2035
+ banlist: [
2036
+ 'Uber',
2037
+ 'OU',
2038
+ 'UUBL',
2039
+ 'Arena Trap',
2040
+ 'Drought',
2041
+ 'Sand Stream',
2042
+ 'Snow Warning',
2043
+ 'Prankster + Assist',
2044
+ 'Prankster + Copycat',
2045
+ 'Baton Pass'
2046
+ ]
2047
+ },
2032
2048
  {
2033
2049
  name: '[Gen 5] RU',
2034
2050
  mod: 'gen5',
@@ -2151,14 +2167,6 @@ exports.Formats = [
2151
2167
  'Default Level = 100'
2152
2168
  ]
2153
2169
  },
2154
- {
2155
- name: '[Gen 5] VGC 2013',
2156
- mod: 'gen5',
2157
- gameType: 'doubles',
2158
- bestOfDefault: true,
2159
- ruleset: ['Flat Rules'],
2160
- banlist: ['Chatot', 'Dark Void', 'Sky Drop', 'Soul Dew']
2161
- },
2162
2170
  {
2163
2171
  name: '[Gen 5] Doubles Custom Game',
2164
2172
  mod: 'gen5',
@@ -2302,14 +2310,6 @@ exports.Formats = [
2302
2310
  'Default Level = 100'
2303
2311
  ]
2304
2312
  },
2305
- // {
2306
- // name: '[Gen 4] VGC 2010',
2307
- // mod: 'gen4',
2308
- // gameType: 'doubles',
2309
- // ruleset: [ 'Flat Rules', 'Limit Two Restricted' ],
2310
- // restricted: [ 'Restricted Legendary' ],
2311
- // banlist: [ 'Soul Dew' ]
2312
- // },
2313
2313
  {
2314
2314
  name: '[Gen 4] Doubles Custom Game',
2315
2315
  mod: 'gen4',
@@ -2340,6 +2340,7 @@ exports.Formats = [
2340
2340
  'UUBL',
2341
2341
  'UU',
2342
2342
  'RUBL',
2343
+ 'Glalie',
2343
2344
  'Smeargle + Ingrain',
2344
2345
  'Arena Trap',
2345
2346
  'Baton Pass',
@@ -2356,18 +2357,23 @@ exports.Formats = [
2356
2357
  name: '[Gen 3] NU',
2357
2358
  mod: 'gen3',
2358
2359
  ruleset: ['Standard'],
2359
- banlist: ['Uber', 'OU', 'UUBL', 'UU', 'RUBL', 'RU', 'Smeargle + Ingrain']
2360
+ banlist: ['Uber', 'OU', 'UUBL', 'UU', 'RUBL', 'RU', 'NUBL', 'Smeargle + Ingrain']
2360
2361
  },
2361
2362
  {
2362
2363
  name: '[Gen 3] PU',
2363
2364
  mod: 'gen3',
2364
2365
  ruleset: ['Standard', 'Baton Pass Stat Clause'],
2365
2366
  banlist: [
2366
- 'Uber', 'OU',
2367
- 'UUBL', 'UU',
2368
- 'RUBL', 'RU',
2369
- 'NUBL', 'NU',
2370
- 'PUBL'
2367
+ 'Uber',
2368
+ 'OU',
2369
+ 'UUBL',
2370
+ 'UU',
2371
+ 'RUBL',
2372
+ 'RU',
2373
+ 'NUBL',
2374
+ 'NU',
2375
+ 'PUBL',
2376
+ 'Baton Pass + Substitute'
2371
2377
  ]
2372
2378
  },
2373
2379
  {
@@ -2414,7 +2420,7 @@ exports.Formats = [
2414
2420
  {
2415
2421
  name: '[Gen 3] UUBL',
2416
2422
  mod: 'gen3',
2417
- ruleset: ['[Gen 3] OU'],
2423
+ ruleset: ['[Gen 3] OU', '!Accuracy Trap Clause'],
2418
2424
  banlist: [
2419
2425
  'OU',
2420
2426
  'Smeargle + Ingrain',
@@ -2541,6 +2547,12 @@ exports.Formats = [
2541
2547
  ]
2542
2548
  },
2543
2549
  { name: '[Gen 1] Ubers', mod: 'gen1', ruleset: ['Standard'] },
2550
+ {
2551
+ name: '[Gen 1] UU',
2552
+ mod: 'gen1',
2553
+ ruleset: ['[Gen 1] OU'],
2554
+ banlist: ['OU', 'UUBL', 'Bind', 'Clamp', 'Confuse Ray', 'Fire Spin', 'Supersonic', 'Wrap']
2555
+ },
2544
2556
  { name: '[Gen 1] NU', mod: 'gen1', ruleset: ['[Gen 1] UU'], banlist: ['UU', 'NUBL'] },
2545
2557
  { name: '[Gen 1] PU', mod: 'gen1', ruleset: ['[Gen 1] NU'], banlist: ['NU', 'PUBL'] },
2546
2558
  { name: '[Gen 1] ZU', mod: 'gen1', ruleset: ['[Gen 1] PU'], banlist: ['PU', 'ZUBL'] },