Rawr.TankDK: guest post from the lead developer

I’m really delighted to have this guest post! Enjoy. – Gravity

Rawr.TankDK

Hello, I’m Shazear the current contributing developer for the Tank DK module in Rawr. For those who don’t know, Rawr is a 3rd party tool to help evaluate gear for your PvE endgame WoW character. It does not have a direct in-game corresponding addon, but rather can import characters from the Character Profiler addon or via WoW Armory. Each module does its own evaluation of your character appropriate by class/role, so most gear-evaluation bugs are unique for the module, e.g.: between DPS and Tank DK.

What TankDK Does Poorly

Blood. This tree tanks differently than any of the more classic models of Survival and Mitigation. The talents don’t model very well in the current structure of evaluating only what the Tank itself can bring and possibly what additional buffs may be provided by the raid. There are key +health temp buffs as well as +incoming healing bonuses, be it through damage done or through healing buffs to take the raw healing burden off your healers.

My initial implementation of key blood talents: Vampiric Blood and Mark of Blood caused problems with the model, either through completely tearing apart the results in the case of VB, or causing a weird loop/hang with Mark of Blood. After getting some Rawr3 implementation taken care of, getting the Blood talents integrated more reliably is next up on my list of work to do.

The other challenge is dealing with the variety of bosses. Each boss mechanic in the current raid scene are different enough that tanks are swapping out some pieces of gear to better tackle whichever boss they may be looking at any time. Some raid teams swap out different types of tanks for some fights, and just look at that as being the normal way of dealing with leading content. In the coming versions of Rawr, we’re working to implement the ability for any character to tune their gear for a specific boss encounter. This is not just for tanks, but it will be generic so all classes can have good expectations for the bosses they have to deal with. I see this really helping the tanking modules so that we are no longer just trying to guestimate the type of boss in very vague terms.

Accuracy and Comparisons

Within Rawr, there are many stats and evaluations. Something most users need to remember is that it doesn’t just model the static values of what’s equipped like Pawn or most of the other evaluators out there. Most of the stats include the procs of the trinkets and such, and are relayed in the context of the boss level for the current raid content. So for example Dodge/Parry values will be lower than you see in the Armory or in-game because the level difference decreases your effective avoidance.

I don’t use other addons or simulators to compare to the results of Rawr. I rather would work to ensure the accuracy of the model. Because Rawr has the full power of a compiled application, I can, given enough time, make the model exceptionally accurate. Right now, however, I still feel like I’m just getting the model to stand on its own. A key point that contrasts Rawr with other addons/simulation tools out there is the active modeling of procs and buffs. Most addons simply can’t do the work to make those evaluations very accurately. Even the accuracy within Rawr can vary depending on the situation. As we integrate better boss-modeling we should see some of the tanking procs and such come into their own even more.

What TankDK Does Well

I strive to ensure that the number values that come out of the TankDK module actually represent some real values in the game. With this in mind, I work to keep theTanking Formulas Wiki page for the basic formula models that I use in TankDK, but also tend to follow pretty close to what the other tank models are using as well. In the current incarnation, the user can adjust the levels of incoming damage, and how much threat matters vs survival vs mitigation. I believe it allows the tanks with different needs to find the gear that matches their playstyle and the content they’re facing.

Another point to trying to get the number to mean something, since taking over the module, I’ve worked to ensure there aren’t any magic numbers floating around. I work to not introduce functions or formulae that don’t reflect the reality of what we face through various encounters. It has a long way to go still as some of the stat curves I don’t believe are modeled very well, but I believe it keeps the model grounded. I have long been a silent observer of the EJ forums and other related theorycrafting boards so I feel there’s a legacy that I should be living up to now that I’ve thrown my hat into that ring.

Future

Some of the more recent discussions I’ve read have been working to try and balance the value of EH (Survival) vs. Mitigation/Avoidance for any of the tank classes. Not just balance, but deal with the difference of opinions on each score’s value as well as deal with the problem of accurately modeling the chance for bad RNG situations. Key is how do show that a given tank does really have enough EH while still stacking Avoidance to reduce the overall damage taken. When there’s a bad string of failed avoidance rolls, the tank gets gibbed and the raid wipes, through no one’s fault of execution. Even Blizzard is showing this to be an issue by changing how tanks will be taking damage with the Chill of the Throne mechanic.

I want to improve the model by not just having Survival/Mitigation/Threat (“SMT”) or Burst/Reaction Time graphs, but I want the SMT graph to show that for Boss X, you will be able to survive even the worst situation long enough for the healers to be able to deal with you properly.

