@pkmn/randoms 0.6.4 → 0.7.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/build/index.d.ts +5 -3
- package/build/index.js +8036 -33
- package/build/index.js.map +1 -1
- package/build/index.mjs +8039 -0
- package/build/index.mjs.map +1 -0
- package/package.json +8 -9
- package/build/gen1.d.ts +0 -43
- package/build/gen1.js +0 -447
- package/build/gen1.js.map +0 -1
- package/build/gen2.d.ts +0 -13
- package/build/gen2.js +0 -289
- package/build/gen2.js.map +0 -1
- package/build/gen3.d.ts +0 -17
- package/build/gen3.js +0 -621
- package/build/gen3.js.map +0 -1
- package/build/gen4.d.ts +0 -16
- package/build/gen4.js +0 -724
- package/build/gen4.js.map +0 -1
- package/build/gen5.d.ts +0 -16
- package/build/gen5.js +0 -842
- package/build/gen5.js.map +0 -1
- package/build/gen6.d.ts +0 -23
- package/build/gen6.js +0 -1216
- package/build/gen6.js.map +0 -1
- package/build/gen7.d.ts +0 -43
- package/build/gen7.js +0 -2022
- package/build/gen7.js.map +0 -1
- package/build/gen8.d.ts +0 -154
- package/build/gen8.js +0 -2921
- package/build/gen8.js.map +0 -1
- package/build/utils.d.ts +0 -43
- package/build/utils.js +0 -70
- package/build/utils.js.map +0 -1
- package/src/gen1.ts +0 -493
- package/src/gen2.ts +0 -323
- package/src/gen3.ts +0 -688
- package/src/gen4.ts +0 -858
- package/src/gen5.ts +0 -916
- package/src/gen6.ts +0 -1357
- package/src/gen7.ts +0 -2194
- package/src/gen8.ts +0 -3122
- package/src/global.d.ts +0 -6
- package/src/index.ts +0 -46
- package/src/utils.ts +0 -78
package/build/gen2.js
DELETED
|
@@ -1,289 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RandomGen2Teams = void 0;
|
|
4
|
-
const gen3_1 = require("./gen3");
|
|
5
|
-
class RandomGen2Teams extends gen3_1.RandomGen3Teams {
|
|
6
|
-
constructor(dex, format, prng) {
|
|
7
|
-
super(dex, format, prng);
|
|
8
|
-
this.moveEnforcementCheckers = {
|
|
9
|
-
Electric: (movePool, moves, abilities, types, counter) => !counter.get('Electric'),
|
|
10
|
-
Fire: (movePool, moves, abilities, types, counter) => !counter.get('Fire'),
|
|
11
|
-
Ground: (movePool, moves, abilities, types, counter) => !counter.get('Ground'),
|
|
12
|
-
Ice: (movePool, moves, abilities, types, counter) => !counter.get('Ice'),
|
|
13
|
-
Normal: (movePool, moves, abilities, types, counter) => !counter.get('Normal') && counter.setupType === 'Physical',
|
|
14
|
-
Psychic: (movePool, moves, abilities, types, counter) => !counter.get('Psychic') && types.has('Grass'),
|
|
15
|
-
Rock: (movePool, moves, abilities, types, counter, species) => !counter.get('Rock') && species.baseStats.atk > 60,
|
|
16
|
-
Water: (movePool, moves, abilities, types, counter) => !counter.get('Water'),
|
|
17
|
-
};
|
|
18
|
-
}
|
|
19
|
-
shouldCullMove(move, types, moves, abilities = {}, counter, movePool, teamDetails) {
|
|
20
|
-
const restTalk = moves.has('rest') && moves.has('sleeptalk');
|
|
21
|
-
switch (move.id) {
|
|
22
|
-
// Set up once and only if we have the moves for it
|
|
23
|
-
case 'bellydrum':
|
|
24
|
-
case 'curse':
|
|
25
|
-
case 'meditate':
|
|
26
|
-
case 'screech':
|
|
27
|
-
case 'swordsdance':
|
|
28
|
-
return {
|
|
29
|
-
cull: ((counter.setupType !== 'Physical' || counter.get('physicalsetup') > 1) ||
|
|
30
|
-
(!counter.get('Physical') || counter.damagingMoves.size < 2 && !moves.has('batonpass') && !moves.has('sleeptalk'))),
|
|
31
|
-
isSetup: true,
|
|
32
|
-
};
|
|
33
|
-
// Not very useful without their supporting moves
|
|
34
|
-
case 'batonpass':
|
|
35
|
-
return { cull: !counter.setupType && !counter.get('speedsetup') && !moves.has('meanlook') };
|
|
36
|
-
case 'meanlook':
|
|
37
|
-
return { cull: movePool.includes('perishsong') };
|
|
38
|
-
case 'nightmare':
|
|
39
|
-
return { cull: !moves.has('lovelykiss') && !moves.has('sleeppowder') };
|
|
40
|
-
case 'swagger':
|
|
41
|
-
return { cull: !moves.has('substitute') };
|
|
42
|
-
// Bad after setup
|
|
43
|
-
case 'charm':
|
|
44
|
-
case 'counter':
|
|
45
|
-
return { cull: !!counter.setupType };
|
|
46
|
-
case 'haze':
|
|
47
|
-
return { cull: !!counter.setupType || restTalk };
|
|
48
|
-
case 'reflect':
|
|
49
|
-
case 'lightscreen':
|
|
50
|
-
return { cull: !!counter.setupType || moves.has('rest') };
|
|
51
|
-
// Ineffective to have both
|
|
52
|
-
case 'doubleedge':
|
|
53
|
-
return { cull: moves.has('bodyslam') || moves.has('return') };
|
|
54
|
-
case 'explosion':
|
|
55
|
-
case 'selfdestruct':
|
|
56
|
-
return { cull: moves.has('softboiled') || restTalk };
|
|
57
|
-
case 'extremespeed':
|
|
58
|
-
return { cull: moves.has('bodyslam') || restTalk };
|
|
59
|
-
case 'hyperbeam':
|
|
60
|
-
return { cull: moves.has('rockslide') };
|
|
61
|
-
case 'quickattack':
|
|
62
|
-
return { cull: moves.has('rest') };
|
|
63
|
-
case 'rapidspin':
|
|
64
|
-
return { cull: !!teamDetails.rapidSpin || moves.has('sleeptalk') };
|
|
65
|
-
case 'return':
|
|
66
|
-
return { cull: moves.has('bodyslam') };
|
|
67
|
-
case 'surf':
|
|
68
|
-
return { cull: moves.has('hydropump') };
|
|
69
|
-
case 'thunder':
|
|
70
|
-
return { cull: moves.has('thunderbolt') };
|
|
71
|
-
case 'gigadrain':
|
|
72
|
-
return { cull: moves.has('razorleaf') || moves.has('swordsdance') && movePool.includes('sludgebomb') };
|
|
73
|
-
case 'icebeam':
|
|
74
|
-
return { cull: moves.has('dragonbreath') };
|
|
75
|
-
case 'seismictoss':
|
|
76
|
-
return { cull: moves.has('rest') || moves.has('sleeptalk') };
|
|
77
|
-
case 'destinybond':
|
|
78
|
-
return { cull: moves.has('explosion') };
|
|
79
|
-
case 'pursuit':
|
|
80
|
-
return { cull: moves.has('crunch') && moves.has('solarbeam') };
|
|
81
|
-
case 'thief':
|
|
82
|
-
return { cull: moves.has('rest') || moves.has('substitute') };
|
|
83
|
-
case 'irontail':
|
|
84
|
-
return { cull: types.has('Ground') && movePool.includes('earthquake') };
|
|
85
|
-
// Status and illegal move rejections
|
|
86
|
-
case 'confuseray':
|
|
87
|
-
case 'roar':
|
|
88
|
-
case 'whirlwind':
|
|
89
|
-
return { cull: restTalk };
|
|
90
|
-
case 'encore':
|
|
91
|
-
return { cull: moves.has('bodyslam') || moves.has('surf') || restTalk };
|
|
92
|
-
case 'lovelykiss':
|
|
93
|
-
return { cull: ['healbell', 'moonlight', 'morningsun'].some(m => moves.has(m)) || restTalk };
|
|
94
|
-
case 'sleeptalk':
|
|
95
|
-
return { cull: moves.has('curse') && counter.get('stab') >= 2 };
|
|
96
|
-
case 'softboiled':
|
|
97
|
-
return { cull: movePool.includes('swordsdance') };
|
|
98
|
-
case 'spikes':
|
|
99
|
-
return { cull: !!teamDetails.spikes || types.has('Ice') && moves.has('rapidspin') };
|
|
100
|
-
case 'substitute':
|
|
101
|
-
return { cull: moves.has('agility') || moves.has('rest') };
|
|
102
|
-
case 'synthesis':
|
|
103
|
-
return { cull: moves.has('explosion') };
|
|
104
|
-
case 'thunderwave':
|
|
105
|
-
return { cull: moves.has('thunder') || moves.has('toxic') };
|
|
106
|
-
}
|
|
107
|
-
return { cull: false };
|
|
108
|
-
}
|
|
109
|
-
getItem(ability, types, moves, counter, species) {
|
|
110
|
-
// First, the high-priority items
|
|
111
|
-
if (species.name === 'Ditto')
|
|
112
|
-
return this.sample(['Metal Powder', 'Quick Claw']);
|
|
113
|
-
if (species.name === 'Farfetch\u2019d')
|
|
114
|
-
return 'Stick';
|
|
115
|
-
if (species.name === 'Marowak')
|
|
116
|
-
return 'Thick Club';
|
|
117
|
-
if (species.name === 'Pikachu')
|
|
118
|
-
return 'Light Ball';
|
|
119
|
-
if (species.name === 'Unown')
|
|
120
|
-
return 'Twisted Spoon';
|
|
121
|
-
if (moves.has('thief'))
|
|
122
|
-
return '';
|
|
123
|
-
// Medium priority
|
|
124
|
-
if (moves.has('rest') && !moves.has('sleeptalk'))
|
|
125
|
-
return 'Mint Berry';
|
|
126
|
-
if ((moves.has('bellydrum') || moves.has('swordsdance')) &&
|
|
127
|
-
species.baseStats.spe >= 60 && !types.has('Ground') &&
|
|
128
|
-
!moves.has('sleeptalk') && !moves.has('substitute') &&
|
|
129
|
-
this.randomChance(1, 2)) {
|
|
130
|
-
return 'Miracle Berry';
|
|
131
|
-
}
|
|
132
|
-
// Default to Leftovers
|
|
133
|
-
return 'Leftovers';
|
|
134
|
-
}
|
|
135
|
-
randomSet(species, teamDetails = {}) {
|
|
136
|
-
var _a, _b;
|
|
137
|
-
species = this.dex.species.get(species);
|
|
138
|
-
const movePool = (species.randomBattleMoves || Object.keys(this.dex.species.getLearnset(species.id))).slice();
|
|
139
|
-
const rejectedPool = [];
|
|
140
|
-
const moves = new Set();
|
|
141
|
-
let ivs = { hp: 30, atk: 30, def: 30, spa: 30, spd: 30, spe: 30 };
|
|
142
|
-
let availableHP = 0;
|
|
143
|
-
for (const setMoveid of movePool) {
|
|
144
|
-
if (setMoveid.startsWith('hiddenpower'))
|
|
145
|
-
availableHP++;
|
|
146
|
-
}
|
|
147
|
-
const types = new Set(species.types);
|
|
148
|
-
let counter;
|
|
149
|
-
// We use a special variable to track Hidden Power
|
|
150
|
-
// so that we can check for all Hidden Powers at once
|
|
151
|
-
let hasHiddenPower = false;
|
|
152
|
-
do {
|
|
153
|
-
// Choose next 4 moves from learnset/viable moves and add them to moves list:
|
|
154
|
-
while (moves.size < this.maxMoveCount && movePool.length) {
|
|
155
|
-
const moveid = this.sampleNoReplace(movePool);
|
|
156
|
-
if (moveid.startsWith('hiddenpower')) {
|
|
157
|
-
availableHP--;
|
|
158
|
-
if (hasHiddenPower)
|
|
159
|
-
continue;
|
|
160
|
-
hasHiddenPower = true;
|
|
161
|
-
}
|
|
162
|
-
moves.add(moveid);
|
|
163
|
-
}
|
|
164
|
-
while (moves.size < this.maxMoveCount && rejectedPool.length) {
|
|
165
|
-
const moveid = this.sampleNoReplace(rejectedPool);
|
|
166
|
-
if (moveid.startsWith('hiddenpower')) {
|
|
167
|
-
if (hasHiddenPower)
|
|
168
|
-
continue;
|
|
169
|
-
hasHiddenPower = true;
|
|
170
|
-
}
|
|
171
|
-
moves.add(moveid);
|
|
172
|
-
}
|
|
173
|
-
counter = this.queryMoves(moves, species.types, new Set(), movePool);
|
|
174
|
-
// Iterate through the moves again, this time to cull them:
|
|
175
|
-
for (const moveid of moves) {
|
|
176
|
-
const move = this.dex.moves.get(moveid);
|
|
177
|
-
let { cull, isSetup } = this.shouldCullMove(move, types, moves, {}, counter, movePool, teamDetails);
|
|
178
|
-
// This move doesn't satisfy our setup requirements:
|
|
179
|
-
if (counter.setupType === 'Physical' && move.category === 'Special' && !counter.get('Physical')) {
|
|
180
|
-
cull = true;
|
|
181
|
-
}
|
|
182
|
-
// Reject Status, non-STAB, or low basepower moves
|
|
183
|
-
const moveIsRejectable = ((move.category !== 'Status' || !move.flags.heal) &&
|
|
184
|
-
// These moves cannot be rejected in favor of a forced move
|
|
185
|
-
!['batonpass', 'sleeptalk', 'spikes', 'sunnyday'].includes(move.id) &&
|
|
186
|
-
(move.category === 'Status' || !types.has(move.type) || (move.basePower && move.basePower < 40)));
|
|
187
|
-
if (!cull && !isSetup && moveIsRejectable && (counter.setupType || !move.stallingMove)) {
|
|
188
|
-
// There may be more important moves that this Pokemon needs
|
|
189
|
-
if (
|
|
190
|
-
// Pokemon should usually have at least one STAB move
|
|
191
|
-
(!counter.get('stab') &&
|
|
192
|
-
!counter.get('damage') &&
|
|
193
|
-
!types.has('Ghost') &&
|
|
194
|
-
counter.get('physicalpool') + counter.get('specialpool') > 0) || (movePool.includes('megahorn') || (movePool.includes('softboiled') && moves.has('present'))) ||
|
|
195
|
-
// Rest + Sleep Talk should be selected together
|
|
196
|
-
((moves.has('rest') && movePool.includes('sleeptalk')) || (moves.has('sleeptalk') && movePool.includes('rest'))) ||
|
|
197
|
-
// Sunny Day + Solar Beam should be selected together
|
|
198
|
-
(moves.has('sunnyday') && movePool.includes('solarbeam') ||
|
|
199
|
-
(moves.has('solarbeam') && movePool.includes('sunnyday'))) ||
|
|
200
|
-
['milkdrink', 'recover', 'spore'].some(m => movePool.includes(m))) {
|
|
201
|
-
cull = true;
|
|
202
|
-
}
|
|
203
|
-
else {
|
|
204
|
-
// Pokemon should have moves that benefit their typing
|
|
205
|
-
for (const type of types) {
|
|
206
|
-
if ((_b = (_a = this.moveEnforcementCheckers)[type]) === null || _b === void 0 ? void 0 : _b.call(_a, movePool, moves, new Set(), types, counter, species, teamDetails))
|
|
207
|
-
cull = true;
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
// Remove rejected moves from the move list
|
|
212
|
-
if (cull &&
|
|
213
|
-
(movePool.length - availableHP || availableHP && (move.id === 'hiddenpower' || !hasHiddenPower))) {
|
|
214
|
-
if (move.category !== 'Status' && !move.damage && (move.id !== 'hiddenpower' || !availableHP)) {
|
|
215
|
-
rejectedPool.push(moveid);
|
|
216
|
-
}
|
|
217
|
-
moves.delete(moveid);
|
|
218
|
-
if (moveid.startsWith('hiddenpower'))
|
|
219
|
-
hasHiddenPower = false;
|
|
220
|
-
break;
|
|
221
|
-
}
|
|
222
|
-
if (cull && rejectedPool.length) {
|
|
223
|
-
moves.delete(moveid);
|
|
224
|
-
if (moveid.startsWith('hiddenpower'))
|
|
225
|
-
hasHiddenPower = false;
|
|
226
|
-
break;
|
|
227
|
-
}
|
|
228
|
-
}
|
|
229
|
-
} while (moves.size < this.maxMoveCount && (movePool.length || rejectedPool.length));
|
|
230
|
-
// Adjust IVs for Hidden Power
|
|
231
|
-
for (const setMoveid of moves) {
|
|
232
|
-
if (!setMoveid.startsWith('hiddenpower'))
|
|
233
|
-
continue;
|
|
234
|
-
const hpType = setMoveid.substr(11, setMoveid.length);
|
|
235
|
-
const hpIVs = {
|
|
236
|
-
dragon: { def: 28 },
|
|
237
|
-
ice: { def: 26 },
|
|
238
|
-
psychic: { def: 24 },
|
|
239
|
-
electric: { atk: 28 },
|
|
240
|
-
grass: { atk: 28, def: 28 },
|
|
241
|
-
water: { atk: 28, def: 26 },
|
|
242
|
-
fire: { atk: 28, def: 24 },
|
|
243
|
-
steel: { atk: 26 },
|
|
244
|
-
ghost: { atk: 26, def: 28 },
|
|
245
|
-
bug: { atk: 26, def: 26 },
|
|
246
|
-
rock: { atk: 26, def: 24 },
|
|
247
|
-
ground: { atk: 24 },
|
|
248
|
-
poison: { atk: 24, def: 28 },
|
|
249
|
-
flying: { atk: 24, def: 26 },
|
|
250
|
-
fighting: { atk: 24, def: 24 },
|
|
251
|
-
};
|
|
252
|
-
if (hpIVs[hpType]) {
|
|
253
|
-
ivs = Object.assign(Object.assign({}, ivs), hpIVs[hpType]);
|
|
254
|
-
}
|
|
255
|
-
if (ivs.atk === 28 || ivs.atk === 24)
|
|
256
|
-
ivs.hp = 14;
|
|
257
|
-
if (ivs.def === 28 || ivs.def === 24)
|
|
258
|
-
ivs.hp -= 8;
|
|
259
|
-
}
|
|
260
|
-
const levelScale = {
|
|
261
|
-
NU: 73,
|
|
262
|
-
NUBL: 71,
|
|
263
|
-
UU: 69,
|
|
264
|
-
UUBL: 67,
|
|
265
|
-
OU: 65,
|
|
266
|
-
Uber: 61,
|
|
267
|
-
};
|
|
268
|
-
const customScale = {
|
|
269
|
-
Ditto: 83, Unown: 87, Wobbuffet: 83,
|
|
270
|
-
};
|
|
271
|
-
const level = this.adjustLevel || customScale[species.name] || levelScale[species.tier] || 80;
|
|
272
|
-
return {
|
|
273
|
-
name: species.name,
|
|
274
|
-
species: species.name,
|
|
275
|
-
moves: Array.from(moves),
|
|
276
|
-
ability: 'No Ability',
|
|
277
|
-
evs: { hp: 255, atk: 255, def: 255, spa: 255, spd: 255, spe: 255 },
|
|
278
|
-
ivs,
|
|
279
|
-
item: this.getItem('None', types, moves, counter, species),
|
|
280
|
-
level,
|
|
281
|
-
// No shiny chance because Gen 2 shinies have bad IVs
|
|
282
|
-
shiny: false,
|
|
283
|
-
gender: species.gender ? species.gender : 'M',
|
|
284
|
-
};
|
|
285
|
-
}
|
|
286
|
-
}
|
|
287
|
-
exports.RandomGen2Teams = RandomGen2Teams;
|
|
288
|
-
exports.default = RandomGen2Teams;
|
|
289
|
-
//# sourceMappingURL=gen2.js.map
|
package/build/gen2.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gen2.js","sourceRoot":"","sources":["../src/gen2.ts"],"names":[],"mappings":"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"}
|
package/build/gen3.d.ts
DELETED
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { MoveCounter } from './gen8';
|
|
2
|
-
import { RandomGen4Teams } from './gen4';
|
|
3
|
-
import { Format, ModdedDex, Move, PRNG, PRNGSeed, RandomTeamsTypes, Species } from '@pkmn/sim';
|
|
4
|
-
export declare class RandomGen3Teams extends RandomGen4Teams {
|
|
5
|
-
battleHasDitto: boolean;
|
|
6
|
-
battleHasWobbuffet: boolean;
|
|
7
|
-
constructor(dex: ModdedDex, format: Format, prng: PRNG | PRNGSeed | null);
|
|
8
|
-
shouldCullMove(move: Move, types: Set<string>, moves: Set<string>, abilities: Set<string>, counter: MoveCounter, movePool: string[], teamDetails: RandomTeamsTypes.TeamDetails, species: Species): {
|
|
9
|
-
cull: boolean;
|
|
10
|
-
isSetup?: boolean;
|
|
11
|
-
};
|
|
12
|
-
getItem(ability: string, types: Set<string>, moves: Set<string>, counter: MoveCounter, species: Species): string;
|
|
13
|
-
shouldCullAbility(ability: string, types: Set<string>, moves: Set<string>, abilities: Set<string>, counter: MoveCounter, movePool: string[], teamDetails: RandomTeamsTypes.TeamDetails, species: Species): boolean;
|
|
14
|
-
randomSet(species: string | Species, teamDetails?: RandomTeamsTypes.TeamDetails): RandomTeamsTypes.RandomSet;
|
|
15
|
-
randomTeam(): RandomTeamsTypes.RandomSet[];
|
|
16
|
-
}
|
|
17
|
-
export default RandomGen3Teams;
|