Useful macros for warlocks

Quick Tips for Reading and Understanding Macros
/cast [pet:felhunter, nomodifier:shift] Spell Lock; [pet:felhunter, modifier:shift] Devour Magic; [pet:succubus] Seduction /use [pet:maazhem,nomod:shift]Spell Lock;[pet:maazhem,mod:shift]Devour Magic;[pet:succubus]Seduction
 * /cast and /use function exactly the same.
 * You do not need spaces anywhere other than after the initial /command in each line of a macro and in the names of spells which consist of multiple words.
 * [Square Brackets] contain conditionals; meaning the spell will only be cast if the [condition] is true.
 * [mod:shift] and [modifier:shift] function exactly the same.
 * If you are making a conditional macro involving pets, you can replace the word "felhunter" in [pet:felhunter] with your own Felhunters name. Same idea for other pets.
 * For example, the following two macros will do the exact same thing if your Felhunters name is Maazhem:

=General Macros=

Smart Mounting Macro

 * For additional mount macros which can be modified to use the Dreadsteed, see Mount macros.

/stopmacro [flying] /cast [nomounted] flying mount /cast [nomounted] Dreadsteed /dismount [mounted] /stopmacro [flying] /cancelaura Metamorphosis /cast [nomounted] flying mount /cast [nomounted] Dreadsteed /dismount [mounted]
 * 1) showtooltip [flyable] flying mount ; Dreadsteed
 * Validated: 4.0.3
 * Use: This will automatically select your preferred flying or ground mount depending on where you are, and show the correct icon and tooltip. It will dismount you if you are already on a mount.
 * If you use the Metamorphosis (warlock ability) talent, this extended version of the previous macro will remove the Metamorphosis buff from your character allowing you to instantly mount up.
 * 1) showtooltip [flyable] flying mount ; Dreadsteed
 * Validated: 4.0.3

One-button Soulstone
/use [button:2] Create Soulstone; Soulstone
 * 1) showtooltip Soulstone
 * Validated: 8.2.5
 * Use: Left-clicking this macro will use a Soulstone. Right-clicking it will cast Create Soulstone.

One-button Healthstone
/use [button:2] Create Healthstone; Healthstone
 * 1) showtooltip Healthstone
 * Validated: 8.2.5
 * Use: Left-clicking this macro will use a Healthstone. Right-clicking it will cast Create Healthstone.

One button all utility spells
/use [nomod,button:1]Healthstone /cast [nomod,button:2]Create Healthstone /use [mod:shift,button:1]Soulstone /cast [mod:shift,button:2]Create Soulstone /cast [mod:alt,button:1]Ritual of Souls /cast [mod:alt,button:2]Ritual of Summoning
 * 1) showtooltip
 * Validated: 4.0.3
 * Use: Left click will use Healthstone, and right click will cast Create Healthstone. If holding shift, left click will use Soulstone, and right click will cast Create Soulstone. If holding alt, left click will cast Create Soulwell, and right click will cast Ritual of Summoning.

=3.1 Affliction Macros=

Haunt, then Curse of Exhaustion
/castsequence reset=target/combat/5 Haunt, Curse of Exhaustion
 * Use: Haunts, then after casting Haunt uses Curse of Exhaustion. This macro resets (starts from beginning [1]Haunt -> [2]Exhaustion] when the following things happen. Target is switched, Combat is engaged/disengaged, and 5 seconds after casting Haunt.
 * Works in 3.1.3

=3.1 Demonology Macros= The conditional for Metamorphosis (warlock ability) is [form:2].

Metamorphosis on one button
This places all of the Metamorphosis specific spells onto one button. Clicking with no modifiers will trigger Metamorphosis on the first click and Immolation Aura on the second click. Metamorphosis does not trigger the Global Cooldown however you will still need to click twice to trigger Immolation due to it's requirement that the Meta be active to cast. /cast [modifier:alt] Demon Charge(Demon) /cast [modifier:ctrl] Challenging Howl(Demon) /cast [modifier:shift] Shadow Cleave(Demon) /cast [nomodifier] Immolation Aura(Demon) /cast [nomodifier] Metamorphosis
 * 1) showtooltip
 * Validated: 3.2.0

