Jump to content

Understanding Tank Theory Crafting


KeyboardNinja

Recommended Posts

One of the major problems with posts like my Ideal Tank Stat Distribution is that the work behind the final results is fairly involved, and so it is very difficult for people to verify. This results in an unfortunate dichotomy, where most people either a) trustingly accept the results and stat accordingly, or b) discard the results as altogether untrustworthy.

 

This post is an attempt to shed a little light on the mechanics and reasoning behind the stat optimization work performed not only by myself, but also by others in the community. This is done in the hope that a little more understanding of how the results were derived (and how they can be verified!) will go a long way toward making the work more broadly accepted. Also, it would be really nice if more people were able to bring their skepticism to bear in the form of math-checking, since errors can (and have in the past!) slip through.

 

This post assumes a fairly firm knowledge of algebra, and a general familiarity with probability terminology. I do highly recommend that you read Wikipedia's explanation of probability theory for some more theoretical background here, since it will make some of the derivations below a lot more intuitive. Calculus is mentioned, but not used. Ultimately, all of this does come down to multi-variable differential calculus, but we can punt before we get to that point and allow tools like Mathematica to do all the heavy lifting. At least, that's what I do…

 

Fundamental Survivability

 

The entire concept of tank optimization is based around the idea that there is a single number that can be derived for any tank based on their character sheet which scores how well on average they will perform in content. Unlike with DPS and healing, tank theory crafters have the distinct advantage in that the fundamental form of this function is extremely uncontroversial and easy to define. Healing and DPS depend on a lot of external factors (especially healing) and involve very complex prior-optimization stages to handle things like proc chains and energy levels. Tanking is simply a matter of composing conditional probabilities.

 

The foundation of the tanking survivability math is the following expression:

 

1 - (1 - defense*1)(1 - shield*absorb)(1 - dr)

 

In SWTOR, damage levels are computed on the receiving end via a three step process involving two separate rolls. First, the game determines whether or not a particular hit is defended. This term encompasses a number of phenomena, variously labeled as "dodge", "parry", "deflect", "miss", and so on. It's all just defense. If you defend a hit, then you take zero damage. Thus, the remainder of the expression is only interesting in the case where we don't defend.

 

For this reason, we don't consider defense chance directly. Instead, we consider the chance that you don't defend (which is to say, the complement of the defense probability). Another way of looking at this would be to see it as taking the average percentage of damage which is undefended. This undefended damage is then subject to the second mitigation roll: shielding. If an attack is shielded, its value is reduced not by 100% as in the case of defense, but only by the percentage of the target's absorb. We can model this in a similar fashion to defense by pretending that shielding works by first rolling the shield chance and then rolling an absorb chance and only mitigating damage if both rolls come up in the affirmative. Thus, we multiply shield by absorb and complement it in the same fashion as defense, leaving us with the percentage of damage which is neither shielded nor defended.

 

At this stage, we have made it past all of the RNG-based mitigation mechanisms and we are purely in the realm of static reduction. Any damage which is neither shielded nor defended (where "shielded" means "reduced by the union of shield and absorb") gets through to damage reduction. We can see damage reduction in a very similar light as defense, but slightly backwards. Whereas defense has a moderate chance to mitigate 100% of the damage, DR has a 100% chance to mitigate a moderate amount of the damage. Thus, it is the same idea, only the other way around! For that reason, we model it using the same mathematical mechanism: find the percentage of damage not eliminated by damage reduction.

 

We multiply all of these mitigation complements together – defense, shield/absorb and DR – to generate a final percentage value. This percentage is precisely the fraction of damage which will be taken by the target on average. It is very easy to take this value and multiply it by a given DPS value to determine the average DtPS (damage taken per second) from the perspective of the damage recipient. However, for reasons of "bigger numbers are better" psychology, we traditionally take the complement of this value rather than the direct value itself. This is why we have the leading "1 - " in the expression. This complementation results in a survivability score which increases as the fraction of damage taken decreases, which makes for a somewhat more intuitive read.

 

Damage Cases

 

