Revision as of 2008-06-06 20:06:50
  Older version (diff) | current version (diff) | Newer version (diff)

Macro (WoW)  

A macro is a small script that is used to combine several actions in a single button, with the potential for a (limited) amount of intelligent choice without player input.

Contents [hide]

Types of Macros

Macros are divided into two sets; General Macros, which are shared across your entire account, and Character-Specific Macros, which are useable by your current character only. Each set has a limit of 16, for a total of 32 potential macros, and each macro has a 256-character length limit.

My First Macro

Creating a Macro in World of Warcraft is easy! Just hit the Escape key until the Game Options menu appears, and then to click on the Macros button. Click the "New" button in the bottom of the Macros pane, pick the icon you want your macro to use as well as the name and you're all set to start writing!

For our example we're going to create a simple macro that will use a /say command to talk and also use an emote action. Name your macro "Hello World" and pick whichever icon you want, then hit okay. Click on the text-box in the bottom of the Macro pane and type the following;

/say Hello, world!
/dance

Drag the macro onto your action bar and hit it, and you'll tell the world hello and start dancing. Congratulations, you've just made your first macro! Yes, it really is that easy.

Writing a Macro

Macro Commands

Macro Commands are useful slash-comamnds you can put into macros (or your chat bar!) to make the game perform certain actions for you. Combined with macro conditionals you can create useful macros to perform a wide variety of tasks for you.

Command Use Syntax Notes
/cast Casts the ability, item or spell /cast [Conditonal] First Spell; [Conditional] Second Spell Identical to /use
/use Casts the ability, item or spell /use [Conditional] First Spell; [Conditional] Second Spell Identical to /cast
/castsequence Casts the abilities in order, then repeats /castsequence reset=ResetFunctions [Conditional] First Spell; Second Spell Can use reset= to determine when to return to the first ability
/castrandom Casts a random ability /castrandom [Conditional] First Spell; Second Spell
/stopmacro Stops the macro /stopmacro [Conditional] Useful for creating if->then sequences
/assist Switches your target to your target's target /assist [Conditional]
/targetlasttarget Switches your target to your previous target /targetlasttarget [Conditional]
/cleartarget Clears your target /cleartarget [Conditional]
/focus Focuses your target /focus [Conditional]
/clearfocus Clears your focus target /clearfocus [Conditional]
/targetenemy Targets your closest enemy /targetenemy [Conditional] Functionally identical to tab-target
/targetparty Targets your closest party member /targetparty [Conditional]
/targetraid Targets your closest raid member /targetraid [Conditional]
/equip Equips the named item /equip Name of Item
/equipslot Equips the named item in the selected slot /equip # Name of Item Full list of item slots
/cancelbuff Cancels the named buff /cancelbuff [Conditional] Buff Name
/cancelform Cancels your current form /cancelform [Conditional] Primarily used by Druids to return to Caster form
/dismount Cancels your current mount /dismount [Conditional]

Cast and Use

The heart and soul of most macros, the Cast and Use commands allow you to use spells, abilities and items when the conditionals are met. There is no limit to the number of conditional checks the /cast command can make, but it will stop at the first ability it sees that passes the conditional checks to use it.

Cast Sequence

A very powerful but limited function, Cast Sequence allows you to tell the macro to use different abilities in a certain order. Unlike /cast, there is only a single conditional check at the start of the macro; the command will not allow you to bypass parts of the sequence if certain conditions aren't met. More to the point, it will 'freeze' on each step until that step can be completed, rather than bypassing it. If one ability has a cooldown or is event triggered (such as Overpower) then it will hang on that step of the sequence until it can perform that command.

This is partially mitigated by the ability to use the reset= tag, which will cause the castsequence to go back to square one on certain events - target for target changes, combat for when you leave combat, or simply a number for a certain number of seconds. These can be combined (for example, 'reset=target/combat/3' will reset the macro to step 1 if you change targets, leave combat or more than three seconds pass without it being activated). Unfortunately, though, the time-based reset of the Castsequence button goes off how much time has passed since you hit the button, not since it last cast an attack in the sequence. The 'idle timout' instead of an active timer, combined with the other restrictions on Cast Sequence, make it much less valueable than it could be; as it is, though, the tool is extremely useful, especially for Hunters trying to perfect their hunter shot rotation.

Cast Random

A simple function, this will randomly use one of the abilities in its list every time you use the button. Like castsequence, only one conditional check is allowed - it will either pick any one of the random choices, or none at all. Useful for brute-forcing events or for performing a random action, like selecting a different mount for you to use each time.

Stop Macro

If this command passes its conditional checks, it will stop the macro from proceeding any further. This can be used in lieu of constant conditional checks to create an If->Then functionality, as without failing the Stop Macro's conditions nothing further in the macro will be accessed.

Target Functions

These commands are used to modify your current target or focus target. The /targetparty/raid/enemy commands are functionally identical to tab-targetting.

Buff Functions

These commands are all used to cancel certain buffs. You can, in fact, use /cancelbuff Black War Raptor in order to cancel your mount (or /cancelbuff Dire Bear Form), but the /cancelform and /dismount functions will always choose your shapeshift or mount to remove. /dismount is especially handy with a random-mount macro.

Macro Conditionals

Macro Conditionals are used to establish the parameters within which the commands you use will activate. For example,

/cast [1] Shadow Word: Pain; [2] Power Word: Shield

Will cast Shadow Word: Pain if your target is unfriendly, and Power Word: Shield if your target is friendly. All conditionals can also be inverted with a prefix of no - for example, [3] (is my target unfriendly) and [4] (is my target not friendly) are functionally identical.

This page last modified 2008-06-06 20:06:50.