Tuesday, July 03, 2007

Avoidance Macro

For a paladin tank interested in raid tanking, the overriding question is "Am I uncrushable?" It's usually a lot of work to calculate it, especially if you want to factor in buffs. Luckily, Raymond of Nazjatar has come up with a nifty macro that calculates your current avoidance for you:

/script DEFAULT_CHAT_FRAME:AddMessage("Need 102.4 combined avoidance. Currently at:",0.8,0.8,1)
/script DEFAULT_CHAT_FRAME:AddMessage(GetDodgeChance()+GetBlockChance() + GetParryChance() +5+(GetCombatRatingBonus(CR_DEFENSE_SKILL) + 20)*0.04,1,0.5,0)

It's very useful when trying to build a gear set when raid tanking. The only thing to note is that in the line:

(GetCombatRatingBonus(CR_DEFENSE_SKILL) + 20)

The + 20 assumes you have 5/5 Anticipation. If you don't, you have to change this line to reflect how much defense you are getting from Anticipation (0 - 20).

(Snagged from the WoW Paladin forums. Stuff like this makes wading through all the Ret/Holy sniping worthwhile.)

Edit: Added some spaces so the macro will wrap properly in Firefox. You may have to remove some spaces if it is over the macro character limit.

Edit: Changed GetCombatRating call to GetCombatRatingBonus call. Shortens the macro slightly.

Edit: Also, you have to activate Holy Shield before using this to get results with Holy Shield. Otherwise you'll look 30-35% worse than you really are.

21 comments:

Anonymous said...

Thank you for wading for them so I don't have to.

Sunstriker said...

Maybe its just Firefox formatting, but your copypaste macro is hiding behind that Coriel image so the image clips out a sizeable chunk of the script :(

Anonymous said...

Here's the macro with more spaces so it word wraps... not sure if that means it is too many chars for the WoW macro editor... if so, replace " + " with "+" (eg, remove the spaces around the plus signs)

/script DEFAULT_CHAT_FRAME:AddMessage("Need 102.4 combined avoidance. Currently at:",0.8,0.8,1)
/script DEFAULT_CHAT_FRAME:AddMessage(GetDodgeChance() + GetBlockChance() + GetParryChance() + 5 + (GetCombatRating(CR_DEFENSE_SKILL)*150/355 + 20)*0.04,1,0.5,0)

Salud said...

nice find! Thanks

Brodir said...

I used to do it the old fashion way... pen and paper.

Can't wait to try this out after work!! Thanks a ton! =D

Josh said...

I'm having a bit of trouble with it, myself. I've copy-pasted it into a macro in game, but when I activate the macro, it displays the following in the chat box:
Need 102.4 combined avoidance. Currently at:

There's nothing displayed for the current avoidance. What do I need to change?
-Baelor
70 paladin, Runetotem server

GSH said...

Gah, adding the spaces puts it over the 255 character limit. That's what is causing your problem Baelor.

Stupid Firefox, who writes a word wrap implementation that does not wrap on plus signs?

GSH said...

Try now. I removed some spaces, so it's under the character limit.

Steven said...

GetParryChance() + 5

I'm no Macro guru but it looks like it is also assuming you have maxed out Deflection in the Ret Tree.

On the topic of Prot macros in preparation to my planned 2 week sabbatical as a Prot Pally does anyone have a good Paladin Taunt Macro? Something that will cast Righteous Defense of my targets target.

GSH said...

The "5" is the base miss chance. GetParryChance() returns the total chance to parry, including Deflection if you have it.

There's no equivalent GetMissChance() function, so the macro has to calculate it manually.

Also, the RD macro is

/cast [help][target=targettarget,help] Righteous Defense

Steven said...

THX!

Josh said...

It works! Thank you!

Mourne said...

question for you pvp pallys:

my 2vs 2 partner is a hunter and im a resto shaman. our strat vs pally teams is to drain them while i tank the dps class. he and his pet unload on and drain the pally. once he bubble we attack the other person so that the pally has to heal himself and the other person and use up more mana.

i have seen some pallys wipe the drain. can all pallys do this? is it just the bad ones that allow themselves to be drained(we are still <1500 and learning)?

Thanks.

GSH said...

Yup, Cleanse will clean off the Viper Sting. Though what you can try is Viper Sting(max rank). If the paladin Cleanses the Viper Sting, put up Viper Sting(Rank 1), and see if she Cleanses that.

Cleanse costs more mana than Viper Sting(Rank 1).

Honestly, your best bet is probably to interrupt the paladin's heals. An Earthshock timed correctly will give you several seconds where the paladin cannot cast spells, including the bubble.

Subhodeep said...

If by several seconds, you meant 2 seconds (less with improved concentration aura), you would be correct.

Anonymous said...

Just get the hunter to use a scorpid. It will stack 5 poisons onto the pala, and he will just clense those instead of viper.

Anonymous said...

On the subject of scorpid stings - and back to the point of the post - how does scorpid sting affect this macro? If, for instance, I can assume that the mob has a full scorpid sting on, how should I treat it? Increase the +5 to a +10? The same goes with the druid equivalent, although I don't recall the % hit chance loss there.

Right now I'm at 102.2, which is... infuriating, frankly.

Anonymous said...

Anyone got a macro that will incorporate the bonus from Libram of Repentance?

GSH said...

Anyone got a macro that will incorporate the bonus from Libram of Repentance?

If you have Libram of Repentance equipped, you get the benefit when you hit Holy Shield, so the macro will take it into account.

Otherwise, just add 5% to your total.

YupYup said...

So i used this macro, works great (i guess) Ive never calculated my avoidence so im not sure what is going on. Im SUPPOSED to be at 102.5 huh? Well, im in GREAT naxx 25 and 10 ulduar stuff. tier 7.5/8 and it says im hitting 27.144071388245.


Is it me, or something not right here. If someone can explain if thats good/bad and WHY it is, would be great.

Rohan said...

YupYup, this was during Burning Crusade and while crushing blows existed. You don't need to worry about it anymore.