@pkmn/sim 0.4.23 → 0.5.0
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 +175 -112
- package/build/config/formats.js.map +1 -1
- package/build/data/aliases.js +5 -3
- package/build/data/aliases.js.map +1 -1
- package/build/data/conditions.js +1 -0
- package/build/data/conditions.js.map +1 -1
- package/build/data/formats-data.js +15 -7
- package/build/data/formats-data.js.map +1 -1
- package/build/data/items.js +24 -0
- package/build/data/items.js.map +1 -1
- package/build/data/learnsets.js +34 -0
- 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/gen3/formats-data.js +1 -1
- package/build/data/mods/gen3/formats-data.js.map +1 -1
- package/build/data/mods/gen6/pokedex.js +17 -17
- package/build/data/mods/gen6/pokedex.js.map +1 -1
- package/build/data/moves.js +1 -0
- package/build/data/moves.js.map +1 -1
- package/build/data/pokedex.js +33 -0
- package/build/data/pokedex.js.map +1 -1
- package/build/data/text/items.js +4 -0
- package/build/data/text/items.js.map +1 -1
- package/build/sim/battle-actions.js +1 -1
- package/build/sim/battle-actions.js.map +1 -1
- package/build/sim/dex-formats.js +1 -1
- package/build/sim/dex-formats.js.map +1 -1
- package/build/sim/dex-species.js +4 -3
- package/build/sim/dex-species.js.map +1 -1
- package/build/sim/tools/runner.d.ts +1 -6
- package/build/sim/tools/runner.js +6 -6
- package/build/sim/tools/runner.js.map +1 -1
- package/config/formats.ts +181 -115
- package/data/aliases.ts +5 -3
- package/data/conditions.ts +1 -0
- package/data/formats-data.ts +15 -7
- package/data/items.ts +24 -0
- package/data/learnsets.ts +34 -0
- package/data/mods/gen2/formats-data.ts +2 -2
- package/data/mods/gen3/formats-data.ts +1 -1
- package/data/mods/gen6/pokedex.ts +17 -17
- package/data/moves.ts +1 -0
- package/data/pokedex.ts +33 -0
- package/data/text/items.ts +4 -0
- package/package.json +1 -1
- package/sim/battle-actions.ts +1 -1
- package/sim/dex-formats.ts +1 -1
- package/sim/dex-species.ts +4 -3
- package/sim/tools/runner.ts +2 -0
package/data/learnsets.ts
CHANGED
|
@@ -82815,6 +82815,40 @@ export const Learnsets: {[speciesid: string]: LearnsetData} = {
|
|
|
82815
82815
|
watergun: ["8L1"],
|
|
82816
82816
|
},
|
|
82817
82817
|
},
|
|
82818
|
+
venomicon: {
|
|
82819
|
+
learnset: {
|
|
82820
|
+
acidarmor: ["8L1"],
|
|
82821
|
+
attract: ["8M"],
|
|
82822
|
+
bodypress: ["8M"],
|
|
82823
|
+
bravebird: ["8M"],
|
|
82824
|
+
coil: ["8L1"],
|
|
82825
|
+
discharge: ["8L1"],
|
|
82826
|
+
drillpeck: ["8L1"],
|
|
82827
|
+
earthpower: ["8M"],
|
|
82828
|
+
endure: ["8M"],
|
|
82829
|
+
facade: ["8M"],
|
|
82830
|
+
gunkshot: ["8M"],
|
|
82831
|
+
hurricane: ["8M"],
|
|
82832
|
+
imprison: ["8M"],
|
|
82833
|
+
knockoff: ["8L1"],
|
|
82834
|
+
mysticalfire: ["8M"],
|
|
82835
|
+
nastyplot: ["8M"],
|
|
82836
|
+
poisonjab: ["8M"],
|
|
82837
|
+
protect: ["8M"],
|
|
82838
|
+
rest: ["8M"],
|
|
82839
|
+
roost: ["8L1"],
|
|
82840
|
+
round: ["8M"],
|
|
82841
|
+
sleeptalk: ["8M"],
|
|
82842
|
+
sludgebomb: ["8M"],
|
|
82843
|
+
snore: ["8M"],
|
|
82844
|
+
stealthrock: ["8M"],
|
|
82845
|
+
substitute: ["8M"],
|
|
82846
|
+
swordsdance: ["8M"],
|
|
82847
|
+
thunderwave: ["8M"],
|
|
82848
|
+
toxic: ["8L1"],
|
|
82849
|
+
uturn: ["8M"],
|
|
82850
|
+
},
|
|
82851
|
+
},
|
|
82818
82852
|
pokestarsmeargle: {
|
|
82819
82853
|
eventData: [
|
|
82820
82854
|
{generation: 5, level: 60, gender: "M", abilities: ["owntempo"], moves: ["mindreader", "guillotine", "tailwhip", "gastroacid"]},
|
|
@@ -691,7 +691,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
691
691
|
tier: "LC",
|
|
692
692
|
},
|
|
693
693
|
azumarill: {
|
|
694
|
-
randomBattleMoves: ["
|
|
694
|
+
randomBattleMoves: ["perishsong", "rest", "toxic", "whirlpool"],
|
|
695
695
|
tier: "NU",
|
|
696
696
|
},
|
|
697
697
|
sudowoodo: {
|
|
@@ -817,7 +817,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
817
817
|
tier: "LC",
|
|
818
818
|
},
|
|
819
819
|
octillery: {
|
|
820
|
-
randomBattleMoves: ["
|
|
820
|
+
randomBattleMoves: ["flamethrower", "hiddenpowerelectric", "icebeam", "rest", "sleeptalk", "surf"],
|
|
821
821
|
tier: "NU",
|
|
822
822
|
},
|
|
823
823
|
delibird: {
|
|
@@ -1364,7 +1364,7 @@ export const FormatsData: {[k: string]: ModdedSpeciesFormatsData} = {
|
|
|
1364
1364
|
tier: "Uber",
|
|
1365
1365
|
},
|
|
1366
1366
|
kyogre: {
|
|
1367
|
-
randomBattleMoves: ["calmmind", "icebeam", "rest", "sleeptalk", "surf", "thunder"
|
|
1367
|
+
randomBattleMoves: ["calmmind", "icebeam", "rest", "sleeptalk", "surf", "thunder"],
|
|
1368
1368
|
tier: "Uber",
|
|
1369
1369
|
},
|
|
1370
1370
|
groudon: {
|
|
@@ -171,87 +171,87 @@ export const Pokedex: {[k: string]: ModdedSpeciesData} = {
|
|
|
171
171
|
arceusbug: {
|
|
172
172
|
inherit: true,
|
|
173
173
|
color: "Gray",
|
|
174
|
-
|
|
174
|
+
requiredItems: ["Insect Plate"],
|
|
175
175
|
},
|
|
176
176
|
arceusdark: {
|
|
177
177
|
inherit: true,
|
|
178
178
|
color: "Gray",
|
|
179
|
-
|
|
179
|
+
requiredItems: ["Dread Plate"],
|
|
180
180
|
},
|
|
181
181
|
arceusdragon: {
|
|
182
182
|
inherit: true,
|
|
183
183
|
color: "Gray",
|
|
184
|
-
|
|
184
|
+
requiredItems: ["Draco Plate"],
|
|
185
185
|
},
|
|
186
186
|
arceuselectric: {
|
|
187
187
|
inherit: true,
|
|
188
188
|
color: "Gray",
|
|
189
|
-
|
|
189
|
+
requiredItems: ["Zap Plate"],
|
|
190
190
|
},
|
|
191
191
|
arceusfairy: {
|
|
192
192
|
inherit: true,
|
|
193
193
|
color: "Gray",
|
|
194
|
-
|
|
194
|
+
requiredItems: ["Pixie Plate"],
|
|
195
195
|
},
|
|
196
196
|
arceusfighting: {
|
|
197
197
|
inherit: true,
|
|
198
198
|
color: "Gray",
|
|
199
|
-
|
|
199
|
+
requiredItems: ["Fist Plate"],
|
|
200
200
|
},
|
|
201
201
|
arceusfire: {
|
|
202
202
|
inherit: true,
|
|
203
203
|
color: "Gray",
|
|
204
|
-
|
|
204
|
+
requiredItems: ["Flame Plate"],
|
|
205
205
|
},
|
|
206
206
|
arceusflying: {
|
|
207
207
|
inherit: true,
|
|
208
208
|
color: "Gray",
|
|
209
|
-
|
|
209
|
+
requiredItems: ["Sky Plate"],
|
|
210
210
|
},
|
|
211
211
|
arceusghost: {
|
|
212
212
|
inherit: true,
|
|
213
213
|
color: "Gray",
|
|
214
|
-
|
|
214
|
+
requiredItems: ["Spooky Plate"],
|
|
215
215
|
},
|
|
216
216
|
arceusgrass: {
|
|
217
217
|
inherit: true,
|
|
218
218
|
color: "Gray",
|
|
219
|
-
|
|
219
|
+
requiredItems: ["Meadow Plate"],
|
|
220
220
|
},
|
|
221
221
|
arceusground: {
|
|
222
222
|
inherit: true,
|
|
223
223
|
color: "Gray",
|
|
224
|
-
|
|
224
|
+
requiredItems: ["Earth Plate"],
|
|
225
225
|
},
|
|
226
226
|
arceusice: {
|
|
227
227
|
inherit: true,
|
|
228
228
|
color: "Gray",
|
|
229
|
-
|
|
229
|
+
requiredItems: ["Icicle Plate"],
|
|
230
230
|
},
|
|
231
231
|
arceuspoison: {
|
|
232
232
|
inherit: true,
|
|
233
233
|
color: "Gray",
|
|
234
|
-
|
|
234
|
+
requiredItems: ["Toxic Plate"],
|
|
235
235
|
},
|
|
236
236
|
arceuspsychic: {
|
|
237
237
|
inherit: true,
|
|
238
238
|
color: "Gray",
|
|
239
|
-
|
|
239
|
+
requiredItems: ["Mind Plate"],
|
|
240
240
|
},
|
|
241
241
|
arceusrock: {
|
|
242
242
|
inherit: true,
|
|
243
243
|
color: "Gray",
|
|
244
|
-
|
|
244
|
+
requiredItems: ["Stone Plate"],
|
|
245
245
|
},
|
|
246
246
|
arceussteel: {
|
|
247
247
|
inherit: true,
|
|
248
248
|
color: "Gray",
|
|
249
|
-
|
|
249
|
+
requiredItems: ["Iron Plate"],
|
|
250
250
|
},
|
|
251
251
|
arceuswater: {
|
|
252
252
|
inherit: true,
|
|
253
253
|
color: "Gray",
|
|
254
|
-
|
|
254
|
+
requiredItems: ["Splash Plate"],
|
|
255
255
|
},
|
|
256
256
|
roggenrola: {
|
|
257
257
|
inherit: true,
|
package/data/moves.ts
CHANGED
|
@@ -15857,6 +15857,7 @@ export const Moves: {[moveid: string]: MoveData} = {
|
|
|
15857
15857
|
onRestart(pokemon) {
|
|
15858
15858
|
if (pokemon.removeVolatile('fly') || pokemon.removeVolatile('bounce')) {
|
|
15859
15859
|
this.queue.cancelMove(pokemon);
|
|
15860
|
+
pokemon.removeVolatile('twoturnmove');
|
|
15860
15861
|
this.add('-start', pokemon, 'Smack Down');
|
|
15861
15862
|
}
|
|
15862
15863
|
},
|
package/data/pokedex.ts
CHANGED
|
@@ -16910,6 +16910,39 @@ export const Pokedex: {[speciesid: string]: SpeciesData} = {
|
|
|
16910
16910
|
eggGroups: ["Water 1", "Fairy"],
|
|
16911
16911
|
gen: 4,
|
|
16912
16912
|
},
|
|
16913
|
+
venomicon: {
|
|
16914
|
+
num: -67,
|
|
16915
|
+
name: "Venomicon",
|
|
16916
|
+
baseForme: "Prologue",
|
|
16917
|
+
types: ["Poison", "Flying"],
|
|
16918
|
+
gender: "N",
|
|
16919
|
+
baseStats: {hp: 85, atk: 70, def: 113, spa: 118, spd: 90, spe: 64},
|
|
16920
|
+
abilities: {0: "Stamina"},
|
|
16921
|
+
heightm: 0.8,
|
|
16922
|
+
weightkg: 11.5,
|
|
16923
|
+
color: "Purple",
|
|
16924
|
+
eggGroups: ["Undiscovered"],
|
|
16925
|
+
otherFormes: ["Venomicon-Epilogue"],
|
|
16926
|
+
formeOrder: ["Venomicon", "Venomicon-Epilogue"],
|
|
16927
|
+
gen: 8,
|
|
16928
|
+
},
|
|
16929
|
+
venomiconepilogue: {
|
|
16930
|
+
num: -67,
|
|
16931
|
+
name: "Venomicon-Epilogue",
|
|
16932
|
+
baseSpecies: "Venomicon",
|
|
16933
|
+
forme: "Epilogue",
|
|
16934
|
+
types: ["Poison", "Flying"],
|
|
16935
|
+
gender: "N",
|
|
16936
|
+
baseStats: {hp: 85, atk: 110, def: 85, spa: 55, spd: 85, spe: 120},
|
|
16937
|
+
abilities: {0: "Tinted Lens"},
|
|
16938
|
+
heightm: 0.8,
|
|
16939
|
+
weightkg: 12.4,
|
|
16940
|
+
color: "Purple",
|
|
16941
|
+
eggGroups: ["Undiscovered"],
|
|
16942
|
+
requiredItem: "Vile Vial",
|
|
16943
|
+
changesFrom: "Venomicon",
|
|
16944
|
+
gen: 8,
|
|
16945
|
+
},
|
|
16913
16946
|
// NOTE: PokeStar "formes" are not actually formes and thus do not have a formeOrder
|
|
16914
16947
|
pokestarsmeargle: {
|
|
16915
16948
|
num: -5000,
|
package/data/text/items.ts
CHANGED
|
@@ -2336,4 +2336,8 @@ export const ItemsText: {[k: string]: ItemText} = {
|
|
|
2336
2336
|
name: "Crucibellite",
|
|
2337
2337
|
desc: "If held by a Crucibelle, this item allows it to Mega Evolve in battle.",
|
|
2338
2338
|
},
|
|
2339
|
+
vilevial: {
|
|
2340
|
+
name: "Vile Vial",
|
|
2341
|
+
desc: "If held by a Venomicon, its Poison- and Flying-type attacks have 1.2x power.",
|
|
2342
|
+
},
|
|
2339
2343
|
};
|
package/package.json
CHANGED
package/sim/battle-actions.ts
CHANGED
|
@@ -549,7 +549,7 @@ export class BattleActions {
|
|
|
549
549
|
[moveSteps[2], moveSteps[4]] = [moveSteps[4], moveSteps[2]];
|
|
550
550
|
}
|
|
551
551
|
|
|
552
|
-
if (
|
|
552
|
+
if (notActive) this.battle.setActiveMove(move, pokemon, targets[0]);
|
|
553
553
|
|
|
554
554
|
const hitResult = this.battle.singleEvent('Try', move, null, pokemon, targets[0], move) &&
|
|
555
555
|
this.battle.singleEvent('PrepareHit', move, {}, targets[0], pokemon, move) &&
|
package/sim/dex-formats.ts
CHANGED
|
@@ -883,7 +883,7 @@ export class DexFormats {
|
|
|
883
883
|
if (table.hasOwnProperty(id)) {
|
|
884
884
|
if (matchType === 'pokemon') {
|
|
885
885
|
const species: Species = table[id] as Species;
|
|
886
|
-
if (species.otherFormes && ruleid !== species.id + toID(species.baseForme)) {
|
|
886
|
+
if ((species.otherFormes || species.cosmeticFormes) && ruleid !== species.id + toID(species.baseForme)) {
|
|
887
887
|
matches.push('basepokemon:' + id);
|
|
888
888
|
continue;
|
|
889
889
|
}
|
package/sim/dex-species.ts
CHANGED
|
@@ -485,9 +485,10 @@ export class DexSpecies {
|
|
|
485
485
|
if (!isLetsGo) species.isNonstandard = 'Past';
|
|
486
486
|
}
|
|
487
487
|
if (this.dex.currentMod === 'gen8bdsp' &&
|
|
488
|
-
(!species.isNonstandard || species.isNonstandard
|
|
489
|
-
if (species.gen > 4 || species.num < 1
|
|
490
|
-
species.
|
|
488
|
+
(!species.isNonstandard || ["Gigantamax", "CAP"].includes(species.isNonstandard))) {
|
|
489
|
+
if (species.gen > 4 || (species.num < 1 && species.isNonstandard !== 'CAP') ||
|
|
490
|
+
species.id === 'pichuspikyeared') {
|
|
491
|
+
species.isNonstandard = 'Future';
|
|
491
492
|
species.tier = species.doublesTier = 'Illegal';
|
|
492
493
|
}
|
|
493
494
|
}
|