@pkmn/sim 0.7.12 → 0.7.14

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 (127) hide show
  1. package/build/cjs/config/formats.js +113 -97
  2. package/build/cjs/config/formats.js.map +1 -1
  3. package/build/cjs/data/abilities.js +3 -2
  4. package/build/cjs/data/abilities.js.map +1 -1
  5. package/build/cjs/data/aliases.js +6 -5
  6. package/build/cjs/data/aliases.js.map +1 -1
  7. package/build/cjs/data/conditions.js +1 -1
  8. package/build/cjs/data/conditions.js.map +1 -1
  9. package/build/cjs/data/formats-data.js +921 -921
  10. package/build/cjs/data/formats-data.js.map +1 -1
  11. package/build/cjs/data/items.js +99 -28
  12. package/build/cjs/data/items.js.map +1 -1
  13. package/build/cjs/data/learnsets.js +9 -9
  14. package/build/cjs/data/mods/gen1/conditions.js +30 -31
  15. package/build/cjs/data/mods/gen1/conditions.js.map +1 -1
  16. package/build/cjs/data/mods/gen1/moves.js +50 -40
  17. package/build/cjs/data/mods/gen1/moves.js.map +1 -1
  18. package/build/cjs/data/mods/gen1/scripts.js +16 -6
  19. package/build/cjs/data/mods/gen1/scripts.js.map +1 -1
  20. package/build/cjs/data/mods/gen2/formats-data.js +8 -8
  21. package/build/cjs/data/mods/gen2/formats-data.js.map +1 -1
  22. package/build/cjs/data/mods/gen3/formats-data.js +52 -52
  23. package/build/cjs/data/mods/gen3/formats-data.js.map +1 -1
  24. package/build/cjs/data/mods/gen4/rulesets.js +1 -1
  25. package/build/cjs/data/mods/gen4/rulesets.js.map +1 -1
  26. package/build/cjs/data/mods/gen5/formats-data.js +1 -1
  27. package/build/cjs/data/mods/gen5/formats-data.js.map +1 -1
  28. package/build/cjs/data/mods/gen5/rulesets.js +1 -1
  29. package/build/cjs/data/mods/gen5/rulesets.js.map +1 -1
  30. package/build/cjs/data/mods/gen6/formats-data.js +3 -3
  31. package/build/cjs/data/mods/gen6/formats-data.js.map +1 -1
  32. package/build/cjs/data/mods/gen7/formats-data.js +6 -6
  33. package/build/cjs/data/mods/gen7/formats-data.js.map +1 -1
  34. package/build/cjs/data/mods/gen7/items.js +8 -0
  35. package/build/cjs/data/mods/gen7/items.js.map +1 -1
  36. package/build/cjs/data/mods/gen7/rulesets.js +1 -1
  37. package/build/cjs/data/mods/gen7/rulesets.js.map +1 -1
  38. package/build/cjs/data/mods/gen8/formats-data.js +1 -1
  39. package/build/cjs/data/mods/gen8/formats-data.js.map +1 -1
  40. package/build/cjs/data/mods/gen8/items.js +76 -0
  41. package/build/cjs/data/mods/gen8/items.js.map +1 -1
  42. package/build/cjs/data/mods/gen8/moves.js +9 -0
  43. package/build/cjs/data/mods/gen8/moves.js.map +1 -1
  44. package/build/cjs/data/mods/gen8/pokedex.js +4 -0
  45. package/build/cjs/data/mods/gen8/pokedex.js.map +1 -1
  46. package/build/cjs/data/moves.js +64 -38
  47. package/build/cjs/data/moves.js.map +1 -1
  48. package/build/cjs/data/pokedex.js +5 -1
  49. package/build/cjs/data/pokedex.js.map +1 -1
  50. package/build/cjs/data/tags.js +4 -0
  51. package/build/cjs/data/tags.js.map +1 -1
  52. package/build/cjs/data/text/abilities.js +26 -8
  53. package/build/cjs/data/text/abilities.js.map +1 -1
  54. package/build/cjs/data/text/items.js +12 -7
  55. package/build/cjs/data/text/items.js.map +1 -1
  56. package/build/cjs/data/text/moves.js +5 -2
  57. package/build/cjs/data/text/moves.js.map +1 -1
  58. package/build/cjs/sim/battle-actions.js +7 -2
  59. package/build/cjs/sim/battle-actions.js.map +1 -1
  60. package/build/cjs/sim/pokemon.js +2 -0
  61. package/build/cjs/sim/pokemon.js.map +1 -1
  62. package/build/cjs/sim/team-validator.js +0 -4
  63. package/build/cjs/sim/team-validator.js.map +1 -1
  64. package/build/esm/config/formats.mjs +113 -97
  65. package/build/esm/config/formats.mjs.map +1 -1
  66. package/build/esm/data/abilities.mjs +3 -2
  67. package/build/esm/data/abilities.mjs.map +1 -1
  68. package/build/esm/data/aliases.mjs +6 -5
  69. package/build/esm/data/aliases.mjs.map +1 -1
  70. package/build/esm/data/conditions.mjs +1 -1
  71. package/build/esm/data/conditions.mjs.map +1 -1
  72. package/build/esm/data/formats-data.mjs +921 -921
  73. package/build/esm/data/formats-data.mjs.map +1 -1
  74. package/build/esm/data/items.mjs +99 -28
  75. package/build/esm/data/items.mjs.map +1 -1
  76. package/build/esm/data/learnsets.mjs +9 -9
  77. package/build/esm/data/mods/gen1/conditions.mjs +30 -31
  78. package/build/esm/data/mods/gen1/conditions.mjs.map +1 -1
  79. package/build/esm/data/mods/gen1/moves.mjs +50 -40
  80. package/build/esm/data/mods/gen1/moves.mjs.map +1 -1
  81. package/build/esm/data/mods/gen1/scripts.mjs +16 -6
  82. package/build/esm/data/mods/gen1/scripts.mjs.map +1 -1
  83. package/build/esm/data/mods/gen2/formats-data.mjs +8 -8
  84. package/build/esm/data/mods/gen2/formats-data.mjs.map +1 -1
  85. package/build/esm/data/mods/gen3/formats-data.mjs +52 -52
  86. package/build/esm/data/mods/gen3/formats-data.mjs.map +1 -1
  87. package/build/esm/data/mods/gen4/rulesets.mjs +1 -1
  88. package/build/esm/data/mods/gen4/rulesets.mjs.map +1 -1
  89. package/build/esm/data/mods/gen5/formats-data.mjs +1 -1
  90. package/build/esm/data/mods/gen5/formats-data.mjs.map +1 -1
  91. package/build/esm/data/mods/gen5/rulesets.mjs +1 -1
  92. package/build/esm/data/mods/gen5/rulesets.mjs.map +1 -1
  93. package/build/esm/data/mods/gen6/formats-data.mjs +3 -3
  94. package/build/esm/data/mods/gen6/formats-data.mjs.map +1 -1
  95. package/build/esm/data/mods/gen7/formats-data.mjs +6 -6
  96. package/build/esm/data/mods/gen7/formats-data.mjs.map +1 -1
  97. package/build/esm/data/mods/gen7/items.mjs +8 -0
  98. package/build/esm/data/mods/gen7/items.mjs.map +1 -1
  99. package/build/esm/data/mods/gen7/rulesets.mjs +1 -1
  100. package/build/esm/data/mods/gen7/rulesets.mjs.map +1 -1
  101. package/build/esm/data/mods/gen8/formats-data.mjs +1 -1
  102. package/build/esm/data/mods/gen8/formats-data.mjs.map +1 -1
  103. package/build/esm/data/mods/gen8/items.mjs +76 -0
  104. package/build/esm/data/mods/gen8/items.mjs.map +1 -1
  105. package/build/esm/data/mods/gen8/moves.mjs +9 -0
  106. package/build/esm/data/mods/gen8/moves.mjs.map +1 -1
  107. package/build/esm/data/mods/gen8/pokedex.mjs +4 -0
  108. package/build/esm/data/mods/gen8/pokedex.mjs.map +1 -1
  109. package/build/esm/data/moves.mjs +64 -38
  110. package/build/esm/data/moves.mjs.map +1 -1
  111. package/build/esm/data/pokedex.mjs +5 -1
  112. package/build/esm/data/pokedex.mjs.map +1 -1
  113. package/build/esm/data/tags.mjs +4 -0
  114. package/build/esm/data/tags.mjs.map +1 -1
  115. package/build/esm/data/text/abilities.mjs +26 -8
  116. package/build/esm/data/text/abilities.mjs.map +1 -1
  117. package/build/esm/data/text/items.mjs +12 -7
  118. package/build/esm/data/text/items.mjs.map +1 -1
  119. package/build/esm/data/text/moves.mjs +5 -2
  120. package/build/esm/data/text/moves.mjs.map +1 -1
  121. package/build/esm/sim/battle-actions.mjs +7 -2
  122. package/build/esm/sim/battle-actions.mjs.map +1 -1
  123. package/build/esm/sim/pokemon.mjs +2 -0
  124. package/build/esm/sim/pokemon.mjs.map +1 -1
  125. package/build/esm/sim/team-validator.mjs +0 -4
  126. package/build/esm/sim/team-validator.mjs.map +1 -1
  127. package/package.json +3 -3
