COMING SOON - Macros : A Bluffer's guide

Got World of Warcraft news? Seen something cool? Share it here.

Moderator: Guild Shogun

Post Reply
P3mby
Posts: 2272
Joined: Mon Jan 30, 2006 8:53 pm

COMING SOON - Macros : A Bluffer's guide

Post by P3mby »

AS the title says...watch this space.

***Disclaimer - this is a work in progress, the authors may change this without warning or consent.***

I know it may seem like a simple place to start but it is the obvious one.

What is a macro?

Simply put, a macro is a way to combine several commands or actions onto a single key press.
This allows you to make announcements, to combine certain spells or to perform different actions depending on the situation or how you activate the macro

What can a macro do?
  • Call any spell from your spell book
  • Output speech to any of the channels
  • Choose a spell depending upon certain criteria
  • Access scripting from the API


What can't a macro do?
  • This is the more important thing. Macros are limited.
  • They restricted to 255 characters.
  • They can not call another macro.
  • They can't cast a spell/ability without you pressing a button.
  • They can't cast more than one spell/ability per button press, unless using an ability that isn't affected by global cooldown, like feign death or judgement.
  • Insert a pause before activating a spell/ability.
  • Target another player's pet automatically (you can only automatically target your own pet).
  • Output anything to file other than saved variables.

So what does all this mean in practice.

Macro Syntax

There are several different ways macros can be used, so I will give the basic syntax for a few here and explain them as best I can.

/cast spell name and rank [options]

Writing a macro

Start by bringing up the macro frame, this is done by typing

Code: Select all

/macro
Last edited by P3mby on Sun Mar 25, 2007 2:47 pm, edited 4 times in total.
OBEY THE TUBE!

Image
It is never too late \o/
Demonheart
Posts: 1065
Joined: Sun Jul 16, 2006 6:00 pm
Location: Helsinki, Finland

Post by Demonheart »

Kickass
Mr. President, get up or I will kill you right there.
In loving memory of Jack Bauer
Nepstar
Paladin Class Leader
Posts: 399
Joined: Mon Feb 05, 2007 3:49 am

Post by Nepstar »

I put this together from various sites and my own knowledge - there may well be mistakes, and isn't formatted nicely atm.

General form of a macro:
/command [options1] action1; [options2] action2; ... [optionsn] actionn;

This will check if all the conditions in options1 is true and if so perform action1. Then if able to will do the same for options2 and actions2, etc. Note: "if able to" - can't do multiple casts etc. So once it finds an options list that are all true and performs the action, it's probably not going to do any of the rest of the actions.

"command" is one of the following:
/startattack
/stopattack
/stopcasting
/cast
/castsequence
/castrandom
/use itemname
/use invslot
/use bagid bagslot
/userandom
/dismount
/cancelaura
/changeactionbar
/swapactionbar
/equip
/equipslot slot itemname
/pet
/target
/targetlasttarget
/targetenemy - cycle targeting enemies like tab
/targetfriend - cycle targeting friends like shift-tab?
/targetparty - cycle targets through party members
/targetraid - cycle targets through raid members
/cleartarget
/focus
/clearfocus
/assist
/click buttonname mousebutton
/petattack
/petfollow
/petstay
/petpassive
/petdefensive
/petaggressive
/petautocaston spell
/petautocastoff spell
/stopmacro

"options1" (etc) has the form
target=t,cond1,cond2,...condm

Everything is optional here, including "target=t". If you remove all conditions, you may as well remove the brackets around "options1" too.

"t" is one of the following:
focus - your focus, if you have one set up
target - your on-screen target
player - you
pet - your pet
party1 (etc) - party member1
partpet1 (etc) - partymember1's pet
raid1 (etc) - raid member1
raidpet1 (etc) - raid member1's pet
Handiest (etc) - name of a player
none - no target (brings up hand to click a target with)
mouseover - the next unit your mouse is hovers over
npc - the vendor etc you are interacting with

Note you can also suffix "-target" (multiple times) or "-pet" or "-Neptulon" to the above for their target/pet. Also you can add "-Neptulon" etc to a player for battlegrounds.

