Using my post on macros, World of Warcraft Forums and a number of other random resources and suggestions, I’ll be posting useful macros for each class. Because I play a Priest on Illidan, I’ll start with that class first :).
Crowd Control Macros
Shackle version 1
This macro will cast Shackle Undead if the target is hostile. It will then tell the party that you’re shacking the target. The stopmacro line will prevent the announcement if the target is not hostile, cutting down on unnecessary spam. However, I think you’ll still get a /p message if you attempt to cast shackle undead on a non-valid target. (confirmed for 2.0.1)
/cast [harm] Shackle Undead /stopmacro [noharm] /p Shackling %t! DO NOT TOUCH!
Shackle version 2 (Focus Combo)
Allows you to set your focus and bind a spell directly to that focus. You should be able to cast the second spell without ever losing your current target. If used with a heal spell instead of shackle, this should also be very helpful for MT/Raid healing.
macro 1: /focus target macro 2: /cast [target=focus,harm] Shackle Undead; [harm] Shackle Undead /stopmacro [target=focus,noharm] /script SendChatMessage(UnitName("focus").." is shackled! DO NOT BREAK!")
Note: if you don’t know what /focus target does…well, it allows you to mark a target as a focused target which allows you to target other objects and cast spells on that focus without losing your current target.
Simple Greater Heal
This simple macro will cast Greater Heal (the highest rank you have) if the target is friendly, and alert the party about whom you’re healing. It will stop the announcement if the target is not friendly. (confirmed for 2.0.1)
/cast [help] Greater Heal /stopmacro [nohelp] /p Healing %t
Target/Self Heal Macro
This macro checks to see if you have the “alt” key selected – if you do, then it casts Flash Heal on yourself. If you do not, it wil cast Flash Heal on your friendly target. It also announces to the party when you heal a target.
/cast [modifier:alt,target=player] Flash Heal; [help] Flash Heal /p Healing %t
A Better Target/Self Healing Macro
Llenyd and Augur wrote this one, which I think is better than the one listed above. It will heal yourself if the target is harmful, otherwise it will heal your target – and announce whomever you’re healing, including yourself. The above macro would only announce your targetted healing. (confirmed for 2.0.1)
/cast [help] <healing Spell>; [target=player] <healing Spell> /script local n if(UnitIsFriend("player","target")) then n=UnitName("target") else n=UnitName("player") end SendChatMessage("Healing"..n.."in 3 seconds","SAY",nil)
Uber Mouse Wielding Heal Macro
For you uber-mouse wielders out there, Llenyd’s macro would:
Cast GH1 on the Broodlord’s current target if you click the macro.
Cast Shield on the Broodlord’s current target if you right-click the macro.
Cast highest rank FH on the Broodlord’s current target if you Mouse Button 4-click the macro.
Cast highest rank GH on the Broodlord’s current target if you Mouse Button 5-click the macro.
/cast [target=targettarget, button:1] Greater Heal (Rank 1); [target=targettarget, button:2] Power Word: Shield; [target=targettarget, button:4] Flash Heal; [target=targettarget; button:5] Greater Heal
Uber Mouse Wielding Flash Heal Macro
This is similar to the above macro, except that it casts Flash Heal and chooses the targets according to which mouse button you click with.
/cast [button:1, help] Flash Heal; [button:1, harm, target=targettarget] Flash Heal; [modifier:alt, target=player] Flash Heal; [button:2, target=party2] Flash Heal; [button:3, target=party3] Flash Heal; [button:4, target=party4] Flash Heal; [button:5, target=party5] Flash Heal
Space Saving Mind Blast/SW:Pain Macro
This macro uses the new “cast sequence” ability – yay more bar space! When you first click it, it should cast Mind Blast – when you click the button again, it will cast Shadow Word: Pain. The sequence will reset to Mind Blast if the player drops out of combat, or chooses a different target.
/castsequence reset=combat/target Mind Blast, Shadow Word: Pain
MindFlay When Not Channeling Macro
Should cast Mind Flay only if you are not currently already channeling Mind Flay. For those “duh” moments. :)
/cast [nochanneling:Mind Flay] Mind Flay
Devouring Plague Macro
Good example of the timed reset macro. This macro will, on the first button press, cast Inner Focus. On the second press, it will cast Devouring Plague. The sequence resets after Devouring Plague, or if enough time passes between button presses (170).
/castsequence reset=170 Inner Focus, Devouring Plague
For our shadow friends, this macro will drop shadowform on the first click, cast Flash Heal on the second click, and revert you to shadowform on the third click. If you are not in shadowform, it won’t do anything.
/castsequence [stance:1] Shadowform, Flash Heal, Shadowform
Correct Your Smiting
Casts smite on a harmful target…OR if you target a friendly to heal them, and they’re targeting a mob, casts smite on your target’s target.
/cast [harm] Smite; [target=targettarget, harm] Smite
Troll Berserking/PI/IF Macro
Sirona’s Troll Berserking / Power Infusion / Inner Focus — Smite macro does just what it says. :) If any of the first spells are on cooldown it should give you an error message, but continue on through the other spells. You can also turn this into a healing macro if you change the final spell.
/cast Berserking /stopcasting /cast Power Infusion /stopcasting /cast Inner Focus /stopcasting /cast Smite
Sylphael’s macro (ty, Sylphael!) will cast dispel magic on whatever target your mouse is presently hovering over. So if you bind it to a mouse button and hit that button while hovering over a character, you’ll cast dispel on that character.
/cast [target=mouseover] Dispel Magic
This will stop the current spell and cast PW:S on your target if it is friendly, or (if that fails) it will cast PW:S on your target’s target.
/stopcasting /cast [help] Power Word: Shield; [target=targettarget] Power Word: Shield
Handy Resurrection Macro
Just a simple resurrection macro that announces your casting!
/cast [dead] Resurrection /stopmacro [nodead] /script SendChatMessage("Resurrecting "..UnitName("target")..". w00t!")
Top Trinket+PI Macro
This is Tanara’s “Top Trinket +PI” macro. Trinket slots will not be a valid term in the “/castsequence” macros – you’ll have to specify the item name like the one in italics here. If I remember right, the name is case sensitive but only has to be long enough so that the term isn’t ambiguous. For example, “Conjured” could call conjured water or conjured cinnamon roll. You would have to write out to “Conjured Cinn” to get the term non-ambiguous.
The macro is a sequence so that if the trinket was on cooldown, then the Power Infusion wouldn’t cast. There’s no way to “use spell if item is not on cooldown” in the new scripting language – the developers deliberately removed that functionality. Remember, you’ll have to press the button twice (with no failure) to get the Power Infusion spell cast.
/castsequence [target=player] Zandalarian Hero Charm, Power Infusion
Spoon’s BAM Macro
Spoon’s BAM macro (ty Spoon!) should use the Hero Charm if it’s not on cooldown, then cast Power Infusion, then cast Inner Focus – all with one click. It differs from the above macro in that there’s no cooldown check. If the Hero Charm is on cooldown, you’ll just receive an error message but the rest of the spells will execute.
/use Zandalarian Hero Charm /stopcasting /cast [target=player] Power Infusion /stopcasting /cast [target=player] Inner Focus
Spoon’s spacesaver macros – now your low ranked or single-cast spell can be the same button as your high ranked. All you’ll have to do is hold the alt key to toggle between them.
/cast [modifier:alt] Prayer of Shadow Protection; Shadow Protection /cast [modifier:alt] Greater Heal(Rank 1); Greater Heal /cast [modifier:alt] Holy Nova(Rank 1); Holy Nova
Pretty simple macro to cast shield on your target if he’s in your group and friendly or if your target’s target is friendly and in group, or else shield yourself.
/cast [raid] Power Word: Shield; [target=targettarget, raid] Power Word: Shield; [target=player] Power Word: Shield
Special thanks to Anaea of Aerie Peak’s Priest Macro resource where a number of macros were pilfered :)