@@ -66,6 +66,27 @@ exports.Items = {
66
66
  num: 545,
67
67
  gen: 5,
68
68
  },
69
+ adamantcrystal: {
70
+ name: "Adamant Crystal",
71
+ spritenum: 4,
72
+ onBasePowerPriority: 15,
73
+ onBasePower(basePower, user, target, move) {
74
+ if (user.baseSpecies.num === 483 && (move.type === 'Steel' || move.type === 'Dragon')) {
75
+ return this.chainModify([4915, 4096]);
76
+ }
77
+ },
78
+ onTakeItem(item, pokemon, source) {
79
+ if (source?.baseSpecies.num === 483 || pokemon.baseSpecies.num === 483) {
80
+ return false;
81
+ }
82
+ return true;
83
+ },
84
+ forcedForme: "Dialga-Origin",
85
+ itemUser: ["Dialga-Origin"],
86
+ num: 1777,
87
+ gen: 8,
88
+ isNonstandard: "Unobtainable",
89
+ },
69
90
  adamantorb: {
70
91
  name: "Adamant Orb",
71
92
  spritenum: 4,
@@ -74,7 +95,7 @@ exports.Items = {
74
95
  },
75
96
  onBasePowerPriority: 15,
76
97
  onBasePower(basePower, user, target, move) {
77
- if (move && user.baseSpecies.name === 'Dialga' && (move.type === 'Steel' || move.type === 'Dragon')) {
98
+ if (user.baseSpecies.num === 483 && (move.type === 'Steel' || move.type === 'Dragon')) {
78
99
  return this.chainModify([4915, 4096]);
79
100
  }
80
101
  },
@@ -443,6 +464,7 @@ exports.Items = {
443
464
  },
444
465
  num: 1111,
445
466
  gen: 8,
467
+ isNonstandard: "Past",
446
468
  },
447
469
  bigroot: {
448
470
  name: "Big Root",
@@ -581,6 +603,7 @@ exports.Items = {
581
603
  onEat: false,
582
604
  num: 165,
583
605
  gen: 3,
606
+ isNonstandard: "Past",
584
607
  },
585
608
  blunderpolicy: {
586
609
  name: "Blunder Policy",
@@ -1034,6 +1057,7 @@ exports.Items = {
1034
1057
  },
1035
1058
  num: 1112,
1036
1059
  gen: 8,
1060
+ isNonstandard: "Past",
1037
1061
  },
1038
1062
  cobaberry: {
1039
1063
  name: "Coba Berry",
@@ -1650,15 +1674,6 @@ exports.Items = {
1650
1674
  gen: 7,
1651
1675
  isNonstandard: "Past",
1652
1676
  },
1653
- energypowder: {
1654
- name: "Energy Powder",
1655
- spritenum: 123,
1656
- fling: {
1657
- basePower: 30,
1658
- },
1659
- num: 34,
1660
- gen: 2,
1661
- },
1662
1677
  enigmaberry: {
1663
1678
  name: "Enigma Berry",
1664
1679
  spritenum: 124,
@@ -1968,6 +1983,7 @@ exports.Items = {
1968
1983
  },
1969
1984
  num: 1113,
1970
1985
  gen: 8,
1986
+ isNonstandard: "Past",
1971
1987
  },
1972
1988
  flyinggem: {
1973
1989
  name: "Flying Gem",
@@ -2101,7 +2117,7 @@ exports.Items = {
2101
2117
  onFractionalPriority: -0.1,
2102
2118
  num: 316,
2103
2119
  gen: 4,
2104
- isNonstandard: "Unobtainable",
2120
+ isNonstandard: "Past",
2105
2121
  },
2106
2122
  galaricacuff: {
2107
2123
  name: "Galarica Cuff",
@@ -2111,7 +2127,7 @@ exports.Items = {
2111
2127
  },
2112
2128
  num: 1582,
2113
2129
  gen: 8,
2114
- isNonstandard: "Past",
2130
+ isNonstandard: "Unobtainable",
2115
2131
  },
2116
2132
  galaricawreath: {
2117
2133
  name: "Galarica Wreath",
@@ -2121,7 +2137,7 @@ exports.Items = {
2121
2137
  },
2122
2138
  num: 1592,
2123
2139
  gen: 8,
2124
- isNonstandard: "Past",
2140
+ isNonstandard: "Unobtainable",
2125
2141
  },
2126
2142
  galladite: {
2127
2143
  name: "Galladite",
@@ -2365,12 +2381,9 @@ exports.Items = {
2365
2381
  num: 286,
2366
2382
  gen: 4,
2367
2383
  },
2368
- griseousorb: {
2369
- name: "Griseous Orb",
2384
+ griseouscore: {
2385
+ name: "Griseous Core",
2370
2386
  spritenum: 180,
2371
- fling: {
2372
- basePower: 60,
2373
- },
2374
2387
  onBasePowerPriority: 15,
2375
2388
  onBasePower(basePower, user, target, move) {
2376
2389
  if (user.baseSpecies.num === 487 && (move.type === 'Ghost' || move.type === 'Dragon')) {
@@ -2378,13 +2391,30 @@ exports.Items = {
2378
2391
  }
2379
2392
  },
2380
2393
  onTakeItem(item, pokemon, source) {
2381
- if ((source && source.baseSpecies.num === 487) || pokemon.baseSpecies.num === 487) {
2394
+ if (source?.baseSpecies.num === 487 || pokemon.baseSpecies.num === 487) {
2382
2395
  return false;
2383
2396
  }
2384
2397
  return true;
2385
2398
  },
2386
2399
  forcedForme: "Giratina-Origin",
2387
2400
  itemUser: ["Giratina-Origin"],
2401
+ num: 1779,
2402
+ gen: 8,
2403
+ isNonstandard: "Unobtainable",
2404
+ },
2405
+ griseousorb: {
2406
+ name: "Griseous Orb",
2407
+ spritenum: 180,
2408
+ fling: {
2409
+ basePower: 60,
2410
+ },
2411
+ onBasePowerPriority: 15,
2412
+ onBasePower(basePower, user, target, move) {
2413
+ if (user.baseSpecies.num === 487 && (move.type === 'Ghost' || move.type === 'Dragon')) {
2414
+ return this.chainModify([4915, 4096]);
2415
+ }
2416
+ },
2417
+ itemUser: ["Giratina"],
2388
2418
  num: 112,
2389
2419
  gen: 4,
2390
2420
  isNonstandard: "Unobtainable",
@@ -2992,7 +3022,7 @@ exports.Items = {
2992
3022
  },
2993
3023
  num: 255,
2994
3024
  gen: 3,
2995
- isNonstandard: "Unobtainable",
3025
+ isNonstandard: "Past",
2996
3026
  },
2997
3027
  leafstone: {
2998
3028
  name: "Leaf Stone",
@@ -3180,6 +3210,7 @@ exports.Items = {
3180
3210
  },
3181
3211
  num: 1110,
3182
3212
  gen: 8,
3213
+ isNonstandard: "Past",
3183
3214
  },
3184
3215
  lucarionite: {
3185
3216
  name: "Lucarionite",
@@ -3271,6 +3302,27 @@ exports.Items = {
3271
3302
  gen: 2,
3272
3303
  isPokeball: true,
3273
3304
  },
3305
+ lustrousglobe: {
3306
+ name: "Lustrous Globe",
3307
+ spritenum: 265,
3308
+ onBasePowerPriority: 15,
3309
+ onBasePower(basePower, user, target, move) {
3310
+ if (user.baseSpecies.num === 484 && (move.type === 'Water' || move.type === 'Dragon')) {
3311
+ return this.chainModify([4915, 4096]);
3312
+ }
3313
+ },
3314
+ onTakeItem(item, pokemon, source) {
3315
+ if (source?.baseSpecies.num === 484 || pokemon.baseSpecies.num === 484) {
3316
+ return false;
3317
+ }
3318
+ return true;
3319
+ },
3320
+ forcedForme: "Palkia-Origin",
3321
+ itemUser: ["Palkia-Origin"],
3322
+ num: 1778,
3323
+ gen: 8,
3324
+ isNonstandard: "Unobtainable",
3325
+ },
3274
3326
  lustrousorb: {
3275
3327
  name: "Lustrous Orb",
3276
3328
  spritenum: 265,
@@ -3279,7 +3331,7 @@ exports.Items = {
3279
3331
  },
3280
3332
  onBasePowerPriority: 15,
3281
3333
  onBasePower(basePower, user, target, move) {
3282
- if (move && user.baseSpecies.name === 'Palkia' && (move.type === 'Water' || move.type === 'Dragon')) {
3334
+ if (user.baseSpecies.num === 484 && (move.type === 'Water' || move.type === 'Dragon')) {
3283
3335
  return this.chainModify([4915, 4096]);
3284
3336
  }
3285
3337
  },
@@ -3318,6 +3370,7 @@ exports.Items = {
3318
3370
  },
3319
3371
  num: 215,
3320
3372
  gen: 3,
3373
+ isNonstandard: "Past",
3321
3374
  },
3322
3375
  magmarizer: {
3323
3376
  name: "Magmarizer",
@@ -3327,6 +3380,7 @@ exports.Items = {
3327
3380
  },
3328
3381
  num: 323,
3329
3382
  gen: 4,
3383
+ isNonstandard: "Past",
3330
3384
  },
3331
3385
  magnet: {
3332
3386
  name: "Magnet",
@@ -3590,6 +3644,7 @@ exports.Items = {
3590
3644
  itemUser: ["Ditto"],
3591
3645
  num: 257,
3592
3646
  gen: 2,
3647
+ isNonstandard: "Past",
3593
3648
  },
3594
3649
  metronome: {
3595
3650
  name: "Metronome",
@@ -3971,7 +4026,7 @@ exports.Items = {
3971
4026
  },
3972
4027
  num: 314,
3973
4028
  gen: 4,
3974
- isNonstandard: "Unobtainable",
4029
+ isNonstandard: "Past",
3975
4030
  },
3976
4031
  oldamber: {
3977
4032
  name: "Old Amber",
@@ -4192,6 +4247,7 @@ exports.Items = {
4192
4247
  onEat: false,
4193
4248
  num: 168,
4194
4249
  gen: 3,
4250
+ isNonstandard: "Past",
4195
4251
  },
4196
4252
  pinsirite: {
4197
4253
  name: "Pinsirite",
@@ -4532,9 +4588,10 @@ exports.Items = {
4532
4588
  onBasePower(basePower, attacker, defender, move) {
4533
4589
  if (move.flags['punch']) {
4534
4590
  this.debug('Punching Glove boost');
4535
- return this.chainModify([4915, 4096]);
4591
+ return this.chainModify([4506, 4096]);
4536
4592
  }
4537
4593
  },
4594
+ onModifyMovePriority: 1,
4538
4595
  onModifyMove(move) {
4539
4596
  if (move.flags['punch'])
4540
4597
  delete move.flags['contact'];
@@ -4591,6 +4648,7 @@ exports.Items = {
4591
4648
  itemUser: ["Ditto"],
4592
4649
  num: 274,
4593
4650
  gen: 4,
4651
+ isNonstandard: "Past",
4594
4652
  },
4595
4653
  rabutaberry: {
4596
4654
  name: "Rabuta Berry",
@@ -4754,6 +4812,7 @@ exports.Items = {
4754
4812
  },
4755
4813
  num: 1115,
4756
4814
  gen: 8,
4815
+ isNonstandard: "Past",
4757
4816
  },
4758
4817
  rindoberry: {
4759
4818
  name: "Rindo Berry",
@@ -4818,7 +4877,7 @@ exports.Items = {
4818
4877
  },
4819
4878
  num: 315,
4820
4879
  gen: 4,
4821
- isNonstandard: "Unobtainable",
4880
+ isNonstandard: "Past",
4822
4881
  },
4823
4882
  rockmemory: {
4824
4883
  name: "Rock Memory",
@@ -4877,7 +4936,7 @@ exports.Items = {
4877
4936
  onAnyPseudoWeatherChange() {
4878
4937
  const pokemon = this.effectState.target;
4879
4938
  if (this.field.getPseudoWeather('trickroom')) {
4880
- pokemon.useItem();
4939
+ pokemon.useItem(pokemon);
4881
4940
  }
4882
4941
  },
4883
4942
  boosts: {
@@ -4910,7 +4969,7 @@ exports.Items = {
4910
4969
  },
4911
4970
  num: 318,
4912
4971
  gen: 4,
4913
- isNonstandard: "Unobtainable",
4972
+ isNonstandard: "Past",
4914
4973
  },
4915
4974
  roseliberry: {
4916
4975
  name: "Roseli Berry",
@@ -5015,6 +5074,7 @@ exports.Items = {
5015
5074
  num: 5,
5016
5075
  gen: 1,
5017
5076
  isPokeball: true,
5077
+ isNonstandard: "Unobtainable",
5018
5078
  },
5019
5079
  safetygoggles: {
5020
5080
  name: "Safety Goggles",
@@ -5136,7 +5196,7 @@ exports.Items = {
5136
5196
  },
5137
5197
  num: 254,
5138
5198
  gen: 3,
5139
- isNonstandard: "Unobtainable",
5199
+ isNonstandard: "Past",
5140
5200
  },
5141
5201
  sharpbeak: {
5142
5202
  name: "Sharp Beak",
@@ -5501,6 +5561,7 @@ exports.Items = {
5501
5561
  num: 499,
5502
5562
  gen: 2,
5503
5563
  isPokeball: true,
5564
+ isNonstandard: "Unobtainable",
5504
5565
  },
5505
5566
  starfberry: {
5506
5567
  name: "Starf Berry",
@@ -5542,6 +5603,7 @@ exports.Items = {
5542
5603
  },
5543
5604
  num: 1114,
5544
5605
  gen: 8,
5606
+ isNonstandard: "Past",
5545
5607
  },
5546
5608
  steelixite: {
5547
5609
  name: "Steelixite",
@@ -5661,6 +5723,14 @@ exports.Items = {
5661
5723
  gen: 4,
5662
5724
  isNonstandard: "Unobtainable",
5663
5725
  },
5726
+ strangeball: {
5727
+ name: "Strange Ball",
5728
+ spritenum: 303,
5729
+ num: 1785,
5730
+ gen: 8,
5731
+ isPokeball: true,
5732
+ isNonstandard: "Unobtainable",
5733
+ },
5664
5734
  strawberrysweet: {
5665
5735
  name: "Strawberry Sweet",
5666
5736
  spritenum: 704,
@@ -5669,6 +5739,7 @@ exports.Items = {
5669
5739
  },
5670
5740
  num: 1109,
5671
5741
  gen: 8,
5742
+ isNonstandard: "Past",
5672
5743
  },
5673
5744
  sunstone: {
5674
5745
  name: "Sun Stone",
@@ -7062,7 +7133,7 @@ exports.Items = {
7062
7133
  },
7063
7134
  num: 317,
7064
7135
  gen: 4,
7065
- isNonstandard: "Unobtainable",
7136
+ isNonstandard: "Past",
7066
7137
  },
7067
7138
  weaknesspolicy: {
7068
7139
  name: "Weakness Policy",