Unfortunately, the above only describes a single mitigation case: the one for melee/ranged attacks. The SWTOR combat system involves not just melee/ranged attacks, but also force/tech attacks. To make things even more complex, SWTOR allows for two different damage types independent of attack type: kinetic/energy and internal/elemental. Any given ability (NPC or Player) will correspond with a single attack type and a single damage type. In theory, any attack type can be paired with any other damage type, meaning that there are four possible sorts of abilities that must pass through the combat math. In practice though, melee/ranged attacks are never paired with internal/elemental damage (despite what EC Kephess's animations imply), which means that we can safely focus on just three ability sorts: melee/ranged+kinetic/energy, force/tech+kinetic/energy and force/tech+internal/elemental.

 

Attack and damage type are both significant because they determine exactly which mitigation mechanisms are relevant for the incoming damage. The cases are described as follows:

 

  • Melee/Ranged attacks are subject to defense
  • Force/Tech attacks bypass defense but are subject to resist
  • Kinetic/Energy damage is subject to shield/absorb and armor
  • Internal/Elemental damage bypasses shields and armor, but is subject to internal resist

 

Be careful not to confuse "resist" with "internal resist". I didn't make up these names. I swear, this is what the game calls them! For the record, neither "resist" nor "internal resist" come from gear in any way (aside from set bonuses). In general, these attributes come from talents and passive class skills.

 

By using the same arguments that we did in the previous section, we can come up with a tanking score for every single one of these cases in the following way:

 

  • Melee/Ranged + Kinetic/Energy = 1 - (1 - defense)(1 - shield*absorb)(1 - armor)
  • Force/Tech + Kinetic/Energy = 1 - (1 - resist)(1 - shield*absorb)(1 - armor)
  • Force/Tech + Internal/Elemental = 1 - (1 - resist)(1 - internalresist)

 

We set out trying to make a single number, a single score which represented how good a hypothetical tank is on average. Now we have three numbers. Fortunately, the axioms of probability theory come to our rescue.

 

It is never, ever the case that an ability is both melee/ranged and force/tech. The same thing goes for damage types. In fact, all abilities fall precisely into one of the three scores that we just expressed. Note: abilities which have multiple hits of different types, such as Plasma Grenade/Fusion Missile are counted by the game as different abilities activated by a single action! This is why DoT effects usually show up as a separate entry from the hit which applied the DoT in a combat log analysis like torparse. Anyway…

 

The fact that these cases are disjoint (never, ever overlap) is very useful to us. It allows us to merge these three scores together into a single master score, bringing us back to just one number that measures tank performance. We do this by scaling each score by the percentage of damage which applies in each case, and then simply summing up the scaled subscores into the single whole:

 

1 - ((mrke)(1 - defense)(1 - shield*absorb)(1 - armor) + (ftke)(1 - resist)(1 - shield*absorb)(1 - armor) + (ftie)(1 - resist)(1 - internalresist))

 

Assuming that "mrke", "ftke" and "ftie" are percentages (i.e. values between 0 and 1), this expression is precisely what we want! If 100% of all damage is melee/ranged + kinetic/energy, then our single master score becomes simply the score for the melee/ranged + kinetic/energy case. Less pathological cases work similarly. The exact ratios of damage (i.e. the values for mrke, ftke and ftie) are determined by the abilities used by bosses in currently relevant content. In other words, when we say "ideal tank stat distribution", we actually mean "tank stat distribution that is ideal for X content". In the case of my tanking stats post linked at the top, I try to make it very very clear exactly what content each stat distribution is optimal for.

 

Critical Hits

 

One tiny wrinkle in our current expression for tanking score comes from the fact that critically hitting attacks cannot be shielded. In other words, if an attacker rolls a critical hit on a certain ability, that ability may be subject to defense (if it is a melee/ranged attack) and damage reduction, but it will never ever be subject to shielding. This wrinkle is entirely irrelevant in PvE content, since NPCs have 0% native crit chance (though some, such as the trash in Czerka Meltdown, have abilities which buff their crit chance to non-0%), but it is very very important in PvP.

 

Fortunately, it is fairly easy to see how we might account for crit chance in our tanking score. At present, the shield/absorb term for our tanking score expresses the percentage of damage remaining assuming that we do shield and the damage is absorbed. What we need to do is modify this express the percentage of damage remaining assuming that we do shield and the attacker did not critically hit and the damage is absorbed. This is fairly easy to do:

 

1 - ((mrke)(1 - defense)(1 - (1 - crit)*shield*absorb)(1 - armor) + (ftke)(1 - resist)(1 - (1 - crit)*shield*absorb)(1 - armor) + (ftie)(1 - resist)(1 - internalresist))

 

The added part of the expression has been marked in bold. Basically, we only consider shielding for the average percentage subset of damage which is not a critical hit. In the case of PvE and non-critting NPCs, this multiplier simply reduces to 1 (since a crit chance of 0 will result in a scalar of 1). For this reason, we often leave off this multiplier when optimizing stat budgets for PvE content, simply because it will never be anything other than 1.

 

Healing

 

Just to be complete, there are a few more loose ends to tie up relating to tank survivability metrics.

 

The first such case is that some tanks (Guardians/Juggernauts and Vanguards/Powertechs) have self-healing mechanics which allow them to periodically recover a small, fixed amount of health. There is no particularly clean way of incorporating this value into the "master score" that we have derived for tanking, simply because this master score is represented as a percentage reduction of incoming damage, not a fixed recovery value. In order to determine the value of a self-heal mechanic in terms of percentage reduction, we need to scale it by the damage taken per second. This is done with the following expression:

 

invsquish := 1 - ((mrke)(1 - defense)(1 - (1 - crit)*shield*absorb)(1 - armor) + (ftke)(1 - resist)(1 - (1 - crit)*shield*absorb)(1 - armor) + (ftie)(1 - resist)(1 - internalresist))

 

1 - (1 - invsquish)(1 - hps / (dtps (1 - invsquish)))

 

In other words, we take the hps from our self-heal and then divide it by the damage taken per second post-mitigation (after it has been reduced by our previous master score). This means that we're determining the percentage of incoming damage that we're healing on average. This puts self-heal mechanics on the same terms as conventional damage reduction mechanics, at least for bosses with that specific DPS output. Clearly, increasing the DPS on a boss would decrease the mitigation percentage resulting from the self-heal, and decreasing the DPS would increase it correspondingly.

 

With the self-heal represented in terms of damage reduction, we can simply incorporate it into our master score expression in the same fashion as any other damage reduction mechanic (such as armor). The only thing that is interesting here is the fact that self-healing always applies, regardless of damage type. Thus, we put the self-healing term outside the sum used to combine the three scores for each individual attack/damage case.

 

The second case that we need to incorporate is the fact that one of the three tanks (Shadows/Assassins) has a talented increase to healing received. Clearly, this is a mechanism which impacts survivability, and thus we need to incorporate it into our math if we want our score to be complete. However, it is rather tricky to represent this as a form of damage reduction, seeing as it isn't actually reducing the damage received!

 

The solution to this is to take a small step back and see tanking in terms of healing. In a very real sense, every fight is an equation of the following form:

 

hps = dtps (1 - score)

 

In this case, "score" is simply our master score from above (including the self-heal HPS work). The "hps" in this term represents the external healing that is required (from the raid's dedicated healers) in order to perfectly negate the incoming damage with no overheal. Seeing tank mitigation in this light gives us a very easy algebraic way to incorporate healing received bonuses into our tank score:

 

hps (1 + heal-bonus) = dtps (1 - score)

 

hps = dtps (1 - score) / (1 + heal-bonus)

 

Thus, our final score looks something like this:

 

invsquish := 1 - ((mrke)(1 - defense)(1 - (1 - crit)*shield*absorb)(1 - armor) + (ftke)(1 - resist)(1 - (1 - crit)*shield*absorb)(1 - armor) + (ftie)(1 - resist)(1 - internalresist))

 

score := 1 - (1 - invsquish)(1 - hps / (dtps (1 - invsquish))) / (1 + heal-bonus)

 

And there we have it. A single number which represents the average performance of a tank given only the values on their character sheet and in their talent tree. Any tank which has a higher score will require less output from the raid's dedicated healers in order to survive a fight (on average). Any tank which has a lower score will require more output. Thus, higher scores are a measurement of higher efficiency in a raid. It is an open (and somewhat subjective) argument about whether or not efficiency is really the thing that we should be optimizing for, but it seems clear that efficiency is very easy to express and definitely one possible objective metric of tank performance.

 

Simplification

 

So, how do we use this score to determine gearing information? The answer to this question, mercifully, involves some simplification of our now-multi-line score down to something a lot easier to digest. For starters, self-healing mechanics and healing bonuses are very interesting from an overall tank comparison standpoint (since it allows us to compare different tanks head-to-head without worrying about their class), but they are entirely irrelevant if we're trying to determine how we want to itemize our gear. The reason for this lies in the fact that no combination of defense, shield or absorb rating will result in a higher (or lower) self-healing HPS. Thus, we can effectively ignore self-healing and healing bonuses as being irrelevant from a gear standpoint.

 

Sidebar: It is possible for Guardians/Juggernauts to increase their self-healing by stacking power or strength, and it is possible for Vanguards/Powertechs to increase their self-healing by stacking endurance. However, these itemization possibilities have been separately verified to be substantially (literally an order of magnitude) inferior to putting those same points into traditional mitigation stats. Pre-2.0, Shadows/Assassins were in a position where increasing their self-healing (by stacking endurance) was actually better than increasing their mitigation when it could be accomplished at a better than 1-to-1 ratio (as with "lettered" mods). This is no longer the case for any class! It is not longer even close to the case. Thus, we ignore these self-heal related possibilities altogether and only consider defense, shield and absorb ratings.

 

Another simplification we can perform is to entirely ignore force/tech + internal/elemental abilities. For the purposes of gearing, these abilities simply do not exist. The reason for this stems from the fact that it is impossible to raise your resist chance or your internal resist percentage by itemizing your gear in a different fashion. These attributes come only from set bonuses, talents, buffs and passives. Traditional gear attributes (such as armor rating, shield, defense and absorb) have no impact. Since we don't really have any control over our internal/elemental mitigation beyond how we spend our talent points, we can thus ignore this entire mitigation case when attempting to optimize the things we do control (i.e. our stat allocations).

 

With these changes, our scoring expression has been radically simplified back down to the following:

 

1 - ((mrke)(1 - defense)(1 - (1 - crit)*shield*absorb)(1 - armor) + (ftke)(1 - resist)(1 - (1 - crit)*shield*absorb)(1 - armor))

 

We can actually take things even one step further. You'll notice that both mitigation terms involve armor. Armor is special because it isn't part of the traditional gear itemization pool. There is no way that you can trade down your defense rating to pick up more armor rating (if you could, then everyone would do it). Armor just…reduces damage. And because armor is applied equally in both the melee/range case and the force/tech case, we can just factor it out entire.

 

Note that we cannot factor out resist. As mentioned before, there is no way that we can affect it with gearing (outside of set bonuses), but unlike internal/elemental damage, it is not simply an addend that we can set aside at the top level, and also unlike armor it is not applied equally to melee/range. Resist chance directly impacts the value of shield, interacting with it through the force/tech term, but has no direct effect on the value of defense. Thus, we need to keep it in the expression:

 

1 - ((mrke)(1 - defense)(1 - (1 - crit)*shield*absorb) + (ftke)(1 - resist)(1 - (1 - crit)*shield*absorb))

 

This is a much more tractable expression to work with than what we had before.

 

Bonuses

 

In order to look at what the optimal distribution of defense, shield and absorb is for a particular stat budget, we need to enrich our expression with some variables that come from the talent tree and set bonuses of whatever tank we are theory crafting. These variables come in the form of added percentages to defense, shield and absorb. For example, Kinetic Ward/Dark Ward works by adding 20% shield chance whenever the ability is active. As it turns out, current content is such that, on average, the ability will always be active assuming perfect play. Thus, we can model this as a flat 20% bonus to shield chance. All of the tanks have bonuses of this nature, some to defense, some to absorb, and others to shield. In fact, all of the tanks have bonuses to all of these attributes, it's just that some tanks have more bonuses in one area than another. It is these bonuses which define the differences between the tanks and make the largest impact on why some tanks prefer some stat allocations over others.

 

For the sake of simplification, let's look at just guardian/juggernaut tanks. You could play this same game with any tank class though (note: in order to find the absorb bonuses for shadow/assassin and vanguard/powertech tanks, you need some fairly heavy-duty math that is beyond the scope of this post):

 

1 - ((mrke)(1 - (defense + 0.03 + 0.10))(1 - (1 - crit)*(shield + 0.19)*absorb) + (ftke)(1 - resist)(1 - (1 - crit)*(shield + 0.19)*absorb))

 

Guardians/Juggernauts get 3% bonus defense chance from their talent tree, in addition to a whopping 10% additional defense chance from two in-combat sources: Blade Barricade (Riposte/Retaliate) and the 5% accuracy debuff (Force Sweep/Smash). We model these by simply adding them to the defense chance that we get from our gear. In addition to this, guardians/juggernauts get a 19% shield chance increase from talents in their tree and Soresu form. There are no bonuses to absorb (unlike shadows/assassins and vanguards/powertechs).

 

Optimization

 

Now that we have a simplified expression solely in terms of gear-affected stats which includes all of the relevant bonuses for the class in question (guardians/juggernauts), we can (finally) go about determining the optimal stat allocation at a particular budget. In order to do this, we're going to need to first make a slight change to our fundamental expression:

 

score[budget_] := 1 - ((mrke)(1 - (defense[budget * a] + 0.03 + 0.10))(1 - (1 - crit)*(shield[budget * b] + 0.19)*absorb[budget * c]) + (ftke)(1 - resist)(1 - (1 - crit)*(shield[budget * b] + 0.19)*absorb[budget * c]))

 

Ok, so there are more letters now… The letters "a", "b" and "c" represent the relative subset of our available stat budget which is assigned to each of the three categories: defense, shield and absorb. All three must be greater than (or equal to) 0, and less than or equal to 1. Additionally, the sum of the three must be precisely equal to 1, since we want to spend all of our available stat points (and we can't just manufacture more stat points out of thin air).

 

Incidentally, a note on syntax… When I say "score[budget_] := …", what that really means is "a function named 'score' defined in terms of one parameter, 'budget'". Thus, given a stat budget, the score function will return to us how much mitigation we have (also assuming values for a, b and c that we obtain from…somewhere).

 

So, what about the whole "defense[budget * a]" stuff? Well, that means "the defense chance corresponding to the defense rating of 'budget * a'". The same goes for shield and absorb. Fortunately, these formulae are very, very well understood. They are precisely equivalent to the following:

 

defense[x_] := 0.05+0.3 (1-(1-0.01/0.3)^(x/(55 * 1.2)))

shield[x_] := 0.05+0.5 (1-(1-0.01/0.5)^(x/(55 * 0.78)))

absorb[x_] := 0.2+0.5 (1-(1-0.01/0.5)^(x/(55 * 0.65)))

 

You don't have to take my word for it, of course. You can play around with your character sheet and verify that these formulae do in fact correctly predict the defense, shield and absorb percentages given your current ratings. Just remember to hover your mouse over the percentages in question so that you get the exact percentage from rating rather than including the bonuses (from talents, etc). The formulae above for defense, shield and absorb are three of the nearly-a-dozen fundamental formulae which underly the meaning of stats in SWTOR. All of these formulae are available here, along with information on the experiments which were used to derive them in the first place.

 

Anyway, having a function for each of defense, shield and absorb in terms of rating allows us to do something very interesting with our "score" function: optimize the values of a, b and c. In this case, "optimize" means to determine a set of values for a, b and c such that they result in the highest value of "score". In other words, if we have correctly optimized our function, there will be no other values of a, b and c which produce better mitigation for this particular stat budget.

 

If you're a visual person, it might help you to consider the following analogy. Imagine that we only had two variables to optimize: a and b (defense and shield). Now imagine that we graphed the score function such that the X axis was representing the a variable, while the Y axis was representing the b variable, and the Z axis was representing the value produced by the score function. The results would be some sort of surface, curving gently up and down at various points and extending from (0, 0) up to (1, 1) in both directions (presumably, we're zoomed in very close to this surface). Now, you can imagine that, on this surface, there will be some points that are higher than others, and some that are lower. Peaks and valleys, if you will. One of these peaks will be the highest of all of them. This peak will correspond to a particular value of a and b. This is the optimum for the function.

 

Of course, we don't have just two variables. We have three: a, b and c. Thus, the 3-dimensional visual breaks down, because we actually would need to plot over four axes: a, b, c, and the value of the score function. This sort of thing gets to be very difficult to picture unless you happen to be someone with a lot of experience thinking about abstract geometries. But of course, if you're that sort of person, optimization really needs no explanation. :-)

 

The real question is simply this: how do we find these peaks? How do we discover a set of values for a, b and c such that we are at not only one of these peaks, but actually the highest one? The answer to that question is actually somewhat complicated and has everything to do with multivariable calculus. I'm…not really going to explain all of that in this post (you're welcome). Fortunately for both of us, this is the point where I stop doing legwork myself and just plug everything into Mathematica. Specifically, the FindMaximum function. If you're following along at home, that's probably what you want to do now. (note: Wolfram|Alpha can do some of this, but the trivariate optimization is generally a bit too computationally intensive for it, since the differentiation gets to be very hairy)

 

