Wednesday, October 20, 2010

Warlock DoTs : How Haste Affects Duration

or
Help! Immolate Falls Off Before Hand of Gul'dan is Off Cooldown!

       Haste scaling is a tricky thing. At the end of the expansion, we are already seeing diminishing returns from haste, particularly with reforging in the picture. We have more control over our stat-balancing than we ever did before. That control comes in the form of choice, and with so many more options than just "It dropped, and it was better than what I had before," we really are considering the damage return more closely. While mastery is fairly easy to understand, the value of haste has left people understandably boggled in regards to their DoTs, all the more so if you play Demonology.

       Understanding the way haste affects our spells in 4.0, specifically the time between DoT ticks, can alleviate a lot of that confusion. Before 4.0, more haste pretty much meant more spam. Unless you played Affliction and used Glyph of Quick Decay, the only thing haste affected was your cast times. Any time you earned through haste typically was spent casting more "filler," which for Destruction means Incinerate, and Demonology mostly means Shadow Bolt. The value of haste in relation to cast time was linear, and it still is. The reason the value of haste jumps around so much more now is because haste now affects the ticks of your damage over time spells. More haste can add additional ticks to a DoT, but it also can affect the duration of the DoT. This little tidbit was not particularly well advertised, probably because the change in duration is so small that it shouldn't matter, but there is at least one situation where a shorter duration, no matter how small, is a large handicap. I'm talking about Hand of Gul'dan and Immolate, but we'll come to that in a minute.

       The formula by which the number of ticks is calculated is very important. Haste does not increase the number of ticks in a linear fashion, as there is no such thing as a partial tick. Rather, there are specific haste thresholds that add ticks. Once crossed, the value of haste to your DoTs is negligible until you reach the next threshold. You should be aware of what plateau your haste currently falls on, and how close you are to the next level, so that you can itemize accordingly.

The formula that WoW seems to use to determine the number of ticks a spell has is as follows.
       As you can see, the formula also affects the duration of your DoTs. In most cases, the partial second change in duration will not affect how or when you refresh your DoTs. (Remember, you can no longer "clip" a DoT, 100% uptime is good!) One case where it can make a huge difference is when using Hand of Gu'ldan. Hand of Gul'dan, when cast, refreshes Immolate, and does enough damage that is absolutely worth using. Excellent. However, Hand of Gul'dan has a 12 second cooldown, with a two second cast. Immolate has a 15 second duration. In theory, you should have plenty of time to use Hand of Gul'dan and refresh Immolate perfectly every time, with a one second "buffer" (plus whatever haste reduces your cast time by) between hitting Hand of Gul'dan the very instant it is off cooldown. In practice, we all know how difficult that can be. Haste makes it even trickier because of the way it calculates the duration.

       The formula will "round" to the nearest tick, based on the original duration and how much our haste reduces the time between ticks. After the last tick, the DoT will fall off the target, it will not leave any "dead time." The number of ticks can round up or down, so the actual duration will respond accordingly. When you have just crossed a haste threshold, this formula will work in your favor and you will actually have longer DoT durations, giving you more wiggle room to refresh. But when you get more haste and are close to crossing another threshold (essentially when Unrounded Ticks>Rounded Ticks) you will lose duration from your DoT. Just how much is dependent on your particular haste, but the quick and dirty is that if you are having a problem keeping Immolate up with Hand of Gul'dan, you need to re-balance your haste to fit into the margins.

       To figure out how much haste is needed to get an additional tick, and how it affects the duration, all we need is some basic algebra. You can skip this if you aren't addicted to Excel like I am. Let's use Immolate as an example. Immolate has 5 ticks and a base duration of 15 second, which means it normally ticks every 3 seconds.  We want to figure out how much haste we need to have 6 ticks.

We start with what we already know.
        Then we simply plug in the numbers that we have, so as to isolate what we don't know. We are trying learn the minimum haste we need to get 6 ticks of Immolate, which would mean that (unrounded) the minimum haste would give us 5.5 ticks.
        From this we can see that at exactly 10% haste, we will gain a sixth tick from Immolate. At this point, Immolate will last over 16 seconds, and will tick every 2.7 seconds. We can use the same approach to understand the haste thresholds for each additional tick.
       While the number of ticks isn't directly relevant to the duration of the spell, it is good to understand these mechanics anyway. If you are slightly below these thresholds (remember to consider raid buffs!) it is definitely worth reforging/gemming to get that extra tick, no matter what spec you are playing. What we are looking for is the optimum threshold for our haste rating. If we are having trouble keeping Immolate up using Hand of Gul'dan, we can manipulate our haste to make the duration of Immolate longer. Using the same formulas as above and increasing the haste rating, we can solve for the duration and time between ticks. Lets see how widely that can vary. 
       From looking at this we can see that the duration of our Immolate will be highest as soon as we have enough haste for an extra tick. This is because that is the time when the time between ticks will be greatest. As the time between ticks gets shorter, the DoT as a whole will get shorter.  I made a handy little chart to show you what haste ranges will make Immolate longer than 15 seconds, and where it will be shorter. Remember to consider raid buffs!
   
       Note on spell haste buffs. Haste buffs are multiplicative, not additive. What that means is that the buff applies itself to your hasted casting speed, and not your base casting speed. This addition will not show up in your character stat summary screen. To calculate exactly the exact amount of haste you will have after raid buffs, you multiply the buff by your hasted casting speed. If you have 30% haste, you are casting at a rate of 130%.
       So for example, if you had 30% haste, and you were in a raid with a Shadow Priest who provided a 5% haste buff, you would not have 35% haste, your haste would look like this.
       In this situation, your haste would be 36.5%, and your DoTs would behave accordingly. You can get 5% haste from Shadow Priests, Boomchickens, and Wrath of Air Totem. However, these buffs do not stack. It is also important to note that at this time, the Shadow Priest buff is the only buff that also carries over to your pet. This is likely a bug that will be fixed.
       So there you go. With any luck, Blizzard will reduce the cooldown on Hand of Gul'dun just the smallest bit to make all of this easier. But the tick thresholds will still apply! There is an argument to be made that cooldowns are the new "Don't clip!" measure of a good warlock. Pre 4.0, clipping DoTs was something akin to blasphemy. Now, we'll be able to tell how bad you are by the number of times you cast Immolate because you weren't paying attention to Hand of Gul'dan.

 P.S. Shame I'm not Demonology anymore!

2 comments:

  1. This comment has been removed by the author.

    ReplyDelete
  2. Heya Succiu, it's Acrimony (from your guild). I enjoyed the read, and I found the calculations very helpful in designing this algorithm for my DoTHaste program:

    Math.Round(TickTime / (Duration / (Duration / TickTime + Tick + 0.5)) - 1,12) * 100;

    Check out the program if you're interested: http://www.mediafire.com/?da8veol5b2i8gjm

    Keep up the good writing, thanks!

    ReplyDelete