Sunday, October 12, 2008
WOW Macros - Druid Macro Guide
Copying Macros
When copying macros from this guide, you might get code with the # sign in front of each line. You must remove the # sign in order for the macro to work, because WoW treats lines with the # sign as comments.
To copy macros from one computer to another, copy the macros-cache.txt on your computer to the exact same location in the new computer. Account-wide macros are usually found at ..\World of Warcraft\WTF\Account\
Shifting Cooldown
The "shifting cooldown" only applies when you are trying to deshift within the first 1.5 seconds of shifting into that form, using the special action buttons. It does not stop you from instantly shifting from one form into another (using those buttons), and it does not apply to macros.
NOTE: This can be turned off by unchecking the Secure Ability Toggle at the top of the Basic Interface Options menu.
While there is no Global Cooldown when shifting out of a form (GCD is only when shifting into forms), there is nonetheless a brief delay as the server/client recognizes the change in form. This latency delay is what prevents you from using abilities in your new form (such as casting) in the same instant you deshift.
NOTE: If you are experiencing a GCD when deshifting, it is almost certainly because you have a mod or macro automatically swapping weapons/idols while you are in combat.
Macro Legend of Symbols
Spell1 / Spell2 = Either Spell1 or Spell2
Spell1 > Spell2 = Spell1 then Spell2 on next click
Spell1 + Spell2 = Spell1 and Spell2 in a single click
Spell1 & Spell2 = Any other kind of combination of Spell1 and Spell2
"Name" = Nickname in place of description of macro behavior
[stance:5?6] = Replace "5?6" with 6 if specced for Moonkin Form or Tree of Life, and with 5 otherwise
(spamable) = Can be cast over and over, or it swaps between two states
(sticky) = Macro cannot immediately be reactivated regardless of clicking, or end state is static
(unconfirmed) = Macro might not work the way it's intended to
{also: . . . } = Alternate suggestion for minor changes
{note: . . . } = Explanation or tip
NOTE: All shifting macros work from any form
Macro Guide
NO macro can cast spells based on: BUFFS, DEBUFFS, COOLDOWNS, or TARGET DISTANCE
NO macro can cast spells based on: HEALTH, MANA, RAGE, ENERGY, or COMBO POINTS
Any failed cast attempt stops the macro from casting any further spells
* Except for spells that do not invoke the Global Cooldown (GCD)
/cast Spell - casts Spell on your target
* Spells will automatically reduce rank if the target is too low a level
* Spells written without "(Rank N)" will automatically cast the highest rank you know
* NOTE: Spells with parentheses as part of their name require extra "()" after, e.g.:
/cast Faerie Fire (Feral)() or /cast Mangle (Bear)()
/cast [condition] Spell - casts Spell when condition is true. condition can be:
* help/harm - Choose depending on whether target is assistable or attackable
* combat - Choose depending on whether you're in combat
* stance or stance:# - Choose depending on your stance/shapeshift ("stance" alone matches any stance)
stance:1 is (Dire) Bear Form
stance:2 is Aquatic Form
stance:3 is Cat Form
stance:4 is Travel Form
stance:5 is Moonkin Form or Tree of Life (if talent points spent), or Flight Form
stance:6 is Flight Form if you already have Moonkin Form or Tree of Life
NOTE: Numbers may be different if you are missing earlier forms
* stealth - Choose depending on whether you are stealthed
* mounted - Choose depending on whether you are mounted
* swimming - Choose depending on whether you are swimming
* flying - Choose depending on whether you are flying
* flyable - Choose depending on whether you are able to use Flight Form / flying mount
* indoors - Choose depending on whether you are indoors
* outdoors - Choose depending on whether you are outdoors
* modifier or modifier:shift/ctrl/alt - Choose depending on any modifier keys you're holding at the time the macro runs
* equipped:InvSlot#|ItemClass|ItemSubclass - Choose if you have the specific item type equipped
* actionbar:Bar# - Choose if a specific actionbar is shown
* button:Z - Choose if the specified button is held down
* pet:Name|Family - Choose if your current active pet has the specified name or family (e.g. pet:bear/wolf)
* channeling or channeling:Spell - Choose if you are channeling (possibly a specific spell)
* exists - Choose if the target exists
* dead - Choose if the target is dead
* party - Choose if target is in your party
* raid - Choose if target is in your raid
* group:party/raid - Choose if you are in a party or raid
* Any condition can be prefixed with "no" to select if it does NOT match
/cast [target=unit] Spell - casts Spell on unit without changing your target. unit can be:
* player (yourself), target, focus, mouseover, pet, PlayerName, or none
* target=unit is not actually a condition
* target=unit forces other conditions to evaluate using unit instead of the real target
* NOTE: target=none will function as if you had no unit selected, giving you the "glowing hand" selector (unless you have enabled auto self-cast?)
* Any unit can be followed by "target" to designate that unit's target, e.g.:
targettarget, pettarget, or PlayerName-target (note extra "-")
/cast [condition1a, condition1b] Spell1; [condition2a] [condition2b] Spell2; Spell3 - casts Spell1 when both condition1a and condition1b are true, or Spell2 when either condition2a or condition2b is true, and Spell3 anytime else, e.g.:
* /cast [stealth] Pounce; [nocombat, nostealth] Prowl; [modifier:ctrl] Rip; Mangle (Cat)()
* Separate multiple conditions with " , " (comma)
* Separate multiple casting choices with " ; " (semicolon)
/castsequence reset=event Spell1, Spell2, Spell3, etc. - casts Spell1 then Spell2 on next click, then Spell3, and so forth
* castsequence will not advance to the next spell until the current spell is successfully cast
* The sequence maintains state (the current spell awaiting cast) until it is reset, even if a requisite condition becomes false
* The sequence always resets after casting the final spell, and also when event occurs ("reset=event" is optional)
But you can prevent the sequence from automatically resetting at the end by ending with a spell that will always fail, or by repeating the last spell several times
* event can be: N (seconds), target (when target changes), combat, shift, alt, and/or ctr
* Separate multiple reset events with " / "
* Supports spells and items and slot numbers and bag slot numbers
* NOTE: Spells with parentheses as part of their name ALWAYS require "(Rank N)", e.g.:
/castsequence Faerie Fire (Feral)(Rank 4), Maul, Mangle (Bear)(Rank 3), Swipe
NOT: /castsequence Faerie Fire (Feral)()
/cancelaura [condition] Buff - cancels a Buff as if it were right-clicked, e.g.:
* /cancelaura [stance:2] Aquatic Form; [stance:3] Cat Form; [stance:4] Travel Form
* The above macro cancels Aquatic, Cat, and Travel Form, returning you to caster form
* It does nothing while in Bear Form because "[stance:1] Dire Bear Form;" is missing
* With /cast [nostance] Dire Bear Form, the macro shifts you into Bear Form, but never out
* This shifting behavior is known as "sticky"
/cancelform [condition] - cancels any form you are in, subject to the condition, e.g.:
* /cancelform [nostance:1] - cancels every form except for Bear Form (same as the above /cancelaura line)
#show and #showtooltip - display cooldown (and tooltip) of next Spell or Item or Inventory Slot# or Backpack Slot# over the macro's icon
* The question mark icon [?] will copy the spell's original graphic
* The question mark icon [?] will dynamically update with each spell in a castsequence or change in condition (NEW)
* Conditions can also be used directly in the #show and #showtooltip lines, e.g.:
#show [nostance] 13; [stance:3, nocombat] Prowl
/focus unit - allows you to "store" a target until you clear the focus (with /clearfocus), which can be targetted at any time (with /target focus, or [target=focus])
Other "slash commands" include:
* Targeting: /targetlasttarget, /cleartarget, /focus, /clearfocus
* Target Cycling: /targetenemy, /targetfriend, /targetparty, /targetraid - All work using the TargetNearest* API's and enemy/friend may only be called once per macro. An optional argument of '1' can be used to reverse direction.
* Items and equipment: /use ItemName, /use Slot#, /use BagID# BagSlot#, /equip ItemName or ItemID#, /equipslot Slot# ItemName, /userandom Item1, Item2, Item3 will attempt to use a randomly selected one of the specified items
* Pet control: /petattack, /petfollow, /petstay, /petpassive, /petdefensive, /petaggressive, /petautocaston Spell, /petautocastoff Spell
* Casting: /stopcasting will cancel the spell that is currently being cast, /castrandom Spell1, Spell2, Spell3 will attempt to cast a randomly selected one of the specified spells
* Action bar: /changeactionbar Bar# and /swapactionbar Bar1# Bar2#
* Attacking: /startattack unit ("unit" is optional), /stopattack
* Buffs/Auras: /cancelaura name - cancels an aura as if it were right clicked
* Buttons: /click ButtonNameMouseButton# ("MouseButton#" is optional)
* Macros: /stopmacro
* Dismounting: /dismount - note that the default UI now automatically dismounts you upon casting
Tips to shrink macro length to fit within 255 character limit
* Remove spaces around any punctuation (" [ ] = , ; ")
* ItemName only needs enough text to make the item unique