Elitist Jerks
Register
Blogs
Forums


Go Back   Elitist Jerks » Class Mechanics » Death Knights

Reply
 
LinkBack Thread Tools
Old 02/14/09, 2:24 AM   #1
 Darkside
I find your lack of faith disturbing
 
Darkside's Avatar
 
Kroot
Orc Death Knight
 
No WoW Account
DK Stat Weights: A Derivation (Now with more spreadsheets!)

Since there have been no definitive stats weights developed for the Death Knight, I took it upon myself to calculate these values. Due to the natural dynamic nature of the system, there is no universal stat weighting for all Death Knights, or even for each spec. The weightings for an individual character are specific to the gear and talents of that character.

GENERAL DERIVATION

Stat weighting is fairly simple to determine, once you realize the formula for how damage is calculated. Let’s look, for example, at the simplest example (for a Death Knight): an instant cast spell, such as Icy Touch or Death Coil (variable assignments are given at the end of the post).

\[(b + AP \cdot k)(1 + c \cdot m) = d\]

From here, it is easy to calculate what the change in damage will be if we add any amount of a given stat. For example, a change in Attack Power produces the following change in Damage.

 \[(b + (AP + \Delta AP)k)(1 + c \cdot m) = d + \Delta d\]

 \[(b + AP \cdot k + \Delta AP \cdot k)(1 + c \cdot m) = d + \Delta d\]

 \[\Delta AP \cdot k(1 + c \cdot m) = \Delta d\]

We can just as easily use this formula to determine the change in damage if we increase the critical strike chance:

 \[(b + AP \cdot k)\Delta c \cdot m = \Delta d\]

Setting these two equations equal to each other, we get:

 \[\Delta AP \cdot k(1 + c \cdot m) = (b + AP \cdot k)\Delta c \cdot m\]

Which can then be solved for delta_AP in terms of delta_c:

 \[\Delta AP = \frac{{(\frac{b}{k} + AP)}}{{(\frac{1}{m} + c)}}\Delta c\]

Finally, exchanging Crit Rating for Crit Chance yields the following conversion:

 \[\Delta AP = \frac{1}{{4590}}\frac{{(\frac{b}{k} + AP)}}{{(\frac{1}{m} + c)}}\Delta c_r\]

This is the relationship between attack power and crit rating. This formula makes sense at first glance: as the non-critical damage of an attack increases, the value of crit rating increases. Likewise, as crit chance increases, the value of additional crit rating is decresed. This relationship holds for all Death Knight instant attack spells, though it changes a bit for anything that uses weapon damage to the following:

 \[\Delta AP = \frac{1}{{4590}}\frac{{(b\frac{{14}}{} + AP)}}{{(\frac{1}{m} + c)}}\Delta c_r\]

The only thing left to do is carry out calculations for white damage, which are nearly identical, except they include haste and must be done with respect to DPS, not overall damage done.

 \[(DPS + \frac{{AP}}{{14}})(1 + h)(1 + m \cdot c) = dps\]

Applying the same ideas as above, we get the following weightings:

 \[\Delta AP = \frac{1}{{4590}}\frac{{(14 \cdot DPS + AP)}}{{(\frac{1}{m} + c)}}\Delta c_r \]

All that is left now is to determine the weighting of Strength and Agility and combine the weightings for each attack into an overall weight scale.
Strength is really simple, you simply take the multipliers from talents and abilities to derive the final Str -> AP conversion (where FC uptime is the percent uptime of the buff):

\[1Str = 1.1 \cdot (TalentBonuses)(1 + 0.3 \cdot FCUptime)AP\]

(For most people, this will come out to about 2.6 or so)

Agility is a little tougher, since it only benefits melee attacks, so we must first convert it to crit rating and then multiply it by the percent of total damage dealt as melee:

 \[1Agi = \frac{{45.91}}{{62.5}}\% Melee\]

COMBINING STAT WEIGHTS

Since the above formulas only work for individual attacks, they are not very useful for overall analysis. We must therefore combine all the various weights through a weighted average:

 \[\sum\limits_{i = 0}^N {w_i }  \cdot p_i  = W\]

