Hekili Priority Helper

Hekili Priority Helper

44M Downloads

Rogue - Sub - Enveloping Shadows talent not accounted for

gimmic opened this issue ยท 15 comments

commented

Describe the Bug/Issue
It seems that the multiple charges of Shadow Dance are not seen when using Rogue Sub talent 'Enveloping Shadows'

To Reproduce
Have Enveloping Shadows talent as a sub rogue, enter normal combat. Notice that the suggestion only fires for the first charge and does not properly suggest activating the second charge, or does not raise above backstab when off cooldown(but shadowdance now has a charge)

Expected behavior
On sustained fights when the active Shadow Dance skill expires(8 sec) and there is another charge on the ability(from the Enveloping Shadows talent), then it should suggest activating it again.

Unless I'm missing something in DPS napkin calculations- spamming Shadowstrike will always be better DPS than Backstab?

Issue report:
https://pastebin.com/Lr3mjGhG

Snapshot: 
https://pastebin.com/BKLd1uvp

commented

It doesn't look wrong at first glance. Spamming Shadowstrike is good, yes, but syncing up CDs is better and as long as Shadow Dance is recharging nothing has been wasted.

commented

I'm not sure it is clear- I almost always "override" this prioritization.
Enveloping shadows gives me 2 charges of the Shadow dance ability- the prioritization never seems to take advantage of charge #2.

It tells me to use backstab but activating my second charge of shadowdance turns those backstabs into shadowstrikes instead, same energy cost, and the cooldown is recharging for the first charge already anyway. I can't come up with a reason you would not want to use the second available charge.

commented

I understood you. Have you reviewed what your sim does?

commented

I understood you. Have you reviewed what your sim does?

Where would be best to step through that? All guides indicate to apply shadow dance whenever it is available and only use backstab if shadowstrike isn't up.

commented

Raidbots.

commented

Yes, raidbots has me activate Shadow Dance at ~5 seconds into combat and then again at 16 seconds into combat. The only reason it gaps it more than 8 seconds is because it wants to use a vanish when the first shadow dance expires. I typically save vanish for evasion purposes instead of a single use DPS boost.

So, without vanish, it would fire shadowdance twice in the first 30 seconds of combat- shadowdance has a 1 Minute CD, and with two charges effectively is 'cooling down' every ~30 seconds. The raidbots interval on Shadow dance is 18.94sec.

I think this is a tally/counter bug maybe related to the extra charge provided from the talent.

commented

I can't come up with a reason you would not want to use the second available charge.

Because your other CDs aren't up. The whole point of having charges is that it allows you to use an ability with more flexibility. As long as Shadow Dance is recharging, you haven't lost anything by waiting to use it, as long as you spend the remaining charges before the end of the fight.

This flexibility allows you to align usage of Shadow Dance with fight mechanics, other CDs, potion, Bloodlust, etc. That's essentially the whole point of the talent.

If guides say otherwise, I'd encourage them to update their sims to behave consistent with their guides, and then verify whether there's a measurable difference in performance.

without vanish

You have to actually sim without Vanish, rather than assume what the sim would do.

I think this is a tally/counter bug maybe related to the extra charge provided from the talent.

It's not. The only defect in the addon with regard to Shadow Dance charges is that I've actually treated Shadow Dance as having two charges by default. I'll address that, but it won't impact Shadow Dance behavior based on the priority. I'll show you the relevant parts of the snapshot in another post.

commented

Shadowstrike is nearly always "up", and at the point all DoTs have been applied my rotation becomes shadowstrike, shadowstrike, evis.. repeat. Without using Shadow dance, that is instead "backstab, backstab, evis".
The unpredicable nature of CP gains due to crits makes the order a little fuzzy.

I'll work on simming it out more to validate, and I definitely defer to your expertise- but in play, this doesn't seem right.

commented
shadow_dance ( cds - 1 )
! buff.shadow_dance.up[false] & buff.shuriken_tornado.up[false] & buff.shuriken_tornado.remains[0.00] <= 3.5

This means "use Shadow Dance if Shadow Dance isn't up and Shuriken Tornado is up and Shuriken Tornado is expiring in 3.5 seconds or less." That condition for using Shadow Dance is not met.

shadow_dance ( cds - 16 )
! buff.shadow_dance.up[false] & fight_remains[3600.00] <= 8 + talent.subterfuge.enabled[false]

This means "use Shadow Dance if Shadow Dance isn't up and the fight will end in 8 seconds or less (9 seconds if Subterfuge is talented)." That condition for Shadow Dance is not met.

shadow_dance ( stealth_cds - 8 )
variable.shd_combo_points[true] & ( variable.shd_threshold[false] | buff.symbols_of_death.remains[0.00] >= 1.2 | spell_targets.shuriken_storm[1.00] >= 4 & cooldown.symbols_of_death.remains[18.81] > 10 )

This one is a bit more challenging to interpret.

  1. shd_combo_points means "your Combo Point deficit is 2 or more (3 with Shadow Blades up)" or "if you're Kyrian, your Combo Point deficit is 3 or more" or "if you have Use Priority Rotation selected -- which you don't -- then your Combo Point deficit is 1 or fewer." That is true in your snapshot.
  2. shd_threshold is that you have 1.75 Shadow Dance charges (meaning, 1 charge and 15 seconds or less before you reach your second charge).

So shd_combo_points was met, and any of the following would need to be met:

  • shd_threshold: Nope.
  • Symbols of Death is up and will be up for 1.2 seconds or more: Nope.
  • There are 4 targets for Shuriken Storm (Nope) -AND- Symbols of Death's CD is greater than 10 seconds (Yep): Overall, nope.
shadow_dance ( stealth_cds - 9 )
variable.shd_combo_points[true] & fight_remains[3600.00] < cooldown.symbols_of_death.remains[18.81]

fight_remains here is the forecasted length of the fight. If you're on a dummy, or if there's not enough data to forecast yet, it will be a high number (so that it doesn't tell you to burn your CDs on a trash fight). The logic this hints at is that if the addon were anticipating the fight would end before you could sync Shadow Dance with Symbols of Death, go ahead and burn Shadow Dance. Otherwise, wait for Symbols.

commented

Shadowstrike is nearly always "up"

But Shadowstrike during Shadow Dance is 15% stronger. The essential bit here is that opportunity cost can be deceptive.

commented

Yup, and I'd be performing shadow strike during shadowdance regardless of other factors. I get opportunity cost, the reality is that a 30 second CD isn't bad and saving it for a time that is unlikely to come seems excessively wasteful in trash fights. In sustained fights, I now understand the value of waiting to sync it with symbols of death.

shadow_dance,if=variable.shd_combo_points&(variable.shd_threshold|buff.symbols_of_death.remains>=1.2|spell_targets.shuriken_storm>=4&cooldown.symbols_of_death.remains>10)
Dance during Symbols or above threshold.

After simming it without vanish, not much changes in my expected order of operations. I still feel this is where timing of fights and the way DPS is practically applied makes more sense to frontload it with the expectation that the fight may unexpectedly end early, yes burning a CD but utilizing it instead of sitting on it. (opportunity cost)

Thanks for walking me through it!

commented

Thanks for being open to it. Sorry that snapshots aren't more intuitive, to help clarify the issue.

commented

Also, this did help me catch a couple of errors that don't really change the result, but will make forecasts more accurate. :)

commented

By the way, I have noticed another tool that does a similar function (maxdps) does suggest firing the second charge of shadowdance.

Maybe as a presentation option it could show that the ability is up/available, but not put it in 1st priority for action on the list?

commented

Sure, you can write a custom priority if you want something different.