Damage Calculation in Pokémon Go
Damage = Floor(½ Power * Attacker’s Attack / Defender’s Defense * STAB * Effectiveness) + 1
This is how damage is calculated in combat. Let us look into the formula in more detail.
Floor()+1
Floor() basically rounds a number down, and while Floor()+1 is same as rounding up, the +1 will ensure that the minimum damage of an attack is 1.
This Floor function benefits faster attacks, as the +1 would eventually add up to the damage output. For instance, let’s look at Pikachu.
Move | Cooldown | Power | True DPS |
---|---|---|---|
Thunder Shock | 0.60 | 5 | 8.33 |
Quick Attack | 1.33 | 10 | 7.52 |
Power
Power and cooldown are the core of an attack’s damage output. If two Pokémon are equally matched, the actual damage could be quickly estimated by using (½power + 1). For instance, a battle between a Level 15 Flareon and Level 15 Dragonite.
Pokémon | Move | Power | Damage |
---|---|---|---|
Flareon | Ember | 10 | 6 |
Dragonite | Dragon Breath | 6 | 4 |
Attack and Defense
Attack and Defense represents the attacker’s attack and defender’s defense. Attack and Defense are based on the Pokémon’s base attribute, Individual Values (IV), and CP Multiplier.
- Attack = (Base Attack + Attack IV) * CP Multiplier
- Defense = (Base Defense + Defense IV) * CP Multiplier
Although Pokémon’s level is not part of the formula, CP Multiplier scales with a Pokémon’s level. CP Multiplier is derived directly from the apk, and to determine a Pokémon’s CP Multiplier, you can look at this table.
A level 25 Pokémon’s CP Multiplier is 0.667934 or 2/3 of its base attribute and IV. Although the formula to calculate CP Multiplier is not known, it is noticed that CP Multiplier roughly scales with the square root of a Pokémon’s level. That means,
- a level 9 Pokémon deals 50% more damage than it would at level 4.
- a level 16 Pokémon will receive 33% less damage than it would at level 9.
Same Type Attack Bonus (STAB)
If a Pokémon uses an attack that is the same type as itself, then the attack will get a 1.25 STAB bonus. For example, Vaporeon which is a Water type Pokémon uses Water Gun which is an attack that falls under Water type as well.
Effectiveness
Each Pokémon has a different type and how effective a Pokémon is against another Pokémon during combat can be referred from the effectiveness chart below.
Pokémon Go Effectiveness Chart
- Center column – An attack type
- Left column – a type that the attack is not very effective against (x0.80)
- Right column – a type that the attack is super effective against (x1.25)
Stacking Effectiveness
Some Pokémon are dual type. There can be multiple effective bonus if you attack with a type that is super effective against both of the defender’s type.
For instance, Dragonite which is both a Dragon and Flying type is weak against Ice attacks. Thus, Dragonite will receive x1.25×1.25 = x1.5625 extra damage from Ice attacks.
Effectiveness for Dual Type Pokémon
Not Effective | Neutral | Effective | ||
---|---|---|---|---|
x0.80 | x1.00 | x1.25 | ||
Not Effective | x0.80 | x0.80² | x0.80 | x1.00 |
Neutral | x1.00 | x0.80 | x1.00 | x1,25 |
Effective | x1.25 | x1.00 | x1.25 | x1.25² |
Double Resistance
These dual type Pokémon is double resist against certain attack types. When a Pokémon has double resistance against an attack type, the damage will be reduced to x0.80² and will tank very well.
Attack Type | Double Resistance Pokémon |
---|---|
Fighting | Butterfree Scyther Mr.Mime Beedrill Venomoth Gengar Golbat |
Flying | Magneton |
Poison | Golem Onix Rhydon Nidoking Nidoqueen Gengar |
Ground | Butterfree Scyther Parasect |
Bug | Gengar Golbat Charizard Moltres |
Steel | Magneton |
Fire | Omastar Kabutops |
Grass | Venusaur Victreebel Vileplume Beedrill Venomoth Golbat Charizard Moltres Butterfree Scyther Dragonite |
Ice | Dewgong Cloyster Lapras |
Double Weakness
These dual type Pokémon is double weak against certain attack types. When a Pokémon has double weakness against an attack type, the damage will be increased by x1.25² and will wear down their HP quickly.
Attack Type | Double Weak Pokémon |
---|---|
Flying | Parasect |
Ground | Magneton |
Rock | Charizard Moltres Articuno Butterfree Scyther |
Bug | Exeggutor |
Fire | Parasect |
Water | Golem Onix Rhydon |
Grass | Golem Onix Rhydon Omastar Kabutops |
Electric | Gyarados |
Ice | Dragonite |
Summary
- Power and cooldown are the core of an attack’s damage output. If two Pokémon are equally matched, the actual damage could be quickly estimated by using (½power + 1).
- Damage roughly scales with the square root of a Pokémon level.
- Same Type Attack Bonus provides a x1.25 STAB bonus.
- Very Effective attack provides a x1.25 multiplier.
- Not Very Effective attack provides a x0.80 multiplier.
- For dual type Pokémon, effectiveness could be stacked. Double resistance and double weakness will provide a x0.80² and x1.25² multiplier respectively against an attack type.