Always Use Metamorphosis, Demonic Empowerment and/or Trinkets
When activated, this will use any available trinket, cast Metamorphosis (warlock ability), cast Demonic Empowerment when an Imp or Felguard is summoned, and cast your regular spell. Change all occurrences of Curse of Agony to the spell of your choice. /use 13 /use 14 /use Metamorphosis /use [pet:Felguard] [pet:imp] Demonic Empowerment /script UIErrorsFrame:Clear /use Curse of Agony This version allows for focus casting when the ALT key is held. Without holding alt, casts on your current target. /use 13 /use 14 /use Metamorphosis /use [pet:felguard][pet:imp]Demonic Empowerment /script UIErrorsFrame:Clear /use [target=focus,mod:alt,harm][nomod:alt,harm]Curse of Agony Both versions will stop error messages from appearing on your screen but audible messages will still occur so you may wish to turn off Error Speech in the sound options.
 * 1) showtooltip Curse of Agony
 * 1) showtooltip Curse of Agony

This version will turn the error speech off during the casting and back on once it is done. It will NOT remove the visual error messages. /console Sound_EnableSFX 0 /use 13 /use 14 /use Metamorphosis /use Demonic Empowerment /use shadow bolt /script UIErrorsFrame:Clear /console Sound_EnableSFX 1
 * 1) showtooltip shadow bolt
 * Validated: 3.2.0

Metamorphosis/Immolation Aura/Trinkets/Demonic Empowerment/Charge
This macro combines the two above primarily for demonology AoE. /cast [nomodifier] Metamorphosis /cast 13 /cast 14 /use [pet:Felguard] [pet:imp] Demonic Empowerment /cast [nomodifier] Immolation Aura(Demon) /cast [modifier:ctrl] Demon Charge(Demon) /script UIErrorsFrame:Clear This version allows control of Demon Form with one button and prevents error messages appearing on screen for this macro if trinkets etc are on cooldown. (Note: error speech will still occur)
 * 1) The first click will pop Metamorphosis, any Trinkets and your Demonic Empowerment ability (if a felguard or imp is present) at the same time.
 * 2) A second click will activate immolation aura.
 * 3) CTRL click on this button will use Demon Charge.
 * 4) showtooltip Metamorphosis
 * Validated 3.3.5

Lazy Demonology DPS Macro
This Macro is for easy DPS as Demonology (0/56/15 spec). Simply spam the macro until the end, then when your DoTs fall off, press again three times (four times if you're using the Glyph of Life Tap). If you're moving around a lot and the macro gets stuck in the middle, you'd hold shift to start the macro from the beginning. In between using this macro, spam Incinerate, or Soul Fire when Decimation is active. The macro also automatically makes your pet attack your target and activates Demonic Empowerment (which can be fit in outside of the cast sequence since it's not on the GCD). You can omit or Shadow Bolt if you have another warlock with the ISB talent, or substitute whatever curse you may prefer or be asked to use instead of CoE. You can also include Metamorphosis and/or a trinket at the end, using the same command as DE, assuming you're in a situation where it's not vital to use CDs at any specific point (e.g, heroics). /castsequence reset=target/shift,12 Corruption, Immolate, Shadow Bolt, Curse of the Elements /petattack /cast Demonic Empowerment /script UIErrorsFrame:Hide
 * 1) showtooltip
 * Validated: 3.3.0

Instant Summoning with One Click
This simple macro allows you to use Soulburn and instantly summon a demon with one click. /use Soulburn /use Summon Petname Substitute your preferred pet (Voidwalker, Felhunter, etc) for Petname. The following variation, based on Nicodeamus' "Summon Demons" macro lower on this page, additionally combines all Summon spells into one macro; hold shift for Voidwalker, ctrl for Succubus, alt for Felhunter, or no mod for Imp. If you assign it the "?" icon, it will change to reflect which modifier you are holding. /use Soulburn /use [mod:shift] Summon Voidwalker;[mod:ctrl] Summon Succubus;[mod:alt] Summon Felhunter;[nomod:] Summon Imp
 * 1) showtooltip [mod:shift] Summon Voidwalker;[mod:ctrl] Summon Succubus;[mod:alt] Summon Felhunter;[nomod:] Summon Imp
 * Validated: 4.0.3