Constraints

 

Just to make things extra-tricky, it isn't enough to derive a set of values for a, b and c such that we are at the highest possible peak, since those values may not correspond to a distribution of stats that we can actually achieve with the mod system in game! For example, if we decided that the optimal gearing strategy for a stat budget of 2000 was to put 1500 points into defense and 500 points into absorb, we would be categorically wrong, since it is impossible to get 0 points in shield without taking off all of your gear (except belt and bracer)! Thus, we need to find a way to further constrain a, b and c such that the results we generate are realistic and actually reflecting what is possible in the game.

 

For this reason, we need to derive three functions: ShieldMin, ShieldMax and DefenseMin. Technically, there is also a minimum and maximum absorb and a maximum defense, but as a practical matter, we never really hit those limits. Deriving these functions actually turns out to be fairly simple.

 

For the shield min, what we really need to know is how many points of shield are unavoidable. Unavoidable shield comes from three sources: enhancements, implants and the ear piece. These sources all scale up as we increase our stat budget (i.e. as our gear is upgraded to higher-tier mods), and thus these are specifically the pieces that we want to look at. In order to more conveniently do this, we remove from our stat budget the itemization granted by augments (448 stat points) and the nano-infused stim (70 defense). This gives us a subset of our stat budget which is going to scale with gear tier (augments and stim do not scale). Once we have that value, we cheat!

 

Arkanian gear has a stat budget of 2181 fully augmented and stimmed. Of that, 720 is shield rating from enhancements, implants and ear. Dread Forged has a stat budget of 2721. Of that, 940 is shield rating from enhancements, implants and ear. Using these numbers and a bit of algebra, it is pretty easy to derive the following magic formula:

 

ShieldMin[budget_] := (budget - (448 + 70))/2.30972 - (budget - 2181)/38.5

 

From here, the maximum is very easy to calculate. The maximum possible shield rating is simply the minimum plus a full set of shield augments (or 448 shield):

 

ShieldMax[budget_] := ShieldMin[budget] + 448

 

Needless to say, the shield minimum and maximum (like the defense minimum) is an approximation, and one that we as a community are continuing to refine. Fundamentally, we are attempting to approximate with continuous values the quantized nature of itemization in SWTOR. It's very difficult to model the fact that stat budgets and itemizations increase in "jumps" (e.g. you can't just add 1 point of shield rating). Thus, the ShieldMin (and DefenseMin) function are approximating a phenomenon which is fundamentally discrete, not continuous. Fortunately, the error which results from this approximation is in the fourth or fifth order of magnitude, so it's not really something to worry about.

 

Computing the defense minimum is slightly more straightforward than determining the shield minimum. We no longer have to worry about enhancements, since we could just stack all Bulwark enhancements if we really wanted to. However, most gear tiers only provide a single implant type, a single ear type and a single pair of BiS relics. This forces a particular set of stat itemization for at least a subset of one's gear. In addition to that, the nano-infused fortitude stim provides 70 defense rating, and no other tanking stim types are available. Thus, in order to model the defense minimum, we need to sum up three components: the defense forced upon us by implants and ear, the defense forced upon us by relics, and the 70 defense from the stim. Spoiler! This is expressed as the following:

 

DefenseMin[budget_, pieces_] := ((budget - (448 + 70)) pieces)/20.2791 + (budget - (448 + 70))/56.9160 + 70

 

The "pieces" variable represents the fact that some tanks have fewer implant/ear pieces with defense than others. For example, shadows/assassins have absorb-based implants, but a defense based ear. Vanguards/Powertechs are stuck with defense based implants and a defense based ear. The fewer defense pieces are forced upon us, the lower the defense minimum. As an example, the defense minimum in full Dread Forged is 217 for a shadow/assassin tank.

 

As with the ShieldMin function, the DefenseMin function is an approximation, but a very good one. It is within 3 points down to the Arkanian tier and all the way up to the Dread Forged tier, which is close enough for any practical purposes.

 

Obviously, I'm not explaining the derivation of these functions in as much detail as the score function, but that's because they're BORING! Also, one derivation is pretty much as good as another. If you have a better way of approximating the minimum and maximum values for a particular stat budget, I would love to hear it! These are essentially a hack to encode some annoying quirks of Bioware's itemization scheme.

 

However, with these functions, we can go back and modify our scoring function such that our optimization doesn't produce results which our outside the range of achievable given the way that gear fits together:

 

