Lusty Munching

There’s really not a lot to complain about in our 5.x rotation, but every now and then while I’m playing or writing simulations, I’ll notice a new oddity.  This isn’t that surprising – we had a pretty significant overhaul in 5.0, and while the developers did an impressive job of ironing out most of the kinks, stuff inevitably falls through the cracks when you have a system as complex as WoW.

This time, it’s another instance of haste-induced weirdness courtesy of Sanctity of Battle.  This isn’t the first time that haste scaling has introduced curiosities into our rotation – you may remember back in beta, when Sanctity of Battle was accidentally leading to situations where adding more haste decreased your DPS because of cooldown clashes.  Luckily, that particular bug was fixed before Mists of Pandaria was released.

This time the weirdness is quite a bit more subtle, and involves one of our level 75 talents: Holy Avenger.  Unlike most of our rotational abilities, Shield of the Righteous isn’t affected by Sanctity of Battle.  This leads to a weird situation where if you have a lot of haste (for example, Heroism/Bloodlust) and pop Holy Avenger, you can inadvertently “munch” holy power (for lack of a better term, also because “lusty munching” is an awesome name for a blog post).

To illustrate this, let’s say for the moment that you have 5% haste from gear, the 5% spell haste raid buff, Seal of Insight‘s 10% spell haste, and 30% haste from Heroism.  With that much haste your melee GCD is just under 1.1 seconds and your spell GCD is capped at 1 second.  However, your SotR cooldown is still stuck at 1.5 seconds. You can probably already guess where this is headed: you end up casting holy power generators faster than you can actually consume holy power with SotR.

For example, let’s say you get lucky with Grand Crusader procs and end up casting a sequence of CS-J-AS-CS-AS-.  That’s five holy power generators in a row, being cast at times t=0, 1.1, 2.2, 3.3, and 4.4 seconds.  However, even if you cast your first SotR instantly after CS at t=0, you can’t keep up with that rate of HPG.  Your SotR casts happen at t=0, 1.5, 3.0, and 4.5 seconds.  Note that there are two holy power generators occurring between the SotR casts at t=3.0 and at t=4.5 (at t=3.3 and t=4.4), which means one of them ended up wasted.  If we’re lucky we started the entire sequence at 0 holy power, and really only ended up wasting one holy power instead of three.  But if it happens more than once during the duration of Holy Avenger, the second one is guaranteed to waste three holy power.

In this idealized case, you need to get lucky with Grand Crusader to set up that situation.  However, that’s only how it works on paper.  In practice this issue shows up far more commonly because of latency and reaction time.  I can’t say for sure if SotR can be queued early like other spells – for example, CS can be queued within the latency tolerance window even if it’s still on coldown, provided the remaining cooldown is less than your latency tolerance of course – but while raiding it certainly didn’t feel like it could be, as I was consistently seeing munching issues with single Grand Crusader procs such as CS-J-AS-CS-, which shouldn’t cause the problem according to the ideal scenario.

On the other hand, I’m also certain that I don’t queue up my first SotR instantly after that first Crusader Strike either.  My own reaction time is such that I’m sure there’s at least 50-100 ms of delay between hitting CS and hitting SotR, and that might be a low estimate if I’m trying to do other things as well (moving, taunting a boss, etc.).  And if there’s any delay being accumulated (from similar sources) between SotR casts, that’s going to push subsequent ones back and cause the same clashing issue.  This is perhaps more easily seen in graphical form:

Holy power munching

Holy power munching under Bloodlust and Holy Avenger. The first situation does not cause munching, but the second one does because two HP generators are cast during one SotR period.

The first block diagram shows the ideal case, where your SotR is cast nearly instantly after CS (in this case I’ve delayed it very slightly, less than 30 milliseconds).  There’s only one holy power generator occurring during each SotR cooldown period, so nothing gets munched.  Note, however, that if that second Crusader Strike ends up proccing Grand Crusader, we have the 5-HPG scenario described above and the extra Grand Crusader proc gets munched.

The second block diagram shows a more realistic scenario, where SotR is delayed by a little more than a third of a second (350 milliseconds to be precise) to account for latency and reaction time.  And as you can see, because of the extra delay the second Crusader Strike is just edging ahead of the third SotR cast, leading to the Crusader Strike being munched.  If there’s any more than 300 milliseconds of delay accumulated during those first two SotR casts, either from pre-casting delay or delay between the casts themselves, you’ll run into this situation.

