Tank Go Boom
by
, 03-11-2011 at 05:39 PM (121720 Views)
There can be little doubt that Blizzard's now infamous command for the World of Warcraft playerbase to "bring the player, not the class" is likely seen around the Irvine offices as a colossal PR headache -- it is no wonder Ghostcrawler found it necessary to cease posting to the Battle.net forums recently and instead communique is frequently relayed down a one-way street of blog posts and announcements. Conceiving of a more thankless job in this industry would prove rather difficult, and I for one certainly don't blame GC for his decision, as the wave of complaint swells ever higher, dimming the horizons of reason and logic.
Yet a trap must be avoided, for it is a perilous predicament to concede all action or statement by an authority figure, a beloved game developer in this case, as sound or just without question. Ostensibly, Guy Fawkes Night, which celebrates the failed assassination attempt of King James I, is meant to be a reminder of the consequence of treason and disobeying government ("Remember remember, the fifth of November"). Yet in reality in modern times, the meaning has inverted to represent the questioning of government and authority, as was made famous by the film "V for Vendetta".
While it may be trite to compare governmental treason with methods for designing a game meant for entertainment, the underlying fallacy to avoid is to blindly trust the will and direction of that authority figure, be it your king or your favorite developer. Consequently, there is a burning issue I've experienced first-hand since the release of Cataclysm that has been seemingly ignored by the majority of Blizzard's balance team and furthermore, is invisible to the vast majority of the community: Discrepancies between the four tank classes are astonishing vast and severely hinder players and raids that do not explicitly exploit the advantageous over the disadvantaged tanks.
Block Schmock
For those relatively new players, a brief history: World of Warcraft tanking used to be relegated to one and only one class -- the Warrior. If you were not a Warrior, you were not a tank. Consequently, those players, such as myself, who enjoyed that role played a Warrior for classic raiding. Even as other tank classes were introduced, players like me stuck with our original characters and had a blast.
Unfortunately, after a solid five years of Warrior tanking, Cataclysm represented an opportunity to move on from the stale mechanics and gameplay that Warrior tanking had become, and while I won't get into my reasoning here, Warrior tanking felt like it had not changed very dramatically even over the course of 6 years, so I moved on to my more fun and versatile Druid as a tank.
Once Cataclysm raiding began in earnest, a bit of a problem quickly emerged: In many situations, as a Druid tank I was taking moderately or significantly greater damage than our Paladin tank in almost all scenarios. Early on, this could be chalked up to random factors and small sample sizes for the data, but as the trend continued, the issue moved beyond one of interest and curiosity, and was actually hindering our raid as a whole. Not only was this difference noticed anecdotally by our tanks and healers, but the hard data from logs was backing it up -- in identical tanking roles, equivalently geared Paladins were taking 10-40% less damage than their Druid tank counterparts.
The realization soon came to me that the reason for this was fairly obvious and was tied entirely to block mechanics. Paladin tanks are able to block 40% of incoming melee damage on nearly 100% of attacks (depending on the strength of their gear), whereas a Druid tank blocks through Savage Defense, which not only requires the Druid to critically attack a target, but also scales based on attack power (and thus damage taken through Vengeance). In other words: A Paladin will block a static percentage of damage, regardless of circumstance, whereas a Druid will block a variable value of damage, based on many outside factors.
While this concept seemed fairly obvious and bizarre to me, I enjoyed playing a Druid tank and did what most people or raid leaders would do in this situation: I gave the more difficult tanking jobs to our Paladin and took on the less hazardous roles myself. Unfortunately, while this sort of method works out in an abstract sense, it simply ignores the toothache in hopes it will magically disappear, rather than yanking the sucker and getting it over with.
I had to know more.
Quick, Look Over There
While breezing through Normal modes didn't present much of an issue as a Druid tank, it quickly became apparent once we entered into Heroics that being a Druid tank was more than just an inconvenience, and was a downright burden in many situations. Encounters that dramatically favor Shield Tanks (Paladin/Warrior) such as Chimaeron were especially difficult and scenarios where our Paladin tank could not be killed, such as a Fued double-attack, were a complete gamble for me as a Druid tank. Maloriak, Nefarian, Halfus; the list goes on, and it is even noticeable in many single-target situations as well.
Perhaps the most unfortunate realization from all this is that the community, and by extension the developers, were generally oblivious to or outright ignoring the issue. Browse through World of Logs and you'll see very consistent patterns -- most raids that are actually killing Heroic content are doing so by utilizing a Shield Tank in the most dangerous situations over a Druid or Death Knight. These raids are generally hardcore, generally high-end, generally 25-man, and generally willing to adjust roster and role to get a kill. In other words, if discussing this issue with the ElitistJerks high-end crowd, the response would be: "If you want to do Heroics, you have to keep an open roster. Some classes are always better than others." There'd also certainly be a few insults thrown in there, but I'm giving the short version.
The point is, the vast majority of the WoW playerbase is not noticing this issue because 5-mans and Normals are a relative joke, and even though there is still a noticeable difference in mitigation between Shield Tanks versus Non-Shield Tanks, it is largely irrelevant on the easier content where simply playing better or casting a few more heals completely overshadows tank damage differences.
The minority of the playerbase that is into high-end, Heroic content is, for the most part, capable of and/or willing to adjust rosters and roles so that these differences are not as blatantly obvious -- they have their Warrior tank Phase 3 Nef, Paladin tank Maloriak Aberrations, and Druid tank Atramedes. If you can resolve the issue internally by swapping a few players around (and in most cases with large guilds and rosters, you can do just that), then why bother getting up in arms and waiting for a solution from the third-party of developers?
Yet as with so many things, a lot of the issue relates back to raid and thus roster size, and frankly 10-man Heroics have and continue to be much more difficult than their 25-man counterparts, for the most part. There are many reasons for this, but one of them is certainly tank and cooldown stacking, or the lack thereof, and as a 10-man Heroic raider, I can assure doubters first-hand that this is an issue.
Math?! I Hate Math!
It is one thing to make anecdotal claims based on in-game experience or a handful of logs, but I decided the only way to really prove this issue was to get down into the grit of the numbers involved and compare side-by-side the differences in identical scenarios between Shield Tanks and Non-Shield Tanks. Therefore, I set out to replicate the incoming damage models from the popular gear and theorycraft application, Rawr. It is also worth noting that while there are obviously four tanks to be compared, as a previous Warrior and now Druid, I was primarily interested in comparing those two, so I did not model the Death Knight or Paladin. That said, the Warrior model can be easily used for the basis of the Paladin model, as the Paladin is the easiest of all, since all blocks are 40% reduction, whereas the Warrior must account for some blocks as base 30%, and others critical of 60%.
Of course, the Druid model is by far the most complicated since block values through Savage Defense are dynamic and based on many factors, including: Mob damage, mob attack speed, attack speed, crit, avoidance, attack power, and so on. Things are further complicated by the constant growth and decay of vengeance from incoming damage, whereas again, the simplicity of Shield Tanks don't rely on incoming damage in a dynamic sense.
Druid Tank Calcs Model: http://www.voximmortalis.com/kauction/tankcalcs.php
Source Code: http://www.voximmortalis.com/kauction/tankcalcs.phps
Above you can find the very simple html output of the Druid tanking model, which displays most of the important information in rows. Each row represents an individual scenario, with the Mob Attack Speed as the distinguishing factor between rows. This sort of model setup was created to illustrate differences when tanking various types of mobs and quickly see the change when adding more mobs into the attack table. Therefore, while a typical boss that attacks at a 2.0 speed is normal, we can quickly look at the row for 1.0 attack speed to see what happens if two of those same mob are tanked simultaneously (or 0.5 speed for four mobs, and so on).
For those curious or that want to double-check, the PHP source code for the model can be found above as well. That said, it's worth noting that almost all the calculations were taken from the Rawr Source Code, and I just altered it to my needs and of course converted it all to PHP. I tested all my results to that of the actual Rawr application output, and all matched or were within a very minor margin of error (remember that Rawr isn't a simulator, so it has to round or average things like trinket procs or uptimes based on length of the fight).
Warrior Tank Model: https://spreadsheets.google.com/pub?...3c&output=html
For the Warrior model, because it is much simpler than the Druid since everything is just based on mitigation and then block values, I decided to just use a spreadsheet rather than create a full php script, but the results are still the same. Again, as with the Druid model, the calculations here are from the Rawr Source Code, and again they match the actual Rawr application output identically or very closely.
I should also note that for both the Druid and the Warrior, I decided to use Best in Slot 359 Gearsets for these models. This would most represent the gear of a player doing or entering Heroic content, and is also representative of how players typically gear these particular tanks (i.e. The Druid focuses on Agility then Dodge then Mastery, while the Warrior pushes Mastery then Parry then Dodge).
Yeah That's Great, Gimme Some Infoz!
With my models in place, there are two questions I wanted to answer:
1. How does incoming damage compare between the two in typical tanking scenarios, such as single-boss, multiple-boss, multiple adds, plus real-life scenarios from actual encounters?
2. If damage taken for Druid does prove to be higher, at what values or damage and/or attack speed does a Druid tank equal or surpass the overall damage reduction of the Warrior?
For the first question, we can just start plugging numbers in and see what we get. For starters, the basic "boss mob" used in most models has a base hit of 160,000 (i.e. before armor or other reductions) and an attack speed of 2 attacks per second (thus reduced to 2.4 attacks per second when 20% attack speed debuff). Both models are setup to use 160,000 attack damage by default, so looking at the 2 attack speed row, we get the following:
Already we see a pretty huge difference, and considering this is the base boss, the most rudimentary tanking scenario players should encounter, we're already starting to see the trend. That's an incoming DPS reduction of 3894 for the Warrior, which adds up to 1,869,120 damage during an 8 minute fight. If we assume an average "big heal" of 35,000, that means it takes ~53 extra heals over the course of the fight to sustain our Druid, and again, this is the very standard of tanking scenarios, where Druid tanks are meant to shine the most (check logs, majority of Druid tanks are relegated to single-boss tanking, for the very reasons I bring up here). I realize that seems like a pretty sizeable number and difference, but logs support it anecdotally as well.
Let's look at a little more drastic, but very common scenario -- something like Aberration tanking for Maloriak. We'll assume the raid is doing the fight properly, so the most the tank will be tanking without cooldowns is six Aberrations. With six stacks of Growth Catalyst, Aberrations hit for about a max of 75000 base, or around 25000 after mitigation on a tank. If I tweak the numbers of our Druid Model, we can see that with six Aberrations (1.67 attack speed base, so 1.67 / 6 = ~0.28 speed), we get the following values:
Such a drastic difference that it almost seems silly. Granted, the actual time spent tanking six Aberrations before CC starts/green phase/whatever, depending on the strategy, is pretty short, but that doesn't change the argument: As mob attack speed decreases, Non-Shield Tank block mitigation drops exponentially. In this particular scenario, for our own raid, our Paladin tank was so much more stable during Aberration phases that it completely changed the fight from seemingly impossible to allowing us victory not long after swapping tank assignments. And the numbers above show exactly why -- even if both values are perfectly healable by a 3-healer team (which they are), clearly the Warrior taking an average of 70% of the damage a Druid takes during this period means far fewer chances for spike damage bursts and deaths. It's a no brainer, and again why tanking these scenarios in all high-end raids so heavily favors Shield Tanks over Druid/Death Knights.
This sort of discrepancy leads to some very weird scenarios, especially in 10-man raiding where substitutes and vast raid/tank cooldowns are not available. As one moron put it in a YouTube comment, making our Paladin tank both dragons for the majority of the first phase seems a "shit strat", but the fact was it proved far more stable and easier to heal than using a Druid tank as well, and again we see numbers to back this up:
Obviously this is a Warrior model and not a Paladin, but the same general concepts and values apply. What is even more interesting is if we compare our Druid tanking a single dragon, to that of our Warrior tanking two dragons simultaneously:
I hope the absurdity of Non-Shield Tank mechanics are becoming very clear to you by now, because we can see that by adding an entirely second mob to our Warrior tank, he only takes about 9500 more DPS than our Druid that is tanking only a single mob. That's only about half of the total DPS our Druid takes from a singular mob in this scenario. This is called "well thought out balance".
I could go on and on with scenarios (you don't even want to see Chimaeron), but it's worth moving on to our second question: "At what values or damage and/or attack speed does a Druid tank equal or surpass the overall damage reduction of the Warrior?"
To answer this, you only need a few pieces of information. First is to recognize that Shield Tanks always block a consistent percentage of damage, so for our Warrior, we can easily determine that the chance for an incoming attack to NOT be blocked at all is based on the attack table, adding his mob miss plus avoidance plus block. For our Warrior, that is 10.21%, so every time a mob attacks, regardless of the damage or attack speed, there is a ~10% chance our Warrior will not block.
From that, we can then look at our Druid model to determine at what point the Druid has an equivalent chance to block (via Savage Defense); about 90%. You may notice in that previous link that I have to increase the maximum attack speed listed to 11 seconds, because in order to reach a 90% block chance for our Best in Slot Druid (the "SavageDefenseChance" column in the table), we must be fighting a mob with a base attack speed of 10.55 seconds -- that's two and a half times the base speed of Chimaeron!
It is worth noting here before anyone calls me on it, that taking the Druid model and simply halving the attack speed to represent twice the mobs is not 100% accurate, because an intelligent observer might ask: If the chance for a Savage Defense proc is based on attacks made by the Druid, wouldn't the chance of a proc increase as there are more targets? The short answer is: Very slightly.
The long answer is that yes, you can proc a shield faster if you have more targets (imagine Swipe on a group of mobs), but there is a key factor here: You cannot save up shields/blocks in any manner. That is, if the Druid has a shield active, a further proc does nothing beneficial and simply replaces the previous shield. More importantly, the maximum chance to proc a shield is determined by the maximum attacks that can proc a shield in a given period of time. Since, like all tanks, Druids are GCD limited, it comes down to attacks that can and cannot proc the shield. Druid attacks that cause Savage Defense are: Melee, Mangle, Maul, Lacerate (application), Thrash (application), and Swipe. Therefore, DoTs can't proc SD, nor can procs such as Fury Swipes or non-direct attacks, such as Faerie Fire, Roar, etc.
To accurately portrait this in the Druid model, I made the following assumption: When more than one mob is present, the Druid is assumed to A) Always have enough rage for Maul on cooldown, B) Always use a Thrash or Swipe every other GCD, and C) No GCDs are spent on utility/non-SD proc abilities, such as FF or Roar. Obviously in a real world situation these rules never apply fully outside of tiny bursts of activity, so the numbers here are slightly favorable toward more Savage Defense procs than would be seen in a real world situation.
At any rate, with two mobs for example, we have white hit on a single target, Maul every 3 sec on two targets, a special single target attack every other GCD (3 sec), and a special AE attack every other GCD (3 sec) -- all of which have a chance to proc Savage Defense, and are all calculated in the model to give us our Savage Defense Chance.
Now, obviously since Druid/DK block is not percentage based, like it is for Paladin/Warrior, the actual chance to block isn't a direct correlation between Shield Tanks and Non-Shield Tanks. Instead, we really want to look at the percentage of incoming damage that is blocked for a true comparison. For that, we look at the "SavageDefensePercent" column for our Druid model. For a Shield Tank, these values are somewhat static (40% of a Paladin and either 30% or 60% for our Warrior, depending on his critical block chance). For now, let's just assume 40% and not worry about the crit block calculations, so we want to know: For our Druid model, what damage profile(s) give our Druid ~40% Block Percent (SavageDefensePrecent)?
Both damage dealt and attack speed affect this value, so for our base boss of 160,000 base hit, we see that the boss must have a base attack speed of 9.2 seconds for our Druid to block 40% of incoming damage. Well what about a typical attack speed for a mob of say 2 seconds? What base attack value must the mob have to give our Druid 40% block?
We can see here that the base attack damage has to be 79,500 maximum for our Druid to maintain 40% damage blocked. Unfortunately, very few scenarios actually have boss damage with values that low, but even when they exist, the damage is trivial. 79,500 base damage is about equivalent to tanking a single drake in Halfus on Normal. Even the weaker bosses of Heroic hit far harder than that (Atramedes base hit is around 150,000).
Bummer, but Why?
Now that we see how things work, the question that comes up is why the numbers are as they are.
As I mentioned previously, the key difference between Shield Tanks and Non-Shield Tanks is that the former blocks damage using flat percentages, regardless of other factors. Druid and Death Knight tanks, on the other hand, are only at their maximal block mitigation when taking extreme damage. That, in a nutshell, is the crux of the issue.
To further illustrate, look at our Base Boss Druid Model again, but pay attention to the "SavageDefenseValue" and "BlockDamagePerSecond" columns. The Savage Defense Value is, as it sounds, the actual value Savage Defense will absorb when it procs. As we can see, it caps out pretty quickly for our 359 BiS Druid at 24492 absorb around the 2.0 attack speed mark. This means no matter how many more mobs we add, nor how much harder those mobs attack for, the maximum value of a singular Druid Block cannot exceed that 24,492 value. Beyond that point, Druid blocking cannot increase in efficiency, and in fact decreases dramatically.
Now take a look at the Block Damage Per Second column, which as the name implies, shows how much damage is absorbed per second by Savage Defense procs. The key thing to note here is simple: As Mob Attack Speed approaches zero, Block Damage Per Second approaches a plateau. Though the jump of Block Damage Per second increases as attack speed approaches zero, it is misleading because of the relative difference in attack speed (consider that 0.1 speed is 100% faster than 0.2 speed).
The point of all this is that the MAXIMUM block per second for a Druid, regardless of incoming damage, is based on the Savage Defense cap (which is in turn based on the Vengeance Cap). So even as we go from 1 to 2 mobs, then 2 to 4, then 4 to 8, and so on, the Blocked Damage Per Second is becomes virtually "capped" quite quickly, unlike a Shield Tank who would never cap, regardless of the number of mobs present. When it comes to mechanics design, this is a pretty fantastic blunder.
Consensus
Ultimately, it is up to the player base to make enough noise to get this fixed, but as discussed above, I simply don't think enough people are experiencing it, or have the wherewithal to take notice, to actually instigate a change. Also notice that a key point in this discussion has been to ignore the class differences between tanks outside of pure mitigation -- we could get into how much value something like Battle Res or Divine Guardian has and whether that should be weighed against damage mitigation in some way, but that is a fool's game to be sure, and would only convolute the issue. Yes, I do think tanking balance outside of actual mitigation is out of whack, similar to healer balance, but that is a topic for another post, and should not be directly tied to this discussion.
The solution then must obviously come from a pretty major overhaul to the system. I understand the idea and perhaps even drive for two different tank types of Shield vs Non-Shield, but the drawbacks to Non-Shield Tanking are so vast that the system simply needs to be scrapped as a tried and failed experiment (A quick thought experiment: Imagine how little Non-Shield Tanks will mitigate through block when a fight is just starting and thus they have no vengeance buildup, compared to Shield Tanks who start out with their normal block percentage always active.)
Instead, Druid and Death Knight mechanics need to be based on percentages as well, and the first step is to remove the tie to Attack Power as well as the tie to attacks made. Savage Defense as a proc-based system is a failure compared to always active block chance and percentages of Shield Tanks, who do not need to attack, let alone crit, a target to get a chance to block. Target swapping, stopping DPS to keep a mob at certain health levels, missing a rotation button on accident or having to mix in non-attack based GCDs -- ALL these things directly lower a Druid's chance to block from their maximal chance -- a Shield Tank has none of these issues.
Druids need absorbs or blocks based on damage taken percentages. I realize there is a strong trend to avoid homogenization between similar roles and classes in WoW, but in certain situations, being the same is not only a good thing, it is vital to maintain a sense of balance and worth for all classes of a given role. Imagine for a moment if the upcoming 4.1 patch suddenly changed healing such that, purely spamming maximum heals, Paladin and Shaman healers were only doing 70% of the healing per second of Priest and Druid healers. Obviously that would be unacceptable. Yet that is exactly what has been the case for tanks since Cata's release in situations like Heroic Maloriak, or Nefarian, or Chimaeron, and so on.
All tanks should have Mastery increase chance to block, while the percentage of damage should be fairly static, similar to Paladin or Warrior mechanics. If two tanks don't have to do anything extra to trigger a block (Pal/War), then the other two tanks should work the same way, regardless of how "similar" it feels. "Unique" mechanics should come from utility, abilities, buffs, and playstyle -- not whether one class simply sucks at performing a given role compared to another class. That is the opposite of unique or interesting and is instead downright exhausting and tiresome.
After six years of tanking, I for one have taken up a healing role, because fighting against this was no longer worthwhile. I hope some severe and drastic changes are in the works, but I haven't been given any reason to hope so up to this point.