score[budget_] := 1 - ((mrke)(1 - (defense[budget * a] + 0.03 + 0.10))(1 - (1 - crit)*(shield[budget * b] + 0.19)*absorb[budget * c]) + (ftke)(1 - resist)(1 - (1 - crit)*(shield[budget * b] + 0.19)*absorb[budget * c])), WHERE a + b + c = 1 & a * budget >= DefenseMin[budget, pieces] & b * budget >= ShieldMin[budget] & b * budget <= ShieldMax[budget]

 

Got all that?

 

Meanwhile…

 

At this point, we're essentially done. There are a few things that I have neglected to mention, most notably the defense rating contribution from the Fortunate Redoubt relic and the effect of low accuracy boss attacks (which essentially result in additional defense bonuses to all tanks). However, the structure and essence of all of the theory crafting work which goes into the tanking stats post is summed up in the above. In fact, you probably have enough information at this point to understand the following:

 

mitigation[x_, def_, shld_, abs_, resist_, op_, pieces_] := FindMaximum[{mrke *FRRatio* (1 - (1 - (defense[x*a + FRRelic[x]] + def + LowAccuracyRatio * 0.1))*(1 - (1 - crit /. op)(shield[x*b] + shld)(absorb[x*c] + abs[defense[x*a + FRRelic[x]] + def + LowAccuracyRatio * 0.1, shield[x*b] + shld]))) + mrke *(1- FRRatio)* (1 - (1 - (defense[x*a] + def + LowAccuracyRatio * 0.1))*(1 - (1 - crit /. op)(shield[x*b] + shld)(absorb[x*c] + abs[defense[x*a] + def + LowAccuracyRatio * 0.1, shield[x*b] + shld]))) + ftke*(1 - (1 - resist)(1 - (1 - crit /. op)(shield[x*b] + shld)(absorb[x*c] + abs[defense[x*a] + def + LowAccuracyRatio * 0.1, shield[x*b] + shld]))) /. op, a >=0 && a <= 1 && x*b >= ShieldMin[x] && x*b <= ShieldMax[x] && c >= 0 && c <= 1 && a + b + c == 1 && x*a >= DefenseMin[x, pieces]}, {a,b,c}]

 

This is the real actual function which sits in my Mathematica worksheet and generates all of the stat distribution tables that we know and love. As you can see, it looks a lot like the score function that we've been working with, just with a few added bells and whistles. The defense, shield and absorb bonuses, for example, are passed in as function parameters (along with the resist chance). Just to make matters interesting, the absorb bonus is actually itself a function of the defense and shield chances (this is because of the Kinetic Bulwark/Dark Bulwark absorb bonus for shadow/assassin tanks, which produces fewer stacks and less average value if more attacks are defended and/or fewer are shielded). Also, we can see the effects of the Fortunate Redoubt relic on the defense rating in the fact that the melee/range + kinetic/energy term is split into two components: one with and one without the Fortunate Redoubt relic currently active.

 

You get the idea though. If you plug the above into Mathematica, together with the requisite baggage to compute the bonuses for each class and the decorative trappings required to spit out tables and graphs, you too could generate all of the pretty tables in the ideal tanking stats thread linked at the top.

 

Conclusion

 

Tanking stat optimization really isn't that complicated. There's a lot of prerequisite knowledge, and a lot of thought and time that has been put into making it as accurate and as precise as possible. This work is still ongoing! We're still finding ways to refine the calculations; still debating ways to determine the value of various bonuses (such as Kinetic Ward/Dark Ward). This means that the ideal stat tables are always going to be something of a work in progress. The goal is to always present the most accurate information known to the theory crafting community, and sometimes that means changing what was presented in the past as new ideas and new discoveries come to the surface. Also, sometimes we make mistakes (check our math!).

 

The goal of this post was to demystify what we do in a way that is understandable and verifiable. Ideally, you should be able to take all of the above and check it yourself! Verify that the math is in fact giving you an answer which lines up with reality in the game, because ultimately that's what we're really trying to affect.

Link to comment
Share on other sites

I am currently looking for formulas regarding the defensive cd's for all tanks i.e. force shroud, oil slick, Saber ward and so on. I would like to implement all the def cd's for each class into their overall mitgation. I remember you publishing a thread for the mitgation of each tank without the defensive cd's or extra abilities ( phasewalk, sonic barrier). That mitgation sheet shows a ranking of the tanks ( Sin>Hybrid Jugger>Pt>Immortal Jugger). Implementing the defensive cd's of each tank class could change the rankings. As i have only fundamental knowledge of math i wanted to ask you if it was possible to do a mitgation+def cd ranking. I know its much work, i only have done the formulas for invincible, saber ward and saber reflect. Enrage defense for example seems to have different hps. The quicker the attack the more it heals, so its to unstable to predict.

 

I think the passive mitgation you presented only seems to be the half truth because in ops i have my defensive cd's on cooldown ( Juggernaut) as the sin tank next to me trusts his passive mitgation. This results ofc in total different dtps ( sin tank 2k dtps, me 1600dtps @ nefra 16hm). What i want to say is that a tank only with his passive mitgation is only a half tank, the other half is his active mitgation. In order to get a detailled picture about each tank you have to consider both the passive and the active mitgation. Otherwise people get a wrong picture about tanks in my opinion.

 

I am not quite sure if you already published a thread to this topic, in case you did could you give me the link?

 

To you example above : You forgot crushing blow at bonus reducing the damage taken by 3%. However you only implemented defense chance there so i am not quite sure whether cb should be implemented there or somewehere else or maybe you just left it out for simplification as it is a manual for Theory crafting. Nicely written and explained, thanks.

 

1 thing i dont understand is why dont you set defense chance and dmg reduction as equal? 1% defense chance equals 1 % dmg reduction. Therefore cb would be 3% defense chance. Wouldnt that simplify formulas and you wouldnt need extra formulas for cb, saber ward and invincible? Or does it have to do with your spikiness formula?

Edited by Methoxa
Link to comment
Share on other sites

....

To you example above : You forgot crushing blow at bonus reducing the damage taken by 3%. However you only implemented defense chance there so i am not quite sure whether cb should be implemented there or somewehere else or maybe you just left it out for simplification as it is a manual for Theory crafting. Nicely written and explained, thanks.

 

1 thing i dont understand is why dont you set defense chance and dmg reduction as equal? 1% defense chance equals 1 % dmg reduction. Therefore cb would be 3% defense chance. Wouldnt that simplify formulas and you wouldnt need extra formulas for cb, saber ward and invincible? Or does it have to do with your spikiness formula?

 

Crushing Blow Bonus is inside KBN's armor calculation.

 

1% defense Chance doesn't equal 1% damage reduction. Not at all!

1% Defense is more then 1% Damage Reduction against melee/range damage (unless you have excactly 0% defense Chance and 0% Damage Reduction against all other types of damage a tank can get.

Link to comment
Share on other sites

I am currently looking for formulas regarding the defensive cd's for all tanks i.e. force shroud, oil slick, Saber ward and so on. I would like to implement all the def cd's for each class into their overall mitgation. I remember you publishing a thread for the mitgation of each tank without the defensive cd's or extra abilities ( phasewalk, sonic barrier).

 

So the issue here is that it requires a very dangerous assumption - that you're always using every defensive CD exactly as often as it is available, and that doing so is the optimal use for each CD.

 

In practice, the second part of that assumption is usually inaccurate. Even when it's not wholly inaccurate, it doesn't paint a complete picture (e.g. one generally just maximizes CD uptime tanking Nefra, but how do you account for Force Shroud? Not only can it reduce the damage you take by purging DOT faster than a cleanse would, but it also means the healer who would've cleansed you can cleanse someone else sooner, meaning you indirectly reduce someone else's DTPS).

 

Not using CDs will yield a big increase in DTPS, but it does not follow that just burning them as often as possible will decrease DTPS to a minimum. If boss' attacks were entirely uniform, this would be true, but they're not. Bosses have bigger and smaller hits, of different attack/damage types, on different timers. Because of this, optimal CD use is situational and highly dependent on fight knowledge.

 

You could create a top-to-bottom list of "reverse dummy" efficiency (e.g. instead of beating on a static target, having a static set of attacks hitting you), but it wouldn't be reflective of any actual content, so would be worse than useless - it would generate preconceived notions about which tank/spec is "best" even when the terms used to define "best" do not align with what you'll actually see participating in content.

Edited by Omophorus
Link to comment
Share on other sites

one generally just maximizes CD uptime tanking Nefra, but how do you account for Force Shroud? Not only can it reduce the damage you take by purging DOT faster than a cleanse would, but it also means the healer who would've cleansed you can cleanse someone else sooner, meaning you indirectly reduce someone else's DTPS).

 