=3.3 Destruction Macros=

Faster Imp Casting
This macro binds your incinerate with your Imp's firebolt. Very useful if you spam your spells; Imp effectively casts quicker. /cast [target=pettarget,exists] Firebolt /cast Incinerate Can also be used with other spells so that you are constantly spamming the Imp's firebolt. Eg. bound to Immolate: /cast [target=pettarget,exists] Firebolt /cast Immolate
 * 1) showtooltip Incinerate
 * 1) showtooltip Immolate
 * Validated 3.3.5
 * Wiman of Thunderhorn (EU)

Faster Targeting
Set your MT (or yourself or pet if soloing to make the macro work) as focus and assist them /focus target /assist focus

Then this macro:
 * Clears your current target if tank's target is dead or they are not targeting anything
 * If you do not have a target, or it is dead, set it to your focus target
 * If your pet does not have a target, or it is dead, sets to focus target
 * Start your pet's attack
 * Cast your Soul Fire then Bane of Doom

/cleartarget [target=focus,dead][target=focus,noexists] /tar [noexists,dead] focustarget /pettarget [noexists,dead] focustarget /petattack /castsequence reset=target/combat/5 Soul Fire, Bane of Doom
 * 1) showtooltip


 * Tested solo: 4.3 (not tested yet in party, so use with caution)

Immolate+Incinerate
This will cast Immolate then Incinerate 5 times. It will reset: /castsequence [nomod] reset=target/combat/13 Immolate,Incinerate,Incinerate,Incinerate,Incinerate;[mod:shift] Incinerate; Immolate
 * If you change target;
 * If you leave combat;
 * After 13 seconds (when Immolate goes off)
 * 1) showtooltip

"Axel's Funeral Pyre"
Cast's "Curse of the Elements, Sacrifice, and Hellfire. Only should be used when the voidwalker is out and when the cooldown meter is at zero. This is essentially a "Nuke Button" to maximize damage to the enemy while minimizing damage to you. The name comes from a scene in "Kingdom Hearts II" Where a character by the name of Axel suicide attacked the enemy by setting himself on fire. However, Sacrifice should keep you from dying in a fiery inferno of death.  /cast Curse of the Elements /cast [ pet:Voidwalker]  Sacrifice /Cast Hellfire
 * 1) showtooltip
 * Works in 3.2

=3.1 All Warlock Macros=

Fear Focus Macro
A modified version of the old Fear Mouseover/Focus macro.

This fear macro will do the following: /clearfocus [@focus,noharm][@focus,dead] /focus [@mouseover,harm,nodead][@focus,noharm][@focus,dead] /cast [@focus,harm] Fear You can also use this macro without the mouseover feature; just delete the [@mouseover,harm] bracket from the macro and you're set.
 * 1) Set your focus on your mouseover target if you don't have a focus already OR if your current focus is friendly
 * 2) Set your focus on what you have targeted if you don't have a mouseover target and if you don't have a focus already OR if your current focus is friendly
 * 3) Fear the Focus target.

This macro will also work for other crowd control spells like Polymorph, Hex, etc.
 * Tested in 5.3.0

A slight variation on this which will do the following: /petpassive /clearfocus [mod:shift][@focus, noexists][@focus, dead] /focus [@focus, noexists][@focus, dead] /cast [@focus] Fear
 * 1) Set your pet to passive so that it doesn't break your Fear on a CC pull.
 * 2) Clear your focus if you hold the shift key.
 * 3) Clear your focus if your old focus target is dead
 * 4) Clear your focus if your old focus target doesn't exist anymore
 * 5) Set your focus on what you have targeted if you don't have a focus already
 * 6) Fear the Focus target.
 * 7) showtooltip fear
 * Tested in 4.0.6