Note that if "target=t" is included, all target conditions in options1 are checked on the target "t". If not included, it will check on your currently selected target, if you have one. If not included and you have no target, it will produce a hand symbol you can click a target with (I think). Note: "target=t" is NOT a check to see if your current target is "t".

"cond1" (etc) is one of the following.

help - target assistable
harm - target attackable
combat - you're in combat
stance - you are in a stance
stance:s - you have stance "s"
stealth - you are stealthed
mounted - you are mounted
swimming - you are swimming
flying - you are flying
indoors - you are indoors
outdoors - you are outdoors
modifier - you are holding down one or more of shift, ctrl and alt
modifier:shift|ctrl|alt - you are holding down all the specified modifiers. Note, you don't have to have all 3. You could use "shift" or "shift|alt" etc.
equipped:invslot|itemclass|itemsubclass - you have an item equipped satisfying constants
actionbar:bar - actionbar "bar" is shown ("bar" is 1-6)
button:b - button "b" held down. EG button:RightButton
pet:name|family - your current pet has name "name" and family "family"
channeling - you are channeling
channeling:spell - you are channeling spell "spell"
exists - target exists
dead - target is dead


"s" is a number 1-6 as follows:

Druid:
1=Bear
2=Aquatic
3=Cat
4=Travel
5=Moonkin/Tree
6=Flight Form

Warrior:
1=Battle
2=Defensive
3=Berserker

Priest:
1=Shadowform

Rogue:
1=Stealth

Shaman:
1=Ghost Wolf


"invslot" is one of the following:
Two-Hand
Bag
Shirt
Chest
Back
Feet
Finger
Hands
Head
Held In Off-hand
Legs
Neck
Ranged
Chest
Off Hand
Shoulder
Tabard
Thrown - ranged slot items like thrown daggers
Trinket
Waist
One-Hand
Main Hand
Off Hand
Wrist

"itemclass" is one of the following:
Armor
Projectile
Quiver
Weapon

"itemsubclass" is one of the following:
Cloth
Idols
Leather
Librams
Mail
Miscellaneous - includes Spellstones and Firestones
Shields
Totems
Plate
Arrow
Bullet
Ammo Pouch
Quiver
Bows
Crossbows
Daggers
Guns
Fishing Pole
Fist Weapons
One-Handed Axes
One-Handed Maces
One-Handed Swords
Polearms
Staves
Thrown
Two-Handed Axes
Two-Handed Maces
Two-Handed Swords
Wands


Castsequence has the following form:
/castsequence reset=N/target/combat/shift/alt/ctrl [args1] spell1, [args2] spell2, [args3] spell3, [argsM] spellM
Repeated use of this macro will try to cast spell1 then spell2, ..., spellM, where, depending on arguments specified, the sequence is reset back to trying to cast spell1 after N seconds, or if your on-screen target changes, or you enter or leave combat, or any of the modifiers shift, alt, or control are down, or after trying to cast spellM. Note you must repeatedly press a button/key for each spell in the sequence (can't cast all spells in sequence at once). The spells can be items too.


Note:
"," or "|" between conditions acts as boolean AND.
"/" between conditions acts as boolean OR. (only works on some? - eg stances, modifiers, etc)
"no" before cond1 (etc) acts as boolean NOT.

Note: you can put these at the start of a macro
#show x - shows the icon of spell or item "x"
#showtooltip x - shows the tooltip of spell or item "x"

Note: Only 1 target change allowed per press/click of a macro.
Negreanu
Posts: 2
Joined: Mon Jun 18, 2012 9:46 am

Re: COMING SOON - Macros : A Bluffer's guide

Post by Negreanu »

I like Dotimer on my lock and Energywatch on my rogue.

Dotimer can show a countdown on your dots and curses.
Energywatch lets you know when your next tick of energy will come.

I don't remember where I got them though. Just ask me and I'll zip it and send it over. Or if anyone finds a good spot.

________________________

Gafas Oakley
Post Reply