DragonSoul Guides

Dragon Soul: Stats Explained

By Attabrain Zee, server 4. Last updated 11/30/2017

See more Dragon Soul guides


The heroes' Power numbers confuse a lot of people. Why does my more powerful hero keep losing fights? Why does my Drakul have 2000 less power than yours?

The most important thing to know about Power is that it's only one measure of how strong your hero is. A big chunk of the game's strategy is figuring out how to use a low-power team to beat a high-power team. You do this by choosing good runes for your heroes, enchanting intelligently, and most importantly, putting together a good team of heroes which work well together.

Patriarch_Xavier_II, on the DragonSoul forums, figured out the formula for Power. Looking through it, you can see that it's very easy to inflate a hero's power without making that hero stronger. For example, Magic Penetration has a much larger effect than Skill Power, but Magic Penetration doesn't benefit all heroes, and you can have too much of it.

Here's the formula. I haven't personally verified it:

  • max health * 0.04
  • health regen * 0.06
  • energy regen * 0.15
  • skill power * 0.3
  • basic damage * 0.6
  • armor * 2.0
  • magic resist * 2.0
  • improved critical * 0.55
  • critical damage * ???
  • life steal * 0.6
  • dodge * 1.0
  • accuracy * ??
  • Magic Penetration * 1.8
  • Armor penetration * 0.8
  • Improved Healing * 160
  • Conservation * 1.2
  • 4 * (white skill level + green skill level + (20 + blue skill level) + (40 + purple skill level) + (60 + orange skill level))

Critical Hits

Critical Hit Calculator

Enemy level:

Current crit rating:

Current crit damage:

Crit rating increase:

Crit damage increase:

Your average damage is % of normal.

When you make a critical hit, you deal double damage, plus any +Crit Damage runes.

This formula was posted to Reddit by a PerBlue employee:

Chance to crit = Attacker Crit Rating / (Attacker Crit Raiting + 100 * Foe Level)

For example, if your crit rating is 1000 and you're attacking a level 50 enemy, your chance is 100%*1000/(1000+100*50) = 1/6.

You can also calculate critical hits' effect on your average damage:

  • Average damage boost = chance to crit * crit damage
  • Average total damage = damage * (chance to crit * crit damage + (1 - crit chance))

For example, with a crit rating of 1000 and crit damage of 205%, against a level 50 enemy, you'll average (1/6)*2.05 = 34% more damage.

Do you want more crit?

Let's look at some real examples.

  • My Hydra is O+1 level 93. Before equipment and rune bonuses, he has a crit rating of 3356.
    • Attacking a level 93 enemy, Hydra has an average damage boost of 26.5%.
    • With another 50 crit rating from a rune, that boost goes up to 26.8%.
      • This increases average damage by 1.268/1.265 = 0.24%
  • My Cyclops Shaman is O+1 level 93, with only a 1281 crit rating.
    • Attacking a level 93 enemy, Cyclops has a damage boost of 12%.
    • With another 50 crit rating from a rune, the boost will go up to 12.5%.
      • This increases average damage by 1.125/1.12 = 0.45%

Clearly, crit rating boosts are most useful if your hero has a low crit rating. Crit damage boosts, on the other hand, are most useful for heroes with a high rating.

Do you ever really want Crit Rating runes? In my opinion, no. An extra 0.8% gives Cyclops around 200 more damage. A 5* Basic Damage rune, on the other hand, will give him around 450 damage. Crit rating affects skills as well as attacks, but you're probably better off with +Skill Power if you want to focus on that.

Armor and Magic Resistance

Before I get to the math, here are some basic facts:

  • The more armor you have, the better Rock and Mist runes are.
  • The less armor you have, the better Armor Growth and Magic Resist Growth runes are.
  • For any hero with less than 1250 armor, a single maxed-out Armor Growth rune is better than the Rock set.

The Math

Note: I use Armor in all my calculations below. The same formulas apply to Magic Resistance.

Posted to Reddit by a PerBlue employee:

  1. Effective Armor = Armor - Armor Penetration, Min 0.
  2. Effective Health = 100% + 8% * Effective Armor / Damage Input
  3. Damage Done = Damage Input / Effective Health

Some examples:

  • 100 armor against 3,000 damage: 2,992 damage taken.
  • 100 armor against 15,000 damage: 14,992 damage taken.
  • 1,500 armor against 3,000 damage: 2,884 damage taken.
  • Try it yourself: armor against damage: 2960 damage taken.