Max effect Healthstone
/castsequence reset=target Demon Armor, Fel Healthstone, Fel Armor
 * This will change your armor to the Demon Armor (+26% increased healing if you have 3 points in Demonic Aegis) before it uses the Fel Healthstone. On the third mash it will switch back to your Fel Armor.
 * 1) showtooltip Fel Healthstone
 * Works in 3.2

Demonic Circle
When activated without holding ALT, this macro will teleport you to your Demonic Circle. When ALT is held, you will summon a new Demonic Circle /use [mod:alt]Demonic Circle: Summon;[nomod:alt]Demonic Circle: Teleport
 * 1) showtooltip [nomod:alt]Demonic Circle: Teleport;[mod:alt]Demonic Circle: Summon

Basic DoTs
Casts your Corruption and Curse of the Elements with one button by tapping this macro. /castsequence reset=target/combat/5 Corruption, Curse of the Elements
 * 1) showtooltip


 * Validated: 4.3

Devour Magic
If you have your felhunter out, it will cast Devour Magic on yourself, removing a magical debuff. If there is no magical debuff on you, your felhunter will devour a magical debuff from itself. If there is no magical debuff on either you or your felhunter, it will devour your current target. If your felhunter is not out, it will do nothing. /stopmacro [nopet:felhunter] /use [target=player][target=pet][]Devour Magic
 * 1) showtooltip Devour Magic

Pet attack toggle button
Simple, one-button attack/return. Won't change Aggressive, Defensive, or Passive status. /petattack [target=pettarget,noexists] /petfollow [target=pettarget,exists]

Bubble/Kick/Sap
This puts the Voidwalker's Sacrifice, the Felhunter's Spell Lock, and the Succubus's Seduction all in one button. The effect and tooltip shift depending on which pet you have out. Make sure the "?" image is selected for the tooltips to shift. /use [pet:voidwalker] Sacrifice; [pet:felhunter] Spell Lock; [pet:succubus] Seduction When you have one or two trinkets that have a use effect that increases spell damage or some other kind of effect that you always want in use during combat you normally have use them manually or at best, click a button for it in the hot bar.
 * 1) showtooltip [pet:voidwalker] Sacrifice; [pet:felhunter] Spell Lock; [pet:succubus] Seduction

This macro will allow you to use whichever trinket is not on cooldown and cast one of the spells that it helps without causing an error message to appear due to either one or both of the trinkets being on cooldown. /use 13 /use 14 /script UIErrorsFrame:Clear /cast Shadow Bolt This version allows you to press the ALT key to cast the spell on your [focus] instead of your target. Works best with the [FocusFrame] add-on. /use 13 /use 14 /script UIErrorsFrame:Clear /cast [modifier:alt,target=focus] Shadow Bolt /cast [nomodifier,target=target] Shadow Bolt /clearfocus [target=focus, dead]
 * 1) showtooltip Shadow Bolt
 * 1) showtooltip Shadow Bolt
 * Validated: 3.2.0

Summon Demons
This macro will allow you to summon all the normal Warlock pet demons (Imp, VoidWalker, Succubus, and Felhunter) by using only one action bar slot and some simple modifiers. I also set the tooltip to change depending on the modifier you are currently using. /cast [mod:shift] Summon Voidwalker;[mod:ctrl] Summon Succubus;[mod:alt] Summon Felhunter;[nomod:] Summon Imp
 * 1) showtooltip [mod:shift] Summon Voidwalker;[mod:ctrl] Summon Succubus;[mod:alt] Summon Felhunter;[nomod:] Summon Imp
 * Validated: 3.3.5

OLD MACROS BELOW
The macros below this line have not been validated to work in 4.0. Use at your own risk.

=General Macros=

Immolate & Incinerate in one button
On regular click this will cast Incinerate, hold down alt to cast Immolate. /cast [mod:alt]Immolate;Incinerate Make sure that you select the "question mark" for the buttons icon so the proper icon will show up (Incinerate as it's default). When you hold ALT the button will change to show the Immolate icon.
 * 1) showtooltip