SUMMARY

Stat weights for spells:

 \[\Delta AP = \frac{1}{{4590}}\frac{{(\frac{b}{k} + AP)}}{{(\frac{1}{m} + c)}}\Delta c_r  = \frac{1}{{2623}}\frac{{(\frac{b}{k} + AP)}}{z}\Delta z_r \]

Melee weights:

\[\Delta AP = \frac{1}{{4590}}\frac{{(b\frac{{14}}{\lambda } + AP)}}{{(\frac{1}{m} + c)}}\Delta c_r  = \frac{1}{{3280}}\frac{{(b\frac{{14}}{\lambda } + AP)}}{z}\Delta z_r \]

Auto attacks:

 \[\Delta AP = 14 \cdot \Delta DPS = \frac{1}{{3280}}\frac{{(14 \cdot DPS + AP)}}{{(1 + h)}}\Delta h_r  = \frac{1}{{4590}}\frac{{(14 \cdot DPS + AP)}}{{(\frac{1}{m} + c)}}\Delta c_r  = \frac{1}{{3280}}\frac{{(14 \cdot DPS + AP)}}{z}\Delta z_r \]


b = Base Damage
AP = Current Attack Power
k = Attack Power Coefficient
c = Current  Critical Chance (in percent)
m = Critical Damage Bonus (1, w/o CSD and talents)
d = Damage Done
DPS = Base Weapon DPS
\lambda  = Normalization Constant (3.3 for 2H, 2.4 for 1H)
z = Hit Percent/Expertise
w = Stat weight for an individual attack
p = Percent of total damage for an individual attack
W = Overall Stat weight

ToDo:

1) Add values for Armor Penetration (it is horribly non-linear)
2) Clean up the page format
3) Create a spreadsheet for auto-calculation of weights

EDITS
1) Uploaded Beta version of the spreadsheet.
Attached Files
File Type: xls dksw v0.1.xls (40.5 KB, 6332 views)

Last edited by Darkside : 02/19/09 at 2:36 PM.

Originally Posted by Fric View Post
ginger booty get on with yo bad self

United States Online
Reply With Quote
Old 02/14/09, 4:32 PM   #2
Lanky
first as tragedy, then as farce
 
Lanky's Avatar
 
Blood Elf Death Knight
 
Mal'Ganis
Way to go Kroot! Look at you cleaning up this forum like a champ!

Great Britain Offline
Reply With Quote
Old 02/14/09, 7:22 PM   #3
Garkbit
Glass Joe
 
Orc Death Knight
 
Uldaman
Is this more or less what that DrDamage addon does? How can the average player benefit from this?

Offline
Reply With Quote
Old 02/14/09, 7:49 PM   #4
everwatch
Piston Honda
 
everwatch's Avatar
 
Night Elf Death Knight
 
Bronzebeard
Wow...I have no idea what any of that means. And as such, it probably will not benefit the "average player". However, something to remember is that it will benefit any math guru who can come up with stat weights to begin with. Whether they correct mistakes in the formulas, add something to them, or show other applications to determine overall weights more accurately and quickly. I hope this thread continues on, and that the players who have so far modeled weights can benefit from this.


Offline
Reply With Quote
Old 02/14/09, 8:01 PM   #5
Kaveli
Von Kaiser
 
Kaveli's Avatar
 
Orc Death Knight
 
Area 52
well this could help in the development of an addon for determining dps or item value. I stared at the wall of math equations and just feel a bit dumber. But good job on the hard work!

Offline
Reply With Quote
Old 02/14/09, 8:06 PM   #6
 Darkside
I find your lack of faith disturbing
 
Darkside's Avatar
 
Kroot
Orc Death Knight
 
No WoW Account
Right now I'm working on a spreadsheet that will automagically calculate stat weights for you if you input your character values. If all goes well, it should be up in a few hours.

UPDATE: This is taking longer than I thought it would, since I messed up the hit calculation. Spreadsheet is still on the way, though.

