@pkmn/sim 0.5.27 → 0.6.1
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/README.md +3 -2
- package/build/config/formats.js +26 -33
- package/build/config/formats.js.map +1 -1
- package/build/data/abilities.js +6 -4
- package/build/data/abilities.js.map +1 -1
- package/build/data/items.js +5 -5
- package/build/data/items.js.map +1 -1
- package/build/data/learnsets.js +3 -8
- package/build/data/learnsets.js.map +1 -1
- package/build/data/mods/gen2/formats-data.js +2 -2
- package/build/data/mods/gen2/formats-data.js.map +1 -1
- package/build/data/mods/gen5/formats-data.js +69 -69
- package/build/data/mods/gen5/formats-data.js.map +1 -1
- package/build/data/pokedex.js +6 -6
- package/build/data/pokedex.js.map +1 -1
- package/build/data/text/items.js +5 -5
- package/build/sim/battle.js +2 -2
- package/build/sim/battle.js.map +1 -1
- package/build/sim/dex.js +2 -2
- package/build/sim/dex.js.map +1 -1
- package/config/formats.ts +27 -34
- package/data/abilities.ts +6 -4
- package/data/items.ts +5 -5
- package/data/learnsets.ts +3 -8
- package/data/mods/gen2/formats-data.ts +2 -2
- package/data/mods/gen5/formats-data.ts +69 -69
- package/data/pokedex.ts +6 -6
- package/data/text/items.ts +5 -5
- package/package.json +3 -3
- package/sim/battle.ts +2 -2
- package/sim/dex.ts +1 -1
package/config/formats.ts
CHANGED
|
@@ -232,7 +232,7 @@ export const Formats: FormatList = [
|
|
|
232
232
|
mod: 'gen8',
|
|
233
233
|
ruleset: ['[Gen 8] PU'],
|
|
234
234
|
banlist: [
|
|
235
|
-
'PU', 'Arctovish', 'Aurorus', 'Basculin', 'Centiskorch', 'Drampa', 'Exeggutor-Alola', 'Gallade', 'Haunter', 'Magmortar', 'Magneton',
|
|
235
|
+
'PU', 'Arctovish', 'Aurorus', 'Basculin', 'Centiskorch', 'Drampa', 'Exeggutor-Alola', 'Gallade', 'Glastrier', 'Haunter', 'Magmortar', 'Magneton',
|
|
236
236
|
'Malamar', 'Ninjask', 'Omastar', 'Rotom-Frost', 'Turtonator', 'Vanilluxe', 'Vikavolt', 'Silvally-Dragon', 'Silvally-Ground', 'Sneasel',
|
|
237
237
|
'Damp Rock', 'Grassy Seed',
|
|
238
238
|
],
|
|
@@ -288,24 +288,6 @@ export const Formats: FormatList = [
|
|
|
288
288
|
banlist: ['Eternatus-Eternamax'],
|
|
289
289
|
unbanlist: ['Mythical', 'Restricted Legendary'],
|
|
290
290
|
},
|
|
291
|
-
{
|
|
292
|
-
name: "[Gen 8] Champion League",
|
|
293
|
-
threads: [
|
|
294
|
-
`• <a href="https://www.smogon.com/forums/threads/3707533/">Champion League Discussion</a>`,
|
|
295
|
-
],
|
|
296
|
-
|
|
297
|
-
mod: 'gen8',
|
|
298
|
-
ruleset: ['Flat Rules', '!! Adjust Level = 50', 'Min Source Gen = 8'],
|
|
299
|
-
banlist: ['All Pokemon'],
|
|
300
|
-
unbanlist: [
|
|
301
|
-
'Venusaur', 'Charizard', 'Blastoise', 'Sandslash-Base', 'Ninetales-Base', 'Arcanine', 'Alakazam', 'Tentacruel', 'Magneton', 'Cloyster',
|
|
302
|
-
'Exeggutor-Base', 'Rhydon', 'Gyarados', 'Lapras', 'Vaporeon', 'Jolteon', 'Flareon', 'Aerodactyl', 'Dragonite', 'Heracross', 'Skarmory',
|
|
303
|
-
'Tyranitar', 'Ludicolo', 'Gardevoir', 'Aggron', 'Wailord', 'Altaria', 'Whiscash', 'Claydol', 'Cradily', 'Armaldo', 'Milotic', 'Salamence',
|
|
304
|
-
'Metagross', 'Roserade', 'Gastrodon', 'Spiritomb', 'Garchomp', 'Lucario', 'Rhyperior', 'Togekiss', 'Seismitoad', 'Archeops',
|
|
305
|
-
'Vanilluxe', 'Escavalier', 'Haxorus', 'Accelgor', 'Druddigon', 'Bouffalant', 'Hydreigon', 'Volcarona', 'Aegislash', 'Tyrantrum',
|
|
306
|
-
'Aurorus', 'Hawlucha', 'Carbink', 'Goodra', 'Gourgeist', 'Rillaboom', 'Cinderace', 'Inteleon', 'Mr. Rime', 'Dragapult',
|
|
307
|
-
],
|
|
308
|
-
},
|
|
309
291
|
{
|
|
310
292
|
name: "[Gen 8] Custom Game",
|
|
311
293
|
|
|
@@ -400,6 +382,16 @@ export const Formats: FormatList = [
|
|
|
400
382
|
banlist: ['Eternatus-Eternamax'],
|
|
401
383
|
unbanlist: ['Mythical', 'Restricted Legendary'],
|
|
402
384
|
},
|
|
385
|
+
{
|
|
386
|
+
name: "[Gen 8] Ultimate Finale",
|
|
387
|
+
threads: [
|
|
388
|
+
`• <a href="https://www.smogon.com/forums/threads/3709248/">Ultimate Finale Discussion</a>`,
|
|
389
|
+
],
|
|
390
|
+
|
|
391
|
+
mod: 'gen8',
|
|
392
|
+
gameType: 'doubles',
|
|
393
|
+
ruleset: ['Obtainable', 'Team Preview', 'Nickname Clause', 'Adjust Level = 100', 'Cancel Mod', 'Min Source Gen = 8'],
|
|
394
|
+
},
|
|
403
395
|
{
|
|
404
396
|
name: "[Gen 8] Spikemuth Cup",
|
|
405
397
|
|
|
@@ -656,11 +648,12 @@ export const Formats: FormatList = [
|
|
|
656
648
|
mod: 'gen8',
|
|
657
649
|
ruleset: ['Standard OMs', 'Revelationmons Mod', 'Sleep Moves Clause'],
|
|
658
650
|
banlist: [
|
|
659
|
-
'Blacephalon', 'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragonite', 'Dragapult', 'Eternatus',
|
|
660
|
-
'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kommo-o', 'Kyogre', 'Kyurem-Black', 'Kyurem-White',
|
|
661
|
-
'Magearna', 'Marshadow', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane',
|
|
662
|
-
'
|
|
663
|
-
'
|
|
651
|
+
'Blacephalon', 'Calyrex-Ice', 'Calyrex-Shadow', 'Darmanitan-Galar', 'Dialga', 'Dracovish', 'Dragonite', 'Dragapult', 'Eternatus',
|
|
652
|
+
'Genesect', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kingdra', 'Kommo-o', 'Kyogre', 'Kyurem-Black', 'Kyurem-White',
|
|
653
|
+
'Landorus-Base', 'Lugia', 'Lunala', 'Magearna', 'Marshadow', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane',
|
|
654
|
+
'Noivern', 'Palkia', 'Pheromosa', 'Polteageist', 'Rayquaza', 'Reshiram', 'Solgaleo', 'Spectrier', 'Thundurus-Therian', 'Urshifu-Base',
|
|
655
|
+
'Xerneas', 'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta', 'Zamazenta-Crowned', 'Zekrom', 'Zygarde-Base', 'Arena Trap', 'Magnet Pull',
|
|
656
|
+
'Moody', 'Power Construct', 'Shadow Tag', 'King\'s Rock', 'Baton Pass',
|
|
664
657
|
],
|
|
665
658
|
restricted: ['Bolt Beak', 'Close Combat', 'U-turn', 'Volt Switch'],
|
|
666
659
|
},
|
|
@@ -717,14 +710,14 @@ export const Formats: FormatList = [
|
|
|
717
710
|
mod: 'gen8',
|
|
718
711
|
ruleset: ['Standard OMs', '!Obtainable Abilities', '2 Ability Clause', 'Sleep Moves Clause'],
|
|
719
712
|
banlist: [
|
|
720
|
-
'Archeops', 'Blacephalon', 'Buzzwole', 'Calyrex-Ice', 'Calyrex-Shadow', 'Dialga', 'Dracovish', 'Dragapult', 'Dragonite', 'Eternatus',
|
|
721
|
-
'Gengar', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Keldeo', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White',
|
|
722
|
-
'
|
|
723
|
-
'
|
|
724
|
-
'
|
|
725
|
-
'
|
|
726
|
-
'
|
|
727
|
-
'
|
|
713
|
+
'Archeops', 'Blacephalon', 'Buzzwole', 'Calyrex-Ice', 'Calyrex-Shadow', 'Dialga', 'Dracovish', 'Dragapult', 'Dragonite', 'Eternatus', 'Genesect',
|
|
714
|
+
'Gengar', 'Giratina', 'Giratina-Origin', 'Groudon', 'Ho-Oh', 'Kartana', 'Keldeo', 'Kyogre', 'Kyurem', 'Kyurem-Black', 'Kyurem-White', 'Lugia',
|
|
715
|
+
'Lunala', 'Magearna', 'Marshadow', 'Melmetal', 'Mewtwo', 'Naganadel', 'Necrozma-Dawn-Wings', 'Necrozma-Dusk-Mane', 'Noivern', 'Palkia', 'Pheromosa',
|
|
716
|
+
'Rayquaza', 'Regigigas', 'Reshiram', 'Shedinja', 'Solgaleo', 'Spectrier', 'Urshifu', 'Urshifu-Rapid-Strike', 'Victini', 'Weavile', 'Xerneas',
|
|
717
|
+
'Yveltal', 'Zacian', 'Zacian-Crowned', 'Zamazenta-Base', 'Zekrom', 'Zeraora', 'Zygarde-Base', 'Arena Trap', 'Comatose', 'Contrary', 'Fluffy',
|
|
718
|
+
'Fur Coat', 'Gorilla Tactics', 'Huge Power', 'Ice Scales', 'Illusion', 'Imposter', 'Innards Out', 'Intrepid Sword', 'Libero', 'Magic Bounce',
|
|
719
|
+
'Magnet Pull', 'Moody', 'Neutralizing Gas', 'Parental Bond', 'Poison Heal', 'Protean', 'Pure Power', 'Shadow Tag', 'Simple', 'Stakeout',
|
|
720
|
+
'Speed Boost', 'Unburden', 'Water Bubble', 'Wonder Guard', 'King\'s Rock', 'Baton Pass',
|
|
728
721
|
],
|
|
729
722
|
},
|
|
730
723
|
{
|
|
@@ -2585,7 +2578,6 @@ export const Formats: FormatList = [
|
|
|
2585
2578
|
mod: 'gen2',
|
|
2586
2579
|
ruleset: ['[Gen 2] OU'],
|
|
2587
2580
|
banlist: ['OU'],
|
|
2588
|
-
unbanlist: ['Mean Look + Baton Pass', 'Spider Web + Baton Pass'],
|
|
2589
2581
|
},
|
|
2590
2582
|
|
|
2591
2583
|
// Past Gens OU
|
|
@@ -3878,7 +3870,7 @@ export const Formats: FormatList = [
|
|
|
3878
3870
|
mod: 'gen2',
|
|
3879
3871
|
searchShow: false,
|
|
3880
3872
|
ruleset: ['[Gen 2] OU'],
|
|
3881
|
-
banlist: ['OU', 'UUBL'],
|
|
3873
|
+
banlist: ['OU', 'UUBL', 'Agility + Baton Pass'],
|
|
3882
3874
|
unbanlist: ['Mean Look + Baton Pass', 'Spider Web + Baton Pass'],
|
|
3883
3875
|
},
|
|
3884
3876
|
{
|
|
@@ -3889,6 +3881,7 @@ export const Formats: FormatList = [
|
|
|
3889
3881
|
searchShow: false,
|
|
3890
3882
|
ruleset: ['[Gen 2] UU'],
|
|
3891
3883
|
banlist: ['UU', 'NUBL'],
|
|
3884
|
+
unbanlist: ['Agility + Baton Pass'],
|
|
3892
3885
|
},
|
|
3893
3886
|
{
|
|
3894
3887
|
name: "[Gen 2] 1v1",
|
package/data/abilities.ts
CHANGED
|
@@ -516,8 +516,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
516
516
|
}
|
|
517
517
|
}
|
|
518
518
|
if (statsLowered) {
|
|
519
|
-
this.
|
|
520
|
-
this.boost({spa: 2}, target, target, null, true);
|
|
519
|
+
this.boost({spa: 2}, target, target, null, false, true);
|
|
521
520
|
}
|
|
522
521
|
},
|
|
523
522
|
name: "Competitive",
|
|
@@ -706,8 +705,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
706
705
|
}
|
|
707
706
|
}
|
|
708
707
|
if (statsLowered) {
|
|
709
|
-
this.
|
|
710
|
-
this.boost({atk: 2}, target, target, null, true);
|
|
708
|
+
this.boost({atk: 2}, target, target, null, false, true);
|
|
711
709
|
}
|
|
712
710
|
},
|
|
713
711
|
name: "Defiant",
|
|
@@ -2350,6 +2348,7 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
2350
2348
|
if (pokemon.transformed) return;
|
|
2351
2349
|
this.add('-ability', pokemon, 'Neutralizing Gas');
|
|
2352
2350
|
pokemon.abilityState.ending = false;
|
|
2351
|
+
const strongWeathers = ['desolateland', 'primordialsea', 'deltastream'];
|
|
2353
2352
|
for (const target of this.getAllActive()) {
|
|
2354
2353
|
if (target.illusion) {
|
|
2355
2354
|
this.singleEvent('End', this.dex.abilities.get('Illusion'), target.abilityState, target, pokemon, 'neutralizinggas');
|
|
@@ -2358,6 +2357,9 @@ export const Abilities: {[abilityid: string]: AbilityData} = {
|
|
|
2358
2357
|
delete target.volatiles['slowstart'];
|
|
2359
2358
|
this.add('-end', target, 'Slow Start', '[silent]');
|
|
2360
2359
|
}
|
|
2360
|
+
if (strongWeathers.includes(target.getAbility().id)) {
|
|
2361
|
+
this.singleEvent('End', this.dex.abilities.get(target.getAbility().id), target.abilityState, target, pokemon, 'neutralizinggas');
|
|
2362
|
+
}
|
|
2361
2363
|
}
|
|
2362
2364
|
},
|
|
2363
2365
|
onEnd(source) {
|
package/data/items.ts
CHANGED
|
@@ -131,7 +131,7 @@ export const Items: {[itemid: string]: ItemData} = {
|
|
|
131
131
|
if (!this.runEvent('TryHeal', pokemon)) return false;
|
|
132
132
|
},
|
|
133
133
|
onEat(pokemon) {
|
|
134
|
-
this.heal(pokemon.baseMaxhp
|
|
134
|
+
this.heal(pokemon.baseMaxhp / 3);
|
|
135
135
|
if (pokemon.getNature().minus === 'spd') {
|
|
136
136
|
pokemon.addVolatile('confusion');
|
|
137
137
|
}
|
|
@@ -1686,7 +1686,7 @@ export const Items: {[itemid: string]: ItemData} = {
|
|
|
1686
1686
|
if (!this.runEvent('TryHeal', pokemon)) return false;
|
|
1687
1687
|
},
|
|
1688
1688
|
onEat(pokemon) {
|
|
1689
|
-
this.heal(pokemon.baseMaxhp
|
|
1689
|
+
this.heal(pokemon.baseMaxhp / 3);
|
|
1690
1690
|
if (pokemon.getNature().minus === 'atk') {
|
|
1691
1691
|
pokemon.addVolatile('confusion');
|
|
1692
1692
|
}
|
|
@@ -2418,7 +2418,7 @@ export const Items: {[itemid: string]: ItemData} = {
|
|
|
2418
2418
|
if (!this.runEvent('TryHeal', pokemon)) return false;
|
|
2419
2419
|
},
|
|
2420
2420
|
onEat(pokemon) {
|
|
2421
|
-
this.heal(pokemon.baseMaxhp
|
|
2421
|
+
this.heal(pokemon.baseMaxhp / 3);
|
|
2422
2422
|
if (pokemon.getNature().minus === 'def') {
|
|
2423
2423
|
pokemon.addVolatile('confusion');
|
|
2424
2424
|
}
|
|
@@ -3152,7 +3152,7 @@ export const Items: {[itemid: string]: ItemData} = {
|
|
|
3152
3152
|
if (!this.runEvent('TryHeal', pokemon)) return false;
|
|
3153
3153
|
},
|
|
3154
3154
|
onEat(pokemon) {
|
|
3155
|
-
this.heal(pokemon.baseMaxhp
|
|
3155
|
+
this.heal(pokemon.baseMaxhp / 3);
|
|
3156
3156
|
if (pokemon.getNature().minus === 'spe') {
|
|
3157
3157
|
pokemon.addVolatile('confusion');
|
|
3158
3158
|
}
|
|
@@ -6726,7 +6726,7 @@ export const Items: {[itemid: string]: ItemData} = {
|
|
|
6726
6726
|
if (!this.runEvent('TryHeal', pokemon)) return false;
|
|
6727
6727
|
},
|
|
6728
6728
|
onEat(pokemon) {
|
|
6729
|
-
this.heal(pokemon.baseMaxhp
|
|
6729
|
+
this.heal(pokemon.baseMaxhp / 3);
|
|
6730
6730
|
if (pokemon.getNature().minus === 'spa') {
|
|
6731
6731
|
pokemon.addVolatile('confusion');
|
|
6732
6732
|
}
|
package/data/learnsets.ts
CHANGED
|
@@ -79167,6 +79167,7 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
79167
79167
|
flashcannon: ["8M"],
|
|
79168
79168
|
focusblast: ["8M"],
|
|
79169
79169
|
gigaimpact: ["8M", "8L58"],
|
|
79170
|
+
gunkshot: ["8M"],
|
|
79170
79171
|
haze: ["8L28"],
|
|
79171
79172
|
highhorsepower: ["8M"],
|
|
79172
79173
|
hyperbeam: ["8M"],
|
|
@@ -79204,6 +79205,8 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
79204
79205
|
thunderbolt: ["8M"],
|
|
79205
79206
|
thunderfang: ["8M"],
|
|
79206
79207
|
uproar: ["8M"],
|
|
79208
|
+
uturn: ["8M"],
|
|
79209
|
+
wildcharge: ["8M"],
|
|
79207
79210
|
workup: ["8M"],
|
|
79208
79211
|
xscissor: ["8M"],
|
|
79209
79212
|
},
|
|
@@ -82864,7 +82867,6 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
82864
82867
|
darkpulse: ["8M"],
|
|
82865
82868
|
drillpeck: ["8L35"],
|
|
82866
82869
|
dualwingbeat: ["8T"],
|
|
82867
|
-
earthpower: ["8M"],
|
|
82868
82870
|
endure: ["8M"],
|
|
82869
82871
|
facade: ["8M"],
|
|
82870
82872
|
fly: ["8M"],
|
|
@@ -82884,7 +82886,6 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
82884
82886
|
magicalleaf: ["8M"],
|
|
82885
82887
|
meanlook: ["8E"],
|
|
82886
82888
|
memento: ["8E"],
|
|
82887
|
-
mysticalfire: ["8M"],
|
|
82888
82889
|
nastyplot: ["8M"],
|
|
82889
82890
|
payback: ["8M"],
|
|
82890
82891
|
peck: ["8L1"],
|
|
@@ -82931,23 +82932,17 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
82931
82932
|
facade: ["8M"],
|
|
82932
82933
|
healbell: ["8L1"],
|
|
82933
82934
|
hornleech: ["8L1"],
|
|
82934
|
-
leechseed: ["8L1"],
|
|
82935
82935
|
painsplit: ["8L1"],
|
|
82936
|
-
poisonjab: ["8M"],
|
|
82937
|
-
powerwhip: ["8M"],
|
|
82938
82936
|
protect: ["8M"],
|
|
82939
82937
|
rapidspin: ["8L1"],
|
|
82940
82938
|
rest: ["8M"],
|
|
82941
|
-
rockslide: ["8M"],
|
|
82942
82939
|
round: ["8M"],
|
|
82943
82940
|
sleeptalk: ["8M"],
|
|
82944
82941
|
snore: ["8M"],
|
|
82945
82942
|
stealthrock: ["8M"],
|
|
82946
82943
|
substitute: ["8M"],
|
|
82947
|
-
suckerpunch: ["8L1"],
|
|
82948
82944
|
swordsdance: ["8M"],
|
|
82949
82945
|
taunt: ["8M"],
|
|
82950
|
-
thunderwave: ["8M"],
|
|
82951
82946
|
},
|
|
82952
82947
|
},
|
|
82953
82948
|
pokestarsmeargle: {
|
|
@@ -162,7 +162,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
162
162
|
tier: "NU",
|
|
163
163
|
},
|
|
164
164
|
vileplume: {
|
|
165
|
-
randomBattleMoves: ["
|
|
165
|
+
randomBattleMoves: ["hiddenpowergrass", "moonlight", "sleeppowder", "sludgebomb", "stunspore", "swordsdance"],
|
|
166
166
|
tier: "UU",
|
|
167
167
|
},
|
|
168
168
|
bellossom: {
|
|
@@ -889,7 +889,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
889
889
|
tier: "Uber",
|
|
890
890
|
},
|
|
891
891
|
celebi: {
|
|
892
|
-
randomBattleMoves: ["
|
|
892
|
+
randomBattleMoves: ["hiddenpowergrass", "healbell", "leechseed", "psychic", "recover", "toxic"],
|
|
893
893
|
tier: "Uber",
|
|
894
894
|
},
|
|
895
895
|
};
|