It reduces the damage another person would get, same does sonic wall. I do it as much as i can do when nefra's scream comes. That means my sonic wall shrugs off the first tick of the dot ( in 16hm, the 2 first dots in 8hm) of 15 other ppl every second time Nefra does her scream. That means i can use sonic wall as often as a sin can use his force shroud. Force shroud saves the gcd of 1 healer. Sonic wall absorbs damage therefore healers might have not to heal saving eventually casttime + gcd. 1gcd = 1 dottick. Meaning Force shroud "absorbs" 1 tick while sonic wall absorbs 15. Now you have to find out the damage of the dot and you can calculate the effeciency of force shroud and sonic wall. I am on the train atm therefore i cant access my logs.

 

Not using CDs will yield a big increase in DTPS, but it does not follow that just burning them as often as possible will decrease DTPS to a minimum. If boss' attacks were entirely uniform, this would be true, but they're not. Bosses have bigger and smaller hits, of different attack/damage types, on different timers. Because of this, optimal CD use is situational and highly dependent on fight knowledge.
7

 

Of course you should use your cd's when you know there will be a big hit by a boss ( e.g. Raptus Force execution followed by his other big attack ( forgot its name it does 20k+). But bosses have also sustained damage. If you would calculate the sustained dps a boss does + the passive mitgation ( done so far by kbn) + adding the formulas of the defensive cd's you would get another sustained dtps value that would have the defensive cd's in it. Maybe it is not accurate for bosses who have spikes. But as far as i can see kbn calculated his passive mitgation on a "reverse dummie". Pure numbers. Boss does 3k dtps on a target without armor with 0 def, 0 shield. Now he filled in the defstats the tanks have and calculated it, which is a very legal way. Why not treating def cd's the same way? Jugger mitgation 72.93 ( pure phantasy atm dont know the actual number), jugger + invincible = lets say 75.64mitgation for 10 seconds. Or you could just summarize all the def cd's the jugger had to one actual mitgation = Jugger + all def cd's 30sec all 2min = x mitgation. It would be as you say a reverse dummie calculation, but it would in my eyes be more realisticly showing the true tankranklist better. Atm jugger have the lowest passive mitgation, but with their def cd's calculated they would be far closer to the other 2 tanks. In my eyes Kbn only showed one side of mitgation but not the other half, which leads to the conclusion that juggers would be bad tanks.

 

You could create a top-to-bottom list of "reverse dummy" efficiency (e.g. instead of beating on a static target, having a static set of attacks hitting you), but it wouldn't be reflective of any actual content, so would be worse than useless - it would generate preconceived notions about which tank/spec is "best" even when the terms used to define "best" do not align with what you'll actually see participating in content.

 

Kbn didnt do anything else with his calculations of the passive mitgation. He took the dmg ratios and dtps from here: https://docs.google.com/spreadsheet/ccc?key=0Au2fnVW6lDXQdFVDTnJIYk90UDhPVGNMRzNqNE13M1E&usp=sharing#gid=18

And calculated the overall mitgation of the tanks against these dmg ratios and i guess he also calculated the sustained tdtps av tank would get from each boss. You can calculate defensive cd's into the passive mitgation by calculating their effect and divide their cd by their uptime.

 

Again in my opinion this would be a more accurate and complete view regarding the tanks than just comparing their passive mitgation. But again it takes much time and effort to get these calculated. I hoped to give kbn a little feedback about his work on the mitgation model, which has its flaws. Comparing only a tanks passive mitgation is a one-sided view. Nevertheless Kbn did great work on all this publication like his Ideal tank distribution was one of the most helpful threads in my entire gaming career not to mention his threads he offered help and tips. But the mitgation publiations seemed to be half finished when i read it, so i hoped he would add the active mitgation and summarize that to an overall mitgation which was done for many mmorpgs btw ( the reverse dummie thing has been done also uncountable times). But until today i never saw an updated and i hope to motivate kbn to work on it to take it to perfection.

 

Btw. sorry for my bad english especially when it comes to discussion about formulas and maths the terms i am looking for might not be the choice of a native english/american speaker/writer.

Edited by Methoxa
Link to comment
Share on other sites

Methoxa: there are two different purposes of theorycrafting:

 

1. Comparing classes

 

For this purpose, there is possibly some gain from incorporating cooldowns into the calculation. However, the proper way to account for each cooldown varies with each fight and can even vary within a fight based on a group's approach or composition. There is a clear tradeoff between effort and accuracy, and it is hard to make the case that attempting to account for cooldowns is worth the effort required.

 

This doesn't mean we should ignore cooldowns, but the current approach generally looks at them qualitatively alongside the theorycrafting numbers for DtPS and spikiness.

 

2. Determining optimal stat weights

 

For this purpose, we have all of the problems of fight-to-fight and group-to-group variation. On top of that, we have the fact that in many cases cooldowns will have only a small effect on the optimal stat distribution (in some cases, none at all). On top of that, most people aren't going to carry around an individually customized gear set for each boss. (It's already a small fraction that carry separate gear sets for each ops as a whole.) As such, any accuracy gained by incorporating cooldowns would be swamped by boss-to-boss and group-to-group variation in cooldown use.

Edited by Kuciwalker
Link to comment
Share on other sites

It reduces the damage another person would get, same does sonic wall. I do it as much as i can do when nefra's scream comes. That means my sonic wall shrugs off the first tick of the dot ( in 16hm, the 2 first dots in 8hm) of 15 other ppl every second time Nefra does her scream. That means i can use sonic wall as often as a sin can use his force shroud. Force shroud saves the gcd of 1 healer. Sonic wall absorbs damage therefore healers might have not to heal saving eventually casttime + gcd. 1gcd = 1 dottick. Meaning Force shroud "absorbs" 1 tick while sonic wall absorbs 15. Now you have to find out the damage of the dot and you can calculate the effeciency of force shroud and sonic wall. I am on the train atm therefore i cant access my logs.

 

You missed the point. Do we include Sonic Wall as a CD and incorporate it into the overall mitigation profile for Juggernaut because on one fight you can use it to great effect?

 

What about in other situations where you need to gather adds, or where you can't reliably hit most of the group? How do you account for the wildly varying value of Sonic Wall in those situations?

 

What I'm getting at is that you can't just roll all the CDs in and get an accurate picture, because some CDs have a straightforward impact on damage taken, while others have secondary effects that are decidedly non-trivial and often extremely fight-specific, plus you can't expect to use them exactly to CD 100% of the time.

 

You'd literally have to go boss-by-boss with both 8 and 16 man damage profiles and even then you'd have to come to some agreed-upon "best use" for every CD for every tank, which then presupposes absolutely flawless, robotic execution and no surprises.

 

In other words, it simply isn't worth the effort and the results won't be accurate to try to incorporate CDs into the mitigation profile of each tank AC.

 

Of course you should use your cd's when you know there will be a big hit by a boss ( e.g. Raptus Force execution followed by his other big attack ( forgot its name it does 20k+). But bosses have also sustained damage. If you would calculate the sustained dps a boss does + the passive mitgation ( done so far by kbn) + adding the formulas of the defensive cd's you would get another sustained dtps value that would have the defensive cd's in it. Maybe it is not accurate for bosses who have spikes. But as far as i can see kbn calculated his passive mitgation on a "reverse dummie". Pure numbers. Boss does 3k dtps on a target without armor with 0 def, 0 shield. Now he filled in the defstats the tanks have and calculated it, which is a very legal way. Why not treating def cd's the same way? Jugger mitgation 72.93 ( pure phantasy atm dont know the actual number), jugger + invincible = lets say 75.64mitgation for 10 seconds. Or you could just summarize all the def cd's the jugger had to one actual mitgation = Jugger + all def cd's 30sec all 2min = x mitgation. It would be as you say a reverse dummie calculation, but it would in my eyes be more realisticly showing the true tankranklist better. Atm jugger have the lowest passive mitgation, but with their def cd's calculated they would be far closer to the other 2 tanks. In my eyes Kbn only showed one side of mitgation but not the other half, which leads to the conclusion that juggers would be bad tanks.

 

You're making a contradictory statement here - on one hand you should align CD usage with boss spike damage, bu then you want to calculate the impact on mitigation as though you were using the same CDs as often as possible. The two are completely incompatible.

 

And to further the point - even if you were to take a naive approach of finding its uptime-weighted impact on average DTPS for a fight, you're underselling the value of the CDs, since if used properly they disproportionately clip the peaks in the DTPS graph, which means a greater impact than simply fiddling with averages.

 

This is literally a boss-by-boss thing, so what you'd wind up presenting is "Assassin has the best mitigation for bosses A, B, and C", "Juggernaut has the best mitigation for bosses G, H, and I", and "Powertech has the best mitigation for bosses X, Y, and Z". Most groups, outside of initial world/server-first sprints of NiM content, aren't going to swap their group composition around on a per-boss basis, so it's not a meaningful chart as you're not going to choose your tanks purely based on a boss-by-boss analysis of DTPS.

 

