Which Pokémon Generations and Battle Mechanics Does the Pokémon Showdown Damage Calculator Support?
Updated
The Pokémon Damage Calculator at calc.pokemonshowdown.com supports every mainline generation from RBY (Gen 1) through S/V (Gen 9), and it models the signature battle mechanics of each era — including Dynamax, Z-moves, Tera types, and forced critical hits. You select the generation and output notation at the top of the page, then configure each Pokémon's stats, ability, item, and move to get a damage range.
Generations covered
The generation selector lists nine options, matching the main series:
| Label | Generation |
|---|---|
| RBY | Gen 1 (Red/Blue/Yellow) |
| GSC | Gen 2 (Gold/Silver/Crystal) |
| ADV | Gen 3 (Ruby/Sapphire/Emerald) |
| DPP | Gen 4 (Diamond/Pearl/Platinum) |
| B/W | Gen 5 (Black/White) |
| X/Y | Gen 6 (X/Y) |
| S/M | Gen 7 (Sun/Moon) |
| S/S | Gen 8 (Sword/Shield) |
| S/V | Gen 9 (Scarlet/Violet) |
Switching generations changes which mechanics, moves, abilities, and stat rules apply, so pick the generation first before entering sets.
Battle mechanics you can toggle
The calculator exposes the mechanics that matter for damage rolls:
- Dynamax — a Dynamax Health field appears so you can account for doubled HP under Dynamax.
- Z-moves — a "Make this attack a Z-move?" toggle converts a move into its Z-move version.
- Tera types — a Tera Type selector lets you set the Tera type for the attacking or defending Pokémon.
- Critical hits — a "Force this attack to be a critical hit?" toggle applies the crit multiplier.
- Multi-hit moves — hit-count options (2, 3, 4, 5 hits, or ">") let you model multi-hit attacks.
- Stat stages — each stat has +6 to −6 modifiers for boosts and drops.
- Status conditions — Healthy, Poisoned, Badly Poisoned, Burned, Paralyzed, Asleep, and Frozen, with a current-HP fraction selector (1/16 through 15/16) for residual damage context.
- Field and ally conditions — an "allies fainted" selector (Zero through Five) feeds abilities and moves that scale with fainted teammates.
- Category override — Physical, Special, Crit, Z, and Stellar buttons let you force how a move is treated.
Battle modes
The calculator runs in three modes, chosen from the mode selector:
- One vs One — a single attacker against a single defender.
- One vs All — one attacker against a full team.
- All vs One — a full team against one defender.
There are also Champions, Random Battles, and Other Metagames options for formats outside standard play.
Output notation
You can choose how damage is displayed:
- 48th — damage expressed in 1/48 increments (the traditional Pokémon damage fraction).
- 100% — damage expressed as a percentage of the target's HP.
What you configure per Pokémon
For each side you set:
- Type, Tera Type, Forme, Gender, G-Max status, and Level
- Weight (kg)
- Base IVs, EVs, and DVs
- Nature (e.g., Adamant, Jolly, Modest, Timid)
- Ability
- Item
- Status condition and current HP
- Stat stages for Attack, Defense, Sp. Atk, Sp. Def, Special, and Speed
You can also import sets, and there's a "Show imported sets" toggle plus a "Clear Imported Sets" button.
Practical notes
- The page relies on JavaScript. If you see "Copied" stuck for more than a few seconds, enable JavaScript in your browser.
- Damage results load as ranges (shown as "??? - ???%" while computing), so wait for the numbers to resolve before reading them.
- Because generation changes the underlying rules, always confirm the generation selector matches the format you're building for before trusting a result.