@pkmn/sim 0.5.22 → 0.5.25

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 (86) hide show
  1. package/LICENSE +1 -1
  2. package/build/config/formats.js +581 -481
  3. package/build/config/formats.js.map +1 -1
  4. package/build/data/aliases.js +9 -5
  5. package/build/data/aliases.js.map +1 -1
  6. package/build/data/conditions.js +1 -1
  7. package/build/data/conditions.js.map +1 -1
  8. package/build/data/formats-data.js +830 -28
  9. package/build/data/formats-data.js.map +1 -1
  10. package/build/data/learnsets.js +64 -39
  11. package/build/data/learnsets.js.map +1 -1
  12. package/build/data/mods/gen1/formats-data.js +1 -1
  13. package/build/data/mods/gen1/formats-data.js.map +1 -1
  14. package/build/data/mods/gen1/moves.js +5 -0
  15. package/build/data/mods/gen1/moves.js.map +1 -1
  16. package/build/data/mods/gen1/scripts.js +4 -2
  17. package/build/data/mods/gen1/scripts.js.map +1 -1
  18. package/build/data/mods/gen2/moves.js +0 -5
  19. package/build/data/mods/gen2/moves.js.map +1 -1
  20. package/build/data/mods/gen2/rulesets.js +7 -1
  21. package/build/data/mods/gen2/rulesets.js.map +1 -1
  22. package/build/data/mods/gen3/formats-data.js +3 -3
  23. package/build/data/mods/gen3/formats-data.js.map +1 -1
  24. package/build/data/mods/gen3/rulesets.js +1 -1
  25. package/build/data/mods/gen3/rulesets.js.map +1 -1
  26. package/build/data/mods/gen4/rulesets.js +1 -1
  27. package/build/data/mods/gen4/rulesets.js.map +1 -1
  28. package/build/data/mods/gen5/rulesets.js +1 -1
  29. package/build/data/mods/gen5/rulesets.js.map +1 -1
  30. package/build/data/mods/gen6/formats-data.js +64 -64
  31. package/build/data/mods/gen6/formats-data.js.map +1 -1
  32. package/build/data/mods/gen7/rulesets.js +1 -1
  33. package/build/data/mods/gen7/rulesets.js.map +1 -1
  34. package/build/data/pokedex.js +1 -1
  35. package/build/data/rulesets.js +232 -3
  36. package/build/data/rulesets.js.map +1 -1
  37. package/build/data/tags.js +26 -9
  38. package/build/data/tags.js.map +1 -1
  39. package/build/lib/utils.d.ts +4 -0
  40. package/build/lib/utils.js +20 -1
  41. package/build/lib/utils.js.map +1 -1
  42. package/build/sim/battle-stream.js +3 -0
  43. package/build/sim/battle-stream.js.map +1 -1
  44. package/build/sim/battle.d.ts +1 -1
  45. package/build/sim/battle.js.map +1 -1
  46. package/build/sim/dex-conditions.d.ts +1 -0
  47. package/build/sim/dex-conditions.js.map +1 -1
  48. package/build/sim/dex-species.d.ts +5 -0
  49. package/build/sim/dex-species.js +11 -3
  50. package/build/sim/dex-species.js.map +1 -1
  51. package/build/sim/exported-global-types.d.ts +4 -0
  52. package/build/sim/global-types.d.ts +4 -0
  53. package/build/sim/pokemon.d.ts +1 -0
  54. package/build/sim/pokemon.js +1 -0
  55. package/build/sim/pokemon.js.map +1 -1
  56. package/build/sim/team-validator.js +5 -1
  57. package/build/sim/team-validator.js.map +1 -1
  58. package/config/formats.ts +575 -466
  59. package/data/aliases.ts +9 -5
  60. package/data/conditions.ts +1 -1
  61. package/data/formats-data.ts +830 -28
  62. package/data/learnsets.ts +64 -39
  63. package/data/mods/gen1/formats-data.ts +1 -1
  64. package/data/mods/gen1/moves.ts +5 -0
  65. package/data/mods/gen1/scripts.ts +3 -2
  66. package/data/mods/gen2/moves.ts +0 -5
  67. package/data/mods/gen2/rulesets.ts +8 -1
  68. package/data/mods/gen3/formats-data.ts +3 -3
  69. package/data/mods/gen3/rulesets.ts +1 -1
  70. package/data/mods/gen4/rulesets.ts +1 -1
  71. package/data/mods/gen5/rulesets.ts +1 -1
  72. package/data/mods/gen6/formats-data.ts +64 -64
  73. package/data/mods/gen7/rulesets.ts +1 -1
  74. package/data/pokedex.ts +1 -1
  75. package/data/rulesets.ts +212 -3
  76. package/data/tags.ts +27 -9
  77. package/lib/utils.ts +16 -0
  78. package/package.json +2 -2
  79. package/sim/battle-stream.ts +3 -0
  80. package/sim/battle.ts +1 -1
  81. package/sim/dex-conditions.ts +1 -0
  82. package/sim/dex-species.ts +15 -3
  83. package/sim/exported-global-types.ts +4 -0
  84. package/sim/global-types.ts +4 -0
  85. package/sim/pokemon.ts +2 -0
  86. package/sim/team-validator.ts +6 -1
package/data/learnsets.ts CHANGED
@@ -3285,7 +3285,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
3285
3285
  drainingkiss: ["8M"],
3286
3286
  electricterrain: ["8M"],
3287
3287
  electroball: ["8M", "8L12"],
3288
- electroweb: ["8M", "8S0"],
3288
+ electroweb: ["8M", "8S1", "8S0"],
3289
3289
  encore: ["8M"],