I can understand wanting to close the on-paper gap in mitigation between Juggy and PT/Sin, but quite frankly right now it's not the deciding factor for any raid group. The entire thing would be a massive exercise in pedantry and the outcome would be basically useless.

 

Kbn didnt do anything else with his calculations of the passive mitgation. He took the dmg ratios and dtps from here: https://docs.google.com/spreadsheet/ccc?key=0Au2fnVW6lDXQdFVDTnJIYk90UDhPVGNMRzNqNE13M1E&usp=sharing#gid=18

And calculated the overall mitgation of the tanks against these dmg ratios and i guess he also calculated the sustained tdtps av tank would get from each boss. You can calculate defensive cd's into the passive mitgation by calculating their effect and divide their cd by their uptime.

 

Except, to reiterate one more time... you can't gain maximum value from defensive CDs and also assume perfect uptime. You can have one or the other. Either way, you'll get a different impact on overall DTPS, and using everything to CD is naive and foolish, and thus not representative of any actual in-raid behavior from a competent tank.

 

Again in my opinion this would be a more accurate and complete view regarding the tanks than just comparing their passive mitgation. But again it takes much time and effort to get these calculated. I hoped to give kbn a little feedback about his work on the mitgation model, which has its flaws. Comparing only a tanks passive mitgation is a one-sided view. Nevertheless Kbn did great work on all this publication like his Ideal tank distribution was one of the most helpful threads in my entire gaming career not to mention his threads he offered help and tips. But the mitgation publiations seemed to be half finished when i read it, so i hoped he would add the active mitgation and summarize that to an overall mitgation which was done for many mmorpgs btw ( the reverse dummie thing has been done also uncountable times). But until today i never saw an updated and i hope to motivate kbn to work on it to take it to perfection.

 

The point of the theorycrafting is not to show which tank is best. That's going to depend on the content, the player, and the group's tactics. It says right in the OP that the goal isn't to try to figure out which tank is best.

 

The main benefit of theorycrafting is to help players min/max the main factor that is under their control - how they slot mods, enhancements, and augments into their gear to gain maximum benefit. None of that is dependent on CDs (you'll use them the same way regardless), and none of it is universal across all tanking ACs as the differing talents mean that stats have different values.

 

So yeah, dipstik, KBN, and others are not taking their time to try to mathematically model the best tank (a hugely time-consuming and ultimately pointless exercise). They're trying to help provide guidance in optimal gearing, and ask the rest of us for help in sanity-checking their efforts to ensure that their own methodology and assumptions are sound, so that a mistake on their part doesn't lead people to gearing sub-optimally out of ignorance.

Link to comment
Share on other sites

great post!

 

in regards to cd maths: i have tried to take those into account in the past, but getting people to agree on when to use which in a contextless setting seemed like a fools errand. i think the tanking leaderboard is a great place to look at overall tanking performance, including trading tips on cooldown usage. if your log shows you took 300 more dps than another tank in the same gear, and you see use of one cd for a particular mechanic that you use somsewhere else in the fight, then you can adjust your play. there is also healing performance measures that can be gleened from the tanking leaderboards.

Link to comment
Share on other sites

The tanking leaderboard calculation shows the passive overall mitgation over a whole fight in percentage e.g. 76.68%. This is also variable. You can be unlucky and get 3 full hits in a row, meaning your mitgation would be lower. These (un)luckfactors havent been implemented into the calculations, as it is not possible. In your opinion def cd's are situational. This is right, but nevertheless it does add a certain factor to the mitgation, whether the tank is hit or not at that moment is not important for the calculation of the mitgation ( for calculations how much dtps a tank would get it is important). There are ofc Def cd's that do not give more mitgation but other beneficial buffs i.e. force shroud. Cleansing yourself is good but in calculations regarding purely passive + active mitgation that def cd's is not to be calculated. Only the def cd's that would add mitgation should be taken into account, and that is possible. Take a fighturation of 5min ( again dtps income is not important on calculating the mitgation) and calculate the overall uptime of the def cd's + their effect ( again only def cd's that have an effect on the mitgation are taken into account) and add the passive mitgation of that tank to it and youll have the passive + active mitgation together.

 