This obviously can't be how armor works, or it would be nearly useless. 1500 armor only protects you from 115 damage?

Possible Fixes

Fix #1

The easiest solution is to turn the 8% into 8, making the formula:

Damage Done = Damage / (1 + 8 * (armor - armor penetration) / damage)

Some examples:

  • 100 armor against 3,000 damage: 2,368 damage taken.
  • 100 armor against 15,000 damage: 14,241 damage taken.
  • 1,500 armor against 3,000 damage: 600 damage taken.
  • Try it yourself: armor against damage: 1286 damage taken.

If this is correct, then you always want more armor. There are diminishing returns, but not enough to stop you from wanting more.

Fix #2

Most formulas include the enemy hero's level. So maybe the Damage Input denominator was meant to be enemy level:

Damage Done = Damage / (1 + 0.08 * (armor - armor penetration) / enemy level)

Some examples with an enemy level of 100:

  • 100 armor against 3,000 damage: 2,778 damage taken.
  • 100 armor against 15,000 damage: 13,889 damage taken.
  • 1,500 armor against 3,000 damage: 1364 damage taken.
  • Try it yourself: armor against damage: 2143 damage taken.

In this case, armor is really damage reduction, lowering the damage you take by a percentage based on your armor value. The numbers show that no matter how hard you try, you won't do much better than 60% damage reduction, even with Snap Dragon, so overdoing it on armor isn't worth the effort.

Damage reduction cut-off points

Damage reduction cut-off points

Base Armor DR*1 Armor with Rock Runes DR with Rock Damage taken with Rock Armor with Rune*2 DR Damage
139 10% 195 13.5% 3.9% less damage 639 33.8% 26.4% less
312 20% 437 25.9% 7.4% less 812 39.4% 24.3% less
536 30% 750 37.5% 10.7% less 1036 45.3% 21.9% less
833 40% 1166 48.3% 13.8% less 1333 51.6% 19.3% less
1250 50% 1750 58.3% 16.6% less 1750 58.3% 16.6% less
1875 60% 2625 67.7% 19.2% less 2375 65.0% 12.5% less
2917 70% 4084 76.6% 22.0% less 3417 73.2% 10.7% less
5000 80% 7000 84.9% 24.5% less 5500 81.5% 7.5% less
11,250 90% 15,750 92.6% 26% less 11750 90.1% 1.0% less

*1 Damage Reduction
*2 Assume a maxed out +5 Armor Growth rune at level 100

To do: When is armor/magic resist better than health?

I plan to compare health runes and the tree set with armor/resist runes and rock/mist.


According to the official documentation, Disables include to blind, stun, silence and petrify. Some examples are:

  • Medusa's petrify
  • Cosmic Elf's Silence
  • Cutie's Stun
  • Centaur's Blind

Some less clear cases include:

  • Spirit Wolf's Mesmerize is not a disable (confirmed by a PerBlue employee).
  • Faith Healer's Evangelize is a disable, since he has Improved Disables on his keystone.
  • Understudy's food transformation is probably a disable (unconfirmed).
  • Slows and and other debuffs (Frost Giant's Orange skill, Kaiju Green skill, etc) are not disables.

Putting Improved Disables runes on a hero who doesn't have disable skills has no effect.

Tenacity reduces the duration of disables, so it's valuable to any hero. The formula for Tenacity has not been disclosed, but experimenting shows that 450 Tenacity reduces the duration nearly to zero, and even a small amount of Tenacity helps.

How to figure out whether an effect is a disable: If it's a multiple-target effect, you can go against a hero with that effect in expedition. If it ends on all of your team at the same time, it's not a disable, because Tenacity doesn't affect it. If it's a single-target effect, you'll have to count the seconds yourself, which is difficult in some cases, like Kraken's 0.5s stun. Credit for this trick goes to @Zenwhoa.

Life Steal

I found this formula on the forums, but I'm not sure whether it's been confirmed by the DragonSoul development team:

Life Healed = Physical Damage Done * Attacker Life Steal Rating / (Attacker Life Steal Rating + 100 + Target Level)

So the more damage you deal, the more life you heal. Does this mean that Flame runes are better than Bolt? Not necessarily. Healing more is great, but healing more frequently could save your life, even if the total healing is lower. On the other hand, it's easy to end up with too much life steal. It caps at 100% of damage dealt. Once you reach 800 or so, you're very close to that cap, and more isn't going to help you much.

This formula also means that Armor Penetration will improve your Life Steal.