3290
3290
  endure: ["8M"],
3291
3291
  facade: ["8M"],
@@ -3296,7 +3296,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
3296
3296
  grassknot: ["8M"],
3297
3297
  growl: ["8L1"],
3298
3298
  helpinghand: ["8M"],
3299
- irontail: ["8M", "8S0"],
3299
+ irontail: ["8M", "8S1", "8S0"],
3300
3300
  lightscreen: ["8M", "8L40"],
3301
3301
  megakick: ["8M"],
3302
3302
  megapunch: ["8M"],
@@ -3307,7 +3307,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
3307
3307
  playrough: ["8M"],
3308
3308
  present: ["8E"],
3309
3309
  protect: ["8M"],
3310
- quickattack: ["8L1", "8S0"],
3310
+ quickattack: ["8L1", "8S1", "8S0"],
3311
3311
  raindance: ["8M"],
3312
3312
  reflect: ["8M"],
3313
3313
  rest: ["8M"],
@@ -3325,7 +3325,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
3325
3325
  tailwhip: ["8L1"],
3326
3326
  thief: ["8M"],
3327
3327
  thunder: ["8M", "8L44"],
3328
- thunderbolt: ["8M", "8L36", "8S0"],
3328
+ thunderbolt: ["8M", "8L36", "8S1", "8S0"],
3329
3329
  thunderpunch: ["8M"],
3330
3330
  thundershock: ["8L1"],
3331
3331
  thunderwave: ["8M", "8L4"],
@@ -3337,7 +3337,8 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
3337
3337
  wish: ["8E"],
3338
3338
  },
3339
3339
  eventData: [
3340
- {generation: 8, level: 25, nature: "Hardy", isHidden: false, moves: ["thunderbolt", "quickattack", "irontail", "electroweb", "volttackle"], pokeball: "pokeball"},
3340
+ {generation: 8, level: 25, nature: "Hardy", moves: ["thunderbolt", "quickattack", "irontail", "electroweb", "volttackle"], pokeball: "pokeball"},
3341
+ {generation: 8, level: 80, nature: "Hardy", ivs: {hp: 31, atk: 30, def: 30, spa: 31, spd: 30, spe: 31}, moves: ["thunderbolt", "quickattack", "irontail", "electroweb"], pokeball: "pokeball"},
3341
3342
  ],
3342
3343
  eventOnly: true,
3343
3344
  },
@@ -4693,7 +4694,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
4693
4694
  flash: ["7V", "6M", "5M", "4M", "3M"],
4694
4695
  fling: ["8M", "7M", "6M", "5M", "4M"],
4695
4696
  focuspunch: ["7T", "6T", "4M", "3M"],
4696
- followme: ["8L36", "7L16", "6L16", "5L16", "4L16", "3L17"],
4697
+ followme: ["8L36", "8S0", "7L16", "6L16", "5L16", "4L16", "3L17"],
4697
4698
  frustration: ["7M", "7V", "6M", "5M", "4M", "3M"],
4698
4699
  grassknot: ["8M", "7M", "6M", "5M", "4M"],
4699
4700
  gravity: ["8L28", "7T", "7L49", "6T", "6L49", "5T", "5L37", "4T", "4L34"],
@@ -4701,12 +4702,12 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
4701
4702
  headbutt: ["8V", "7V", "4T"],
4702
4703
  healbell: ["7T", "6T", "5T", "4T"],
4703
4704
  healingwish: ["8L48", "7L55", "6L1", "5L49", "4L46"],
4704
- helpinghand: ["8M", "8V", "7T", "6T", "5T", "4T"],
4705
+ helpinghand: ["8M", "8V", "8S0", "7T", "6T", "5T", "4T"],
4705
4706
  hiddenpower: ["7M", "7V", "6M", "5M", "4M", "3M"],
4706
4707
  hypervoice: ["8M", "7T", "6T", "5T"],
4707
4708
  icebeam: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
4708
4709
  icepunch: ["8M", "8V", "7T", "7V", "6T", "5T", "4T", "3T"],
4709
- icywind: ["8M", "7T", "6T", "5T", "4T"],
4710
+ icywind: ["8M", "8S0", "7T", "6T", "5T", "4T"],
4710
4711
  imprison: ["8M"],
4711
4712
  incinerate: ["6M", "5M"],
4712
4713
  irontail: ["8M", "8V", "7T", "7V", "6T", "5T", "4M", "3M"],
@@ -4735,7 +4736,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
4735
4736
  playrough: ["8M", "8V"],
4736
4737
  pound: ["8L1", "8V", "7L1", "7V", "6L1", "5L1", "4L1", "3L1"],
4737
4738
  poweruppunch: ["6M"],
4738
- protect: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
4739
+ protect: ["8M", "8V", "8S0", "7M", "7V", "6M", "5M", "4M", "3M"],
4739
4740
  psychic: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
4740
4741
  psychup: ["7M", "7V", "6M", "5M", "4M", "3T"],
4741
4742
  psyshock: ["8M", "7M", "6M", "5M"],
@@ -4793,6 +4794,9 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
4793
4794
  zapcannon: ["7V"],
4794
4795
  zenheadbutt: ["8M", "7T", "6T", "5T", "4T"],
4795
4796
  },
4797
+ eventData: [
4798
+ {generation: 8, level: 50, gender: "F", shiny: true, nature: "Bold", isHidden: true, ivs: {hp: 31, atk: 0, def: 31, spa: 31, spd: 31, spe: 31}, moves: ["followme", "icywind", "helpinghand", "protect"], pokeball: "cherishball"},
4799
+ ],
4796
4800
  encounters: [
4797
4801
  {generation: 1, level: 8},
4798
4802
  ],