Note that I haven’t shown the Avenger’s Shield cooldown as being reduced to 1 second in this diagram, because it doesn’t end up affecting the results.  At first I mistakenly thought this was a factor in producing this munching scenario, but while making the diagram I realized that all it does is introduce a 0.1-second gap between the end of the AS GCD and the beginning of the CS GCD, as CS doesn’t become available any sooner, even with spell queuing.

I tend to work a little like a metronome, in nice even GCD increments (though Mel has me beat hands-down there: he’s the only person I know who considers a stopwatch an essential element of a raiding UI). For off-GCD abilities like SotR, Heroic Strike, and what have you, I tend to default to casting on half-integer steps, or halfway between GCDs.  That’s obviously a problem in this situation though, since I’d be immediately putting a ~500 millisecond delay on my first SotR cast, guaranteeing that I’ll end up munching my third HP generator.

When Heroism is cast that metronome speeds up, but the rhythm is still nice and steady.  But this gets a little screwy because speeding up my rhythm for the rotation completely de-synchs it from the SotR cast intervals.  And my poor, feeble brain just can’t handle that for some reason; trying to keep both of those timers running in my head just doesn’t work, and inevitably good ol’ brainy just gives up on the SotR one.  I account for it rather inelegantly: continuously spamming my SotR keybind (which itself incurs a few hundred ms of delay – think about how many times you can realistically press and release a button per second, it’s probably only 4-5 at most). And I’m afraid the problem is only going to get worse as we accumulate more haste on our gear in future tiers, because eventually we’ll have enough melee haste that the de-synching will occur (for me, at least) outside of Heroism.

Luckily, there are two pretty straightforward solutions the developers could employ to eliminate this particular case of weirdness.  The first is to simply add SotR to Sanctity of Battle. That way, the cooldown would scale exactly the same way as CS/J/etc., and players like me could go back to using one internal metronome.  The other solution is potentially even simpler: they could reduce the cooldown on SotR to one second instead of 1.5 seconds.

Those may seem like pretty significant buffs at first glance, but in fact, they really aren’t.  SotR is primarily limited by holy power rather than its cooldown, and the duration of the mitigation buff is additive anyway, so reducing the cooldown wouldn’t change how we use the ability in normal circumstances. And I doubt it’s a concern in PvP to be able to get two SotRs off in 1 second instead of 1.5 seconds (do people even PvP as prot anymore?).

At best we’d get an additional ~3-6 seconds of SotR uptime per encounter, provided we use Holy Avenger during Heroism and get lucky with Grand Crusader procs.  That’s 1%-2% more SotR uptime for a 5-minute encounter, and less if we aren’t lucky.  And it comes during the period when healers are at their maximum effectiveness too, further reducing the benefit.  I don’t think it constitutes an unbalancing increase in survivability, to be sure.  It would primarily be a quality-of-life boost to eliminate that weirdness and make the rotation feel less awkward in this one niche situation.

Note that everything I’ve said about SotR here could be equally applicable to Word of Glory, though I haven’t mentioned it until now.  Chain-casting WoG will run into exactly the same munching problem, so it probably warrants a similar solution.  I don’t think it’s any more unbalancing for WoG to be a 1-second cooldown for Prot or Ret, though I admit I don’t know how it would affect Holy (in fact, I don’t even know if they like to spec for Holy Avenger).

This entry was posted in Tanking, Theck's Pounding Headaches, Theorycrafting and tagged , , , , , , , , , . Bookmark the permalink.