Another aspect of the model that I am looking to change related to the above, is the modeling of Defense. DEF’s value after the soft-cap is not really that good, because of the avoidance that it continues to provide, but we’re not seeing the model really show the user that DEF is that important before the softcap. I believe that’s a lack in the model, and once I find a solution to the gibbing chance of a tank I think that we’ll see a more realistic value curve for Defense.

Personal Background

A bit about me: (feel free to skip this, if you want to more info about the module scroll down) I’ve been playing WoW since early Vanilla, and Warcraft since the original RTS. My mains are a Troll Holy Priest (Shizukana) and my Undead DK tank (Unshiz). I’d always wanted to play a DK after WC3, but since it wasn’t available, I had to find another route and eventually found that I loved healing. I was in a small friends-only 4-5 man guild for the first year of WoW and then we all joined Veterans of the Phoenix on Malygos-US where I’ve been ever since and currently sit as an officer. My priest is still slightly more along than my DK as our guild always needs the healers over the tanks so gets more opportunity for love. But I really do love tanking and the thrill of being in the thick of things.

I have tinkered around with WoW addons in the past and as I was leveling my DK with the expectation to tank, I realized that I needed a way to reliably evaluate gear. I knew the basics of the defense requirements and such through the basic reading, but I had no reliable way to deal with what it meant for DKs, especially as the community quickly began to see that different specs relied on different types of stats on their gear to be effective. I knew instinctively that unlike what seemed like more linear evaluations of stats for DPS classes, namely my wife’s hunter which just used AEP (or Agility Equiv. Points), the complexities of the DK as well as tanking needed something more. I looked around to see what else was out there to fill this role, and eventually stumbled upon Rawr. There had been some initial work done on the TankDK module, but that initial developer had left. TankDK needed some loving attention.

As a software QA engineer by trade, I had experience with C#, and so I contacted Astrylian to lend my support both as the TankDK developer and to help out with some additional testing experience. I admit that lately, I haven’t been spending much time on trying to QA Rawr, as much as just get the accuracy of TankDK improved and in some areas there’s still long way to go.

Thanks

Thank you, Gravity for giving me the opportunity to speak about Rawr and TankDK specifically to your audience.

Contact

If you want to contact me, the best place I check daily is the rawr discussion threads. Alternatively every few days I’m on EJ’s thread, where you can also PM me.

Related Posts:

4 comments to Rawr.TankDK: guest post from the lead developer

  • Luckton

    A suggestion for not only TankDK but for other modules:
     
    Recommended settings to use for the Optimizer when using it to find an optimal build.  Right now I’m using the following:
     
    Chance to Hit: >100
    Target chance to crit: <0
    Target chance to dodge: <0
     
    Am I missing anything here?  Should I throw in an Avoidance or Armor Reduction cap in there to make sure I’m vetted, or will the model take care of such things already?

  • Shazear
    Twitter: Shazear

    You make a couple good points for ensuring Defense Soft cap use the “Target Chance to crit <= 0.”
    Target Chance to Dodge <= 0 will give you the Expertise Soft cap.  This reduces the effect of parry hasting, but doesn’t eliminate it completely.
    However, I would argue that Expertise and Hit are not as vital for tanks when looking at general build/gear evaluation.  For normal boss fights, threat shouldn’t be so close that the couple extra percent of threat generated due to missing or the target dodge/parrying is going to make that much of a difference.  However, if you’re looking at tanking fights where your “Taunts” can’t miss, then I agree setting up the “Chance to Hit” is absolutely Vital.  Just like by default, one wouldn’t gear for a specific resist type until you face the boss (e.g. Hodir). I’m actually going to working on setting up something that specifically is evaluating the Chance to Hit with Dark Command.  Same with Expertise: the threat gains are pretty minimal, and hitting hard-cap is very expensive when you’re looking at mitigation of parry haste.  We’ll be seeing the real effects of parry haste as the BossHandler work is completed, since not all of the newer bosses even have a parry haste aspect to them.
    When gearing for Avoidance (Mitigation) vs. Effective Health (Survival) I would allow the optimizer to do the work.  You can push/pull those values by using the scales on the options page.

    • Gravity
      Twitter: gravitydk

      Shazear, does Rawr calculate the survival value of expertise? Using something like Theckhd’s formula?

      • Shazear
        Twitter: Shazear

        Yes – Expertise has value.  I include it in the Mitigation valuation by calculating the additional damage caused by parry-haste.  Since expertise reduces parry-haste, an increase in expertise will decrease the damage caused by the boss.  Using the Relative Stat Value chart, you can see how it compares to other stats – providing mostly mitigation with some threat.  You can also use the beta “Display Stats Graph” button on the TankDK options page to see how your overall score will change by adding or subtracting up to 1000 points of a given stat.  You can see some of the stat caps and floors on this graph.

Leave a Reply

 

 

 

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>