Buff Self - Armor/Pats
PvP with Pet This one buffs you with Demon Armor, Soul Link, and Detect Invisibility. /castsequence [target=player] Demon Armor, Soul Link, Detect Invisibility This macro will summon your Voidwalker if he's not already out. Feel free to substitute different pets/armors if your situation differs! /use [nopet:voidwalker]Fel Domination /use [nopet:voidwalker]Summon Voidwalker /use [pet:voidwalker]Demon Armor And another one, especially useful after a pet has been killed, sacrificed, or dismissed. Summons your steed after your buffs, so you can get back to the action. /castsequence [nopet,mod:alt] Summon Voidwalker; [nopet,mod:ctrl] Summon Felhunter; [nopet] Summon Felguard; [pet] reset=4 Soul Link, Demon Armor, Summon Dreadsteed
 * 1) showtooltip
 * 1) showtooltip

Grind Macro
This is intended for grinding. The assumption is that you have the following spells: Curse of Agony, Corruption, Drain Life, Health Funnel and Drain Soul. You should have some level of these spells by level 12. After that point, the macro will just use the most advanced version of each spell (except Drain Soul). The Voidwalker or Felguard are good pets when using this macro.

To use, simply press the button when each spell is finished. To drain the soul (and create a soul shard)hold down the  key while pressing the button. /petattack /cast [mod:alt] Drain Soul /cast [nocombat] Curse of Agony /castsequence reset=target/combat Corruption,Life Tap,Drain Life,Health Funnel,Shoot And another one (without pet attack): /castsequence [mod:ctrl] Searing Pain; [mod:alt] Incinerate; reset=10/combat/target Immolate, Corruption, Incinerate, Life Tap, Drain Life, Searing Pain And another one (with pet attack): /petattack /castsequence [mod:ctrl] Searing Pain; [mod:alt] Incinerate; reset=10/combat/target Immolate, Corruption, Incinerate, Life Tap, Drain Life, Searing Pain
 * 1) showtooltip

Trinkets + Curse of Doom
This macro will use your available Trinket, and Curse of Doom all in one button. /use 13 /use 14 /use Curse of Doom Be wary this will still cast Curse of Doom regardless if you have a trinket available.
 * 1) showtooltip Curse of Doom

Multidrain
All three drains on a single button (via ctrl and alt). /cast [mod:ctrl]Drain Mana; [mod:alt]Drain Life;Drain Soul If you do NOT want to be able to start your drain over before it is completely channeled, use this instead: /cast [mod:ctrl,nochanneling:Drain Mana]Drain Mana; [mod:alt,nochanneling:Drain Life]Drain Life; [nochanneling:Drain Soul]Drain Soul
 * 1) showtooltip
 * 1) showtooltip

=Crowd Control=

Fear / Banish Focus Macro
This is a rather complex macro, utilizing focus to keep track on the target. Casting fear or banish will hit your target as well as create a focus of which all consecutive fears and banishes will target. Having a dead focus will be treated as if you had no focus. /cast [nomod]Howl of Terror /stopmacro [nomod] /focus [mod:shift,nomod:ctrl]none;[target=focus,harm,nodead]focus;[harm,nodead];none /cast [target=focus,mod:alt]Fear;[target=focus,mod:ctrl,mod:shift]Banish;[target=focus,mod:ctrl]Banish
 * No modifier casts Howl of Terror
 * Alt fears the target
 * Ctrl banishes the target
 * Ctrl+Shift banishes down-ranked
 * Shift clears your focus

Chain-Fear Focus Macro
/focus [target=focus, noexists][target=focus, dead] mouseover /cast [target=focus, exists] Fear; Fear /stopmacro [nomodifier] /clearfocus [modifier:ctrl] Note that if you select the macro picture the first line of the macro will make this icon the fear spell, and will allow your usual tooltip to display
 * If you do not have a focus it will set focus on your mouseover target.
 * It will cast fear on your focus.
 * If you do not have a focus, it will cast fear on your target.
 * Will null your focus if you click the macro button with the control key held down, or if your target is dead.
 * 1) showtooltip

=Pet Macros=