People who've written maybe didnt understand me ( might be my foreign language skill's fault). I dont want to calculate the dtps a tank gets nor how much dmg are absorbed by each def cd or whatsover. I purely want that not only the passive mitgation of each tank is shown ( kbn's Tank mitgation calculation) but also the mitgation calculation considering def cd's. Mitgation is an overall value even when you take def cd's into account you can calculate the overall mitgation of each def 'cd. On the field you should use def cd's when big hits come, but we are nevertheless ina theoretical field here. So we are not interested in bossmechanics or big hits, we just want a percentual number of the mitgation each tank has while considering their def cd's to be able to compare each tank better. This has nothing to do with ideal tank distribution or whatsover, but there might be new insights when we get the results.

Link to comment
Share on other sites

This is a very informative post and I appreciate you taking the time to lay out the formulae like this so that more of us can contribute to the community as well. The good thing about this is that it allows the community to contribute to making this game better, especially now that we have a class representative system in place. I consistently read the forums and have been following your posts as well as Dipstik's and others who contribute all that they do to the community.

 

I was thrown off mostly under the Healing section where you said: "The first such case is that some tanks (Guardians/Juggernauts and Vanguards/Powertechs) have self-healing mechanics which allow them to periodically recover a small, fixed amount of health."

 

I have 16 characters (one of each advanced class) right now on The Shadowlands server. I am a tank guy :cool:. With that said, my main is my Guardian tank but I also have a Shadow and Vanguard tank that I rotate playing frequently. I have good experience on all of them and I even wanted to try stacking defense augments on my Sentinel just to see if I can make him a semi-tank monster :D lol.

 

To my understanding, the self healing mechanics you were referring to were Guardian's Blade Barrier proc from Blade Storm(doesn't truly heal but the end result is calculated the same) and Vanguards passive talent Into the Fray which heals them by 2.5% of their total health every 3 seconds when suffering AoE damage.

  • Vanguards have access to Shoulder Cannon heals and Adrenaline Rush heals.
  • (Guardian's are getting a new reworked Focused Defense in 2.7 so I cant include its effectiveness as a self-heal while tanking (PvE) since the current Focused Defense drops threat.)

 

I was trying to see why you didn't include Shadow's Battle Readiness instant 15% heal and additional healing from Combat Technique procs for those 15s as a self-healing variable. And also if you include Guardian's Enure as a self-healing variable since its not exactly a true self-heal (the health is lost when the effect ends.) My first guess is that you didn't include Shoulder Cannon, Adrenaline Rush, Focused Defense, Enure and Battle Readiness since they are DCD's. Did you only include Blade Barrier and Into the Fray as self-healing mechanics since they happen more frequently during the course of a fight?

Edited by KnightTyler
Link to comment
Share on other sites

Only Blade Barrier/Sonic Barrier and the passive AoE heal (Into the Fray for Vanguards) are counted. Shoulder Cannon, Enure/Endure Pain, Battle Readiness/Overcharge Saber, Adrenaline Rush/Kolto Overload, Medpack (of which shadows/assassins get multiple), and Focused Defense/Enraged Defense are all considered cooldowns due to their long intervening period.
Link to comment
Share on other sites

Only Blade Barrier/Sonic Barrier and the passive AoE heal (Into the Fray for Vanguards) are counted. Shoulder Cannon, Enure/Endure Pain, Battle Readiness/Overcharge Saber, Adrenaline Rush/Kolto Overload, Medpack (of which shadows/assassins get multiple), and Focused Defense/Enraged Defense are all considered cooldowns due to their long intervening period.

 

 

The problem with your math, as usual, is that that you don't weight HP stacking into your calculations. Most CD's mentioned function off of your total hitpoints. I don't give a single fack about checking through your math (partly because I'm lazy, mostly because it's overcomplicated) for the simple reason you don't weight it against HP stacking. In your defense, how could you? You look for optimal mitigation, not the best TTK. That is the biggest mistake you can make. If your goal here is to give people the stat distros that will best reduce incoming damage for each fight, then fine. The thing is you advocate going straight mitigation which is one of the biggest mistakes a World level progression tank can make. There are attacks that don't miss, can't be mitigated and punches through anything but a % resist/DR cooldown. There are almost no attacks (I don't even think there are any) that hit for a percentage of the player's hit pool. Because of that, and the permanent 1:1 ratio of points invested to stats returned of Endurance, I will get as much of it as I can get and not cripple defensive stats that the class is built off of.

 

TL : DR - You need to weigh in Endurance stacking because of their 1:1 return ratio as well as the tanking abilities that function off of %HP, cooldown or not. You want to give advice on all 3 classes? Run the extra math to calculate TTK for each class.

 

 

The most important thing a tank can contribute as far as survivability to a raid goes is increasing their own TTK, providing healers with enough GCD's to get raid heals off since almost every fight in NiM is guaranteed to be a raid heal check. Going 100% mitigation is a horrible mistake, as 2% more defense won't save me from the cumulative damage incurred from the other 98% of those attacks that are going to hit me hard as hell. If the healers don't get the globals they need to use abilities it doesn't matter how good your mitigation is, you're going down. HP stacking does that 100% of the time, mitigation may or may not depending on if RNG is on your side.

 

TL : DR - 100% HP Stacking/Primarily HP stacking > 100% mitigation

 

Summary: Factor in HP stacking or at least put in a disclaimer that you don't factor it in or calculate the stat distro's effectiveness weighed against it, because there are more Top 10 tanks getting HP than there are mitigation tanks.

Edited by countpopeula
Link to comment
Share on other sites

There are attacks that don't miss, can't be mitigated and punches through anything but a % resist/DR cooldown. There are almost no attacks (I don't even think there are any) that hit for a percentage of the player's hit pool. Because of that, and the permanent 1:1 ratio of points invested to stats returned of Endurance, I will get as much of it as I can get and not cripple defensive stats that the class is built off of.

 

There is one attack in the current quad of serious operations which does not miss. One.

 

There is one other attack (that I know of) which has any accuracy boost at all, and it's only a 5-10% increase. And yes, I have evidence to back up that numeric range. Nearly all melee/ranged attacks have accuracy penalties (to the tune of >10%). This includes the highest damage melee attack in the game (16 man Nefra's Twin Attack).

 

The amount of internal/elemental damage (damage which cannot be shielded) is pitifully small in the current quad. By "pitifully small" I mean "less than 15% of overall damage". Absolutely none of the high-burst attacks at endgame cannot be shielded. Literally none. All of the internal/elemental damage comes in the form of slow DoTs (e.g. Fury of the Masters). I have combat logs which prove this as well.

 

The attacks which are serious at endgame tend to be force/tech, with a slightly smaller percentage being melee/range. And by "serious" I mean "serious burst". When all of the attacks which do appreciable burst damage in current content are mitigable, and nearly 86% of overall damage is mitigable, I think it's fair to say that prioritizing mitigation is a strongly supported position.

 

The highest-burst single hit in 8 man content today is a 29k hit: unmitigated (Driving Thrust). That's on a shadow/assassin, btw. It's closer to 24k on a vanguard/powertech. But let's take the 29k. 29000 HP is just shy of 68% of a fully buffed, fully stimmed mitigation stacked shadow/assassin tank. If your healers can't keep you above that line (even during progression) when the hit is coming at long and highly predictable intervals, then you have a much bigger problem than how your tanks are itemized. Mitigation stacking yields more than enough HP to sustain even the highest burst window in the game.

 

Will the damage be higher in nightmare mode? Absolutely. How much higher? Well, previous tiers of NiM content have very consistently buffed tank damage by a maximum of 15%. Some fights much lower than that. 15% buff on Driving Thrust gives an unmitigated hit of 33.4k, which is up to 78% of maximum health. Much scarier, but still well within safe margins if you have healers who are awake and a tank who can react appropriately when mitigation fails (which it will 40% of the time on that ability). Also remember that, by the time we get to Raptus (even at cutting-edge progression), mitigation stacking tanks will have almost 47k HP. That's back down to 71%.

 

In short, you're worried about something which does not exist in the game and will not exist in the next tier. You're taking tiny attacks which occur very infrequently and assuming they are huge and occur all the time. Your prioritization is entirely wrong, and you're coming to erroneous conclusions as a result.

 

TL : DR - You need to weigh in Endurance stacking because of their 1:1 return ratio as well as the tanking abilities that function off of %HP, cooldown or not. You want to give advice on all 3 classes? Run the extra math to calculate TTK for each class.

 

I used to calculate TTK. Ultimately, it's a surprisingly poor metric for looking at the tanks. Not the least of the reasons for this being the fact that there is no standard definition of what constitutes a valid TTK from the perspective of balance. Do we ignore all RNG mitigation and consider min TTK? Do we consider average TTK? Do we look at swing timers and cooldown through hard-hitting attacks?

 

On top of that, TTK ignores a very, very important metric in SWTOR: efficiency as weighed against healer regeneration. Efficiency is a far more important tanking metric in SWTOR than in other games simply because healers actively manage their energy in an incremental fashion, and the most popular healers have very narrow windows in which to do this. This, together with the low-burst nature of almost every boss ability in the game, shifts the focus from "surviving the worst-case burst" to "surviving the long-haul race against mana". And I've seen your farm videos, BTW, don't pretend that having more efficient tanks wouldn't have helped your healers tremendously in several fights. I can cite examples if you would like.

 

The most important thing a tank can contribute as far as survivability to a raid goes is increasing their own TTK, providing healers with enough GCD's to get raid heals off since almost every fight in NiM is guaranteed to be a raid heal check. Going 100% mitigation is a horrible mistake, as 2% more defense won't save me from the cumulative damage incurred from the other 98% of those attacks that are going to hit me hard as hell. If the healers don't get the globals they need to use abilities it doesn't matter how good your mitigation is, you're going down. HP stacking does that 100% of the time, mitigation may or may not depending on if RNG is on your side.

 

How many more GCDs will the healers have to spend on you over the course of the fight if you're just playing mana sponge rather than actually mitigating more damage? How much more frequently will they have to stop what they're doing and heal you if your mitigation chances (joint probability of shield and defense) are lower? The answer to those questions is very, very revealing.

 

TL : DR - 100% HP Stacking/Primarily HP stacking > 100% mitigation

 

You will find yourself very much in the minority on that opinion, but you are welcome to it.

 

Summary: Factor in HP stacking or at least put in a disclaimer that you don't factor it in or calculate the stat distro's effectiveness weighed against it, because there are more Top 10 tanks getting HP than there are mitigation tanks.

 

Citation seriously needed here. I've talked to a pretty solid percentage of the tanks getting world firsts (both in the NiM tier and the HM tier). Far, far more of them are mitigation-stacking than HP-stacking. A few (like Hatred's tanks) walk the line with mitigation enhancements and augments but B mods. You clearly have a list of all the world's top tanks though and how they are statted, since otherwise you wouldn't make such a bold claim (at least not without a disclaimer).

 

Also, what the heck is a "top 10 tank"?

Edited by KeyboardNinja
Link to comment
Share on other sites

TL;DR

 

Also, what the heck is a "top 10 tank"?

 

Tanks in the top 10 World ranked guilds. I would have figured someone as good with math would know how to draw inferences, but I suppose not. I'm not here to have a discussion about which is better, HP stacking or Mitigation stacking as we've already done that. Go back and watch some of the progression vids. Lots of HP stacked tanks.

Edited by countpopeula
Link to comment
Share on other sites

Tanks in the top 10 World ranked guilds. I would have figured someone as good with math would know how to draw inferences, but I suppose not. I'm not here to have a discussion about which is better, HP stacking or Mitigation stacking as we've already done that. Go back and watch some of the progression vids. Lots of HP stacked tanks.

 

Can you make a list of the guilds running HP tanks?

Link to comment
Share on other sites

Can you make a list of the guilds running HP tanks?

 

Honestly? No, too busy running ranked to go scrounging around for them again, lazy too. Our main tanks started HP stacking either before or during NiM TFB after watching others' videos with high endurance tanks, can't remember when exactly. Ran a bunch of TTK tests, confirmed they lived longer with high HP mods/enhances. I always HP stacked on my Assassin tank when they had self heals, RIP.

Edited by countpopeula
Link to comment
Share on other sites

@countpopeula:

All top tanks (i know) run either full mitigation, or full mitigation with B mods (as mods give a > 1:1 Ratio for endurance : mitigation) for 8 man content.

 

For 16 man Content that's a bit different, mainly because raid healing is more then 80% of the required healing in 16 man content (while on 8 man Content it's about 50%/50%). If the heals you receive are a minority of the total heals, your own gearing doesn't matter much anyway.

In fact a lot of tanks used additional hp for 16 man content, because the bosses spike higher in 16 man content. They can do that, because the damage they take doesn't matter that much compared to 8 man.

 

Oh and:

There is no world ranking of guilds in this game.

If you call your guild a top 10 guild, because you were posting on a spreadsheet that you killed tfb nim 1 month after it was released and styrak nim over 2 months after it was released, feel free to do so, but don't expect that anyone takes that seriously (that's my opinion).

Edited by THoK-Zeus
Link to comment
Share on other sites

