{"_note":"Per-class macros and keybinds (build-macros.py -> site/wow-forever-macros.html). Classic-API macros that work in the Forever client; verify after each build. Each: [name, macro text, why].",
"general":[["Focus heal / one-button target","/cast [@mouseover,help,nodead][help,nodead][@player] Healing Wave","Heals the frame under your mouse, else your target, else you. Change the spell for any healer."],["Attack and start auto-attack","/startattack\n/cast Heroic Strike","Starts swinging if you are not, then queues the ability; stops the 'I pressed the button and nothing happened' problem."],["Pet attack","/petattack\n/cast Hunter's Mark","Sends the pet and marks in one press."],["Mount or dismount","/dismount [mounted]\n/cast [nomounted,outdoors] Brown Horse","Replace the mount name; works for any class with a mount."],["Stopcasting interrupt","/stopcasting\n/cast Kick","Cancels your current cast so the interrupt fires instantly (Kick, Pummel, Counterspell, Earth Shock)."],["Trinket + cooldown","/use 13\n/use 14\n/cast Recklessness","Uses both trinket slots with the big cooldown; errors for trinkets on cooldown are harmless."]],
"classes":{
 "Warrior":[["Charge or Intercept by stance","/cast [stance:1] Charge; [stance:3] Intercept","One key for both gap closers; add [stance:2] Taunt for defensive."],["Shield Bash / Pummel","/stopcasting\n/cast [stance:1/2] Shield Bash; [stance:3] Pummel","The interrupt for whichever stance you are in."],["Overpower swap","/cast [stance:1] Overpower; Battle Stance","Press once to switch to Battle, again to Overpower; same trick for Berserker Stance abilities."],["Sunder spam with auto-attack","/startattack\n/cast Sunder Armor","Tank opener; five stacks then switch to Shield Slam/Revenge."]],
 "Paladin":[["Seal twist","/cast Seal of Command\n/cast Judgement","Re-seal then judge in one press; swap for Seal of the Crusader for the twist."],["Emergency bubble + heal","/cast Divine Shield\n/cast Holy Light","Bubble then hard-cast; cancel the bubble with /cancelaura Divine Shield on another key."],["Cleanse mouseover","/cast [@mouseover,help][help] Cleanse","Dispels without changing target during raids."],["Blessing by class","/cast [@mouseover,help] Blessing of Kings; Blessing of Kings","Buff whoever you hover."]],
 "Hunter":[["Full pet start","/petattack\n/cast Hunter's Mark\n/cast Serpent Sting","Pulls with the pet, marks and stings."],["Feign Death safety","/stopcasting\n/cast Feign Death","Drops threat even mid-cast of Aimed Shot."],["Trap and swap","/cast Freezing Trap\n/stopcasting","Lay the trap; combine with Feign Death on the next press."],["Mend pet mouseover","/cast [@pet] Mend Pet","Keeps the pet alive without targeting it."]],
 "Rogue":[["Stealth opener","/cast [stealth] Cheap Shot; Sinister Strike","Cheap Shot from stealth, Sinister Strike otherwise: one key, no wasted globals."],["Kick","/stopcasting\n/cast Kick","Interrupt."],["Sprint + Vanish escape","/cast Vanish\n/cast Sprint","Both in one press; Vanish first so Sprint does not break it."],["Poison apply","/use Instant Poison\n/use 16","Applies to the main hand; /use 17 for the off-hand on a second line."]],
 "Priest":[["Shield mouseover","/cast [@mouseover,help][help][@player] Power Word: Shield","Shield anyone under the mouse."],["Fade panic","/stopcasting\n/cast Fade","Drops threat instantly."],["Shadow rotation start","/cast Vampiric Embrace\n/cast Shadow Word: Pain","Two debuffs in one press for leveling."],["Mind Blast + wand","/cast Mind Blast\n/cast Shoot","Fires Mind Blast if ready, else wands; stop the wand with the same key."]],
 "Shaman":[["Totem drop","/cast Strength of Earth Totem\n/castsequence reset=10 Searing Totem, Mana Spring Totem","Earth totem plus a sequence for the next two; press three times."],["Earth Shock interrupt","/stopcasting\n/cast Earth Shock","Interrupt."],["Ghost Wolf toggle","/cancelform\n/cast [noform] Ghost Wolf","In and out of wolf on one key."],["Healing Wave mouseover","/cast [@mouseover,help][help][@player] Lesser Healing Wave","Fast heal for raids."]],
 "Mage":[["Frost Nova + blink","/cast Frost Nova\n/cast Blink","Root and escape; use a second press for Blink if Nova is on cooldown."],["Counterspell","/stopcasting\n/cast Counterspell","Interrupt."],["Polymorph focus","/cast [@focus,harm][harm] Polymorph","Sheep your focus without losing your kill target."],["Water and food","/cast Conjure Water\n/cast Conjure Food","Both conjures; press twice."]],
 "Warlock":[["Dot opener","/castsequence reset=combat/target Curse of Agony, Corruption, Immolate","One key for the three dots in order; resets when you change target."],["Life Tap + Drain","/cast Life Tap\n/cast Drain Life","Tap then drain in one press for the leveling loop."],["Pet sacrifice","/cast Sacrifice","Voidwalker shield when the fight goes wrong."],["Soulstone mouseover","/cast [@mouseover,help][help] Soulstone Resurrection","Stone a healer without targeting."]],
 "Druid":[["Powershift","/cast !Cat Form","Shifts out and back into cat for energy; the ! keeps you in form if already in it."],["Bear emergency","/cast [noform:1] Dire Bear Form; Enrage","Into bear with Enrage on the second press."],["Decurse mouseover","/cast [@mouseover,help][help] Remove Curse","Raid decursing."],["Innervate the healer","/cast [@focus,help][help] Innervate","Set a healer as focus at the pull."]]},
"keybinds":[["1–5 and shift+1–5","Core rotation and openers; keep your most pressed ability on 1."],["Q, E, R, F","Movement-side abilities: interrupt, defensive, heal, pet."],["Mouse 4/5","Cooldowns or mount."],["Shift+space / ctrl+space","Trinkets, racial (Blood Fury, Berserking, Will of the Forsaken)."],["Focus key","Set focus on the sheep target or the healer you Innervate; one macro covers it."]],
"tips":["The Forever client uses the modern macro conditionals ([@mouseover], [help], [harm], [stance:n], [stealth]); older 1.12 syntax (/script) is not needed.","255 characters per macro; use short spell names and no extra spaces.","Mouseover heals plus raid frames remove most of the clicking in a healer's night.","Test every macro on a training dummy after a patch; renamed talents (Mangle is now Primal Bite) break /cast lines silently."]}