All pet abilities in one button / AI
221 characters long to get the most out of all pet abilities, this macro will: /cast [pet:Imp]Dark Pact;[pet:Succubus,target=focus]Seduction;[pet:Felhunter,target=focus]Spell Lock /stopmacro [nopet:voidwalker] /cast [combat]Dark Pact;Health Funnel /cast [nocombat]Consume Shadows;Sacrifice This is another version of the above macro which has been modified to include all of the most important pet abilities. /cast [pet:voidwalker,combat] Sacrifice /cast [pet:Succubus,target=target] Seduction /cast [pet:Felhunter,target=target] Spell Lock /cast [pet:Felguard,target=target] Intercept
 * 1) If you have a Succubus out, cast Seduction on your focus.
 * 2) If you have an Imp out, cast Dark Pact.
 * 3) if you have a Felhunter out, cast Spell Lock on your focus.
 * 4) If in combat with a voidwalker, cast Dark Pact and then Sacrifice.
 * 5) If out of combat with a voidwalker, cast Consume Shadows and Health Funnel.
 * 6) showtooltip
 * 1) showtooltip

Imp Dark Pact / No Imp Life Tap
Dark Pact if you have an Imp out, Life Tap if you don't have an Imp out. Depending on your playstyle, this may let you get by with only 1 keybinding for both Dark Pact and Life Tap. /cast [pet:imp] Dark Pact; Life Tap Another variant for this macro would be to use Dark Pact if your Imp or Felhunter is out since both have a nice mana pool, otherwise use Life Tap. If you use this macro with ? as icon it will show the icon for the available spell. /cast [pet:imp/felhunter] Dark Pact; Life Tap
 * 1) showtooltip [pet:imp/felhunter] Dark Pact; Life Tap

Voidwalker management on one button
/use [nopet:voidwalker]Summon Voidwalker /use [pet:voidwalker,nocombat]Consume Shadows /use [pet:voidwalker,combat]Sacrifice
 * 1) If you do not have a Voidwalker out it will summon it.
 * 2) If you have a Voidwalker and ARE NOT in combat, will cast Consume Shadows and heal Voidwalker.
 * 3) If you have a Voidwalker and ARE in combat, will Sacrifice Voidwalker.

Voidwalker Health Recovery
Often when soloing with an affliction build, a warlock ends combat with near full health and mana. This quickly gets your voidwalker back up to fighting condition in a single click. If you aren't using your voidwalker or are in combat it acts just like the normal health funnel button. /cast Health Funnel /cast [nocombat, pet:Voidwalker] Consume Shadows
 * 1) showtooltip

Two-button Total Pet Control
With two buttons (macros) you can have total pet control if you make them context sensitive. The point of this is that a keyboard can become utterly cluttered, and requiring more than 2 buttons for 5-6 functions on your pets results in more buttons than preferred being in an unreachable place. Before the macro I'd bind pet function 1 (attack) and 5 to two buttons, but occasionally the situation comes up where the pet needs to be recalled, or needs to be told to stay in a position in sentry mode. Using the mouse + pet bar for these more advanced techniques wastes valuable time, multiple buttons waste valuable pet space. I therefore wrote a macro to bring it all down to two buttons, based on having a target selected or not. /petfollow /petpassive /petattack [harm] /petfollow [pet:succubus] /cast [harm] Spell Lock /cast [help] Devour Magic /cast Seduction /cast Sacrifice /cast Intercept /petstay [noexists] /petdefensive [noexists] This allows you to do the following things: Basically everything you ever need to do with your pet in 2 buttons.
 * Macro 1:
 * Macro 2:
 * Send your pet to attack pressing button 1 while targeting an enemy
 * Get your pet to return to you immediately by deselecting any targets and pressing the same button again
 * Have your pet use its special attack (Seduce, Sacrifice, Intercept, Spell Lock) when you target an enemy with the second button
 * Have your pet (other than the Voidwalker) stay in one place and become aggressive when pressing the second button and no target is selected
 * Have them return again to you and become passive again pressing the first button again
 * You can now re-seduce without the succubus being blocked by an ongoing seduce
 * The Felhunter will attempt to devour Magic on targeted friendlies, and spell lock targeted enemies.

