Making Macros - General Information

opocaj's picture

Hello all.

I'm writing this guide to help you in creating those useful things that macros are.
Some of you could even have no idea of what macros are, so we'll start from the beginning.

Open your menu panel(press esc).
Now open macro panel(notice that we have general and character's specific macros, in two different tabs).

Press new.
Now choose a icon you like.
Press ok.
If we choose the question mark(the first icon)the button we'r gonna create will show us which spell will be casted when we press it, but we'll see this later.

Let's start with something classic:

1) Hello WorldOfWarcraft!
We'll learn how to yell that short sentence.
Write in the box at the bottom of the panel the following instruction:

/y Hello WorldOfWarcraft!

Now drag the icon of the macro into one of your bars.
Click on it...and that's all.

We could also make a macro to make our character make any emoticon; just create a new macro and type:
or similars.
If we typed this:
in the same macro, our char would yawn and lay down at tha same time.

For spells and ablities it's very similar: we have to add the command /cast.

2) Cast a spell or ability
Create a new macro and choose the question mark as icon.
I suggest to choose that, usually, so we'll be always able to see the cooldown of the spells that we link to this macro.
Write in the body this instruction:

Now open the spells and abilities panel and shift click the spell you wanna link to the macro.
We'll see the spell's name appear near the instruction /cast, complete of it's rank.
Drag the icon of the macro into one of your bars.
In this way the macro will be always linked to the spell or ability we have choosen and of the rank we have choosen.
To make the rank grow up as we learn higher ones from the trainer, simply remove the rank of the spell from the macro.

Now we'll see something more interesting, don't worry.
You'll be probably thinking that I didn't talk about yawning and sleeping at the same time only because I like roleplaing, and you are right.
Unfortunatly, due to the global cooldown, it's not possible to cast multiple spells at the same time, but there are some little triks that can be found out.

3) More actions at one time
This is very important for classes that have abilities that work "on the next meele attack"(if you have some, you understand of what I'm talking about).
Create a new macro like this:
/cast #ability that works "on the next meele attack"#
/cast #instant attack#

Choose carefully the instant spell, we might want it with a very low cost in mana(rage or energy) or with a particolar effect.
In this way the two abilities will be casted at the same time.

If your class doesn't use such abilities, you can use this kind of macros to allert people that you are going to cast a particular spell or other funny sentences:
/cast #choose spell#
/Gimme time, mon, gimme will be casted

So you'll say this sentence while casting.

4) Castsequencing
We can also link more than one spell to a macro in a different way: using the commad /castsequence
Use this carefully, because we won't be able to use the second or third(and so on) spell, before using the first ones.
Create a macro in the usual way and choose the question mark as icon.
In the body write this:
/castsequence #spell 1#, #spell2#, ..., #spelln#

It is very important that we write exactly, or it won't work.
Now move the icon to one of the bars and start clicking in it, so you'll see how it works.

We can set some conditionals to the macro.
All conditionals are innested between commands and spells, in this way:
/cast [conditional] #spells...#

5) Reset
For example we can make the castsequence restart every time we have a new target
/castsequence [reset=target] #spells...#

(yes also the square brakets)
or every ten seconds
/castsequence [reset=10] #spells...#
(we can change the number of seconds as we like: two minutes are 120 seconds)


a_ /target
If we want to target Snowflake, for example(sorry Snowflake, I couldn't resist, your nick is too beatifull):
/target Snowflake

Then u can add the other part of the macro:
/target Snowflake
/w What a beatifull nick!!!

b_ conditional
Target can also be a conditional.
For example:
/cast [target=Snowflake] #spell#

will cast the spell only if Snowflake is our actual target
[target=heal] will cast if target is friend
[target=combat] will cast if the target is hostile
[target=nocombat] will cast if the target is not hostile(neutral or friend)

c_ target commands
/assist ---> targets our target's target
/cleartarget ---> leaves us without target
/targetenemy, /targetfriend ---> does what it sais
/targetparty, /targetraid ---> targets our party/raid members one after the other.
/targetlasttarget ---> does what it sais

We can always add "target" at the end of the object we are gonna target, to get it's target.
For example:
/target Snowflake ---> will target Snowflake
/target Snowflaketarget ---> will target Snowflake's target

7) Modifiers
It's better to explain with an example:
/cast [modifier:shift] #spell1#; [modifier:ctrl] #spell2#; [modifier:alt] #spell3#; #spell0#
this will cast spell1 if we are pressing shift when clicking on the macro button, #spell2# if we are pressing ctrl, #spell3# if we are pressing alt, #spell0# if we are not pressing any key.

Cool Stances
Stances work exactly as Modifiers:
/cast [stance:1] #spell1#; [stance:2] #spell2#; ...; [stance:n] #spelln#; #spell0#
but insted of button pressed it keeps trak of the stance we are if we are a warrior, the form if we are a druid, and so on.

9) Trinkets and general items
Very easy:
/use #Item-Trinket#
It can be used toghether with oder commands, as usual:
/use #Item-Trinket#
/cast #spell#

10) Equip
Very easy, too:
/equip #Item#
but we need to talk a little about this.
We can change weapon in combat(only the weapon), but there will be the global cooldown, before we can cast anything but spells that work "on the next attack".
So we can choose to equip the best weapon with the best stats for the action we are gonna do.
We can have some problems in this, if the bonus stamina of the weapons is different. In fact, swiching from a weapon with more stamina, to a one with less, means losing health.
Same for intellect and mana.

