@pkmn/sim 0.5.22 → 0.5.23

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 (42) hide show
  1. package/build/config/formats.js +296 -325
  2. package/build/config/formats.js.map +1 -1
  3. package/build/data/aliases.js +4 -4
  4. package/build/data/aliases.js.map +1 -1
  5. package/build/data/conditions.js +1 -1
  6. package/build/data/conditions.js.map +1 -1
  7. package/build/data/formats-data.js +7 -8
  8. package/build/data/formats-data.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 +5 -0
  12. package/build/data/mods/gen1/moves.js.map +1 -1
  13. package/build/data/mods/gen1/scripts.js +4 -2
  14. package/build/data/mods/gen1/scripts.js.map +1 -1
  15. package/build/data/mods/gen3/formats-data.js +3 -3
  16. package/build/data/mods/gen3/formats-data.js.map +1 -1
  17. package/build/data/mods/gen6/formats-data.js +64 -64
  18. package/build/data/mods/gen6/formats-data.js.map +1 -1
  19. package/build/data/rulesets.js +108 -1
  20. package/build/data/rulesets.js.map +1 -1
  21. package/build/sim/battle-stream.js +3 -0
  22. package/build/sim/battle-stream.js.map +1 -1
  23. package/build/sim/exported-global-types.d.ts +2 -0
  24. package/build/sim/global-types.d.ts +2 -0
  25. package/build/sim/pokemon.d.ts +1 -0
  26. package/build/sim/pokemon.js +1 -0
  27. package/build/sim/pokemon.js.map +1 -1
  28. package/config/formats.ts +294 -318
  29. package/data/aliases.ts +4 -4
  30. package/data/conditions.ts +1 -1
  31. package/data/formats-data.ts +7 -8
  32. package/data/mods/gen1/formats-data.ts +1 -1
  33. package/data/mods/gen1/moves.ts +5 -0
  34. package/data/mods/gen1/scripts.ts +3 -2
  35. package/data/mods/gen3/formats-data.ts +3 -3
  36. package/data/mods/gen6/formats-data.ts +64 -64
  37. package/data/rulesets.ts +92 -1
  38. package/package.json +2 -2
  39. package/sim/battle-stream.ts +3 -0
  40. package/sim/exported-global-types.ts +2 -0
  41. package/sim/global-types.ts +2 -0
  42. package/sim/pokemon.ts +2 -0
