Been very busy, sorry I haven't come back to this
I'll quote his original stats and then work it into longer terms. Since this is kind of 'for dummies' I'll just state that you need to remember the
order of operations, and know that this -> Δ <- symbol is "delta" which simply indicates "total change". Finding this value is usually a matter of newcalc - oldcalc, where newcalc and oldcalc are
fully encompassing calculations given your comparative values. Think of it like firing two separate copies of the same shot using the specific stats listed and comparing the outcome.
And I apologize for the table breaking but I can't seem to get it down even without pre tags into a format that still preserves the ability to actually read the formulas...if a mod sees this and really needs it changed, please let me know and I'll find another way to post it (I've got the entire post in a text file since it's taken me a few days to compose it in its entirety :P)
Onward!
Quote:
Stat - Attack Power
Scales linearly. Consider an ability that has 500 base damage and scales with 20% of your Ranged Attack Power (RAP). We can look at the effects of adding 10 AP to a starting point of 4000, 5000, and 6000 AP
1. 4000RAP Δ 4010RAP = (500+4010*.2) - (500+4000*.2) = 2
2. 5000RAP Δ 5010RAP = (500+5010*.2) - (500+5000*.2) = 2
3. 6000RAP Δ 6010RAP = (500+6010*.2) - (500+6000*.2) = 2
Notice that all of these functions can be reduced to 10*.2 or more generally, ΔRAP*Coefficient.
4000RAP Δ 4010RAP = ( 500 + 4010 * .2 ) - ( 500 + 4000 * .2 ) = 2
Base RAP Δ Adjusted RAP = ( Base Ability Damage + Adjusted RAP * RAP Coefficient ) - ( Base Ability Damage + Base RAP * RAP Coefficient ) = Total change in damage output for this ability with new stats.
All he does here is demonstrate that a linear function has the same delta value, or change, given the same amount of input (in this case, 10 AP). This rule applies to all his linear demonstrations. Using his equation as an example, simply plug your figures thus and you can use this for any meaningful comparison...but be careful using tooltip values ingame as these often apply calculations for you beforehand; you have to make sure you're using the BASE values. Wowhead can usually help with this. His mention of the reduced formula is convenient as it eliminates the "common denominators"; if you're comparing the same information, they're very useful to save yourself some extra math.
Quote:
Stat - Critical Strike
Scales linearly. With mortal shots and a 3% crit meta, our special shots do 237.8% damage when they crit compared to 100% damage on a normal hit. If your normal hit is 1000, your crit is 2378. The actual crit modifier obviously changes the value of crit, but has no effect on its scaling. Consider a few examples of adding 1% crit to various crit base values.
1. 20% Δ 21% = (.21*2.378+.79) - (.20*2.378+.80) = 0.01378
2. 40% Δ 41% = (.41*2.378+.59) - (.40*2.378+.60) = 0.01378
3. 60% Δ 61% = (.61*2.378+.39) - (.60*2.378+.40) = 0.01378
Notice that all of these functions can be reduced to ΔCrit%*CritMod-ΔCrit%.
20% Δ 21% = ( .21 * 2.378 + .79 ) - ( .20 * 2.378 + .80 ) = 0.01378
Base Crit Δ Adjusted Crit = ( Adj. critical hits * Critical damage multiplier + Non-critical hits ) - ( Base critical hits * Critical damage multiplier + Non-critical hits ) = Total change in damage output per-attack
Linear function, same rules as before. The calculation is evenly distributing 100% of
all hits made (meaning, this is not like a WWS report; it's only looking at hits that connect successfully and make a critical strike roll) and multiplying the critical ones by the total critical damage multiplier to give a proper value to those hits made at the increased amount. An actual damage value input is not needed because we're not weighing the impact the stat has on any particular thing, and since the calculation is linear it will have the same result on the total output whether we're talking about Autoshot or Aimed Shot. The reduced forumla seems to conflict with the long one, but it's correct; total crit % difference multiplied by crit damage multiplier minus total crit % difference. This is because for every 1% crit you add to the distribution, you
remove 1% from your noncrit.
Quote:
Stat - Haste
[snip]
Let's look at a 2.9 second, 500 DPS gun with 15% baked in haste and the effect of adding 1% haste on top of 5%, 10%, and 15% more haste from gear per shot.
1. 5% Δ 6% = 500*2.9/(2.9/1.15/1.06)-500*2.9/(2.9/1.15/1.05) = 5.75
2. 5% Δ 6% = 500*2.9/(2.9/1.15/1.11)-500*2.9/(2.9/1.15/1.10) = 5.75
3. 5% Δ 6% = 500*2.9/(2.9/1.15/1.16)-500*2.9/(2.9/1.15/1.15) = 5.75
The formula here is DPS/100*1.15*ΔCrit% and again we see it is linear.
5% Δ 6% = 500 * 2.9 / ( 2.9 / 1.15 / 1.06 ) - 500 * 2.9 / ( 2.9 / 1.15 / 1.05 ) = 5.75
Base haste Δ Adjusted haste = DPS * Base weapon speed / ( Base weapon speed / "baked in" haste on autoshot / Adjusted haste ) - DPS * Base weapon speed / ( Base weapon speed / "baked in" haste on autoshot / Base haste ) = Total change in damage output per-shot.
Linear function, blah blah. We use division here because haste
reduces the weapon speed value (which thereby inversely increases dps output). And unlike critical hits, the percentage values for are tacked with a 1.0x because we're looking to find the total outcome of the change, not just the difference applied. His reduced formula here has a typo, the last function should be ΔHaste%, not ΔCrit%.
Quote:
Stat - Armor Penetration
[snip]
The percentage of armor penetration you have from gear reduces effective armor from this point - it is not additive nor multiplicative with debuffs. The result is a linear reduction in armor based on armor penetration that follows the formula EffectiveArmor=BaseArmor*(1-ArP/1523*1.25) (there is some debate on the exact formula here). The armor pen cap is thus 1219 regardless of debuffs. However, even though the percentage of armor reduced by this rating stat scales linearly, mitigation from armor is not a linear function. In fact, it follows the formula Armor / (Armor+ (467.5*AttackerLevel-22167.5)). This means that armor penetration scales slightly better than linear. In other words, the more armor penetration you have, the more further armor penetration is worth - but not by much.
I can't verify the formulas here, but if I were to guess at what he's doing, his first formula is using a quick integer conversion from the ArP rating number to an actual percent value of armor reduced. Then it's being multiplied by 25% for the 3.1 patch adjustment to ArP values. So in other words (sorry, this one is long-winded xD)...
EffectiveArmor = BaseArmor * ( 1 - ArP / 1523 * 1.25 )
Effective mitigation value after ArP is applied = Armor before ArP (but after Sunder/Faerie Fire!) * ( "100%" of base armor value represented as a whole number - Armor Penetration rating / Integer conversion from rating to static armor reduction value * 3.1 patch 25% ArP buff )
Once you have that value, you can apply mitigation to your attacks, per his second formula...
Armor / ( Armor + ( 467.5 * AttackerLevel - 22167.5 ) )
Effective Armor value as defined above / ( Same as previous + ( Static value applied to scale "target difficulty" * Attacker's level, so 80 - Static reduction for armor cap ) ) = Total amount of mitigation applied to incoming attacks.
To demonstrate how ArP "accelerates" as target armor gets lower, check out this formula I wrote a while back...I wrote it for Faerie Fire, but the numbers are still applicable; just assume you have enough ArP to remove 610 armor. :)
Assume 3000 damage per second, performed against a target with 10,000 armor and then against one with 20,000, both with 4,320,000 Health (note: the 10k one is somewhat applicable to PvE purposes, as boss monsters have approximately 10,000 armor before buffs/debuffs; the 20,000 is just to provide a contrast.) As an interesting aside, this math demonstrates another odd fact that I'm not sure if Blizzard is accounting for: for a given value of armor reduction and a given amount of incoming damage per second,
the target's time to live is decreased by exactly the same amount, regardless of their base armor value. -10,000 Armor-
Damage output after mitigation: 3000 * ( 1 - ( 10000 / ( 10000 + 15232.5 ) ) ) = 1811.057168334489
Time to death 100-0: 4320000 / 1811.057168334489 = 2385.347119645495 sec
Damage output after mitigation, with FF(-610 armor): 3000 * ( 1 - ( 9390 / ( 9390 + 15232.5 ) ) ) = 1855.924459335973
Time to death 100-0: 4320000 / 1855.924459335973 = 2327.68094534712 sec
Delta-damage: ( 1855.924459335973 - 1811.057168334489 ) / ( ( 1855.924459335973 + 1811.057168334489 ) / 2 ) * 100 = 2.447096580082%
Delta-time: 2385.347119645495 - 2327.68094534712 = 57.666174298375 sec
-20,000 Armor-
Damage output after mitigation: 3000 * ( 1 - ( 20000 / ( 20000 + 15232.5 ) ) ) = 1297.026892783651
Time to death 100-0: 4320000 / 1297.026892783651 = 3330.694239290991 sec
Damage output after mitigation, with FF(-610 armor): 3000 * ( 1 - ( 19390 / ( 19390 + 15232.5 ) ) ) = 1319.878691602282
Time to death 100-0: 4320000 / 1319.878691602282 = 3273.028064992614 sec
Delta-damage: ( 1319.878691602282 - 1297.026892783651 ) / ( ( 1319.878691602282 + 1297.026892783651 ) / 2 ) * 100 = 1.746474840742%
Delta-time: 3330.694239290991 - 3273.028064992614 = 57.666174298377 sec
The oddity of the time adjustment is likely being "accounted for" in the fact that most armor reduction tools now reduce by a percentage of target armor, as per the earlier formula; this prevents a simple 200 armor reduction from suddenly becoming a massive DPS increase when targets are already perilously low on armor...in effect, the percentage adjustment is probably supposed to "steady" the effect of ArP so it doesn't accelerate, but it seems to continue doing so anyway, albeit at a far slower pace than before. Perhaps because we're dealing with integers in the tens of thousands? I don't know and don't really care. It works for Blizzard, apparently, and that's good enough for me.
So there you have it. I hope this is useful to some of you and doesn't just come across like a raving lunatic babbling on :P
And of course if you still have questions I'll try to clear up what I can, just ask
Edited, Apr 15th 2009 1:26pm by Norellicus