Last edited by Darkside : 02/16/09 at 11:55 AM.

Originally Posted by Fric View Post
ginger booty get on with yo bad self

United States Online
Reply With Quote
Old 02/14/09, 8:22 PM   #7
Kaveli
Von Kaiser
 
Kaveli's Avatar
 
Orc Death Knight
 
Area 52
Originally Posted by Darkside View Post
Right now I'm working on a spreadsheet that will automagically calculate stat weights for you if you input your character values. If all goes well, it should be up in a few hours.
wow... your the man! can't wait to see this.

Offline
Reply With Quote
Old 02/14/09, 11:17 PM   #8
Mugaaz
Glass Joe
 
Orc Death Knight
 
Wildhammer
Wow, hope you're still working on that project. Sounds great.

Offline
Reply With Quote
Old 02/15/09, 12:26 AM   #9
huntcaudata
Piston Honda
 
Orc Death Knight
 
Kilrogg
A few questions on the project, that you've probably already thought of, but provide me something to do while up with a sick kid.

How are you going about weighting the abilities, i.e. the values for Icy Touch vs. the Values for Scourge Strike?
Are you considering the effect of haste on the GCD of spells?
Are you bothering with computing the effect on the ghoul, gargoyle, or DRW?
I imagine any spreadsheet would also take into consideration talents, and gear where appropriate?

Is there any point at which the results would change the formula? One extreme example that I think of is Loatheb. I often consider that going to a diseaseless rotation would be best in that circumstance. Could this also be the case for extreme values of AP, Haste, or Armor Pen?

Offline
Reply With Quote
Old 02/15/09, 3:39 PM   #10
Norther
Von Kaiser
 
Norther's Avatar
 
Human Death Knight
 
Misha
Please move the meaning of the variables to the top so I can stop feeling stupid for trying to figure out what they ment for 10 minutes...then seeing the bottom of the post XD.

I'm assuming C/H/Z sub r is just C/H/Z?

Offline
Reply With Quote
Old 02/16/09, 11:42 AM   #11
hammysink
Glass Joe
 
Orc Death Knight
 
Uldum
Originally Posted by Kaveli View Post
well this could help in the development of an addon for determining dps or item value. I stared at the wall of math equations and just feel a bit dumber. But good job on the hard work!
Such an addon exists for this very thing. Once we have the spreadsheet (Thanks so much for doing the hard work!) we can plug in our gear/specs and out comes weightings that we plug in to PAWN. Then, loot is given a PAWN score in the tooltip that we can use to easily compare 2 pieces of gear.

Offline
Reply With Quote
Old 02/17/09, 6:09 AM   #12
bathoz
Von Kaiser
 
Blood Elf Paladin
 
Whisperwind
Heh. Just need the spreadsheet to automatically create the pawn string.

What? I'm lazy, okay.

Offline
Reply With Quote
Old 02/19/09, 9:06 AM   #13
Dirich
Piston Honda
 
Night Elf Druid
 
Runetotem (EU)
Concerning (b + AP*k)(1 + c*m) = d

There's a tricky part: the attack table system.
That formula works, but the value of c need to be modified if you are not using spells.
Spells apply a double table, so the crit percentage applies after something hit. Which means c in such case is exactly the crit percentage showed by our character sheet.

