2013-12-22, 02:21 PM
You take the 10 + your attack speed divided by 16 (which is 10 + 6, 6 being the attack speed "Normal" since all delays are at Normal(6), we divide that factor out) and multiply it by the delay, and round the product up to the nearest multiple of 30. To achieve this you can divide by 30, round the result up to the nearest whole number (the ceiling function), and multiply that by 30.
For example, if you were at Faster(2) and your skill had a delay of 810ms, it'd be 810 * (10 + 2)/(10 + 6) = 607.5ms. 607.5/30 =20.25, ceil(20.25) = 21, 21 * 30 = 630ms.
(* Note that because of the 10s, it's theoretically possible to have a speed faster than 0, since 0 is really just 10 *)
In order to calculate the number of attacks per second, you just take 1000ms (1000 milliseconds in 1 second), divided by the new delay value, which in this case is 630ms, and you get 1000/630 = 1.587.
At this point, you multiply by skill %, number of attacks, your range, etc, in order to calculate damage for a given attack.
The damage increase from increase attack speed is of course due to attacking more times per second, so to calculate the damage increase from the delay reduction in Phantom Blow, we find the new attacks per second by doing 720 * (10 + 2)/(10 + 6) = 540ms, 1000/540 = 1.852.
Then we just do the formula for % change, (new - old)/old (or really, just (new/old) - 1), which is 1.852/1.587 - 1 = 1.167 - 1 = 0.167. That's a 16.7% increase in damage at Faster(2).
You can skip calculating attacks per second and just find the increase in damage using the delays, since you're basically doing (1000/newDelay)/(1000/oldDelay) - 1 which simplifies to oldDelay/newDelay - 1.
For example, if you were at Faster(2) and your skill had a delay of 810ms, it'd be 810 * (10 + 2)/(10 + 6) = 607.5ms. 607.5/30 =20.25, ceil(20.25) = 21, 21 * 30 = 630ms.
(* Note that because of the 10s, it's theoretically possible to have a speed faster than 0, since 0 is really just 10 *)
In order to calculate the number of attacks per second, you just take 1000ms (1000 milliseconds in 1 second), divided by the new delay value, which in this case is 630ms, and you get 1000/630 = 1.587.
At this point, you multiply by skill %, number of attacks, your range, etc, in order to calculate damage for a given attack.
The damage increase from increase attack speed is of course due to attacking more times per second, so to calculate the damage increase from the delay reduction in Phantom Blow, we find the new attacks per second by doing 720 * (10 + 2)/(10 + 6) = 540ms, 1000/540 = 1.852.
Then we just do the formula for % change, (new - old)/old (or really, just (new/old) - 1), which is 1.852/1.587 - 1 = 1.167 - 1 = 0.167. That's a 16.7% increase in damage at Faster(2).
You can skip calculating attacks per second and just find the increase in damage using the delays, since you're basically doing (1000/newDelay)/(1000/oldDelay) - 1 which simplifies to oldDelay/newDelay - 1.

