The Damage Formula is one of the two most important calculations in a Pokemon game (the other one being the Stats Formula). Here, we provide the damage formula for Diamond, Pearl, and Platinum (DPP). Note that this formula is not the same as that for the games preceding DPP, so don't use it to calculate damage for other games.
I need to immediately thank Peterko for all the testing data he has provided for me. This guide wouldn't have seen the light of day without all his efforts. He literally triggered the damage formula thousands of times (not an exaggeration) during the game so that I could come up with such a detailed description of it. I cannot thank him enough for his efforts. Thank you Peterko... you are one of the best testers I've ever seen!
Here is the damage formula for DPP:
Damage Formula = (((((((Level × 2 ÷ 5) + 2) × BasePower × [Sp]Atk ÷ 50) ÷ [Sp]Def) × Mod1) + 2) × CH × Mod2 × R ÷ 100) × STAB × Type1 × Type2 × Mod3)
where:
It should be immediately mentioned that after successfully performing an operator (an operator being +, -, × or ÷), you need to "round down" the number to the nearest whole number before performing the next one. In simple terms, this means to remove all the numbers to the right of the decimal point every time the answer is a decimal before proceeding with the next arithmetic operation.
If the damage formula's damage is 0 and the foe is not immune to the move used, the damage dealt will be 1 instead. This will happen if, say, a Level 2 Bidoof uses Tackle against a Level 100 Aggron. To paraphrase, unless the move does not affect the foe, the minimum amount of damage done is 1.
The way the formula is written above is such that you can actually ignore all the brackets and proceed from left to right (ignoring the BODMAS rules, so to speak) and still come up with the correct answer.
Let's provide an example here. For the sake of simplicity, we shall assume that Mod1, Mod2, and Mod3 are all 1 in this example.
Say we want to calculate the minimum and maximum damage that a Level 47 Staraptor with 140 Attack stat will deal with the move Aerial Ace against a Roserade with 77 Defense stat.
So Staraptor's minimum damage would be 114.
For the maximum damage, we do exactly the same steps, except that we multiply by 100 instead of by 85 in Step 12. We get 134 as the maximum damage if we do that. Try it out. (If you do not get 134, make sure that you have actually rounded down your answer at EVERY step in the calculation.)
Note: The steps marked *** can be omitted, since multiplying by 1 does not change the answer.
The Base Power of the move might be considered to be simple, but in fact it can change by many things during the battle that can affect it.
So many, in fact, that it can be summarised by the following formula:
BasePower = HH × BP × IT × CHG × MS × WS × UA × FA
where
The Base Power is calculated from left to right, and is rounded down before the next multiplication is performed. The order of the multiplications is as written in the formula above... changing the order might result in the incorrect Base Power.
Here is a list of moves having variable Base Power. This Base Power is equal to BP in the Base Power formula.
Move name | Base Power |
---|---|
Assurance | 100 if the foe was hurt that turn, 50 otherwise. |
Avalanche | 120 if the targeted Pokemon did damage to the user, 60 otherwise. |
Brine | 130 if the targeted Pokemon's current HP is less than or equal to half of its maximum HP, rounded down, 65 otherwise. |
Crush Grip*** | 1 + (120 × Foe's Current HP ÷ Foe's Max HP), rounded down. |
Eruption*** | 150 × User's Current HP ÷ User's Max HP, rounded down. |
Facade | 140 if the user is paralyzed, poisoned, or burned, 70 otherwise. |
Flail | 200 if CP is between 0 and 1, 150 if CP is between 2 and 5, 100 if CP is between 6 and 12, 80 if CP is between 13 and 21, 40 if CP is between 22 and 42, and 20 if CP is between 43 and 64, where CP = User's Current HP × 64 ÷ User's Total HP, rounded down. |
Fling*** | Check the move's page for more details. |
Frustration | 102 - (User's Happiness × 2 ÷ 5), rounded down. If BP is 0, it becomes 1. |
Fury Cutter | 10 if Fury Cutter was not already used or it missed when it was last used, otherwise, BP is double the BP of the last used Fury Cutter. If BP is greater than 160, it becomes 160. |
Grass Knot | 20 if W is between 0 and 10, 40 if W is between 10.1 and 25, 60 if W is between 25.1 and 50, 80 if W is between 50.1 and 100, 100 if W is between 100.1 and 200, and 120 otherwise, where W is the weight of the foe in kilograms. |
Gyro Ball | 1 + (25 × Foe's Speed ÷ User's Speed), rounded down. If BP is greater than 150, it becomes 150. |
Ice Ball | If Defense Curl was used by the user in any of the previous turns, then 60 for the first turn that Ice Ball is used, followed by 120, 240, 480 and 960 for the second, third, fourth and fifth turns respectively. If Defense Curl was not used by the user in any of the previous turns, then 30 for the first turn that Ice Ball is used, then 60, 120, 240, and 480 for the second, third, fourth and fifth turns respectively. If Ice Ball fails, BP restarts from 60 or 30 in its next usage. |
Hidden Power | Check the move's page for more details. |
Low Kick | 20 if W is between 0 and 10, 40 if W is between 10.1 and 25, 60 if W is between 25.1 and 50, 80 if W is between 50.1 and 100, 100 if W is between 100.1 and 200, and 120 otherwise, where W is the weight of the foe in kilograms. |
Magnitude | 10 if R is between 0 and 4 (Magnitude 4), 30 if R is between 5 and 14 (Magnitude 5), 50 if R is between 15 and 34 (Magnitude 6), 70 if R is between 35 and 64 (Magnitude 7), 90 if R is between 65 and 84 (Magnitude 8), 110 if R is between 85 and 94 (Magnitude 9), and 150 if R is between 95 and 99 (Magnitude 10), where R is a random whole number between 0 and 99 with uniform probability. |
Natural Gift | Check the move's page for more details |
Nature Power | Becomes Earthquake if the location is on a road or in the desert, Tri Attack if the location is inside a building (this is the default choice in battles), Seed Bomb if the location is on grass or tall grass, Rock Slide if the location is in a cave or on a mountain, Blizzard if the location is on snow, and Hydro Pump if the location is on a pond or in the sea. |
Payback | 100 if the targeted Pokemon moves before the user, 50 otherwise. |
Present*** | 40 if R is between 0 and 102, 80 if R is between 103 and 179, 120 if R is between 179 and 204, and 0 and the foe is healed by 80 HP otherwise, where R is a random whole number between 0 and 255 inclusive, with uniform probability. |
Punishment | 60 + (20 × Sum of positive stat modifiers of the foe). If BP is greater than 200, it becomes 200. |
Pursuit | 80 if the foe switches out during that turn, 40 otherwise. |
Return | User's Happiness × 2 ÷ 5, rounded down. If BP is 0, it becomes 1. |
Revenge | 120 if the targeted Pokemon did damage to the user, 60 otherwise. |
Reversal | 200 if CP is between 0 and 1, 150 if CP is between 2 and 5, 100 if CP is between 6 and 12, 80 if CP is between 13 and 21, 40 if CP is between 22 and 42, and 20 if CP is between 43 and 64, where CP = User's Current HP × 64 ÷ User's Total HP, rounded down. |
Rollout | If Defense Curl was used by the user in any of the previous turns, then 60 for the first turn that Rollout is used, followed by 120, 240, 480 and 960 for the second, third, fourth and fifth turns, respectively. If Defense Curl was not used by the user in any of the previous turns, then 30 for the first turn that Rollout is used, then 60, 120, 240, and 480 for the second, third, fourth and fifth turns, respectively. If Rollout fails, BP restarts from 60 or 30 in its next usage. |
SmellingSalt | 120 if the foe is paralyzed (and is healed from paralysis afterwards), 60 otherwise. |
Spit Up | 100 if one Stockpile was used, 200 if two Stockpiles were used, 300 if three Stockpiles were used, 0 otherwise. |
Stomp | 130 if the foe used the move Minimize, 65 otherwise. |
Triple Kick | 10 in the first kick, 20 in the second kick, 30 in the third kick. |
Trump Card | 40 if P is at least 4, 50 if P is 3, 60 if P is 2, 80 if P is 1, and 200 if P is 0, where P is the PP of Trump Card after being used. |
Wake-Up Slap | 120 if the foe is asleep (and is healed from sleep afterwards), 60 otherwise. |
Water Spout*** | 150 × User's Current HP ÷ User's Max HP, rounded down. |
Weather Ball | 100 if the weather is Sunny Day, Rain Dance, Sandstorm, Hail, or Fog, 50 otherwise. |
Wring Out | 1 + (120 × Foe's Current HP ÷ Foe’s Max HP), rounded down. |
*** - Exact BP not confirmed.
The following items equipped to the user provide the following boost to the IT multiplier:
Item name | IT multiplier |
---|---|
Muscle Band | 1.1 if the move used is physical, 1 otherwise. |
Wise Glasses | 1.1 if the move used is special, 1 otherwise. |
Type-boosting items, plates and incenses | 1.2 if the move used is of the same type as the type that the item, plate or incense boosts, 1 otherwise. |
Adamant Orb | 1.2 if the user is Dialga and the move used is Steel- or Dragon-type, 1 otherwise. |
Lustrous Orb | 1.2 if the user is Palkia and the move used is Water- or Dragon-type, 1 otherwise. |
Griseous Orb | 1.2 if the user is Giratina and the move used is Ghost- or Dragon-type, 1 otherwise. |
Any other item | 1. |
The following abilities provide the following numbers to the UA multiplier if the user has one of them:
User ability | UA multiplier |
---|---|
Rivalry | 1.25 if the user is of the same gender as the targeted Pokemon, 0.75 if the user is of the opposite gender of the targeted Pokemon, 1 otherwise. |
Reckless | 1.2 if the user uses a recoil move, 1 otherwise. |
Iron Fist | 1.2 if the user uses a punching move, 1 otherwise. |
Blaze | 1.5 if the user uses a Fire move and its current HP is less than 1/3 of its maximum HP (rounded down), 1 otherwise. |
Overgrow | 1.5 if the user uses a Grass move and its current HP is less than 1/3 of its maximum HP (rounded down), 1 otherwise. |
Torrent | 1.5 if the user uses a Water move and its current HP is less than 1/3 of its maximum HP (rounded down), 1 otherwise. |
Swarm | 1.5 if the user uses a Bug move and its current HP is less than 1/3 of its maximum HP (rounded down), 1 otherwise. |
Technician | 1.5 if the user uses a move with BP at most 60, 1 otherwise. |
All other user abilities | 1. |
The following abilities provide the following numbers to the FA multiplier if the foe has one of them:
Foe ability | FA multiplier |
---|---|
Thick Fat | 0.5 if the user is using an Ice or Fire move, 1 otherwise. |
Heatproof | 0.5 if the user is using a Fire move, 1 otherwise. |
Dry Skin | 1.25 if the user is using a Fire move, 1 otherwise. |
All other foe abilities | 1. |
The Attack and Special Attack stats can also be changed throughout the match by various things.
[Sp]Atk = Stat × SM × AM × IM
where:
As we said for the calculation of the Base Power, the above multiplication is also performed from left to right, rounding down before performing the next one.
Each stat (excluding HP) has a stat modifier which is a whole number between -6 and 6 inclusive. This stat modifier starts from 0 and is changed by various moves like Swords Dance and Defense Curl. Some attacks can also change either the user’s stat modifier or that of the foe as a secondary effect, like Overheat and Shadow Ball.
The effect of SM is the following:
Stat Modifier | SM multiplier | Decimal Approximate |
---|---|---|
-6 | 2/8 | 0.25 |
-5 | 2/7 | 0.2857 |
-4 | 2/6 | 0.3333 |
-3 | 2/5 | 0.4 |
-2 | 2/4 | 0.5 |
-1 | 2/3 | 0.6667 |
0 | 2/2 | 1 |
+1 | 3/2 | 1.5 |
+2 | 4/2 | 2 |
+3 | 5/2 | 2.5 |
+4 | 6/2 | 3 |
+5 | 7/2 | 3.5 |
+6 | 8/2 | 4 |
A few points:
Stat Modifier | SM multiplier | Decimal Approximate |
---|---|---|
-3 to -6 | 2/8 | 0.25 |
-2 | 2/6 | 0.3333 |
-1 | 2/4 | 0.5 |
0 | 2/2 | 1 |
+1 | 4/2 | 2 |
+2 | 6/2 | 3 |
+3 to +6 | 8/2 | 4 |
Here is a list of abilities that modify the Attack or Special Attack stat of the user, which affect the AM multiplier:
Abilities that affect the Attack stat:
Ability name | AM multiplier |
---|---|
Pure Power | 2. |
Huge Power | 2. |
Flower Gift | 1.5 if Sunny Day is in effect, AM = 1 otherwise. |
Guts | 1.5 if the user is paralyzed, poisoned, burned, or asleep, AM = 1 otherwise. |
Hustle | 1.5 (and physical moves have 80% accuracy). |
Slow Start | 0.5 if the user has been in the battlefield for less than 5 turns, AM = 1 otherwise. |
Other abilities | 1. |
If there are two simultaneous boosts in the Attack stat, first apply the attacking Pokemon's ability boost, then the allies ability boost.
Abilities that affect the Special Attack stat:
Ability name | AM multiplier |
---|---|
Plus | 1.5 if the partner has ability Minus, 1 otherwise. |
Minus | 1.5 if the partner has ability Plus, 1 otherwise. |
Solar Power | 1.5 if Sunny Day is in effect (and loses 1/8 of HP per turn), 1 otherwise. |
Other abilities | 1. |
Here is a list of items that modify the Attack or Special Attack stat of the user, which affect the IM multiplier:
Items that affect the Attack stat:
Item name | IM multiplier |
---|---|
Choice Band | 1.5 (the user can't use any other move). |
Light Ball | 2 if the user is Pikachu, 1 otherwise. |
Thick Club | 2 if the user is Cubone or Marowak, 1 otherwise. |
Other items | 1. |
Items that affect the Special Attack stat:
Item name | IM multiplier |
---|---|
Choice Specs | 1.5 (the user can't use any other move). |
Light Ball | 2 if the user is Pikachu, 1 otherwise. |
Soul Dew | 1.5 if the user is Latios or Latias, 1 otherwise. |
Deepseatooth | 2 if the user is Clamperl, 1 otherwise. |
Other items | 1. |
Various changes can also be performed to the Defense and Special Defense stats of the foe during a match.
In this case, there aren't many things that can change the Defense or Special Defense stats:
[Sp]Def = Stat × SM × Mod × SX
where:
Name | Modifier |
---|---|
Metal Powder | 1.5 if the foe is Ditto, is holding the item Metal Powder and has not used the move Transform. |
Marvel Scale | 1.5 if the foe has the ability Marvel Scale and is paralysed, poisoned, burned, asleep, or frozen. |
Name | Modifier |
---|---|
Sandstorm | 1.5 if Sandstorm is in effect and the foe is of Rock-type. |
Soul Dew | 1.5 if the foe is Latios or Latias and is holding the item Soul Dew. |
Metal Powder | 1.5 if the foe is Ditto, is holding the item Metal Powder and has not used the move Transform. |
Deepseascale | 2 if the foe is Clamperl and is holding the item Deepseascale. |
Flower Gift | 1.5 if one of the foes has the ability Flower Gift and Sunny Day is in effect. |
Otherwise, Mod = 1.
Again, remember to multiply from left to right and round down after each multiplication.
If there are two simultaneous boosts in Mod, first apply the ability boost, then the item boost, and finally the Sandstorm boost.
If the Defense or Special Defense stat is equal to zero after all these modifiers, it becomes 1 instead.
This section will explain the function of Mod1, the first modifier to the damage formula.
Mod1 = BRN × RL × TVT × SR × FF
where:
BRN is 0.5 if the move performed is physical, the user is affected by the burn special condition and the user's ability is not Guts, and 1 otherwise.
RL is:
Also, if the move is a critical hit, RL is made equal to 1 no matter what.
TVT is 0.75 if the game is 2v2 and the move used hits more than one Pokemon, and 1 otherwise. Note: These moves don't always hit for 75% damage. Research on what conditions trigger the 75% damage is being carried out.
SR is:
FF is 1.5 if the user has the ability Flash Fire, was previously attacked by a move that is of Fire-type, and is using a Fire move, 1 otherwise.
Yet again, it must be emphasized that the order of the multiplication must be as written above.
This section explains what affects Mod2, the second modifier of the damage formula.
Mod2 is
In the case when the Pokemon is using Me First and is also holding the item Life Orb or Metronome, the item boost multiplier is done first, followed by the Me First (x1.5) multiplier.
Finally, we come to the third and final modifier to the damage formula, Mod3.
Mod3 = SRF × EB × TL × TRB
where:
SRF is 0.75 if the foe's ability is Solid Rock or Filter and the move used is super effective against it, and 1 otherwise.
EB is 1.2 if the user is holding the item Expert Belt and the move used is super effective against the foe, and 1 otherwise.
TL is 2 if the user's ability is Tinted Lens and the move used is not very effective against the foe, and 1 otherwise.
TRB is:
Remember once again that the multiplication must be carried out in the order listed above.
The eighth and final section will concern moves that do not follow the damage formula to the rule.