It's all, for a while.
I'll test the macros I have for myself and I will soon add some here, but you'll better try some for yourself, as no macro is better than another, you only need to find yours.



Lycander's picture

Couple useful things

These macro commands may be useful:

This command, when put as the first line of the macro, will show the tooltip for whatever spell is up next in the cast sequence, whatever spell is listed with a /cast command, or whatever spell is listed after the command. For instance,

    #showtooltip Reincarnation
This helpful little shaman macro will show you what the cooldown is on reincarnation, as well as how may reagents you have for it.

This has several uses. You can set it up to use an item that you have often but not always. (A good example of this would be the "Warts-B-Gone Lip Balms" from the Argent Tournament quest. Using it with the following macro, you can apply the balm and kiss a frog in one step:

    /use Warts-B-Gone Lip Balm

Finally, it can be used to track those items you can't put on your action bar. For instance:

    /use Obsidian Warbeads

You can use this to see how many warbeads you've collected while grinding rep.

Hope these help

Ðarien's picture

Warlock Macro

I was wondering it there was a way for me to make a macro that would send in my voidwalker, then use a 3 second CD before letting me start my rotation?

I am using the lowbie rotation as seen on the Affliction/Demo Warlock Leveling guide, which is;

Send in Voidwalker. Curse of Agony, Corruption, Immolate, Life Tap(optional)Drain Life(if needed), Drain Soul.

If this is possible, please let me know, thnx

Edit -- Scratch the timed CD, just saw Jiyambi's reply to another port down below...

sorry becouse i`am offtopic

sorry becouse i`am offtopic but anyone can help me whit a topic or a site where i can find how i can make an addon for wow.

Sorry again

Jiyambi's picture

You can still use a

You can still use a "castsequence" macro to make all the rotation (or parts of it) go in one button if you like. You can then set it to reset after a number of seconds, or on command, or only when the sequence is complete. I use castsequence and modifiers frequently in my keybinding setup.

Ðarien's picture

I ended up making a cast

I ended up making a cast sequence to run the rotation and an second with just a simple /petattack command so I can send in my Voidwalker with 1 button ease and then begin my rotation.

Lycander's picture

Youcan now map the "Pet Attack" command

I found out a few weeks ago when I started playing my hunter again that you can map out the "Pet Attack" command directly to a key. This is different than mapping out the action bar slot, which has always been available (at least as far as I can remember). This has come in handy for me, as I use a Nostromo gamepad and I can use my thumb to make my pet attack. Hope this helps.

Nilz's picture

I was wondering if there was

I was wondering if there was a type of macro or an addon that limits what you loot. E.g. #loot Minion's Scourgestone, Runecloth, Copper, Silver, Gold.

Shikamaru's picture

I don't think there is,

I don't think there is, although I know there is an add-on for it.

It's called Loot Filter

It can filter per quality, per item name and per item value, it's a handy add-on Smiling

Nilz's picture

oh k thanks a lot i

oh k thanks a lot i downloaded it and it works great! Now im wondering if there is a macro that can cast a spell after the a spell duration has run out. E.g. /cast Sacred Sheild (rank 1), then once its duration ends recast.

Jiyambi's picture

Macros can't do anything

Macros can't do anything that's timed other than reset, as far as I know.

However, there are various addons that will warn you to recast things when they are gone. ZOMGBuffs is one, though I don't really like it. I use PowerAuras, but that's a bit more difficult to configure.

Nilz's picture

awww man, k so with

awww man, k so with ZOMGbuffs do you just put in a spell and it tells you when to recast or does it only work with certain spells?

Jiyambi's picture

I honestly don't remember, I

I honestly don't remember, I stopped using it because it was a bit buggy. I know it came with preset spells based on your class, but I think you are able to customize it and add more spells if you like.

Two healing spells, one macro?

Is it possible to have a macro that does two different healing spells one after another? Such as if i wanted to create one that when i pressed it did a rejuvenation, and then a healing touch afterwards, only having to press it once.
Highest crit: Infinite

Highest crit: Infinite

Jiyambi's picture

You can't use it to cast it

You can't use it to cast it with one button push, but you can have one button which switches automatically between two spells using "castsequence".

mounts to 1 button

my friend showed me this one, you can summon ur regular mount and flyer to right click and left click

#showtooltip (if u desire)
/cast [button:1] Ice Mammoth
/cast [button:2] Turbo-Charged Flying Machine

thats mine anyways Laughing out loud


A good way to use trinkets are by using it's slot number

Like this:

/Use 13
/use 14

With 13 being the first trinket and 14 second trinket slot.

So you use it like this

/Use 13
/use 14
/Use 'Spell*

And remember there is a 255 character limit

bigpullz's picture

a favorite macro of mine

ok a little time saver that i like to use is:
/use (food name here)
/use (drink name here)
/s nom nom nom

be sure to get rid of brackets Eye

TehWave's picture

The Author wrote:/Gimme

The Author wrote:
/Gimme time, mon, gimme will be casted

Wouldn't that be /y , /s or similiar? Or did you do so on purpose? Sticking out tongue

- A man is entitled to his own opinions. A man, however, is not entitled to his own facts.

opocaj's picture

New macros

If you have any macro to submit, please feel free to do it as comment to the page of the class the macro is referred to, or here, if that page does not exists yet.
I will test it and then publish among the other macros as soon as possible.