@@ -20724,10 +20728,10 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
20724
20728
  dive: ["8M", "6M", "5M", "4T", "3M"],
20725
20729
  doubleedge: ["7V", "3T"],
20726
20730
  doubleteam: ["7M", "7V", "6M", "5M", "4M", "3M"],
20727
- dracometeor: ["8T", "7T", "6T", "5T", "4T", "4S2"],
20731
+ dracometeor: ["8T", "8S9", "7T", "6T", "5T", "4T", "4S2"],
20728
20732
  dragonbreath: ["7V"],
20729
- dragonclaw: ["8M", "7M", "6M", "5M", "4M", "3M"],
20730
- dragondance: ["8M", "8L62", "7L61", "6L61", "6S7", "5L61", "5S3", "4L53", "4S2", "3S1"],
20733
+ dragonclaw: ["8M", "8S9", "7M", "6M", "5M", "4M", "3M"],
20734
+ dragondance: ["8M", "8L62", "8S9", "7L61", "6L61", "6S7", "5L61", "5S3", "4L53", "4S2", "3S1"],
20731
20735
  dragonpulse: ["8M", "8V", "7T", "6T", "5T", "4M"],
20732
20736
  dragonrage: ["8V", "7L15", "7V", "6L15", "5L15", "4L15", "3L22"],
20733
20737
  dragonrush: ["8L39", "7L47", "6L47", "5L47", "5S4", "5S5", "4L39"],
@@ -20756,7 +20760,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
20756
20760
  hiddenpower: ["7M", "7V", "6M", "5M", "4M", "3M"],
20757
20761
  honeclaws: ["6M", "5M"],
20758
20762
  horndrill: ["7V"],
20759
- hurricane: ["8M", "8L0", "7L1", "6L1", "6S7", "5L81"],
20763
+ hurricane: ["8M", "8L0", "8S9", "7L1", "6L1", "6S7", "5L81"],
20760
20764
  hydropump: ["8M"],
20761
20765
  hyperbeam: ["8M", "8L80", "8V", "7M", "7L75", "7V", "6M", "6L75", "6S8", "5M", "5L75", "5S6", "4M", "4L73", "3M", "3L75", "3S1"],
20762
20766
  icebeam: ["8M", "8V", "7M", "7V", "6M", "5M", "4M", "3M"],
@@ -20834,6 +20838,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
20834
20838
  {generation: 5, level: 50, gender: "M", nature: "Brave", ivs: {hp: 30, atk: 30, def: 30, spa: 30, spd: 30, spe: 30}, moves: ["fireblast", "safeguard", "outrage", "hyperbeam"], pokeball: "cherishball"},
20835
20839
  {generation: 6, level: 55, gender: "M", isHidden: true, moves: ["dragondance", "outrage", "hurricane", "extremespeed"], pokeball: "cherishball"},
20836
20840
  {generation: 6, level: 62, gender: "M", ivs: {hp: 31, def: 31, spa: 31, spd: 31}, moves: ["agility", "slam", "barrier", "hyperbeam"], pokeball: "cherishball"},
20841
+ {generation: 8, level: 80, gender: "F", nature: "Jolly", abilities: ["innerfocus"], ivs: {hp: 30, atk: 31, def: 30, spa: 30, spd: 31, spe: 31}, moves: ["dragonclaw", "dracometeor", "hurricane", "dragondance"], pokeball: "pokeball"},
20837
20842
  ],
20838
20843
  encounters: [
20839
20844
  {generation: 5, level: 50},
@@ -41078,14 +41083,14 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41078
41083
  covet: ["7T", "6T", "5T"],
41079
41084
  cut: ["6M", "5M", "4M", "3M"],
41080
41085
  defog: ["7T", "4M"],
41081
- dive: ["8M", "6M", "5M", "4T", "3M"],
41086
+ dive: ["8M", "8S11", "6M", "5M", "4T", "3M"],
41082
41087
  doubleedge: ["3T"],
41083
41088
  doubleteam: ["7M", "6M", "5M", "4M", "3M"],
41084
41089
  dracometeor: ["8T", "7T", "7S9", "6T", "5T", "4T"],
41085
41090
  dragonbreath: ["8L25", "8S10", "7L20", "6L20", "6S6", "5L20", "4L20", "4S3", "3L20"],
41086
41091
  dragonclaw: ["8M", "7M", "6M", "5M", "4M", "3M"],
41087
41092
  dragondance: ["8M"],
41088
- dragonpulse: ["8M", "8L45", "7T", "7L56", "7S7", "7S8", "6T", "6L1", "5T", "5L80", "4M", "4L70"],
41093
+ dragonpulse: ["8M", "8L45", "8S11", "7T", "7L56", "7S7", "7S8", "6T", "6L1", "5T", "5L80", "4M", "4L70"],
41089
41094
  dreameater: ["7M", "6M", "5M", "4M", "3T"],
41090
41095
  dualwingbeat: ["8T"],
41091
41096
  earthquake: ["8M", "7M", "6M", "5M", "4M", "3M"],
@@ -41114,7 +41119,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41114
41119
  magiccoat: ["7T", "6T", "5T", "4T"],
41115
41120
  magicroom: ["8M", "7T", "6T", "5T"],
41116
41121
  mimic: ["3T"],
41117
- mistball: ["8L35", "7L24", "7S7", "7S8", "7S9", "6L24", "6S6", "5L35", "4L35", "4S3", "4S4", "3L35", "3S0", "3S1", "3S2"],
41122
+ mistball: ["8L35", "8S11", "7L24", "7S7", "7S8", "7S9", "6L24", "6S6", "5L35", "4L35", "4S3", "4S4", "3L35", "3S0", "3S1", "3S2"],
41118
41123
  mudslap: ["4T", "3T"],
41119
41124
  mysticalfire: ["8M"],
41120
41125
  naturalgift: ["4M"],
@@ -41155,6 +41160,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41155
41160
  sunnyday: ["8M", "7M", "6M", "5M", "4M", "3M"],
41156
41161
  surf: ["8M", "8S10", "7M", "6M", "5M", "4M", "3M"],
41157
41162
  swagger: ["7M", "6M", "5M", "4M", "3T"],
41163
+ sweetkiss: ["8S11"],
41158
41164
  swift: ["8M", "4T", "3T"],
41159
41165
  tailwind: ["8L20", "7T", "7S9", "6T", "5T", "4T"],
41160
41166
  telekinesis: ["7T", "5M"],
@@ -41184,6 +41190,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41184
41190
  {generation: 7, level: 60, moves: ["mistball", "dragonpulse", "psychoshift", "wish"], pokeball: "cherishball"},
41185
41191
  {generation: 7, level: 100, moves: ["mistball", "psychic", "dracometeor", "tailwind"], pokeball: "cherishball"},
41186
41192
  {generation: 8, level: 70, shiny: 1, moves: ["reflecttype", "dragonbreath", "zenheadbutt", "surf"]},
41193
+ {generation: 8, level: 70, nature: "Bashful", moves: ["mistball", "dragonpulse", "dive", "sweetkiss"], pokeball: "cherishball"},
41187
41194
  ],