package/data/aliases.ts CHANGED
@@ -32,11 +32,11 @@ export const Aliases: {[alias: string]: string} = {
32
32
  mnm: "[Gen 8] Mix and Mega",
33
33
  aaa: "[Gen 8] Almost Any Ability",
34
34
  stab: "[Gen 8] STABmons",
35
+ gg: "[Gen 8] Godly Gift",
35
36
  camo: "[Gen 8] Camomons",
36
37
  ffa: "[Gen 8] Free-For-All",
37
38
  ts: "[Gen 8] Tier Shift",
38
- ph: "[Gen 8 BDSP] Pure Hackmons",
39
- purehackmons: "[Gen 8 BDSP] Pure Hackmons",
39
+ ph: "[Gen 8] Pure Hackmons",
40
40
  gen7bh: "[Gen 7] Balanced Hackmons",
41
41
  gen7mnm: "[Gen 7] Mix and Mega",
42
42
  gen7stab: "[Gen 7] STABmons",
@@ -68,8 +68,8 @@ export const Aliases: {[alias: string]: string} = {
68
68
  gen6ag: "[Gen 6] Anything Goes",
69
69
  crossevo: "[Gen 8] Cross Evolution",
70
70
  mayhem: "[Gen 8] Random Battle Mayhem",
71
- omotm: "[Gen 8] Broken Record",
72
- lcotm: "[Gen 8] Inheritance",
71
+ omotm: "[Gen 8] Re-Evolution",
72
+ lcotm: "[Gen 8] Category Swap",
73
73
 
74
74
  // mega evos
75
75
  fabio: "Ampharos-Mega",
@@ -716,7 +716,7 @@ export const Conditions: {[k: string]: ConditionData} = {
716
716
  if (pokemon.baseSpecies.name === 'Shedinja') return;
717
717
 
718
718
  // Changes based on dynamax level, 2 is max (at LVL 10)
719
- const ratio = 2; // TODO: Implement Dynamax levels
719
+ const ratio = 1.5 + (pokemon.dynamaxLevel * 0.05);
720
720
 
721
721
  pokemon.maxhp = Math.floor(pokemon.maxhp * ratio);
722
722
  pokemon.hp = Math.floor(pokemon.hp * ratio);
@@ -3594,7 +3594,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
3594
3594
  tier: "Illegal",
3595
3595
  },
3596
3596
  basculin: {
3597
- randomBattleMoves: ["aquajet", "crunch", "flipturn", "headsmash", "liquidation", "psychicfangs"],
3597
+ randomBattleMoves: ["aquajet", "crunch", "flipturn", "liquidation", "psychicfangs", "superpower"],
3598
3598
  randomBattleLevel: 86,
3599
3599
  randomDoubleBattleMoves: ["flipturn", "headsmash", "icebeam", "liquidation", "muddywater", "protect", "psychicfangs", "superpower"],
3600
3600
  randomDoubleBattleLevel: 86,
@@ -3602,7 +3602,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
3602
3602
  doublesTier: "(DUU)",
3603
3603
  },
3604
3604
  basculinbluestriped: {
3605
- randomBattleMoves: ["aquajet", "crunch", "flipturn", "headsmash", "liquidation", "psychicfangs"],
3605
+ randomBattleMoves: ["aquajet", "crunch", "flipturn", "liquidation", "psychicfangs", "superpower"],
3606
3606
  randomBattleLevel: 86,
3607
3607
  randomDoubleBattleMoves: ["aquajet", "flipturn", "headsmash", "icebeam", "liquidation", "protect", "psychicfangs", "superpower"],
3608
3608
  randomDoubleBattleLevel: 86,
@@ -4029,7 +4029,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
4029
4029
  doublesTier: "(DUU)",
4030
4030
  },
4031
4031
  druddigon: {
4032
- randomBattleMoves: ["earthquake", "glare", "outrage", "stealthrock", "suckerpunch", "superpower"],
4032
+ randomBattleMoves: ["earthquake", "glare", "gunkshot", "outrage", "stealthrock", "suckerpunch", "superpower"],
4033
4033
  randomBattleLevel: 84,
4034
4034
  randomDoubleBattleMoves: ["firepunch", "glare", "gunkshot", "protect", "scaleshot", "suckerpunch"],
4035
4035
  randomDoubleBattleLevel: 87,
@@ -4070,7 +4070,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
4070
4070
  tier: "NFE",
4071
4071
  },
4072
4072
  braviary: {
4073
- randomBattleMoves: ["bravebird", "bulkup", "closecombat", "retaliate", "roost", "uturn"],
4073
+ randomBattleMoves: ["bravebird", "bulkup", "closecombat", "roost"],
4074
4074
  randomBattleLevel: 82,
4075
4075
  randomDoubleBattleMoves: ["bravebird", "closecombat", "protect", "roost", "tailwind"],
4076
4076
  randomDoubleBattleLevel: 82,
@@ -4962,7 +4962,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
4962
4962
  randomBattleLevel: 80,
4963
4963
  randomDoubleBattleMoves: ["leechlife", "liquidation", "lunge", "protect", "stickyweb", "wideguard"],
4964
4964
  randomDoubleBattleLevel: 84,
4965
- tier: "PU",
4965
+ tier: "PUBL",
4966
4966
  doublesTier: "DUU",
4967
4967
  },
4968
4968
  araquanidtotem: {
@@ -5159,11 +5159,10 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
5159
5159
  doublesTier: "(DUU)",
5160
5160
  },
5161
5161
  silvallyflying: {
5162
- randomBattleMoves: ["firefang", "ironhead", "multiattack", "rockslide", "swordsdance"],
5162
+ randomBattleMoves: ["flamecharge", "ironhead", "multiattack", "rockslide", "swordsdance"],
5163
5163
  randomBattleLevel: 84,
5164
5164
  randomDoubleBattleMoves: ["firefang", "ironhead", "multiattack", "swordsdance", "tailwind"],
5165
5165
  randomDoubleBattleLevel: 86,
5166
- randomBattleNoDynamaxMoves: ["flamecharge", "ironhead", "multiattack", "rockslide", "swordsdance"],
5167
5166
  tier: "(PU)",
5168
5167
  doublesTier: "(DUU)",
5169
5168
  },
@@ -5433,7 +5432,7 @@ export const FormatsData: {[k: string]: SpeciesFormatsData} = {
5433
5432
  randomBattleLevel: 84,
5434
5433
  randomDoubleBattleMoves: ["dracometeor", "fireblast", "knockoff", "protect", "sludgebomb"],
5435
5434
  randomDoubleBattleLevel: 88,
5436
- tier: "PU",
5435
+ tier: "PUBL",
5437
5436
  doublesTier: "(DUU)",
5438
5437
  },
5439
5438
  necrozma: {
@@ -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;
@@ -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: {