When using a single table, like physical attacks do (a part from some rogue attack I think), we divide 100% into dodge, miss, parry, hit and crit.
So only if we are hit capped, and expertise capped (not the soft cap, the hard cap we can't really be reaching), than c is what is shown in our character sheet.

I.e. (numbers are chosen to make counts easy)
If we have 5% chance to miss, 10% chance to be dodged and 10% chance to parried, and our crit chance is 25%, than we have 50% hits and 25% crits.
Which means that c = 1/3, while without thinking about attack tables we would use c = 1/4.
Infact on 1000 strikes we would see 250 miss+dodge+parry, 500 hit and 250 crits. But that formula only accounts for hits and crits, which means we are evaluating 500 hits and 250 crtis, thus the higher "effective crit chance" (aka " c ").

From another point of view, since miss/dodge/parry affects only hit, we could modify " 1 " in the formula to account for such thing (while keeping c the value showed in our character sheet).
Using the above example 0.75 should be used in place of 1.



It may seem strange, but the higher our combined miss/dodge/parry chance is, the most crit affects our dps since the effective crit chance is higher, due to the fact that crits can't be missed/dodged/parried.



Conclusion
Because of the attack table system, the last formula seems to me wrong (the formula you used for the melee attacks I mean). Since you applied misses/dodges/parries to crits too.

Last edited by Dirich : 02/19/09 at 9:11 AM.

Offline
Reply With Quote
Old 02/19/09, 11:19 AM   #14
 Darkside
I find your lack of faith disturbing
 
Darkside's Avatar
 
Kroot
Orc Death Knight
 
No WoW Account
Originally Posted by Dirich View Post
There's a tricky part: the attack table system.
That formula works, but the value of c need to be modified if you are not using spells.
Spells apply a double table, so the crit percentage applies after something hit. Which means c in such case is exactly the crit percentage showed by our character sheet.

When using a single table, like physical attacks do (a part from some rogue attack I think), we divide 100% into dodge, miss, parry, hit and crit.
So only if we are hit capped, and expertise capped (not the soft cap, the hard cap we can't really be reaching), than c is what is shown in our character sheet.

I.e. (numbers are chosen to make counts easy)
If we have 5% chance to miss, 10% chance to be dodged and 10% chance to parried, and our crit chance is 25%, than we have 50% hits and 25% crits.
Which means that c = 1/3, while without thinking about attack tables we would use c = 1/4.
Infact on 1000 strikes we would see 250 miss+dodge+parry, 500 hit and 250 crits. But that formula only accounts for hits and crits, which means we are evaluating 500 hits and 250 crtis, thus the higher "effective crit chance" (aka " c ").

From another point of view, since miss/dodge/parry affects only hit, we could modify " 1 " in the formula to account for such thing (while keeping c the value showed in our character sheet).
Using the above example 0.75 should be used in place of 1.



It may seem strange, but the higher our combined miss/dodge/parry chance is, the most crit affects our dps since the effective crit chance is higher, due to the fact that crits can't be missed/dodged/parried.



Conclusion
Because of the attack table system, the last formula seems to me wrong (the formula you used for the melee attacks I mean). Since you applied misses/dodges/parries to crits too.
Yeah, I noticed that a few days ago. The revised complete damage formula should read something like:

(b + kAP)(z + cm)(1 + h) = d

Or for white damage:

(DPS + {\raise0.7ex\hbox{${AP}$} \!\mathord{\left/ {\vphantom {{AP} {14}}}\right.\kern-\nulldelimiterspace}\!\lower0.7ex\hbox{${14}$}})(z + cm)(1 + h) = dps

Where the variables are the same as those in the initial post.

This reduces down to the original formula (minus the constant 'z') if your chance to hit is 100%.

Originally Posted by Fric View Post
ginger booty get on with yo bad self

United States Online
Reply With Quote
Old 02/19/09, 11:40 AM   #15
Sh4d0wfury
Von Kaiser
 
Blood Elf Death Knight
 
Ursin
It seems to me you didn't take into account the pet's damage. It would, for example, increase the value of strengh, as it was noted in the unholy thread.

Offline
Reply With Quote
Reply

Go Back   Elitist Jerks » Class Mechanics » Death Knights

Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Infraction for Phataye: Lots of suck Kaubel The Banhammer 0 12/14/08 7:06 PM
Infraction for Vrgo: Lots of bad Kaubel The Banhammer 0 07/28/08 4:50 PM
[Math] Stat Equivalence in Multi-ability "Rotations" Muphrid Class Mechanics 7 03/13/08 12:53 PM
[Math] Stat Equivalence and Taylor Series Muphrid Class Mechanics 43 01/05/08 9:28 PM
[Math] Proc Math The Grog Class Mechanics 3 06/21/07 4:49 PM