41188
41195
  eventOnly: true,
41189
41196
  },
@@ -41691,7 +41698,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41691
41698
  megakick: ["8M"],
41692
41699
  megapunch: ["8M"],
41693
41700
  meteorbeam: ["8T"],
41694
- meteormash: ["8L49", "5S13", "5S14", "5S15"],
41701
+ meteormash: ["8L49", "8S23", "5S13", "5S14", "5S15"],
41695
41702
  metronome: ["8M", "3T"],
41696
41703
  mimic: ["3T"],
41697
41704
  moonblast: ["6S17"],
@@ -41701,14 +41708,14 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41701
41708
  playrough: ["8M", "6S19"],
41702
41709
  poweruppunch: ["6M"],
41703
41710
  protect: ["8M", "7M", "6M", "5M", "4M", "3M"],
41704
- psychic: ["8M", "8L42", "7M", "7L20", "6M", "6L20", "5M", "5L20", "5S13", "4M", "4L20", "3M", "3L20", "3S10"],
41711
+ psychic: ["8M", "8L42", "8S23", "7M", "7L20", "6M", "6L20", "5M", "5L20", "5S13", "4M", "4L20", "3M", "3L20", "3S10"],
41705
41712
  psychup: ["7M", "6M", "5M", "4M", "3T"],
41706
41713
  psyshock: ["8M", "7M", "6M", "5M"],
41707
41714
  raindance: ["8M", "7M", "6M", "5M", "4M", "3M"],
41708
41715
  recycle: ["7T", "6T", "5T", "4M"],
41709
41716
  reflect: ["8M", "7M", "6M", "5M", "4M", "3M"],
41710
41717
  refresh: ["7L25", "6L25", "5L25", "4L25", "3L25", "3S10"],
41711
- rest: ["8M", "8L63", "7M", "7L30", "7S22", "6M", "6L5", "6S21", "5M", "5L5", "4M", "4L5", "4S11", "4S12", "3M", "3L5", "3S0", "3S1", "3S2", "3S3", "3S4", "3S5", "3S6", "3S7", "3S8", "3S9", "3S10"],
41718
+ rest: ["8M", "8L63", "8S23", "7M", "7L30", "7S22", "6M", "6L5", "6S21", "5M", "5L5", "4M", "4L5", "4S11", "4S12", "3M", "3L5", "3S0", "3S1", "3S2", "3S3", "3S4", "3S5", "3S6", "3S7", "3S8", "3S9", "3S10"],
41712
41719
  return: ["7M", "6M", "6S18", "5M", "5S16", "4M", "3M"],
41713
41720
  round: ["8M", "7M", "6M", "5M"],
41714
41721
  safeguard: ["8M", "7M", "6M", "5M", "4M", "3M"],
@@ -41738,7 +41745,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41738
41745
  uproar: ["8M", "7T", "6T", "5T", "4T"],
41739
41746
  uturn: ["8M", "7M", "6M", "5M", "4M"],
41740
41747
  waterpulse: ["7T", "6T", "4M", "3M"],
41741
- wish: ["8L1", "7L1", "7S22", "6L1", "6S17", "6S18", "6S19", "6S20", "6S21", "5L1", "5S14", "5S15", "5S16", "4L1", "4S11", "4S12", "3L1", "3S0", "3S1", "3S2", "3S3", "3S4", "3S5", "3S6", "3S7", "3S8", "3S9"],
41748
+ wish: ["8L1", "8S23", "7L1", "7S22", "6L1", "6S17", "6S18", "6S19", "6S20", "6S21", "5L1", "5S14", "5S15", "5S16", "4L1", "4S11", "4S12", "3L1", "3S0", "3S1", "3S2", "3S3", "3S4", "3S5", "3S6", "3S7", "3S8", "3S9"],
41742
41749
  zenheadbutt: ["8M", "8L28", "7T", "7L35", "6T", "6L35", "5T", "5L35", "4T", "4L35"],
41743
41750
  },
