Damage Mechanics




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

pokemon-go-effectiveness-chart-v2

  • 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.