Mage Macros

Here are some examples of some good Mage class macros:

Buffs:

#showtooltip
/castsequence [@player] reset=4 Arcane Brilliance, Molten Armor

Casts Arcane Brilliance and then Molten Armor once clicked again.

#showtooltip
/castsequence [@player] reset=4 Ice Barrier, Mana shield

Casts Ice Barrier and then Mana Shield once clicked again.

Travel with Slow Fall:

#showtooltip
/cast [nomounted,nomod:shift,flyable] FlyingMountHere; [nomounted,nomod:shift,swimming] Abyssal Seahorse; [nomounted] GroundMountHere
/stopmacro [nomounted]
/dismount
/cast [nomodifier:shift,flying] Slow Fall

If [shift] is NOT held down and you're in a flyable zone, this will use your favorite flying mount, if you're swimming you will attempt
to use the Abyssal Seahorse (you can put a swimming mount here if you have one, if not, then this will only work in Vash'jir), if you're
holding down shift, then you will cast your ground mount. If you're mounted and flying, the macro will dismount you and cast
Slow Fall. If you're mounted and hold shift while clicking, the macro will dismount you without casting "Slow Fall".

Polymorph:

#showtooltip
/cast Polymorph
/emote polymorphs %t.

This casts Polymorph on your current target, then announces it with an emote.

#showtooltip Polymorph
/castrandom [harm] Polymorph, Polymorph(Rabbit), Polymorph(Turtle), Polymorph(Pig), Polymorph(Black Cat)
/focus [harm]
/stopmacro [noharm]
/emote polymorphs %t.

This chooses a random "Polymorph" spell and casts it on an unfriendly target, otherwise, it stops the macro. If the target is polymorphed
then it announces it through an emote.

#showtooltip Polymorph
/castrandom [@focus, harm] Polymorph, Polymorph(Rabbit), Polymorph(Turtle), Polymorph(Pig), Polymorph(Black Cat)
/stopmacro [noharm]
/emote polymorphs %f.

This chooses a random "Polymorph" spell and casts it on your focus target if it is unfriendly. If your target is currently
a friendly target, the macro will stop. Otherwise, the macro will continue and announce through an emote what you have polymorphed.

Arcane Mage:

#showtooltip
#show Mirror Image
/cast Arcane Power
/use 13
/use 14
/cast Mirror Image
/script UIErrorsFrame:Clear()

This casts "Arcane Power", uses any "use" trinkets you may have, then casts Mirror Image. The last line will clear any errors you may
get from this, just in case you can't use a trinket or ability.

#show Blizzard
/cast Arcane Power
/cast Blizzard

This casts "Arcane Power" and then prompts the "Blizzard" marker to show up.

#show Arcane Power
/castsequence Arcane Blast, Arcane Blast, Arcane Blast, Arcane Blast
/use Mana Gem
/cast Arcane Power
/cast Arcane Blast

This is good for when you have the full Arcane Blast buffs. It helps you get the full buffs, then uses the Mana Gem, then casts
Arcane Power, and then Arcane Blast.

#show Arcane Power
/use Mana Gem
/cast Arcane Power
/cast Arcane Blast

This just a shortened version of the previous if you have a seperate button for your Arcane Blast and you have 4 of the buffs you
need. The reason why you would use this one is if the previous macro is very buggy, which "/castsequence" is sometimes.

 

Fire Mage:

/cast [nocombat] Pyroblast; Fireball

Casts "Pyroblast" as an opener if you're not in combat, otherwise, it will cast "Fireball"

/castsequence [nocombat] reset=combat Pyroblast, Fireball; Fireball

Casts "Pyroblast" if not in combat, then if clicked again will cast "Fireball". If in combat this will cast "Fireball".

 

Frost Mage:

 

#showtooltip Frostbolt
/cast Ice Lance
/petattack

Casts "Ice Lance" then sends your pet to attack.

#showtooltip Frostbolt
/stopmacro [noexists]
/cast [harm] Frostbolt
/cast [harm][target=pet,exists] Waterbolt

The macro immediately stops if there is no target to be found. If there is, then it casts Frostbolt, if your pet is out, and
your target is unfriendly, then it will cast "Waterbolt". Use this to keep your pet from "ninja pulling" in a dungeon.

Counterspell:

#showtooltip Counterspell
/stopcasting
/cast Counterspell

This will stop your casting if you're casting, and then it will cast "Counterspell". This is useful for interrupt-heavy fights
where one person's interrupt isn't enough.

#showtooltip Counterspell
/stopcasting
/cast [@mouseover, harm, nodead] [harm, nodead] Counterspell
/run UIErrorFrame:Clear();

This will stop your casting then cast "Counterspell" on your mouseovered target.

Remove Curse:

#showtooltip
/stopcasting
/cast Remove Curse

This will stop your casting if you're casting, and then it will cast "Remove Curse". This is useful if you do not have a healer that
can Remove Curse, or if they're not enough to Remove Curse. Remember, dead DPS is no DPS.

#showtooltip
/stopcasting
/cast [nomod] Remove Curse ; [mod, @player] Remove Curse

This will stop your casting if you're casting, then it checks to see if you're holding down a modifier. If you are not, then you will
cast "Remove Curse" on your current target. If you are, then you will cast "Remove Curse" on the player (self).

#showtooltip
/stopcasting
/cast [@mouseover, exists, nomod][] Remove Curse ; [mod, @player] Remove Curse

This is the same as the previous macro, only it will cast at your mouseovered target if it exists, and if not it will cast at your current target.