41744
41751
  eventData: [
@@ -41765,6 +41772,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
41765
41772
  {generation: 6, level: 25, shiny: true, moves: ["wish", "confusion", "swift", "happyhour"], pokeball: "cherishball"},
41766
41773
  {generation: 6, level: 100, moves: ["wish", "confusion", "rest"], pokeball: "cherishball"},
41767
41774
  {generation: 7, level: 15, moves: ["swift", "wish", "healingwish", "rest"], pokeball: "cherishball"},
41775
+ {generation: 8, level: 70, nature: "Timid", moves: ["meteormash", "psychic", "rest", "wish"], pokeball: "cherishball"},
41768
41776
  ],
41769
41777
  eventOnly: true,
41770
41778
  },
@@ -44460,13 +44468,15 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
44460
44468
  },
44461
44469
  gastrodoneast: {
44462
44470
  learnset: {
44463
- earthpower: ["8S0"],
44464
- icebeam: ["8S0"],
44465
- protect: ["8S0"],
44471
+ earthpower: ["8S1", "8S0"],
44472
+ icebeam: ["8S1", "8S0"],
44473
+ protect: ["8S1", "8S0"],
44466
44474
  surf: ["8S0"],
44475
+ yawn: ["8S1"],
44467
44476
  },
44468
44477
  eventData: [
44469
44478
  {generation: 8, level: 50, gender: "F", nature: "Quiet", abilities: ["stormdrain"], ivs: {hp: 31, atk: 2, def: 31, spa: 31, spd: 31, spe: 0}, moves: ["protect", "surf", "icebeam", "earthpower"], pokeball: "cherishball"},
44479
+ {generation: 8, level: 50, gender: "F", nature: "Sassy", abilities: ["stormdrain"], ivs: {hp: 31, atk: 0, def: 31, spa: 31, spd: 31, spe: 0}, moves: ["protect", "yawn", "icebeam", "earthpower"], pokeball: "cherishball"},
44470
44480
  ],
44471
44481
  encounters: [
44472
44482
  {generation: 4, level: 20},
@@ -47266,7 +47276,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47266
47276
  fireblast: ["8M", "7M", "6M", "5M", "4M"],
47267
47277
  flamethrower: ["8M", "7M", "6M", "5M", "4M"],
47268
47278
  flash: ["6M", "5M", "4M"],
47269
- flashcannon: ["8M", "8L32", "8S11", "7M", "7L50", "7S7", "7S8", "7S9", "7S10", "6M", "6L50", "6S5", "6S6", "5M", "5L50", "4M", "4L42"],
47279
+ flashcannon: ["8M", "8L32", "8S12", "8S11", "7M", "7L50", "7S7", "7S8", "7S9", "7S10", "6M", "6L50", "6S5", "6S6", "5M", "5L50", "4M", "4L42"],
47270
47280
  frustration: ["7M", "6M", "5M", "4M"],
47271
47281
  furycutter: ["4T"],
47272
47282
  gigaimpact: ["8M", "7M", "6M", "5M", "4M"],
@@ -47284,12 +47294,12 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47284
47294
  ironhead: ["8M", "7T", "6T", "5T", "4T"],
47285
47295
  irontail: ["8M", "8L80", "7T", "7L42", "7S7", "7S8", "6T", "6L42", "6S5", "5T", "5L42", "4M"],
47286
47296
  magnetrise: ["7T", "6T", "5T", "4T"],
47287
- metalburst: ["8L64", "7L24", "6L24", "6S6", "5L24", "4L24"],
47297
+ metalburst: ["8L64", "8S12", "7L24", "6L24", "6S6", "5L24", "4L24"],
47288
47298
  metalclaw: ["8L1", "7L6", "6L6", "5L6", "4L6", "4S0"],
47289
47299
  mudslap: ["4T"],
47290
47300
  naturalgift: ["4M"],
47291
47301
  outrage: ["8M", "7T", "6T", "5T", "4T"],
47292
- overheat: ["8M", "7M", "6M", "6S6", "5M", "4M"],
47302
+ overheat: ["8M", "8S12", "7M", "6M", "6S6", "5M", "4M"],
47293
47303
  powergem: ["8M", "8L56", "7L19", "6L19", "5L19", "4L19"],
47294
47304
  protect: ["8M", "7M", "6M", "5M", "4M"],
47295
47305
  psychup: ["7M", "6M", "5M", "4M"],
@@ -47297,7 +47307,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47297
47307
  rest: ["8M", "7M", "6M", "5M", "4M"],
47298
47308
  return: ["7M", "6M", "5M", "4M"],
47299
47309
  roar: ["7M", "6M", "5M", "4M"],
47300
- roaroftime: ["8L88", "7L46", "7S7", "7S8", "7S9", "7S10", "6L46", "6S5", "6S6", "5L46", "5S4", "4L40", "4S0", "4S1"],
47310
+ roaroftime: ["8L88", "8S12", "7L46", "7S7", "7S8", "7S9", "7S10", "6L46", "6S5", "6S6", "5L46", "5S4", "4L40", "4S0", "4S1"],
47301
47311
  rockslide: ["8M", "7M", "6M", "5M", "4M"],
47302
47312
  rocksmash: ["6M", "5M", "4M"],
47303
47313
  rocktomb: ["8M", "7M", "6M", "5M", "4M"],
@@ -47341,6 +47351,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47341
47351
  {generation: 7, level: 100, moves: ["roaroftime", "aurasphere", "dracometeor", "flashcannon"], pokeball: "cherishball"},
47342
47352
  {generation: 7, level: 50, moves: ["flashcannon", "dracometeor", "roaroftime", "aurasphere"], pokeball: "cherishball"},
47343
47353
  {generation: 8, level: 70, shiny: 1, moves: ["slash", "ancientpower", "flashcannon", "dragonclaw"]},
47354
+ {generation: 8, level: 70, nature: "Bold", isHidden: true, moves: ["roaroftime", "flashcannon", "metalburst", "overheat"], pokeball: "cherishball"},
47344
47355
  ],
47345
47356
  eventOnly: true,
47346
47357
  },