15 Responses to Lusty Munching

  1. Newsom says:

    This is even more noticable with the Lei’s Hope buff (+15% haste) on Sha heroic. Starting to get annoying.

  2. Fumetsu says:

    I hope Blizz will eventually fix this some how. Another good read Theck! We paladins owed you : )
    /salute

  3. Jackinthegreen says:

    Holy tends to value each of the T5 talents a bit differently, but they all have their place depending on circumstances. If the player is using the PVP 4p for EF blanketing (even after the nerf) then it’s pretty much Divine Purpose though. Without that it mostly depends on what the player is comfortable with and how the fight plays out. So yes, Holy Avenger can be worthwhile and I’ve always found it odd that they put in the 1.5 second CD on WoG (and EF too now that I look at it) when it’s possible to do them back-to-back thanks to storing 5 HoPo now.

  4. Talarian says:

    The 1.5 second cooldown on Word of Glory as a Holy Paladin drives me up the wall, especially given haste reduces the GCD on it to less than 1.5 seconds, but I guess it’s there to prevent us from getting lucky with Divine Purpose and spamming the crap out of it (which when I get Divine Purpose procs is precisely what I want to do).

    That being said, with Holy given that there’s only really three ways to generate Holy Power – Holy Shock (at best 4 second cooldown), Holy Radiance, and casting a big heal on our Beacon target – and it’s pretty much impossible to chain them all together like our melee brethren because most of them have a significant cast time. I don’t believe with Holy Avenger Holy Paladins would suffer from lusty munching, or at least not to the extent Prot would, but I admit I haven’t sat down and done the math, so I might be wrong.

    For the record, my understanding is that Holy Avenger is great for controlled spike throughput for Holy Paladins (30% extra healing and Eternal Flame blanketing? Yes, please), whereas Divine Purpose is probably at best a lazy mana conservation talent since you cannot control when it procs. But Divine Purpose is used by the majority of Holy Paladins (as confirmed by wowpopular.com), probably because it takes 0 thought, and mana conservation in non-heroic mode raiding is usually more important than spike throughput, at least in the first tier, especially given that we already have three major throughput cooldowns (Avenging Wrath, Divine Purpose, Guardian of Ancient Kings), it’s hard to justify a fourth over plan old mana conservation with no thought.

  5. ironshield says:

    Wouldn’t this have a large effect on the power of Divine Purpose? Maybe if it was linked to HA though.

    • Jackinthegreen says:

      With DP it wouldn’t be a problem unless you got an extremely long chain to the effect of being equivalent to HA. That is statistically unlikely and would definitely not be a large effect, if I’m understanding you correctly. You’re asking if DP procs would cause munching problems, yes? The chances of it doing that aren’t likely enough to really mention.

      • ironshield says:

        Not so much about HP munching, but DP can and does proc off itself. I run with it on as my solo / 5 man talent as I don’t have to worry about it. I have seen 4 or 5 procs chained in a row on occasion and fairly regularly see 2 or 3. Currently that is x damage spread over 4.5 / 6 seconds, if you just reduced the CD of ShotR this same damage would be compressed over 3 / 4 seconds. That is a rather significant change in the balance of the talent is it not?

        • Theck says:

          It wouldn’t have a large effect on the balance. That damage will be compressed slightly, but our burst isn’t something that we’re balanced around anyway. And our steady-state damage wouldn’t be any different, because getting 3 procs in a row is the same damage either way.

          • codesleuth says:

            I went back to DP for both this reason and the Alabaster Shield Glyph. My thoughts (although untested) are that I will more likely get an overall higher DPS out of DP since I can allow Alabaster Shield to at least stack once between using up my DP proc. HP munching is definitely not fun, but I would love to know which is the lesser of two evils with different haste values.

  6. Orthien says:

    I don’t think Blizz consider Prot to be a PvP spec at all any more despite what they are telling us. With all the changes to Vengeance and Prots damage without it, we have traded a tiny bit more survivability and a ranged on GCD interupt for a 50-75% decrease in damage compared to Ret. Two SoR in 1 sec really won’t be a burst concern in any PvP situation compared to what the DPS classes can do.

  7. Katawa says:

    “My own reaction time is such that I’m sure there’s at least 50-100 ms of delay between hitting CS and hitting SotR”
    I macro all my rotation abilities to that ability + sotr, ideally this reduces the latency by queuing it at the same time I gain HP. I imagine you’ve considered something like that already and discarded it. Is there a reason that would be non-ideal?

    • Theck says:

      I’m not sure whether you mean that you always try and cast SotR with each generator, or that you have modifier-controlled macros (i.e. such that 2 casts CS but shift+2 also tries to cast SotR with it). The former is bad because it removes your ability to pool HP and save SotR. The latter works fine in most cases, but breaks at 2 HP if you’re queuing your next cast early (because you can queue the generator, but not SotR as far as I know). The second method also constrains your key binding options pretty severely, as you need to spend 2 key binds (X and mod+X) on the same ability.

      In practice I’ve always liked having independent control of my different skills anyway, so I’ve always keybound them to different things. The 100-ms delay has never really affected our rotation before, as we didn’t have any off-GCD things to consider. And under normal conditions, SotR isn’t that sensitive either, it’s just a result of this haste-munching effects.

  8. Synapse says:

    I know this may be kind of late to the conversation, but as I was reading this I couldn’t help but notice that you’re implying that SotR is the only source to get rid of your holy power. If you’re aiming for damage, wouldn’t you just be able to use Glyph of Harsh Words? Pretty sure there isn’t a realistic situation where you could generate more holy power than 2 abilities that generate 3 at a time.

    • Theck says:

      If you were aiming for damage, sure. Most of us that are tanking heroic raid bosses are slightly more concerned about surviving, however. Harsh Words doesn’t see much use in the high-end raiding community.

Leave a Reply