Warlock Macros WoW Classic: Pets, DoT Rotation and PvP
The warlock is the shadow and demon class with unique mechanics: demon pets, DoT rotations, Soulstone resurrection and powerful Fear control. On WowX5 x5 warlocks are essential for Curse of the Elements in raids and strong PvP crowd control.
The 1.12.1 client does not understand bracket conditionals (mod:shift modifiers, @ unit targets, pet: checks), the /petattack and /stopcasting commands or a focus target — all of that arrived in 2.0+. The macros below are rewritten for Vanilla: /cast, /target and /script with Lua functions. The macro limit is 255 characters, and only one global-cooldown spell fires per key press.
Keep a Succubus in dungeons — Seduction is one of the best CCs for humanoids. In raids warlocks usually bring the Imp (Blood Pact Stamina buff), the Felhunter for Spell Lock and Devour Magic, or the Voidwalker for the Sacrifice shield. There is no Felguard in Vanilla.
Contents
Pet Control
Attack / Follow Toggle
| Modifier | Action |
|---|---|
| No Shift | Pet attacks current target |
| Shift | Pet follows you |
/script if IsShiftKeyDown() then PetFollow() else PetAttack() end
In 1.12.1 demon abilities are most reliably triggered with CastPetAction(N), where N is the button number on the pet bar (slots 1–3 are attack/follow/stay, abilities usually sit in 4–7; check where yours is).
Succubus: Seduction on Mouseover Target
There is no focus target in 1.12.1. We emulate it by swapping targets: if there is a unit under the cursor, the macro briefly targets it, orders the Succubus and switches back. 5 is the Seduction button number on the pet bar:
/script if UnitExists("mouseover") then TargetUnit("mouseover") CastPetAction(5) TargetLastTarget() else CastPetAction(5) end
Voidwalker: Sacrifice Shield
/script CastPetAction(4)
Felhunter: Devour Magic
/script CastPetAction(5)
DoT Rotation (Affliction)
Quick DoT Application on One Button
Three /cast lines in a row don't work: the first spell triggers the global cooldown and the rest silently fail. The working version uses modifiers:
/script if IsShiftKeyDown() then CastSpellByName("Curse of Agony") elseif IsControlKeyDown() then CastSpellByName("Immolate") else CastSpellByName("Corruption") end
Curse of the Elements (Raid Debuff)
/cast Curse of the Elements
Each warlock can keep only one of their own curses on a target, and the same curse from different warlocks doesn't stack. In raids agree on who holds Curse of the Elements, Curse of Shadow or Curse of Recklessness.
Shadow Bolt — Core Damage
/cast Shadow Bolt
Shadowburn — Execute
A Destruction talent: instant Shadow damage, 15 sec cooldown, consumes a Soul Shard.
/cast Shadowburn ◆Soul Stone and Rituals
Soulstone on Healer / Self
The Soulstone is an item, not a spell, so /cast with its name won't work. This macro finds the stone in your bags and uses it on the target (replace the healer name; to stone yourself replace the /target line with /script TargetUnit("player")):
/target HealerName
/script for b=0,4 do for s=1,GetContainerNumSlots(b) do local l=GetContainerItemLink(b,s) if l and strfind(l,"Soulstone") then UseContainerItem(b,s) return end end end
Ritual of Summoning for Group
/cast Ritual of Summoning
The Soulstone is best placed on the main healer before a boss fight. On WowX5 resurrecting from a Soulstone after dying mid-fight can save a raid from a wipe.
PvP Macros
Fear with Cast Interrupt
Fear is not instant: it has a 1.5 sec cast. The macro cancels your current cast (e.g. Shadow Bolt) and starts Fear right away. There is no /stopcasting in 1.12.1 — use Lua:
/script SpellStopCasting()
/cast Fear
Death Coil — Emergency Control
Instant: 3 sec of horror plus healing for all damage dealt. Great against casters and as an emergency escape:
/cast Death Coil
Drain Life — Sustain Health
/cast Drain Life
Curse of Exhaustion — Slow
An Affliction talent: reduces the target's movement speed by 10% for 12 sec.
/cast Curse of Exhaustion
Raid Macros
Curse by Modifier
Handy when you swap curses between targets during a raid: no Shift — Curse of the Elements, Shift — Curse of Agony:
/script if IsShiftKeyDown() then CastSpellByName("Curse of Agony") else CastSpellByName("Curse of the Elements") end
Life Tap — Mana in Long Fights
The warlock's main mana source is Life Tap (health into mana, healers top you up). Drain Mana only works on targets that have mana:
/cast Life Tap
Useful Warlock Macros Table
| Name | Code | Purpose |
|---|---|---|
| Pet Toggle | /script with IsShiftKeyDown(): PetFollow() or PetAttack() | Pet control |
| Soulstone | /target Name + /script bag search and UseContainerItem | Resurrection prep |
| Mouseover Seduction | TargetUnit mouseover + CastPetAction + TargetLastTarget | CC without target switch |
| Fear-Stop | /script SpellStopCasting() + /cast Fear | Fast CC |
◆Related
FAQ
?How to control the warlock pet with macros?
The /petattack and /petfollow commands and conditionals like [pet:Succubus] do not exist in the 1.12.1 client. Use /script: PetAttack(), PetFollow(), PetWait() (stay). Demon abilities (Seduction, Sacrifice, Spell Lock) are triggered with /script CastPetAction(N), where N is the button number on the pet bar.
?How to make a Soul Stone macro for a warlock?
First create the stone with Create Soulstone (Major), then target the ally and use the stone from your bags. Macro: /target HealerName plus a /script line that searches your bags for an item named Soulstone and uses it with UseContainerItem. To stone yourself, replace /target with /script TargetUnit('player').
?What is Curse of the Elements and when to use it?
Curse of the Elements (Rank 3) reduces the target's Fire and Frost resistances by 75 and increases Fire and Frost damage taken by 10% for 5 min. Place it in raids before mages and other warlocks start dealing damage — it increases overall group DPS significantly.
Now jump into WoW Classic X5
Theory alone gives no XP. Join WoW Classic X5 — Vanilla 1.12.1, x5 rates, blizzlike mechanics — and try this guide in game.
- Create an account on wowx5.ru
- Download the WoW Classic 1.12.1 client
- Put into realmlist.wtf:
set realmlist play.wowx5.ru