-
Notifications
You must be signed in to change notification settings - Fork 0
DPS Calculator
The DPS Calculator at /dps answers two questions: "how hard does this Pokemon hit with these moves?" and "which of my attackers is best against this defender?". The Calculator tab analyzes one Pokemon at a time; the Compare tab ranks several attackers side by side. You only ever enter a CP value; the tool derives the underlying stats for you.
- Search for a Pokemon with the sprite picker (for example "Mewtwo"). Selecting one auto fills the CP field with its level 40 perfect IV CP.
- Pick a fast move and a charged move from the dropdowns (each option shows its type).
- Adjust the CP to match your actual Pokemon if you like.
- Optionally pick a target Pokemon. With a target set, type effectiveness multipliers are applied per move and shown next to each move (green for super effective, red for resisted). Logged-in users have their target selection saved and restored automatically across page loads.
- Hit Calculate.
The result card shows the moveset with type badges, Cycle DPS (the headline number), Fast DPS (fast move only), and Fast EPS (energy gained per second), plus the Pokemon's Pokedex genus, flavor text, and a Legendary or Mythical badge.
Build a roster instead of analyzing one Pokemon:
- Pick an optional target first. The target picker lists the current raid bosses at the top, each tagged with its tier (T5, Mega, and so on), followed by every other Pokemon. A Custom types toggle reveals two type dropdowns if you want to test against an arbitrary typing instead of a specific species.
- Add attackers one at a time: Pokemon, fast move, charged move, CP, then + Add.
Every attacker you add is ranked in a live table by DPS, with TDO alongside and per move effectiveness markers when a target is set. The top row is highlighted, individual rows can be removed, and a Clear all link resets the roster. On screens narrower than 768px the table swaps to a stacked card layout: each attacker gets a card with rank, sprite, CP, moves, and big DPS and TDO numbers.
The page is ts/dps.ts; the math lives in ts/shared/damage.ts and the CP handling in ts/shared/gamedata.ts.
CP to stats. Pokemon GO computes CP as
CP = max(10, floor((baseAtk + ivAtk) * sqrt(baseDef + ivDef) * sqrt(baseSta + ivSta) * cpm^2 / 10))
where cpm is the level dependent CP multiplier. The calculator inverts this: cpmFromCP walks the CP multiplier table (from PoGoAPI game data) level by level and picks the highest multiplier whose computed CP does not exceed the CP you entered, assuming 15/15/15 IVs. The attacker's effective attack stat is then (baseAtk + 15) * cpm. The defender's defense stat is fixed at 150 on this page; a selected target only changes the type effectiveness multipliers.
Damage per hit (calcDamage):
damage = floor(0.5 * movePower * (attackerAtk / defenderDef) * effectiveness) + 1
Cycle DPS (trueDPS) models a full energy cycle: it computes how many fast moves are needed to pay for one charged move (ceil(chargedEnergyCost / fastEnergyGain)), sums the damage of those fast moves plus the charged move, and divides by the total duration of the cycle in seconds.
TDO (estimateTDO) multiplies cycle DPS by an estimated survival time: HP is floor((baseSta + staIV) * cpm), and survival time is HP * defMult / 15 (an assumed incoming 15 damage per second; defMult is 5/6 for Shadow Pokemon, 1 otherwise).
Type effectiveness multiplies the attack type's chart entry against each of the defender's types, using the PoGoAPI type effectiveness table loaded with the rest of the game data (see Data-Sources). The same shared formulas power the counter rankings on Raids-and-Counters.
Repository | Live site | hailsDotGO is a fan-made project, not affiliated with, endorsed by, or connected to Niantic or The Pokémon Company. Game data comes from community sources credited on the Data Sources page.
Start Here
Features
- Raids and Counters
- DPS Calculator
- IV Calculator
- PvP IV Ranker
- Events
- Shiny Tracking
- Trainer Directory
- Raid Finder
- Social Features
- Trust and Awards
- Bug Reports
- Player Reports
- Store
- Accounts and Roles
- Admin Guide
Self-Hosting
Development
Translations