View Single Post

KeyboardNinja's Avatar


KeyboardNinja
11.22.2012 , 02:06 PM | #1
(posting on the tanking sub-forum so as to be visible to both assassin and shadow tanks. I'll try to use shadow/assassin terminology separated by a slash; appologies if I slip up in places)

One of the things that has always significantly annoyed me about shadow/assassin tanking is the rotation. Conventional wisdom has long held that the ideal rotation for a shadow/assassin tank should basically cut out Double Strike/Thrash entirely, using Project/Shock on cooldown to accelerate the procing of Harnessed Shadows/Darkness. This is really annoying, because it means that we're simply ignoring a major proc in our ability chain (Particle Acceleration/Energize).

I did a lot of testing on this a few months back on the combat dummy, and it always seemed to me that this generally accepted "ideal" rotation was a bit underwhelming in terms of damage and threat. The threat was acceptable, but the damage was pretty consistently lower than the less-conventional proc based rotation (only using Project/Shock on the proc, rather than on cooldown). Also, force management, one of the widely-touted benefits of the "ideal" rotation, didn't seem to be any easier than it was with the proc-based rotation. For that reason, I have generally stuck to the proc-based rotation in my own play.

Considering the importance of rotation (particularly w.r.t. the proc'd Telekinetic Throw/Force Lightning self-heal) to the survivability of a shadow/assassin tank, it seemed like it was finally time to really sit down and convince myself, one way or another, of the merits of each rotation. Hence, this post.

First, a bit of terminology. I will refer to the use-Project/Shock-only-on-proc rotation as "proc-based", while the conventional "use-Project/Shock-on-cooldown" rotation will be referred to as "low-thrash" (since "thrash" is shorter than "double strike"). I will also use a set of abbreviations based on the Republic-side versions of each ability. These abbreviations are as follows:
  • SS Saber Strike
  • DS Double Strike/Thrash
  • Proj Project/Shock
  • ST Slow Time/Wither
  • TkT Telekinetic Throw/Force Lightning
  • PA Particle Acceleration/Energize
  • HS Harnessed Shadows/Darkness
  • FP Force Potency/Recklessness

I will not be considering Spinning Strike/Assassinate at all. The reason for this is more than 70% of any fight consists of time where this ability is unusable. I will also be ignoring Force Breach/Discharge and Kinetic Ward/Dark Ward. These are obviously important abilities, but they're basically used on expiry regardless of rotation, so they simply act as a uniform force drain (more discussion of these abilities at the end).

Finally, I will ignore some rather more interesting factors like wasted resource regeneration due to a capped pool. This is merely for my own sanity. A richer model would probably consider these factors, but I don't think the effect would be that large (since you're rarely, after the first few seconds of the fight, in danger of resource capping).

Force Regeneration

It's important to first set the stage with a specific value for resource regeneration. The base force regeneration for a Kinetic/Darkness shadow/assassin is 10.4 force per second. However, shadows/assassins also gain a significant amount of force from shield and defense.

This regeneration proc has a value of 6 force points (note: this is probably a bug, since the talent trees only claim that 4 force should be generated), limited to a proc rate of once per second. This isn't a guaranteed proc though; it is dependent on the probability of shielding or defending an attack within an arbitrary 1 second interval. To compute this, we must determine the average melee/ranged swing timer for bosses and weigh it against our shield/defense chance. This is easily computed from the data I have on pre-mitigation boss DPS (considering only Explosive Conflict, Nightmare Pilgrim and Terror from Beyond):
  • M/R timer: average(0.74708, 0.67194, 0.58464) = 0.6679/sec
  • Defense: 0.2913
  • Shield: 0.6510

Thus, the procing regen rate averages to the following:

6(0.6679 * (1 - (1 - 0.2913)(1 - 0.6510))) = 3.0162/sec

Which is to say that our average force regeneration is 13.4162/sec. This is a significant factor in considering viability of various proc chains.

Ability Values and Multipliers

We also need a bit of data on exactly how much damage, threat and healing will be done by any particular ability. I'm taking this from my shadow tank main in augmented Dread Guard/Campaign gear, but the numbers should be pretty close to any other geared shadow/assassin tank:
  • Saber Strike: 784-981
  • Double Strike/Thrash: 604-700 x2
  • Slow Time/Wither: 1188-1314
  • Project/Shock: 1426-1500
  • Telekinetic Throw/Force Lightning: 2577

Harnessed Shadows/Darkness gives a damage boost of 75%. Particle Acceleration/Energize increases the crit chance on the first hit of Project/Shock (not the Upheaval/Chain Shock second hit) to 100%. When Force Potency/Recklessness is consumed by a proc'd Project/Shock, it increases the damage by a further 50%. Force Potency/Recklessness increases force crit chance by 60%.
  • Surge: 51%
  • Force Critical Chance: 21.63%
  • Melee Critical Chance: 22.59%
  • Melee Accuracy: 91%

Note that Double Strike/Thrash has 5% bonus accuracy, giving it a net accuracy of 96%.

The total threat multipliers on each ability are as follows (including talents and stance):
  • Project/Shock: 2.15x
  • Slow Time/Wither: 3x
  • Base Multiplier: 2x
  • Healing: 1x

Expected Net Values

Considering all talents, procs, accuracy, critical chance and average effects of buffs over time (assuming 1/8th of all Project/Shock(s) and Telekinetic Throw/Force Lightning(s) are enhanced by Force Potency/Recklessness), we can compute expected damage values for each ability:
  • Saber Strike: 895.5965
  • Double Strike/Thrash: 1396.0632
  • Project/Shock: 1700.5211
  • Upheaval/Chain Shock: 365.4873
  • Project/Shock (on proc): 2347.2006
  • Telekinetic Throw/Force Lightning: 5241.9175
  • Slow Time/Wither: 1389.0016

It's pretty easy to move from this to the threat values:
  • Saber Strike: 1791.193
  • Double Strike/Thrash: 2792.1264
  • Project/Shock: 3656.120365
  • Upheaval/Chain Shock: 785.797695
  • Project/Shock (on proc): 5046.48129
  • Telekinetic Throw/Force Lightning: 12641.435
  • Slow Time/Wither: 4167.0048

Note that the threat for Telekinetic Throw/Force Lightning also includes the heal threat which comes along with that ability. This threat works out to be about 2.1k for a mitigation-stacking tank, so it's definitely a significant factor.

Proc Chains and Timing

We're considering the comparative merits of two different proc chains: proc-based and low-thrash. We will assume that each rotation must be stable and periodic around Telekinetic Throw/Force Lightning. Thus, the rotation loops following the completion of this channel. This of course implies that cooldowns and force regeneration need to align appropriately.

The proc-based ability chain will be assumed to consist of the following abilities:
  • Double Strike/Thrash
  • Project/Shock (only on proc)
  • Saber Strike
  • Slow Time/Wither
  • Telekinetic Throw (only on proc)

While the low-thrash rotation has the following ability list:
  • Project/Shock
  • Saber Strike
  • Slow Time/Wither
  • Telekinetic Throw (only on proc)

Each rotation revolves around building up three stacks of Harnessed Shadows/Darkness as quickly as possible within their assumed constraints (e.g. Project/Shock only on proc). HS procs off of Project/Shock and Slow Time/Wither, which have cooldowns of 6 and 7.5 seconds, respectively.

Low-Thrash

Low-thrash is fairly easy to work with, since everything is deterministic. This rotation alternates between two Proj and one ST and two ST with one Proj. The remaining abilities are SS and TkT. Thus, we have one TkT at 3 seconds, 3 proc'ing abilities at 1.5 seconds each and a minimum of 2 SS activations at 1.5 seconds each (waiting for cooldowns). Thus, the entire proc chain alternates between 10.5 and 12 seconds in length:

(first cycle: 10.5s)
  • Project/Shock
  • Slow Time/Wither
  • Saber Strike
  • Saber Strike
  • Project/Shock
  • Telekinetic Throw/Force Lightning

(second cycle: 12s)
  • Slow Time/Wither
  • Saber Strike
  • Project/Shock
  • Saber Strike
  • Saber Strike
  • Slow Time/Wither
  • Telekinetic Throw/Force Lightning

In order to consider the full ramifications of low-thrash, we will complete both cycles, for a total of 22.5 seconds. Over the course of 22.5 seconds, we will generate 301.8645 force points and expend 39 + 39 + 30 + 30 + 30 + 39 + 30 + 30 = 267 force points (at most, assuming two Proj uses). Thus, the rotation as described is at least force neutral (actually, quite force positive), and can be sustained indefinitely.

Note that this rotation cannot be collapsed any further, despite its extremely force-positive aspect, due to the fact that the timing is entirely cooldown based.

The damage values for this rotation are as follows:

3(1700.5211 + 365.4873) + 3(1389.0016) + 5(895.5965) + 2(5241.9175) = 25326.8475

DPS = 1125.6377

The threat values for this rotation are as follows:

3(3656.120365 + 785.797695) + 3(4167.0048) + 5(1791.193) + 2(12641.435) = 60065.6036

TPS = 2669.5824

The healing generated by this rotation comes from two TkT usages as well as the continuous, rate-limited proc from the tanking stance:

(2(2157.6) + (228.9872 * (22.5 / 6))) / 22.5

HPS = 229.9512

Proc-Based

The proc-based rotation is significantly harder to compute. The probability of a single activation of DS procing PA is 49.31%, accounting for accuracy. Thus, the average requisite number of DS activations per proc is 2.0354. This gives us, at a minimum, 2.0354 DS activations, one Proj, two ST and one TkT, for a total of 10.5531 seconds. This is not, however, force neutral:

23(2.0354) + 39 + 30 + 30 + 30 - 10.5531(13.4162) = 34.2317

A bit of simple algebra shows that we need 2.55 seconds of regeneration to account for the deficit, which is a little less than 2 activations of SS. Thus, the stable duration of this rotation is 13.5531 seconds.

Unfortunately, we're still not quite out of the woods, since this rotation is dependent on two activations of Slow Time. This means that there is a minimum of a 15 second delay from one period to the next. This is 1 additional cooldown, which can safely be a DS while still remaining force positive:

23(3.0354) + 39 + 30 + 30 + 30 - 15.0531(13.4162) = -3.1412

The full ability chain is as follows (assuming a preceding rotation terminated by ST -> TkT):
  • Double Strike/Thrash
  • Saber Strike
  • Slow Time/Wither
  • Double Strike/Thrash
  • (...until proc)
  • Project/Shock (on proc)
  • Saber Strike
  • Slow Time/Wither
  • Telekinetic Throw/Force Lightning

Note that this rotation cannot be collapsed as the limiter here is the cooldown on Slow Time/Wither. Thus, 15 seconds is the minimum amount of time required in this rotation, with a small probability of an extra cooldown to obtain the proc.

The damage values for this rotation are as follows:

3.0354(1396.0632) + 2347.2006 + 365.4873 + 2(1389.0016) + 2(895.5965) + 5241.9175 = 16761.4118

DPS = 1113.4857

The threat values for this rotation are as follows:

3.0354(2792.1264) + 5046.48129 + 785.797695 + 2(4167.0048) + 2(1791.193) + 12641.435 = 38865.3301

TPS = 2581.8821

The healing generated by this rotation comes from a single TkT usage as well as the continuous, rate-limited proc from the tanking stance:

(2157.6 + (228.9872 * (15.0531 / 6))) / 15.0531

HPS = 181.4971

Notice that we are cheating somewhat here, since we added a Double Strike/Thrash without accounting for its nearly 50% proc chance. This implies that the rotation given is not quite consistent, since it may result in a subsequent rotation with two Project/Shock usages, a single Slow Time/Wither and fewer Double Strike/Thrash activations. This in turn results in additional strain on force regeneration, since Project/Shock is less efficient than Double Strike/Thrash, and confuses the timing significantly.

As it is extremely complicated to take these factors into account, and they have only a small effect on the average appearance of this rotation, we're going to simply ignore them and just remember that our damage and threat numbers are slightly low, though likely by only a small percentage.

Comparison

The low-thrash rotation is the base here, while the proc-based rotation is the comparator:
  • DPS: -1.08%
  • TPS: -3.29%
  • HPS: -21.07%

That's pretty bad. The proc-based rotation is simply inferior on every level, but *especially* healing. The self-heal in question is roughly 7.01% of a shadow/assassin tank's overall survivability. Thus, the proc-based rotation lowers survivability by a full 1.48%! That's analogous to the survivability benefit derived from upgrading about a third of your mods from Campaign level to Dread Guard level.

An Alternative

While I was doing this work, it occurred to me that the delay inserted into the proc-based rotation is necessitated by the cooldown on Slow Time/Wither. This is interesting, because every other iteration of the low-thrash rotation is dependent on *two* Project/Shock activations and only one Slow Time/Wither, which can come later in the rotation without causing delay. Meanwhile, the Particle Acceleration/Energize proc immediately finishes the cooldown on Project/Shock, meaning that the proc-based rotation is entirely independent of the cooldown on that ability. Finally, the low-thrash rotation has a significant excess of force regeneration. This implies that there might be a hybrid between the two rotations with beneficial properties.

Let's consider this hybrid rotation to start with the low-thrash rotation, completed by the TkT channel and immediately followed by the full proc-based rotation, which completes its TkT channel and loops back to low-thrash. This rotation would have the following ability chain:
  • Project/Shock
  • Slow Time/Wither
  • Saber Strike
  • Saber Strike
  • Project/Shock
  • Telekinetic Throw/Force Lightning
  • Slow Time
  • Double Strike
  • (...until proc)
  • Project/Shock (on proc)
  • Saber Strike
  • Slow Time
  • Telekinetic Throw/Force Lightning
  • <repeat>

The period of this rotation would be 22.5531 seconds. The force regeneration would be as follows:

39 + 30 + 39 + 30 + 30 + 2.0354(23) + 39 + 30 + 30 - 22.5531(13.4162) = 11.2372

Thus, weakly force negative. We would need to include an extra Saber Strike, on average every other rotation, in order to regain force neutrality. Thus, we will modify the average by adding the appropriate number of Saber Strikes (0.5583) to the calculations:

39 + 30 + 39 + 30 + 30 + 2.0354(23) + 39 + 30 + 30 - 23.1114(13.4162) = 0

Thus, the stable form of the rotation has an average duration of 23.1114 seconds.

The damage values for this rotation are as follows:

2(1700.5211 + 365.4873) + 3(1389.0016) + 3.5583(895.5965) + 2(5241.9175) + 2.0354(1396.0632) + 2347.2006 + 365.4873 = 27523.8926

DPS = 1190.9228

The threat values for this rotation are as follows:

2(3656.120365 + 785.797695) + 3(4167.0048) + 3.5583(1791.193) + 2(12641.435) + 2.0354(2792.1264) + 5046.48129 + 785.797695 = 64556.6956

TPS = 2793.2886

The healing generated by this rotation comes from two TkT usages as well as the continuous, rate-limited proc from the tanking stance:

(2(2157.6) + (228.9872 * (23.1114 / 6))) / 23.1114

HPS = 224.8776

Hybrid Comparison

The low-thrash rotation is the base here, while the hybrid rotation is the comparator:
  • DPS: +5.80%
  • TPS: +4.63%
  • HPS: -2.21%

Much better! Now we're looking at a significant improvement in DPS and TPS weighed against a marginal loss of healing. This rotation decreases net survivability by 0.155% overall, which is roughly equivalent to 25 points of mitigation (so, nearly an augment-and-a-half). Still not a small amount, but worth considering.

This rotation also has some flexibility that low-thrash lacks. Specifically, low-thrash is entirely cooldown dependent while being extremely force positive. This cooldown dependence means that there is no way to "burn yourself out", sacrificing sustainable force management for a large burst of damage. The only way to expend more force in a low-thrash rotation is to weave in Double Strike/Thrash, which does decent damage and has no cooldown, but doesn't synergize well with the rest of the rotation and can be somewhat awkward to place. The hybrid rotation has an average of half a Saber Strike which can be dropped altogether for higher damage/threat, in addition to several points where a Double Strike/Thrash may be substituted for a Saber Strike to shorten a Project/Shock cooldown and increase damage. Thus, the hybrid rotation is situationally superior to low-thrash.

Finally, the hybrid rotation resolves a long-standing annoyance with the low-thrash rotation: use of the second Force Potency/Recklessness charge. In low-thrash, the second charge must be used on an un-proc'd Project/Shock, which has a somewhat underwhelming expected damage value. More importantly, using Force Potency/Recklessness on the first cycle Telekinetic Throw/Force Lightning means that the second cycle will be delayed significantly to avoid wasting the second charge on Slow Time/Wither. The hybrid rotation resolves this issue nicely by providing a proc'd Project/Shock immediately following the first Telekinetic Throw/Force Lightning, providing both a much higher damage value and a less delayed rotation. (though, there will be a slight delay due to the reordering of the second Slow Time/Wither and the third Project/Shock)

The question really comes down to whether or not the increased damage, threat and flexibility is worth the reduced survivability.

Conclusion

Don't use the proc-based rotation. It's bad, and I have been quite silly for employing it all this time. However, the low-thrash rotation is also missing out on some very nice potentials. I honestly feel that the hybrid rotation is probably the way to go. It provides superior damage and threat together with nearly the same amount of healing and survivability. More importantly, it is situationally much more flexible, allowing unsustainable substututions in the ability chain for extra damage/threat, better handling fights with periods of downtime (read: nearly all current content).

The main significant factor which is not considered in these calculations is the added force draw necessitated by Force Breach/Discharge and (secondarily) Kinetic Ward/Dark Ward. Force Breach/Discharge is easy to calculate: 20 force every 15 seconds, which is a force draw of 1.33/sec. The Kinetic Ward/Dark Ward cooldown is a little more complicated, but still not too difficult given that we have the M/R swing timer information: min(8 / (0.6679 * 0.6510), 20) = 18.4s. Thus, Kinetic Ward/Dark Ward represents a force draw of 0.54/sec, for a net draw of 1.88/sec between the two abilities.

So, considering these two abilities, we would need to reduce our average force regeneration to 11.5394/sec. The effect this has on the hybrid rotation is to increase the average number of Saber Strikes from 0.5583 to 3.0946, which is a rather significant change, resulting in a longer delay on Telekinetic Throw/Force Lightning channels and lower overall DPS/TPS. If we apply the same analysis to the low-thrash rotation, the results are less catastrophic: the rotation becomes slightly force negative, necessitating 0.4254 additional Saber Strikes per rotation. In the case of the hybrid rotation, the DPS drops to about 1096, while the low-thrash rotation sees its DPS drop to 1111. Note that this does not consider the duration impact of adding a Force Breach/Discharge usage GCD, which has a non-trivial effect on the rotation chain.

Thus, considering Kinetic Ward/Dark Ward and Force Breach/Discharge would seem to eliminate the categorical superiority of the hybrid rotation, dropping it just below the low-thrash rotation. It requires more careful analysis to be certain, however, as the effect of the delay introduced by an additional 1.5s GCD is not trivial. In any case, it seems clear that the hybrid rotation is very viable, and provides a significant amount of flexibility that is lacking in the low-thrash rotation at the expense of a small amount of survivability. Whether or not this flexibility is worth the drop in survivability is a situational question, and difficult to answer in a smooth statistical model.
Computer Programmer. Theory Crafter. Streaming Dilettante on The Ebon Hawk.
Tam (shadow tank) Tov-ren (commando healer) Aveo (retired sentinel) Nimri (ruffian scoundrel)
Averith (marksman sniper) Alish (lightning sorcerer) Aresham (vengeance jugg) Effek (pyro pt)