@@ -47350,7 +47361,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47350
47361
  ancientpower: ["8L16", "8S11", "7L10", "6L10", "5L10", "4T", "4L10", "4S0"],
47351
47362
  aquaring: ["8L32", "7L24"],
47352
47363
  aquatail: ["8L64", "7T", "7L24", "7S7", "7S8", "6T", "6L24", "5T", "5L24", "4T", "4L24"],
47353
- aurasphere: ["8M", "8L48", "7L37", "7S7", "7S8", "7S9", "7S10", "6L37", "6S5", "6S6", "5L37", "5S4", "4L37"],
47364
+ aurasphere: ["8M", "8L48", "8S12", "7L37", "7S7", "7S8", "7S9", "7S10", "6L37", "6S5", "6S6", "5L37", "5S4", "4L37"],
47354
47365
  avalanche: ["8M", "4M"],
47355
47366
  blizzard: ["8M", "7M", "6M", "5M", "4M"],
47356
47367
  bodypress: ["8M"],
@@ -47370,7 +47381,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47370
47381
  dragonpulse: ["8M", "7T", "6T", "5T", "4M"],
47371
47382
  dragontail: ["7M", "6M", "5M"],
47372
47383
  dualwingbeat: ["8T"],
47373
- earthpower: ["8M", "8L72", "7T", "7L33", "6T", "6L33", "6S5", "6S6", "5T", "5L33", "4T", "4L33", "4S1"],
47384
+ earthpower: ["8M", "8L72", "8S12", "7T", "7L33", "6T", "6L33", "6S5", "6S6", "5T", "5L33", "4T", "4L33", "4S1"],
47374
47385
  earthquake: ["8M", "7M", "6M", "5M", "4M"],
47375
47386
  echoedvoice: ["7M", "6M", "5M"],
47376
47387
  endure: ["8M", "4M"],
@@ -47390,7 +47401,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47390
47401
  heavyslam: ["8M"],
47391
47402
  hiddenpower: ["7M", "6M", "5M", "4M"],
47392
47403
  honeclaws: ["6M", "5M"],
47393
- hydropump: ["8M", "8L88", "7L50", "7S7", "7S8", "7S9", "7S10", "6L50", "6S5", "6S6", "5L50", "5S4", "4L42"],
47404
+ hydropump: ["8M", "8L88", "8S12", "7L50", "7S7", "7S8", "7S9", "7S10", "6L50", "6S5", "6S6", "5L50", "5S4", "4L42"],
47394
47405
  hyperbeam: ["8M", "7M", "6M", "5M", "4M"],
47395
47406
  hypervoice: ["8M", "7T", "6T", "5T"],
47396
47407
  icebeam: ["8M", "7M", "6M", "5M", "4M"],
@@ -47420,7 +47431,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47420
47431
  slash: ["8L24", "8S11", "7L15", "6L15", "5L15", "4L15", "4S1"],
47421
47432
  sleeptalk: ["8M", "7M", "6M", "5T", "4M"],
47422
47433
  snore: ["8M", "7T", "6T", "5T", "4T"],
47423
- spacialrend: ["8L80", "7L46", "7S7", "7S8", "7S9", "7S10", "6L46", "6S5", "6S6", "5L46", "5S4", "4L40", "4S0", "4S1"],
47434
+ spacialrend: ["8L80", "8S12", "7L46", "7S7", "7S8", "7S9", "7S10", "6L46", "6S5", "6S6", "5L46", "5S4", "4L40", "4S0", "4S1"],
47424
47435
  stompingtantrum: ["8M", "7T"],
47425
47436
  stoneedge: ["8M", "7M", "6M", "5M", "4M"],
47426
47437
  strength: ["6M", "5M", "4M"],
@@ -47451,6 +47462,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
47451
47462
  {generation: 7, level: 100, moves: ["spacialrend", "aurasphere", "dracometeor", "hydropump"], pokeball: "cherishball"},
47452
47463
  {generation: 7, level: 50, moves: ["hydropump", "dracometeor", "spacialrend", "aurasphere"], pokeball: "cherishball"},
47453
47464
  {generation: 8, level: 70, shiny: 1, moves: ["slash", "surf", "ancientpower", "dragonclaw"]},
47465
+ {generation: 8, level: 70, nature: "Hasty", isHidden: true, moves: ["spacialrend", "hydropump", "aurasphere", "earthpower"], pokeball: "cherishball"},
47454
47466
  ],
47455
47467
  eventOnly: true,
47456
47468
  },
@@ -48384,7 +48396,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
48384
48396
  firepunch: ["8M", "7T", "6T", "5T"],
48385
48397
  firespin: ["8M"],
48386
48398
  flameburst: ["7L41", "6L41", "5L41"],
48387
- flamecharge: ["8L1", "7M", "7L25", "6M", "6L25", "5M", "5L25"],
48399
+ flamecharge: ["8L1", "8S7", "7M", "7L25", "6M", "6L25", "5M", "5L25"],
48388
48400
  flamethrower: ["8M", "7M", "6M", "5M"],
48389
48401
  flareblitz: ["8M", "8L77", "7L73", "6L73", "5L73"],
48390
48402
  flash: ["6M", "5M"],
@@ -48455,11 +48467,11 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
48455
48467
  trickroom: ["8M", "7M", "6M", "5M"],