Another 2 button AI system
/cast [help,pet:felhunter] Devour Magic; [pet:felhunter,target=player] Devour Magic; [pet:voidwalker,combat] Suffering; [pet:voidwalker,nocombat] Consume Shadows; [pet:succubus] Soothing Kiss /cast [pet:felhunter,target=target] Spell Lock; [pet:succubus,target=target] Seduction; [pet:voidwalker,combat] Sacrifice; [pet:voidwalker,nocombat] Consume Shadows; When Button 1 is pressed, if you have a felhunter up and are targeting a friendly player, he will Devour Magic that player, otherwise he will devour magic on you. If you have a voidwalker up and in combat he will cast Suffering (taunt), otherwise he will cast Consume Shadows (heal). If you have a succubus up, she will cast Soothing Kiss.
 * Button 1:
 * 1) showtooltip
 * Button 2:
 * 1) showtooltip

When Button 2 is pressed, if you have a felhunter up he will cast Spell Lock on your target. If you have a succubus up, she will cast Seduce on your target, and if you have a voidwalker up, and are in combat he will cast Sacrifice (put in combat to help deture misclicks), otherwise he'll attempt to heal himself.

Pet-casting management with Focus handling
In two macro buttons (controlled by one), below code allow you to manage minions, its pellcasts and automatically adjustable focus. [alt] - spellcasts:
 * locking focus (if it is not set yet, or focus target is dead)
 * clearing focus (if focus target is dead/not harmable)
 * petattack [nomod]
 * petfollow [shift]
 * petstay [ctrl]+[shift]
 * imp - Fire Shield
 * voidwalker - Sacrifice, [+shift] - Consume Shadows
 * succubus - Seduction (on focus if harmable.. else on target)
 * felhunter - Spell Lock, [+shift] - Devour Magic (on focus if harmable.. else on target)

using Focus advance:

/focus [mod:ctrl,nomod:shift][@focus,noexists][@focus,dead] /clearfocus [@focus,dead][@focus,noharm] /click [mod:alt]MultiBarLeftButton9 /petattack [nomod] /petstay [mod:ctrl,mod:shift,nomod:alt] /petfollow [mod:shift,nomod:alt]
 * [ctrl] - force Minion to change Focus to current target
 * if Focus is set, whatever Minion's current target is, its spellcasts will go on Focus
 * Macro:1 (main macro, only one if shall be key-binded - [r] is good option)

notice: MultiBarLeftButton9 in the macro means the location of the second macro on action bar. If you have trouble to modify this, here is list of actionbars: Action bar button names.

/cast [pet:Imp]Fire Shield /cast [nopet:Voidwalker];[mod:shift]Consume Shadows;Sacrifice /cast [nopet:Succubus];[@focus,harm][]Seduction /cast [nopet:Felhunter];[mod:shift,@focus,harm][mod:shift]Devour Magic;[@focus,harm][]Spell Lock
 * Macro:2 (spellcasts macro, triggerable by main macro)
 * 1) showtooltip

Focused Seduction
/clearfocus [modifier:alt] /focus [target=focus,noexists]; [target=focus,dead] /clearfocus [target=focus,help] /petstay /petfollow /stopcasting /cast [pet:succubus,target=focus,exists,harm] Seduction; Seduction
 * Upon use, the macro will Focus your target, and have your succubus Seduce it.
 * When used for the second time, and your Focused target, i.e. the Seduction target, is alive, it will re-seduce it, regardless of what your current target is. It will not focus your current target, and seduce that; it will re-seduce it's focused target.
 * If used during Seduction, it will break the seduction and re-seduce the focused target.
 * If clicked while "Alt" is being pressed, it will cancel the previous focus and assign a new focus on your current target.
 * 1) show Seduction

