TellMeWhen

TellMeWhen

25M Downloads

CD Desync between TMW and Blizz action bars.

aigoo opened this issue ยท 2 comments

commented

WoW Version

Retail

TellMeWhen Version

11.1.0

Describe the bug

I've noticed an uncommon bug where my TMW icons I use for CD tracking produce a desync between the CD it displays and the CD displayed by the default blizz action bars for the exact same ability.

Context:
To my understanding (and I could be wrong here, as this is just how I've made it make sense to me) blizz has two ways of augmenting cds:

  • Flat out reducing the cd at point of using the ability, behaving sort of like a snapshot.
  • An active cooldown reduction augment that causes abilities to cooldown at a faster rate while the character is augmented, sort of functioning like a buff.

This causes the scenario observed in the clip below:
twitch clip link

When my Blade of Justice (BoJ) ability is pressed at 1:52 on the details combat timer in the clip, the cd starts ticking down equally in both the TMW icon, positioned closer to my character, as well as on the blizzard default frame (BoJ is the left most icon on the 2nd bottom action bar). However as I lose haste during the clip you can see the blizzard action bar BoJ icon cooldown timer tick back up from 5s > 4s >5s and again at 4s > 3s > 4s as I lose more haste at that point. I believe this is the primary reason why you can observe that when the TMW BoJ icon ticks down to 0 implying the ability is usable while the Blizz action bars still show the ability having a 2s cd (in the screenshot below).

Image

This leads to, in the most detrimental case, a scenario where I might be trying to use that ability for a good 2 seconds with no response. In this specific case I was lucky and got an Art of War proc that removed the rest of the 1s or so cd left and let me use the ability with only a slight delay.

Do let me know if any other info would be helpful!

Export Strings

^1^T^SShowTimer^B ^SType^Sreactive ^SShowTimerText^B ^SName^SBlade~`of~`Justice ^SEvents^T ^N1^T ^SType^SAnimations ^SAnimation^SACTVTNGLOW ^SEvent^SWCSP ^SOnConditionConditions^T ^N1^T ^SType^SOVERLAYED ^SName^SBlade~`of~`Justice ^t^Sn^N1 ^t^t^Sn^N1 ^t^SClockGCD^B ^SInvertTimer^B ^SStates^T ^N2^T ^SAlpha^N1 ^t^N3^T ^SColor^Sffff5d5d ^SAlpha^N1 ^t^N102^T ^SAlpha^N0.25 ^t^t^SRangeCheck^B ^SEnabled^B ^t^N11010001^S~`~| ^Sicon^^
commented

That's weird. Looks like Blizz isn't always firing SPELL_UPDATE_COOLDOWN when cooldowns change due to haste changes. When the haste changes, the CD durations are updated accordingly from the wow API (lines with a timestamp and "%" in the first column) , but TMW's internal cache isn't due to the missing event (lines with TMW in the first column).

Image

commented

This is messed up on Blizzard's end to the extent that their own actions bars also don't update properly here, since they also sometimes aren't firing ACTIONBAR_UPDATE_COOLDOWN at the right time. Sometimes they do, sometimes they don't. When I step frame by frame in my own recording with events I can see their own timers also desync from actual cooldown data (again, sometimes, its a bit of a coin toss)

This is also affecting charge data, which applies for this particular spell since Blizz treats it like it has charges even when not specced into Improved Blade of Justice. SPELL_UPDATE_CHARGES doesn't always fire when haste changes. And since Blizz reports the spell as having charges, TMW is using the charge timings for the cooldown sweep.

Pictured: no SPELL_UPDATE_CHARGES event when cooldownStartTime/cooldownDuration from GetSpellCharges changes.
Image