1. New Registrant
Join Date
May 2011
Posts
3

## Tank Avoidance Macro

Was not sure whether to post this in the theorycrafting forum or this one.

My friend Waniou and I have created a macro that tells you EXACTLY how much more parry RATING you need than dodge RATING when unbuffed to compensate for agility and raid buffs. It REQUIRES that you are completely unbuffed and are at least level 85.

Its based on this formula:

For when using mastery food
Parry-dodge={[(agility+549)*1.05-base agility]*0.58}-{[(str+549)*1.05-str]*0.25}

=====DK/Warrior=====
For when using mastery food
Parry-dodge={[(agility+549)*1.05-base agility]*0.41}-{[(str+549)*1.05-str]*0.25}

=====Key========
Parry=total unbuffed parry rating
dodge=total unbuffed dodge rating
str=total unbuffed strength
agility=total unbuffed agility

PLEASE note that it DOES NOT take Hold the Line into account.

Code:
`/run local _,s,p,n=UnitStat("player",2) print("Must be unbuffed. Try to keep Parry Rating this much higher than dodge: "..string.format("%.2f", (((UnitStat("player", 2)+549)*1.05-(s-p+n))*0.58)-(((UnitStat("player",1)+549)*1.05-UnitStat("player",1))/4)))`
=====DK/Warrior (BEFORE HOLD THE LINE)=====
Code:
`/run local _,s,p,n=UnitStat("player",2) print("Must be unbuffed. Try to keep Parry Rating this much higher than dodge: "..string.format("%.2f", (((UnitStat("player", 2)+549)*1.05-(s-p+n))*0.41)-(((UnitStat("player",1)+549)*1.05-UnitStat("player",1))/4)))`
Here is us discussing the macro and making it:
http://us.battle.net/wow/en/forum/to...719?page=8#147

This is the avoidance sticky he wrote on the official WoW tanking forums. He is currently trying to get it replaced with this thread:
http://us.battle.net/wow/en/forum/topic/2489160859

I hope this helps a few fellow tanks who are having issues balancing their Parry and dodge.
Last edited by Celyn; 05-08-2011 at 06:44 AM. Reason: Links to our original threads in the Official wow forums

2. New Registrant
Join Date
Jan 2009
Posts
4
I guess I'm confused as to what the number this macro spits out is supposed to mean. When I ran this macro without any buffs, it gives me 76.82. This how much higher my parry rating needs to be over dodge?

This seems really low - the Warcraft forum thread you linked says warriors need roughly 300 parry rating over dodge?

3. On Use: +5 Macroneering
Join Date
Nov 2009
Location
WI, USA
Posts
2,614
That's how much more parry rating you require (with those assumed buffs) in order to have the effect of deminishing returns on parry be equal to the deminishing returns on dodge. So it's calculating the break even point. Warriors however want parry to be higher than dodge because of Hold the Line. For a Warrior, Parry > Dodge because of Hold the Line so it is not a one to one comparison between identical effect like it is for Paladins and Death Knights (full avoidance, same deminishing returns).

4. New Registrant
Join Date
Jan 2009
Posts
4
Right, I understand the need for parry to be higher than dodge.

The macro gave me the number 76.82, but you (and the forum thread this is linked from) are saying warriors want it to be even higher? (~300 parry rating over dodge) So I don't understand what the macro does for warriors?

Do I want 76.82 parry rating over dodge, or do I want ~300 parry rating over dodge?

I suspect it is the latter.

5. On Use: +5 Macroneering
Join Date
Nov 2009
Location
WI, USA
Posts
2,614
The macro tells you what the break even point is for you in your current gear. How much beyond break even you go as a warrior is up to you. Just because you want more, doesn't mean the macro is wrong. The macro is providing information to you and you have to understand what that information means in order to use it.

Sadly the author made the mistake of having their macro say "Try to keep Parry Rating this much higher than dodge" when in fact all he really needs to say is "Parry Rating beyond Dodge Rating required to minimize deminishing returns" which is what the macro is actually telling you. The calculation in the macro isn't incorrect, the text is because the text is misrepresenting what the value calculated actually is.

Warriors however don't care about minimizing the effect of deminishing returns the same way because the returns from parry are greater than the returns from dodge.

6. New Registrant
Join Date
May 2011
Posts
3
Originally Posted by Quinafoi
Sadly the author made the mistake of having their macro say "Try to keep Parry Rating this much higher than dodge" when in fact all he really needs to say is "Parry Rating beyond Dodge Rating required to minimize deminishing returns" which is what the macro is actually telling you. The calculation in the macro isn't incorrect, the text is because the text is misrepresenting what the value calculated actually is.

Warriors however don't care about minimizing the effect of deminishing returns the same way because the returns from parry are greater than the returns from dodge.
Exactly. The macro is for minimizing DR. However, a warrior due to hold the line will get more overall damage reduction by keeping their parry about 300 rating higher than dodge than they would by minimizing DR on avoidance. I guess i should have put it like this

Code:
`/run local _,a,p,n=UnitStat("player",2) print("Must be unbuffed. Parry Rating beyond Dodge required to minimize deminishing returns "..string.format("%.2f",  ((a+549)*1.05-(a-p+n))*0.58)-(UnitStat("player",1)*0.0125+144.1125))`
===DK/Warrior===
Code:
`/run local _,a,p,n=UnitStat("player",2) print("Must be unbuffed. Parry Rating beyond Dodge required to minimize deminishing returns "..string.format("%.2f", ((a+549)*1.05-(a-p+n))*0.41)-(UnitStat("player",1)*0.0125+144.1125))`
Though in order for everything to fit i have to rewrite the str part of the macro making it less obvious how i derive the parry-dodge values >.<

7. New Registrant
Join Date
May 2011
Posts
3
Code:
`/run local _,s,p,n=UnitStat("player",2) print("Must be unbuffed. Try to keep Dodge Rating this much higher than Parry: "..string.format("%.2f", (((UnitStat("player",1)+549)*1.05-UnitStat("player",1))*0.27)))`
Updated macro for 4.2