One of my recent pet peeves – also perhaps a reason to blog – is the kind of macro advice you get on various respected information sites these days – from wowinsider to the passionate BRK. Even the trusty WoWWiki hasn’t really been updated since good old patch 2.0
Let me hasten to add that currently, nothing is wrong with what has been posted, for that matter. But patch 2.1 has introduced a couple of syntax changes to macros which are simply too good to ignore, for three reasons: It shortens macros, something important when macro length plays a role, it simplifies them as well, and last but not least, it is quite likely (Blizzard’s Slouken has hinted at it previously) that the “old” way may eventually get removed.
So if you’re just starting out with macros, now is a good time to start with good and future-proof habits. If you have Altitis, like I do, and use dozens of macros to simplify your life, starting to revise them over time will spare you a lot of hassle later on.
Without further ado, here are two of the most important changes you should adopt as soon as possible.
1. Showtooltip
This command, to be placed at the very beginning of the macro, will show the tooltip for whatever the macro will do next. Combined with the question mark symbol, your macro button will correspond to your next action, be it a spell cast or a trinket to use. The full game tooltip will be shown, including whatever add-ons you have may have expanded it into.
#showtooltip used to require the name of a spell or action – as in #showtooltip Hunter’s Mark for instance – and sometimes, on more complex macros, the game client would eventually lose track.
Since patch 2.1, it is no longer necessary to provide an argument. The game client will automatically switch the tooltip according to whatever the macro will do next throughout its execution.
So nowadays, simply setting #showtooltip at the top of your macro will do the trick very nicely. If you want to always keep the tooltip for one single spell, go ahead, provide an argument, but it may mess out after a while. Arguments should be reserved for situations where your macro does something different depending on the conditionals you set.
2. Grouping conditionals
For people playing around with macros since patch 2.0 and newcomers starting to copy and emulate what they find online, you will mostly be used to macro sequences such as these:
/cast [target=mouseover, help] Flash of Light, [help] Flash of Light, [target=player] Flash of Light
That’s very nice, and Flash of Light doesn’t take too much space yet, so the tedium keeps at a minimum. But if the spell is suddenly Blessing of Protection and you want also to add the condition [target=targettarget], it may soon start to become messy, especially in the relatively small and crowded edit window Blizzard provides in their macro interface.
Patch 2.1 helped immensely by allowing to group conditionals. As before, you create a logical test path – whichever condition is evaluated as true gets cast, but you can dispense with repeating the spell name over and over.
So the above example becomes, simply:
/cast [target=mouseover, help][help][target=player] Flash of Light
When you bind this to a hotkey, it will do the following when you hit its key:
- Cast your highest Flash of Light on whatever friendly target your mouse is hovering above (works very well with raid frames or add-ons like Grid) – if your mouse is elsewhere, it will instead try to…
- Cast your highest Flash of Light on the friendly target you have selectionned
- If none of the previous conditions are true, it will cast Flash of Light on yourself.
Basic macro techniques
I usually end up “wrapping” all my buffs into a macro akin to the Flash of Light example above, like this:
#showtooltip
/cast [target=mouseover, help][help][target=player] Name of Buff spell
That way, it will always buff my friendly target or myself if none is selected. Spares you a lot of time. Yes, nowadays there are various methods for self-casting, but this one is consistent no matter what add-on you may start using in the future.
If your a mix of DPS and healing class and usually want to keep your target active yet toss an emergency heal on the tank, or whatever squishy the enemy just tried to turn into a sandwich, you can use the following instead:
#showtooltip
/cast [target=mouseover, help][help][target=targettarget, help][target=player] Name of Buff spell
That way, if you’re DPSing the skull and he starts hitting something too hard, a press of the macro key while your foe is selected will heal whoever it is targetting.
Simple, huh?
I expect that’s enough for a day’s work. Watch this space for more clean, shortened and elegant macro goodness.
No related posts.



If I understand the last macro you used, if I were soloing something and used that macro, it would heal me, correct? Because I’d be the target of my target, right?
Yes, correct. It would first check if there’s an eligible friendly to heal below your mouse pointer, if not, verify your current target, and then switch to your target’s target – which would be yourself if you’re soloing. Failing that, it would heal yourself under the target=player rule.