48456
48468
  uproar: ["8M", "7T", "6T", "5T"],
48457
48469
  uturn: ["8M", "7M", "6M", "5M"],
48458
- vcreate: ["8L1", "7S6", "6S3", "6S5", "5S1", "5S2"],
48470
+ vcreate: ["8L1", "8S7", "7S6", "6S3", "6S5", "5S1", "5S2"],
48459
48471
  wildcharge: ["8M", "7M", "6M", "5M"],
48460
48472
  willowisp: ["8M", "7M", "6M", "5M"],
48461
- workup: ["8M", "8L7", "7M", "5M"],
48462
- zenheadbutt: ["8M", "8L42", "7T", "7L49", "6T", "6L49", "5T", "5L49"],
48473
+ workup: ["8M", "8L7", "8S7", "7M", "5M"],
48474
+ zenheadbutt: ["8M", "8L42", "8S7", "7T", "7L49", "6T", "6L49", "5T", "5L49"],
48463
48475
  },
48464
48476
  eventData: [
48465
48477
  {generation: 5, level: 15, moves: ["quickattack", "incinerate", "confusion", "endure"]},
@@ -48469,6 +48481,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
48469
48481
  {generation: 6, level: 100, moves: ["incinerate", "quickattack", "endure", "confusion"], pokeball: "cherishball"},
48470
48482
  {generation: 6, level: 15, moves: ["quickattack", "swagger", "vcreate"], pokeball: "cherishball"},
48471
48483
  {generation: 7, level: 15, moves: ["vcreate", "reversal", "storedpower", "celebrate"], pokeball: "cherishball"},
48484
+ {generation: 8, level: 50, nature: "Brave", perfectIVs: 6, moves: ["vcreate", "zenheadbutt", "workup", "flamecharge"], pokeball: "cherishball"},
48472
48485
  ],
48473
48486
  eventOnly: true,
48474
48487
  },
@@ -75208,6 +75221,17 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
75208
75221
  wonderroom: ["8M"],
75209
75222
  },
75210
75223
  },
75224
+ sinisteaantique: {
75225
+ learnset: {
75226
+ aromatherapy: ["8S0"],
75227
+ celebrate: ["8S0"],
75228
+ memento: ["8S0"],
75229
+ metronome: ["8S0"],
75230
+ },
75231
+ eventData: [
75232
+ {generation: 8, level: 50, isHidden: true, moves: ["memento", "metronome", "aromatherapy", "celebrate"], pokeball: "cherishball"},
75233
+ ],
75234
+ },
75211
75235
  polteageist: {
75212
75236
  learnset: {
75213
75237
  allyswitch: ["8M"],
@@ -76341,16 +76365,16 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
76341
76365
  dracometeor: ["8T"],
76342
76366
  dragonbreath: ["8L35"],
76343
76367
  dragonpulse: ["8M", "8L70"],
76344
- dragonrush: ["8L77"],
76368
+ dragonrush: ["8L77", "8S1"],
76345
76369
  earthpower: ["8M"],
76346
76370
  earthquake: ["8M"],
76347
76371
  endure: ["8M"],
76348
76372
  facade: ["8M"],
76349
- fishiousrend: ["8L63"],
76373
+ fishiousrend: ["8L63", "8S1"],
76350
76374
  gigaimpact: ["8M"],
76351
76375
  hydropump: ["8M"],
76352
76376
  hyperbeam: ["8M"],
76353
- icefang: ["8M"],
76377
+ icefang: ["8M", "8S1"],
76354
76378
  ironhead: ["8M"],
76355
76379
  leechlife: ["8M"],
76356
76380
  liquidation: ["8M"],
@@ -76377,12 +76401,13 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
76377
76401
  surf: ["8M"],
76378
76402
  tackle: ["8L1", "8S0"],
76379
76403
  waterfall: ["8M"],
76380
- watergun: ["8L1", "8S0"],
76404
+ watergun: ["8L1", "8S1", "8S0"],
76381
76405
  whirlpool: ["8M"],
76382
76406
  zenheadbutt: ["8M"],
76383
76407
  },
76384
76408
  eventData: [
76385
76409
  {generation: 8, level: 10, shiny: 1, perfectIVs: 3, moves: ["tackle", "watergun", "protect"], pokeball: "pokeball"},
76410
+ {generation: 8, level: 80, nature: "Naive", abilities: ["strongjaw"], ivs: {hp: 30, atk: 31, def: 31, spa: 30, spd: 30, spe: 31}, moves: ["fishiousrend", "dragonrush", "icefang", "watergun"], pokeball: "pokeball"},
76386
76411
  ],
76387
76412
  eventOnly: true,
76388
76413
  },
@@ -414,7 +414,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
414
414
  slowbro: {
415
415
  randomBattleMoves: ["amnesia", "surf", "thunderwave"],
416
416
  exclusiveMoves: ["blizzard", "psychic", "rest", "rest"],
417
- tier: "UUBL",
417
+ tier: "OU",
418
418
  },