Devour Magic - 3v3 Arena Style
/cast [pet:Felhunter,button:1,target=party1] Devour Magic; /cast [pet:Felhunter,button:2,target=party2] Devour Magic; /cast [pet:Felhunter,button:3,target=player] Devour Magic; Again, same thing more space saving, and using modifiers rather than mouse buttons (for those keyboard enthusiasts out there). Normal click will cast it on you, alt+click (or alt+hotkey) will cast it on party member 1, ctrl+click (or hotkey) will cast it on party 2. Since only the Felhunter has Devour Magic, there's no need to ensure that the Felhunter is out. I recommend replacing your normal Devour Magic button on your pet toolbar with one of these. /cast [mod:alt,target=party1] Devour Magic; [mod:ctrl,target=party2] Devour Magic; [target=player] Devour Magic
 * On use, this macro will cast Devour Magic on the target specified without breaking your current target.
 * Useful for 3v3 Arenas, requires a middle mouse button.
 * 1) showtooltip
 * 1) showtooltip

Advanced Spell Lock with Focus
/clearfocus [modifier:shift] /focus [target=focus, noexists] /cast [nomodifier, pet:Felhunter, target=focus, harm] Spell Lock; [modifier:ctrl, pet:Felhunter, target=mouseover, harm] Spell Lock
 * When used, this macro will focus your current target (if you don't already have a focus) and cast Spell Lock on that target. If shift is held down while using this macro it will focus your current target and cast Spell Lock on that target (changing focus), if you don't have a target it will simply clear your focus. If ctrl is held down while using this macro it will simply Spell Lock the target your mouse is hovering (this way you won't lose your current target).
 * 1) showtooltip Spell Lock

Advanced Devour Magic
/cast [modifier:shift, pet:Felhunter] Devour Magic; [pet:Felhunter, target=player] Devour Magic
 * When used, this macro will cast Devour Magic on you. If shift is held down while using this macro it will cast Devour Magic on your current target.
 * 1) showtooltip Devour Magic

Pet Assist -> Grind -> Drain Soul
/cast [exists,target=pettarget] Drain Soul /cast [exists,nodead] Drain Soul
 * I wanted to maximize my functionality grinding especially pulling multiple mobs but I also wanted to get most of my mana back as well by clicking on my pet's target (which was generally lower hp than the rest). So I made this macro that if the pet is attacking it will cast drain soul, and if even if the pet is not attacking it will still cast drain soul
 * 1) Showtooltip

Soulstone Macro
This macro will on right click make a soulstone (change for appropriate level), left click, use it and on alt left click cast it on yourself. /cast [modifier:alt,target=player] Soulstone; [button:1] Soulstone; [button:2] Create Soulstone
 * 1) showtooltip Minor Soulstone

Healthstone and Healing Potion
Note: It is currently impossible to write a macro that will have you use a Healthstone if you have one and a potion if you do not. /use [button:1] Healthstone; [button:2] Superior Healing Potion This macro summons a Healthstone if you are not in combat, uses a Healthstone AND potion if you are. Note, depending on whether you have a Healthstone and/or potion in inventory at the time (and applicable cooldowns), you may see error messages. The macro also cannot tell whether you have a Healthstone in inventory or not. These are unavoidable - the macro will still do the best it can. NB: You must edit this to indicate the correct Healthstone and healing potion names. /use [nocombat]Create Healthstone /use [combat]Lesser Healthstone /use [combat]Lesser Healing Potion
 * Left-click uses a Healthstone; right-click a potion named in the macro
 * If you choose an icon for the macro rather than allowing the program to choose one for you, the macro button in your action bar will be grayed if you do not have a Healthstone.
 * In all cases, only the cooldown for your Healthstone will be shown.
 * 1) showtooltip

Healthstone use/summon, Ritual of Souls in group
This will allow to use a healthstone with one click, summon with another, however in groups you will cast Ritual of Souls rather than a single summon. /cast [group, button:2] Ritual of souls /cast [button:2] Create Healthstone /use [button:1] Master Healthstone When you first log in it'll show you a red question mark icon until you make your first stone. You can change the first line to "#showTooltip Create Master Healthstone" to fix this, however it will display the number of soulshards remaining instead of healthstone.
 * 1) showTooltip Master Healthstone