@pkmn/sim 0.5.10 → 0.5.11
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.
- package/build/config/formats.js +29 -26
- package/build/config/formats.js.map +1 -1
- package/build/data/aliases.js +1 -0
- package/build/data/aliases.js.map +1 -1
- package/build/data/formats-data.js +3 -3
- package/build/data/formats-data.js.map +1 -1
- package/build/data/learnsets.js +5 -4
- package/build/data/learnsets.js.map +1 -1
- package/build/data/mods/gen3/formats-data.js +1 -1
- package/build/data/mods/gen3/formats-data.js.map +1 -1
- package/build/data/mods/gen7/formats-data.js +1 -1
- package/build/data/mods/gen7/formats-data.js.map +1 -1
- package/build/data/tags.js +4 -4
- package/build/data/tags.js.map +1 -1
- package/build/sim/battle-actions.js +0 -6
- package/build/sim/battle-actions.js.map +1 -1
- package/build/sim/battle-queue.js +1 -3
- package/build/sim/battle-queue.js.map +1 -1
- package/config/formats.ts +29 -26
- package/data/aliases.ts +1 -0
- package/data/formats-data.ts +3 -3
- package/data/learnsets.ts +5 -4
- package/data/mods/gen3/formats-data.ts +1 -1
- package/data/mods/gen7/formats-data.ts +1 -1
- package/data/tags.ts +4 -4
- package/package.json +2 -2
- package/sim/battle-actions.ts +0 -7
- package/sim/battle-queue.ts +1 -3
package/build/config/formats.js
CHANGED
|
@@ -191,7 +191,7 @@ exports.Formats = [
|
|
|
191
191
|
],
|
|
192
192
|
banlist: [
|
|
193
193
|
'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Dialga', 'Dragonite', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Jirachi',
|
|
194
|
-
'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Melmetal', 'Mew', 'Mewtwo', 'Mimikyu', 'Necrozma-Dawn-Wings',
|
|
194
|
+
'Kyogre', 'Kyurem-Black', 'Kyurem-White', 'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Melmetal', 'Mew', 'Mewtwo', 'Mimikyu', 'Necrozma', 'Necrozma-Dawn-Wings',
|
|
195
195
|
'Necrozma-Dusk-Mane', 'Palkia', 'Rayquaza', 'Reshiram', 'Sableye', 'Snorlax', 'Solgaleo', 'Victini', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned',
|
|
196
196
|
'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Moody', 'Power Construct', 'Bright Powder', 'Focus Band', 'Focus Sash', 'Lax Incense', 'Quick Claw', 'Perish Song',
|
|
197
197
|
],
|
|
@@ -443,7 +443,7 @@ exports.Formats = [
|
|
|
443
443
|
ruleset: ['Standard NatDex', 'OHKO Clause', 'Evasion Moves Clause', 'Species Clause', 'Dynamax Clause', 'Sleep Clause Mod'],
|
|
444
444
|
banlist: [
|
|
445
445
|
'Alakazam-Mega', 'Arceus', 'Blastoise-Mega', 'Blaziken-Mega', 'Calyrex-Ice', 'Calyrex-Shadow', 'Cinderace', 'Darkrai',
|
|
446
|
-
'Darmanitan-Galar', 'Deoxys-Attack', 'Deoxys-Base', 'Deoxys-Speed', 'Dialga', 'Dracovish', 'Eternatus',
|
|
446
|
+
'Darmanitan-Galar', 'Deoxys-Attack', 'Deoxys-Base', 'Deoxys-Speed', 'Dialga', 'Dracovish', 'Dragapult', 'Eternatus',
|
|
447
447
|
'Genesect', 'Gengar-Mega', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kangaskhan-Mega', 'Kyogre', 'Kyurem-Black',
|
|
448
448
|
'Kyurem-White', 'Landorus-Base', 'Lucario-Mega', 'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Metagross-Mega', 'Mewtwo',
|
|
449
449
|
'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Necrozma-Ultra', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram',
|
|
@@ -472,16 +472,14 @@ exports.Formats = [
|
|
|
472
472
|
'Drizzle', 'Drought',
|
|
473
473
|
// Slowbronite is banned so it doesn't validate on Galarian Slowbro
|
|
474
474
|
'Slowbronite',
|
|
475
|
-
// NDOU suspect
|
|
476
|
-
'Dragapult',
|
|
477
475
|
],
|
|
478
476
|
// Used to distinguish UU from below UU in the client
|
|
479
477
|
restricted: [
|
|
480
|
-
'Aegislash', '
|
|
481
|
-
'
|
|
482
|
-
'
|
|
483
|
-
'
|
|
484
|
-
'
|
|
478
|
+
'Aegislash', 'Altaria-Mega', 'Amoonguss', 'Azumarill', 'Beedrill-Mega', 'Breloom', 'Celesteela', 'Chandelure', 'Donphan', 'Dracozolt',
|
|
479
|
+
'Dragonite', 'Feraligatr', 'Gastrodon', 'Hatterene', 'Hippowdon', 'Infernape', 'Keldeo', 'Krookodile', 'Mamoswine', 'Mandibuzz',
|
|
480
|
+
'Manectric-Mega', 'Melmetal', 'Mienshao', 'Moltres-Base', 'Nidoking', 'Nidoqueen', 'Nihilego', 'Quagsire', 'Regieleki', 'Ribombee',
|
|
481
|
+
'Rotom-Heat', 'Rotom-Wash', 'Salamence', 'Scizor', 'Skarmory', 'Slowking-Base', 'Swampert-Base', 'Talonflame', 'Tangrowth', 'Tornadus-Base',
|
|
482
|
+
'Umbreon', 'Urshifu-Rapid-Strike',
|
|
485
483
|
],
|
|
486
484
|
},
|
|
487
485
|
{
|
|
@@ -608,9 +606,9 @@ exports.Formats = [
|
|
|
608
606
|
'Arena Trap', 'Contrary', 'Drizzle ++ Swift Swim', 'Drought ++ Chlorophyll', 'Electric Surge ++ Surge Surfer',
|
|
609
607
|
'Fur Coat', 'Guts', 'Harvest', 'Huge Power', 'Imposter', 'Innards Out', 'Libero', 'Magic Bounce', 'Magic Guard',
|
|
610
608
|
'Magnet Pull', 'Mold Breaker', 'Moody', 'Neutralizing Gas', 'Power Construct', 'Queenly Majesty', 'Quick Draw',
|
|
611
|
-
'Regenerator', 'Sand Rush', 'Sand Veil', 'Shadow Tag', 'Simple', 'Snow Cloak', 'Snow Warning ++ Slush Rush',
|
|
612
|
-
'Stakeout', 'Steelworker ++ Steely Spirit', 'Tinted Lens', 'Triage', 'Unaware',
|
|
613
|
-
'Baton Pass',
|
|
609
|
+
'Regenerator', 'Sand Rush', 'Sand Veil', 'Shadow Tag', 'Simple', 'Snow Cloak', 'Snow Warning ++ Slush Rush',
|
|
610
|
+
'Speed Boost', 'Stakeout', 'Steelworker ++ Steely Spirit', 'Stench', 'Tinted Lens', 'Triage', 'Unaware',
|
|
611
|
+
'Unburden', 'Water Bubble', 'King\'s Rock', 'Baton Pass',
|
|
614
612
|
],
|
|
615
613
|
getSharedPower(pokemon) {
|
|
616
614
|
const sharedPower = new Set();
|
|
@@ -662,7 +660,7 @@ exports.Formats = [
|
|
|
662
660
|
],
|
|
663
661
|
mod: 'gen8',
|
|
664
662
|
// searchShow: false,
|
|
665
|
-
ruleset: ['Standard', 'Overflow Stat Mod', 'Dynamax Clause'],
|
|
663
|
+
ruleset: ['Standard', 'Overflow Stat Mod', 'Dynamax Clause', '2 Ability Clause'],
|
|
666
664
|
banlist: ['Corsola-Galar', 'Sneasel', 'Type: Null', 'Arena Trap', 'Ice Scales', 'Moody', 'King\'s Rock', 'Baton Pass'],
|
|
667
665
|
restricted: ['Chansey', 'Lunala', 'Shedinja', 'Solgaleo', 'Gorilla Tactics', 'Huge Power', 'Pure Power', 'Shadow Tag'],
|
|
668
666
|
onValidateTeam(team) {
|
|
@@ -736,6 +734,12 @@ exports.Formats = [
|
|
|
736
734
|
`${species.name} cannot cross evolve into ${crossSpecies.name} because they are not consecutive evolution stages.`,
|
|
737
735
|
];
|
|
738
736
|
}
|
|
737
|
+
const item = this.dex.items.get(set.item);
|
|
738
|
+
if (item.itemUser?.length) {
|
|
739
|
+
if (!item.itemUser.includes(crossSpecies.name) || crossSpecies.name !== species.name) {
|
|
740
|
+
return [`${species.name} cannot use ${item.name} because it is cross evolved into ${crossSpecies.name}.`];
|
|
741
|
+
}
|
|
742
|
+
}
|
|
739
743
|
const ability = this.dex.abilities.get(set.ability);
|
|
740
744
|
if (!this.ruleTable.isRestricted(`ability:${ability.id}`) || Object.values(species.abilities).includes(ability.name)) {
|
|
741
745
|
set.species = crossSpecies.name;
|
|
@@ -770,7 +774,6 @@ exports.Formats = [
|
|
|
770
774
|
if (!crossPrevoSpecies.prevo !== !species.prevo)
|
|
771
775
|
return;
|
|
772
776
|
const mixedSpecies = this.dex.deepClone(species);
|
|
773
|
-
mixedSpecies.baseSpecies = mixedSpecies.name = `${species.name}-${crossSpecies.name}`;
|
|
774
777
|
mixedSpecies.weightkg =
|
|
775
778
|
Math.max(0.1, +(species.weightkg + crossSpecies.weightkg - crossPrevoSpecies.weightkg)).toFixed(1);
|
|
776
779
|
mixedSpecies.nfe = false;
|
|
@@ -879,12 +882,12 @@ exports.Formats = [
|
|
|
879
882
|
mod: 'mixandmega',
|
|
880
883
|
ruleset: ['Obtainable', 'Species Clause', 'Nickname Clause', 'OHKO Clause', 'Evasion Moves Clause', 'Team Preview', 'HP Percentage Mod', 'Cancel Mod', 'Overflow Stat Mod', 'Dynamax Clause', 'Sleep Clause Mod', 'Endless Battle Clause'],
|
|
881
884
|
banlist: [
|
|
882
|
-
'Calyrex-Shadow', 'Kyogre', 'Zacian',
|
|
885
|
+
'Calyrex-Shadow', 'Eternatus', 'Kyogre', 'Zacian',
|
|
883
886
|
'Beedrillite', 'Blazikenite', 'Gengarite', 'Kangaskhanite', 'Mawilite', 'Medichamite', 'Pidgeotite',
|
|
884
887
|
'Moody', 'Shadow Tag', 'Baton Pass', 'Electrify',
|
|
885
888
|
],
|
|
886
889
|
restricted: [
|
|
887
|
-
'Calyrex-Ice', 'Dialga', '
|
|
890
|
+
'Calyrex-Ice', 'Dialga', 'Gengar', 'Giratina', 'Groudon', 'Ho-Oh', 'Kyurem-Black', 'Kyurem-White',
|
|
888
891
|
'Lugia', 'Lunala', 'Marshadow', 'Melmetal', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane',
|
|
889
892
|
'Palkia', 'Pheromosa', 'Rayquaza', 'Regigigas', 'Reshiram', 'Urshifu', 'Urshifu-Rapid-Strike', 'Xerneas',
|
|
890
893
|
'Yveltal', 'Zekrom', 'Zygarde-Complete',
|
|
@@ -978,9 +981,10 @@ exports.Formats = [
|
|
|
978
981
|
mod: 'gen8',
|
|
979
982
|
ruleset: ['Standard', 'Dynamax Clause', 'Sleep Moves Clause'],
|
|
980
983
|
banlist: [
|
|
981
|
-
'Blissey', 'Calyrex-Shadow', 'Chansey', 'Dragapult', 'Hawlucha', 'Marowak-Alola', 'Melmetal', 'Pikachu',
|
|
982
|
-
'Xerneas', 'Zacian', 'Zacian-Crowned', 'Uber > 1', 'AG ++ Uber > 1', 'Arena Trap', 'Huge Power', 'Moody',
|
|
983
|
-
'Shadow Tag', 'Swift Swim', 'Bright Powder', 'Focus Band', 'King\'s Rock', 'Lax Incense', 'Quick Claw',
|
|
984
|
+
'Blissey', 'Calyrex-Shadow', 'Chansey', 'Dragapult', 'Eternatus', 'Hawlucha', 'Marowak-Alola', 'Melmetal', 'Pikachu',
|
|
985
|
+
'Toxapex', 'Xerneas', 'Zacian', 'Zacian-Crowned', 'Uber > 1', 'AG ++ Uber > 1', 'Arena Trap', 'Huge Power', 'Moody',
|
|
986
|
+
'Pure Power', 'Shadow Tag', 'Swift Swim', 'Bright Powder', 'Focus Band', 'King\'s Rock', 'Lax Incense', 'Quick Claw',
|
|
987
|
+
'Baton Pass',
|
|
984
988
|
],
|
|
985
989
|
onValidateTeam(team) {
|
|
986
990
|
const gods = new Set();
|
|
@@ -1106,7 +1110,7 @@ exports.Formats = [
|
|
|
1106
1110
|
],
|
|
1107
1111
|
mod: 'gen8bdsp',
|
|
1108
1112
|
ruleset: ['[Gen 8 BDSP] RU'],
|
|
1109
|
-
banlist: ['RU', 'NUBL'],
|
|
1113
|
+
banlist: ['RU', 'NUBL', 'Damp Rock', 'Heat Rock'],
|
|
1110
1114
|
},
|
|
1111
1115
|
{
|
|
1112
1116
|
name: "[Gen 8 BDSP] LC",
|
|
@@ -1115,7 +1119,7 @@ exports.Formats = [
|
|
|
1115
1119
|
],
|
|
1116
1120
|
mod: 'gen8bdsp',
|
|
1117
1121
|
ruleset: ['Little Cup', 'Standard'],
|
|
1118
|
-
banlist: ['Gligar', 'Meditite', 'Misdreavus', 'Murkrow', 'Scyther', 'Sneasel', 'Tangela', 'Vulpix', 'Yanma', 'Moody', 'Baton Pass'],
|
|
1122
|
+
banlist: ['Gligar', 'Meditite', 'Misdreavus', 'Murkrow', 'Scyther', 'Sneasel', 'Tangela', 'Vulpix', 'Yanma', 'Moody', 'Baton Pass', 'Sticky Web'],
|
|
1119
1123
|
},
|
|
1120
1124
|
{
|
|
1121
1125
|
name: "[Gen 8 BDSP] Monotype",
|
|
@@ -1190,10 +1194,10 @@ exports.Formats = [
|
|
|
1190
1194
|
ruleset: ['Standard', 'Dynamax Clause', 'Camomons Mod'],
|
|
1191
1195
|
banlist: [
|
|
1192
1196
|
'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragonite', 'Eternatus', 'Genesect', 'Giratina', 'Giratina-Origin',
|
|
1193
|
-
'Groudon', 'Ho-Oh', 'Hydreigon', 'Kartana', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', '
|
|
1194
|
-
'
|
|
1195
|
-
'
|
|
1196
|
-
'
|
|
1197
|
+
'Groudon', 'Ho-Oh', 'Hydreigon', 'Kartana', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Landorus-Base', 'Lugia', 'Lunala', 'Marshadow',
|
|
1198
|
+
'Mew', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Palkia', 'Pheromosa', 'Rayquaza', 'Reshiram', 'Shedinja', 'Solgaleo',
|
|
1199
|
+
'Spectrier', 'Tornadus-Therian', 'Volcarona', 'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Zeraora',
|
|
1200
|
+
'Zygarde-Base', 'Arena Trap', 'Moody', 'Power Construct', 'Shadow Tag', 'Baton Pass', 'Calm Mind',
|
|
1197
1201
|
],
|
|
1198
1202
|
},
|
|
1199
1203
|
{
|
|
@@ -1994,7 +1998,6 @@ exports.Formats = [
|
|
|
1994
1998
|
desc: `[Gen 8] Random Battle (No Dmax) with Team Preview and elements of Camomons, Inverse, Scalemons, and Shared Power.`,
|
|
1995
1999
|
mod: 'sharedpower',
|
|
1996
2000
|
team: 'random',
|
|
1997
|
-
searchShow: false,
|
|
1998
2001
|
ruleset: ['[Gen 8] Random Battle', 'Team Preview', 'Dynamax Clause', 'Camomons Mod', 'Inverse Mod', 'Scalemons Mod'],
|
|
1999
2002
|
onBeforeSwitchIn(pokemon) {
|
|
2000
2003
|
let format = this.format;
|