Honestly? No, too busy running ranked to go scrounging around for them again, lazy too. Our main tanks started HP stacking either before or during NiM TFB after watching others' videos with high endurance tanks, can't remember when exactly. Ran a bunch of TTK tests, confirmed they lived longer with high HP mods/enhances. I always HP stacked on my Assassin tank when they had self heals, RIP.

 

So you're making a baseless claim on videos that may or may not exist and your own decisions. Mmkay.

Link to comment
Share on other sites

Tanks in the top 10 World ranked guilds. I would have figured someone as good with math would know how to draw inferences, but I suppose not. I'm not here to have a discussion about which is better, HP stacking or Mitigation stacking as we've already done that. Go back and watch some of the progression vids. Lots of HP stacked tanks.

 

Care to show some of the videos because this is the first I am hearing of this and I know for our World Firsts neither of us in DiLiH stacked HP. I also know that Suckafish and Reckoning don't HP stack.

Link to comment
Share on other sites

Care to show some of the videos because this is the first I am hearing of this and I know for our World Firsts neither of us in DiLiH stacked HP. I also know that Suckafish and Reckoning don't HP stack.

 

Hatred doesn't. Severity doesn't. We (DnT) don't. Provectus doesn't.

 

I actually can only think of a couple of tanks that HP stack, and their healers usually hate them.

Link to comment
Share on other sites

Every tank who stacks purely hp is laughed at ( and hated by the healers). However it is legal to have b-mods instead ot the unlettered. Those give you more hp but this way is not considered stacking hp but creating a mix between max mitgation and maxhp. Whoever goes for hp stacking uses not only b-mods but also enhancements that give more hp loosing defstats significantly. Furthermore some of them consider hp augments, which is totally nuts, because your defstats willl be so low that even a dps could tank the boss. So what some progress guilds do for new content is that their tanks get some b-mods and replace them with their mitgation-mods. Having more hp does not make dtps lower or give the healer more time but it can help when mechanics of a fight are not known yet. Healers normally have to anticipate spike dmg, with more tank hp they dont have to anticipate but to react ( 1-2 seconds).

 

For example raptus : Every healer should know that Raptus has 2 big attacks after the second challenge. 1 is his force execution which can deal a good amount of damage if not avoided ( saber reflect, force shroud). Now if that mechanic would be new tanks woulldnt know that the foce execution hits hard and that this would be a good time to pop a cd. Therefore they are hit by the attack (10-15k). Same with the healers. They see the red circle and know to hot and shiield the tank. But if it was a new mechanic they could only react. Therefore they see the tank after force execution on 70% and heal. Problem now is that 1-2 seconds after Force execution he will do his Driving thrust, hitting for 20-26k. If Healers didnt react quickly or have casttimes tank might be killed by driving thrust, implying that healers dont hot the tank after force execution. But honestly : Tank suddenly on 70%-->big heal-->cast halfway through-->Tank dies on driving thrust. Now hp mods could've saved the tank bc he hast 4-5 k more hp. Driving thrust can be avoided, force execution can not be avoided by passive mitgation. Defstats do lower your dtps and theoretically give the healers more time to heal ( if you dodge 1 attack a hp tank would not, the healers have 1 swingtimer more to heal you). More hp give your healers the chance to understand the fight and allow them to be reactive healers instead of anticipating healers. Basically it doesnt punish your healers when they miss to anticipate a burstdmgphase on the tank. However if your totally hp stacking the sustained healing needed would be too high so that healers wouldnt have enough ressources to heal the burstphases. Besides it is better to have a defstat tank than having a hp tank that didnt balance hp and defstats perfectly. Currently no formula exist that would tell a tank where the perfect balance between hp and def is, but there are formulas which defstats should be focused with what priority. Therefore defstacking is a secure way to equip, while hp tanks dont have formulas - meaning they have to test / ask healers for feedback and so on.

 

At current nm progress i would say that hp stacking is a bad idea at most bosses. Dash'roode doesnt have burst on the tanks, therefore you can ignore him. Titan 6 doesnt have much burst neither except maybe the grenade and the hit when the tank is in the ground. Trasher however could be a boss where hp is more usefull. First you have those red circles on the ground. Of course every tank has to run out of it, but if it was a new mechnic a tank might still be hit by hit. Secondly his roar he does is less effective on a hp tank. The reason why you shouldnt hp stacking here are the adds ( unless you are a juggernaut and have saber reflect + saber ward rd y at all addphases). Otherwise the tps are too hard to heal for 1 healer especially in the 50% phase. The warlords require 2 tanks that do have 2 totally different duties. Tank A hast to tank Tu'chuk. There is no reason not to stack defstats here, as the dps Tank A would get would increase even more ( 3k dtps+) even if you kite him while you have got the armor debuff. Besides the armor debuff can be avoided by passive mitgation and active, but only dodges/parries work. The other tank ( kiting sunder) can have more hp as the only dmg he should get would be the knife of vilus garr. As his attacks arent avoidable ( not confirmed) hp stacking would be easier to be healed. Styrak has a burstphase here and there but nothing that could one hit you when your defstacking. I wouldnt prefer hp for this fight, bc i think the group healing needed + stunning adds + interrupting requires concentration and focus. The lower the tanks dtps the more healers can focus on other things ( like positioning for the 2.add whie in phase 1 ).

 

Def will always be better as it lowers the hps you need in order to survive, while more hp only gives the healers a second more to react on but only if the deftank does not avoid the next attack.

 

P.S. I am not trying to tell you how to equip your tank, play it the way you want. Neither me nor Kbn nor anyone here tries to do that. The only one who tries to tell others how to equip a tank is you, by attacking ppl personally and publishing wild theories who are not confirmed. 1 visit on your guilds page and i instantly knew why you are acting the way you do.

Edited by Methoxa
Link to comment
Share on other sites

So you're making a baseless claim on videos that may or may not exist and your own decisions. Mmkay.

 

Baseless? We've tested it, we've used it, several guilds on our server who compete with us use it. The videos are out there, if you care that much you can find them. I'm not your lackey, do the work yourself. This isn't English Comp 2, citations aren't required.:cool: I don't remember which guilds nor do I really care, we didn't come up with the idea to HP stack PT's and Sins on our own because everyone in the guild disagreed with me on my Sin gearing prior to NiM TFB.

 

KBN puts out math, and in the end it's just that, math. Reference his swtorboard.org Sin/Shadow guide, which had an improper initial spike threat rotation, as well as several other critical play mistakes. Someone else put up a hilarious comment in the responses, tactless as it was the stuff had merit and was kind of funny. I have a hard time taking gearing advice from a guy who is posting incorrect class guides.

Edited by countpopeula
Link to comment
Share on other sites

lets say you start with 42k health for min maxed. you sacrifice 500 mitigation for 1000 endurance, so now you are a 52k tank. youre squish in mitigation was 0.41, you lose around 2.5*10^-5 squish per point of mitigation, so now you are at 0.4225 (0.41+500*2.5*10^-5). your old TTK for a 6k dps boss was 42000/(6000*0.41)=17.07 seconds with a required healing of 2460 hps. your new TTK is 52000/(6000*0.4225)=20.51 seconds with a required healing of 2535 hps. after 10000/(2535-2460)=133 seconds the health you gained my sacrificing hp has been lost doe to inefficient healing.

 

tl/dr: dont feed him/her

Link to comment
Share on other sites

KBN puts out math, and in the end it's just that, math. Reference his swtorboard.org Sin/Shadow guide, which had an improper initial spike threat rotation, as well as several other critical play mistakes. Someone else put up a hilarious comment in the responses, tactless as it was the stuff had merit and was kind of funny. I have a hard time taking gearing advice from a guy who is posting incorrect class guides.

 

Actually, the comment you reference was sort of hilarious because the "mistake" it pointed out results in higher spike threat, not lower. There are various reasons for using slightly different openers from the one I list in the guide, particularly if you use Tenebras's triple Recklessness trick, but using the triple Recklessness trick without losing Dark Protection still requires the first half of the opener that I recommended (which was the part that the commenter objected to).

 

Also, the comment had a number of other broken assertions, all posted under the pseudonym "KBN is Bad". I'm not sure why you would reference it as a credible counter to information that I have put up.

 

At this point, you're really just trolling. You made a claim about what the "top 10 guilds" do with their tanks, and the tanks from the guilds that most everyone considers to be the foremost in the world popped by and noted that they (and others) do the exact opposite of what you claim. You've ignored my TTK math (twice), as well as all of the other work that has been done on the tanking forums on that subject. Ok, fine. You have a right to your own opinion. Just don't paint yourself as a pure and authoritative source of information, particularly when your way of putting yourself in that light always seems predicated on discrediting those who disagree with you.

Edited by KeyboardNinja
Link to comment
Share on other sites

×
×
  • Create New...