419
419
  magnemite: {
420
420
  randomBattleMoves: ["thunder", "thunderbolt", "thunderwave"],
@@ -538,12 +538,17 @@ export const Moves: {[k: string]: ModdedMoveData} = {
538
538
  onBoost(boost, target, source, effect) {
539
539
  if (effect.effectType === 'Move' && effect.category !== 'Status') return;
540
540
  if (source && target !== source) {
541
+ let showMsg = false;
541
542
  let i: BoostID;
542
543
  for (i in boost) {
543
544
  if (boost[i]! < 0) {
544
545
  delete boost[i];
546
+ showMsg = true;
545
547
  }
546
548
  }
549
+ if (showMsg && !(effect as ActiveMove).secondaries) {
550
+ this.add('-activate', target, 'move: Mist');
551
+ }
547
552
  }
548
553
  },
549
554
  },
@@ -467,8 +467,9 @@ export const Scripts: ModdedBattleScriptsData = {
467
467
  return false;
468
468
  }
469
469
  if (moveData.boosts && target.hp) {
470
- if (!this.battle.boost(moveData.boosts, target, pokemon, move)) {
471
- this.battle.add('-fail', target);
470
+ const willBoost = this.battle.boost(moveData.boosts, target, pokemon, move);
471
+ if (!willBoost) {
472
+ if (willBoost === false) this.battle.add('-fail', target);
472
473
  return false;
473
474
  }
474
475
  didSomething = true;
@@ -111,11 +111,6 @@ export const Moves: {[k: string]: ModdedMoveData} = {
111
111
  },
112
112
  },
113
113
  },
114
- block: {
115
- inherit: true,
116
- accuracy: true,
117
- ignoreAccuracy: false,
118
- },
119
114
  counter: {
120
115
  inherit: true,
121
116
  damageCallback(pokemon, target) {
@@ -14,12 +14,19 @@ export const Rulesets: {[k: string]: ModdedFormatData} = {
14
14
  'Vaporeon + Tackle + Growl',
15
15
  'Jolteon + Tackle + Growl', 'Jolteon + Focus Energy + Thunder Shock',
16
16
  'Flareon + Tackle + Growl', 'Flareon + Focus Energy + Ember',
17
+
18
+ // https://github.com/smogon/pokemon-showdown/pull/8869
19
+ 'Rapidash + Pay Day + Growl',
20
+ 'Rapidash + Pay Day + Tail Whip',
21
+ 'Fearow + Pay Day + Peck',
22
+ 'Fearow + Pay Day + Mirror Move',
23
+ 'Magikarp + Dragon Rage + Tackle',
17
24
  ],
18
25
  },
19
26
  standard: {
20
27
  effectType: 'ValidatorRule',
21
28
  name: 'Standard',
22
- ruleset: ['Obtainable', 'Sleep Clause Mod', 'Freeze Clause Mod', 'Species Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Endless battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
29
+ ruleset: ['Obtainable', 'Sleep Clause Mod', 'Freeze Clause Mod', 'Species Clause', 'OHKO Clause', 'Evasion Items Clause', 'Evasion Moves Clause', 'Endless battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
23
30
  banlist: [
24
31
  'Hypnosis + Mean Look',
25
32
  'Hypnosis + Spider Web',
@@ -411,7 +411,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
411
411
  tier: "LC",
412
412
  },
413
413
  weezing: {
414
- randomBattleMoves: ["explosion", "fireblast", "flamethrower", "haze", "painsplit", "sludgebomb", "toxic", "willowisp"],
414
+ randomBattleMoves: ["explosion", "fireblast", "haze", "painsplit", "sludgebomb", "toxic", "willowisp"],
415
415
  tier: "UUBL",
416
416
  },
417
417
  rhyhorn: {
@@ -835,7 +835,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
835
835
  tier: "UU",
836
836
  },
837
837
  skarmory: {
838
- randomBattleMoves: ["doubleedge", "drillpeck", "protect", "rest", "roar", "sleeptalk", "spikes", "toxic"],
838
+ randomBattleMoves: ["drillpeck", "hiddenpowerground", "protect", "rest", "roar", "sleeptalk", "spikes", "toxic"],
839
839
  tier: "OU",
840
840
  },
841
841
  houndour: {
@@ -1368,7 +1368,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
1368
1368
  tier: "Uber",
1369
1369
  },
1370
1370
  groudon: {
1371
- randomBattleMoves: ["earthquake", "hiddenpowerghost", "overheat", "rockslide", "substitute", "swordsdance", "thunderwave"],
1371
+ randomBattleMoves: ["earthquake", "hiddenpowerbug", "overheat", "rockslide", "substitute", "swordsdance", "thunderwave"],
1372
1372
  tier: "Uber",
1373
1373
  },
1374
1374
  rayquaza: {
@@ -3,6 +3,6 @@ export const Rulesets: {[k: string]: ModdedFormatData} = {
3
3
  effectType: 'ValidatorRule',
4
4
  name: 'Standard',
5
5
  desc: "The standard ruleset for all offical Smogon singles tiers (Ubers, OU, etc.)",
6
- ruleset: ['Obtainable', 'Sleep Clause Mod', 'Switch Priority Clause Mod', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
6
+ ruleset: ['Obtainable', 'Sleep Clause Mod', 'Switch Priority Clause Mod', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Items Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
7
7
  },
8
8
  };
@@ -1,7 +1,7 @@
1
1
  export const Rulesets: {[k: string]: ModdedFormatData} = {
2
2
  standard: {
3
3
  inherit: true,
4
- ruleset: ['Obtainable', 'Sleep Clause Mod', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
4
+ ruleset: ['Obtainable', 'Sleep Clause Mod', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Items Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod'],
5
5
  },
6
6
  flatrules: {
7
7
  inherit: true,
@@ -2,7 +2,7 @@ export const Rulesets: {[k: string]: ModdedFormatData} = {
2
2
  standard: {
3
3
  inherit: true,
4
4
  ruleset: [
5
- 'Obtainable', 'Team Preview', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Moody Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod',
5
+ 'Obtainable', 'Team Preview', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Moody Clause', 'Evasion Items Clause', 'Evasion Moves Clause', 'Endless Battle Clause', 'HP Percentage Mod', 'Cancel Mod',
6
6
  ],
7
7
  },
8
8
  obtainablemoves: {