mirror of
https://github.com/smogon/pokemon-showdown.git
synced 2026-03-21 17:25:10 -05:00
* CGT: Add command to view winrates + misc. updates * Update data/cg-team-data.ts * Update data/cg-teams.ts * Apply suggestions from code review --------- Co-authored-by: Kris Johnson <11083252+KrisXV@users.noreply.github.com>
79 lines
2.2 KiB
TypeScript
79 lines
2.2 KiB
TypeScript
// Data for computer-generated teams
|
|
|
|
export const MOVE_PAIRINGS: { [moveID: IDEntry]: IDEntry } = {
|
|
rest: 'sleeptalk',
|
|
sleeptalk: 'rest',
|
|
};
|
|
|
|
// Bonuses to move ratings by ability
|
|
export const ABILITY_MOVE_BONUSES: { [abilityID: IDEntry]: { [moveID: IDEntry]: number } } = {
|
|
contrary: { terablast: 2 },
|
|
drought: { sunnyday: 0.2, solarbeam: 2 },
|
|
drizzle: { raindance: 0.2, solarbeam: 0.2, hurricane: 2 },
|
|
};
|
|
// Bonuses to move ratings by move type
|
|
export const ABILITY_MOVE_TYPE_BONUSES: { [abilityID: IDEntry]: { [typeName: string]: number } } = {
|
|
darkaura: { Dark: 1.33 },
|
|
dragonsmaw: { Dragon: 1.5 },
|
|
fairyaura: { Fairy: 1.33 },
|
|
steelworker: { Steel: 1.5 },
|
|
steelyspirit: { Steel: 1.5 },
|
|
transistor: { Electric: 1.3 },
|
|
|
|
// -ate moves
|
|
pixilate: { Normal: 1.5 * 1.2 },
|
|
refrigerate: { Normal: 1.5 * 1.2 },
|
|
aerilate: { Normal: 1.5 * 1.2 },
|
|
normalize: { Normal: 1.2 },
|
|
|
|
// weather
|
|
drizzle: { Water: 1.4, Fire: 0.6 },
|
|
drought: { Fire: 1.4, Water: 0.6 },
|
|
};
|
|
// For moves whose quality isn't obvious from data
|
|
// USE SPARINGLY!
|
|
export const HARDCODED_MOVE_WEIGHTS: { [moveID: IDEntry]: number } = {
|
|
// Fails unless user is asleep
|
|
snore: 0,
|
|
// Hard to use
|
|
lastresort: 0.1, dreameater: 0.1,
|
|
// Useless without Berry + sucks even then
|
|
belch: 0.2,
|
|
|
|
// Power increases in conditions out of our control that may occur
|
|
avalanche: 1.2,
|
|
ficklebeam: 1.3,
|
|
hex: 1.2,
|
|
stompingtantrum: 1.2,
|
|
temperflare: 1.2,
|
|
|
|
// Attacks that set hazards on hit
|
|
// We REALLY like hazards
|
|
stoneaxe: 16,
|
|
ceaselessedge: 16,
|
|
|
|
// screens
|
|
lightscreen: 3, reflect: 3, auroraveil: 3, // TODO: make sure AVeil always gets Snow?
|
|
tailwind: 2,
|
|
|
|
// mess with the opponent
|
|
taunt: 2, disable: 2, encore: 3,
|
|
|
|
// healing moves
|
|
// TODO: should healing moves be more common on bulkier pokemon?
|
|
// 25%
|
|
junglehealing: 3, lifedew: 3,
|
|
// 50%
|
|
milkdrink: 5, moonlight: 5, morningsun: 5, recover: 5, roost: 5,
|
|
shoreup: 5, slackoff: 5, softboiled: 5, synthesis: 5,
|
|
// delayed/consequence
|
|
rest: 3, // has sleeptalk potential
|
|
wish: 2,
|
|
|
|
// requires terrain
|
|
steelroller: 0.1,
|
|
};
|
|
|
|
export const WEIGHT_BASED_MOVES = ['heatcrash', 'heavyslam', 'lowkick', 'grassknot'];
|
|
export const TARGET_HP_BASED_MOVES = ['crushgrip', 'hardpress'];
|