Wowpedia

We have moved to Warcraft Wiki. Click here for information and the new URL.

READ MORE

Wowpedia
No edit summary
Line 17: Line 17:
 
===Simple Ground and Flying mount macro with dismount===
 
===Simple Ground and Flying mount macro with dismount===
   
/cast {nomounted] Albino Drake
+
/cast [nomounted] Albino Drake
 
/cast [nomounted] Dreadsteed
 
/cast [nomounted] Dreadsteed
 
/dismount [mounted]
 
/dismount [mounted]
Line 25: Line 25:
 
* Validated: 3.2.0
 
* Validated: 3.2.0
 
* Credit: Ozmodius of Runetotem (US)
 
* Credit: Ozmodius of Runetotem (US)
 
   
 
===Mount Macro for the right place and time===
 
===Mount Macro for the right place and time===

Revision as of 18:13, 28 August 2009

Macros
General guides

Macros Beginners Guide
Making a macro
Macro conditionals
Macro commands
Category:Macros

Useful macros by class

Useful macros for death knights Useful macros for demon hunters Useful macros for druids Useful macros for hunters Useful macros for mages Useful macros for monks
Useful macros for paladins Useful macros for priests Useful macros for rogues Useful macros for shamans Useful macros for warlocks Useful macros for warriors


Ground and Flying without Cold Weather Flying

Fly where possible without Cold Weather Flying

/run if IsMounted() and not IsFlying() then Dismount() return end local t if (GetCurrentMapContinent()==3) then t={2} else t={1,4} end CallCompanion("MOUNT",t[random(#t)])

If, you have not yet mastered Spell frost arcticwinds [Cold Weather Flying], this macro will only summon your flying mount in Outland. My flying mount is in slot 2 on the Mounts pane, while my two epic ground mounts are in slots 1 and 4. Replace these numbers as appropriate. (I have not found a function to show the continent you are currently in, only what continent the map shows. If you have just switched continent and this macro doesn't work as it should, a quick double-tap on the M-button should update your map, and fix it.)

  • Validated: 3.2.0a
  • Credit: Eldhannas of Wildhammer(EU)

Ground and Flying with Cold Weather Flying

Simple Ground and Flying mount macro with dismount

/cast [nomounted] Albino Drake
/cast [nomounted] Dreadsteed
/dismount [mounted]

Simply replace the names of the mounts with the names of your preferred flying and ground mount. As with most macros, spelling must be exact. This allows you to simply select from your collection of mounts using the name of the mount you want. The benefit is that you don't have to change the reference number of your mount every time you get a new one.

  • Validated: 3.2.0
  • Credit: Ozmodius of Runetotem (US)

Mount Macro for the right place and time

/run if IsMounted() then Dismount() return end local m if not IsFlyableArea() or (GetWintergraspWaitTime()==nil and GetZoneText()=="Wintergrasp") or IsSwimming() then m=(1) else m=(3) end CallCompanion("MOUNT",m)
  • Validated: 3.2
  • Focus: Universal
  • This just checks to see whether the area yur in is flyable or not, works for Dalaran depending if you inside the city, then your ground mount will be selected or if your on Krasus' landing then your flying mount since IsFlyableArea() works for this. IsFlyableArea() also works Wintergrasp, but when the battle for wintergrasp starts then it will check to see if your in wintergrasp and if the timer is 0, it will then slect your ground mount if so, but if your in wintergrasp and the timer is not 0 then you will use your flying mount. Also added IsSwimming() if you decide to mount when in water, although if you have a underwater mount then you can change the macro tot he following to use your underwater mount.
/run if IsMounted() then Dismount() return end local m if not IsFlyableArea() or (GetWintergraspWaitTime()==nil and GetZoneText()=="Wintergrasp") then m=(1) else m=(3) end if IsSwimming() then m=(2) end CallCompanion("MOUNT",m)
  • Replace the values of m=(1) to the slot of your ground mount and m=(3) to the slot of your flying Mount and if you have a swimming mount, m=(2) to the slot of your Swimming mount
  • Note: this macro will dismount you in mid air. Use it wisely.
  • By Ryarc of Sunstrider


Random-from-list Mount and Dismount 3.2

/castrandom [nomounted, flyable] Bronze Drake, Black Drake
/castrandom [nomounted] Frostwolf Howler, Swift Green Hawkstrider, Black War Bear, Purple Skeletal Warhorse, Swift Orange Raptor
/dismount
/script VehicleExit()
  • Validated: 3.2
  • Focus: Universal
  • Credit: Smiteness of Barthilas
  • Use: This will fly if possible, and mount a grounded mount if possible, and if mounted OR in a vehicle, will get off. Works perfectly in Dalaran, Wintergrasp, Outlands and Old World. Aka everywhere.
  • Replace: Simply add or remove mounts from the first line for flying mounts, and add or remove mounts from the second line for ground mounts.
  • Note: This works on ANY character, WITH or WITHOUT Cold Weather flying. Also works with lazy people who don't wish to count their mount's specific placing and just put the name down. This may produce an error on use, but you will mount anyway so I doubt you will care.

Random Smart Mount

/run g,f={G,G,G},{F,F,F};z={["Dalaran"]=g,["Wintergrasp"]=g,["Krasus' Landing"]=f};f=z[GetSubZoneText()]or z[GetZoneText()]or(IsFlyableArea()and f)or g;z=(IsMounted()or CallCompanion("MOUNT",f[random(#f)]))and IsFlying()or Dismount()
  • Validated: 3.2.0a
  • Focus: Universal
  • Credit: Xaeros of Shadowmoon, Faceeater of Nozdormu
  • Use: When you are mounted the macro will dismount you (unless you are flying), when you are in any non-flyable zone (Kalimdor/Eastern Kingdoms/Dalaran/Wintergrasp) it will use your ground mount. When you can fly (anywhere else + Krasus' Landing in Dalaran) it will put you on a flying mount.
  • Replace G with a ground mount, and F with a flying mount. To find your mount number, open your mounts tab and count from left-to-right, top-to-bottom. (eg: The top-left mount on the first page is 1, the bottom-right mount on the first page is 12)
  • This macro produces no errors (for the most part, you can mount up manually in the room between Krasus' Landing and Dalaran, but not with this macro. This happens because you are being recognized as being in Krasus' Landing so the macro attempts to mount you on your flying mount, but the room itself is still in-doors.) and will not start re-casting a mount if you are already mounted.

Random Smart Mount 3.1 (Compact)

/run if IsMounted()then Dismount()return end local t=GetZoneText()if(((t=="Dalaran")and(GetSubZoneText()~="Krasus' Landing"))or(t=="Wintergrasp")or not IsFlyableArea())then t={a,b,c}else t={x,y,z}end CallCompanion("MOUNT",t[random(#t)])
  • Validated: 3.1.3
  • Focus: Universal
  • Credit: Blindsight of Spirestone
  • Use: When you are mounted the macro will dismount you (including when you are flying), when you are in any non-flyable zone (Kalimdor/Eastern Kingdoms/Dalaran/Wintergrasp) it will use your ground mount. When you can fly (anywhere else + Krasus' Landing in Dalaran) it will put you on a flying mount.
  • Replace a,b,c with a list of ground mounts, and x,y,z with a list of flying mounts. To find your mount number, open your mounts tab and count from left-to-right, top-to-bottom. (eg: The top-left mount on the first page is 1, the bottom-right mount on the first page is 12. For each page add +12.)
  • This macro removes as many unnecessary characters as possible to allow for a longer list of mounts. Still be mindful of the 255 character limit.
  • This macro will summon a land mount in the Dalaran Sewer pipe and the top of the Violet Tower.
  • Note: This macro will dismount you even while flying, be mindful!


Random Smart Mount 3.1 (Alternate Compact)

/run local g,f={a,b,c},{x,y,z};local z={["Dalaran"]=g,["Wintergrasp"]=g,["Krasus' Landing"]=f};f=z[GetSubZoneText()] or z[GetZoneText()] or (IsFlyableArea() and f) or g;z=(IsMounted() or CallCompanion("MOUNT", f[random(#f)])) and Dismount()
  • Validated: 3.1.3
  • Focus: Universal
  • Credit: Faceeater of Nozdormu
  • Use: same as Blindsight's macro above.
  • Replace a,b,c with a list of ground mounts, and x,y,z with a list of flying mounts. (see above)
  • This macro offers the exact same functionality as the one from Blindsight.


Supercompact Smart Mount 3.1 (Works with large numbers of mounts)

/run if IsMounted()then Dismount()else f={a,b,c}g={n,o,p}c=CallCompanion r=random m="MOUNT"c(m,f[r(#f)])c(m,g[r(#g)])end
  • Validated: 3.1
  • Focus: Universal
  • Due to the checks for Dalaran and Wintergrasp there is very little room left in other macros for mounts (because the game thinks Dalaran/Wintergrasp are flyable areas-some consider this a defect). This version uses a different technique to circumvent the lengthy wintergrasp/dalaran check: it attempts to mount twice - normally the second attempt will fail because you are already mounting. However in the case of wintergrasp or dalaran or other non-flyable areas the original mount attempt will have failed so the second mount command will succeed.
  • Replace a,b,c with a list of your flying mounts (e.g. 4,6,9,12,15), n,o,p with your ground mounts.
  • This macro will cause a "You cant use that here" or "Action already in progress" error. If you prefer not to see errors then you should choose a different mount macro but you may be limited in the number of mounts you can specify.
  • Note: This macro will dismount you even while flying, be mindful!


Mount Macro Addon

There is an addon that creates an maintains a mount macro. It uses a LUA function call to an addon that keeps track of your location. The macro shows the icon of your favorite mount for flying or riding, depending on what it will operate. The macro will also exit from vehicles. This addon works everywhere as of patch 3.2.0. The addon is Mounty. Draewind (talk) 17:26, 14 August 2009 (UTC)


Mount Macro for the right place and time

/run if IsMounted() then Dismount() return end local m if not IsFlyableArea() or (GetWintergraspWaitTime()==nil and GetZoneText()=="Wintergrasp") or IsSwimming() then m=(1) else m=(3) end CallCompanion("MOUNT",m)
  • Validated: 3.2
  • Focus: Universal
  • This just checks to see whether the area yur in is flyable or not, works for Dalaran depending if you inside the city, then your ground mount will be selected or if your on Krasus' landing then your flying mount since IsFlyableArea() works for this. IsFlyableArea() also works Wintergrasp, but when the battle for wintergrasp starts then it will check to see if your in wintergrasp and if the timer is 0, it will then slect your ground mount if so, but if your in wintergrasp and the timer is not 0 then you will use your flying mount. Also added IsSwimming() if you decide to mount when in water, although if you have a underwater mount then you can change the macro tot he following to use your underwater mount.
/run if IsMounted() then Dismount() return end local m if not IsFlyableArea() or (GetWintergraspWaitTime()==nil and GetZoneText()=="Wintergrasp") then m=(1) else m=(3) end if IsSwimming() then m=(2) end CallCompanion("MOUNT",m)
  • Replace the values of m=(1) to the slot of your ground mount and m=(3) to the slot of your flying Mount and if you have a swimming mount, m=(2) to the slot of your Swimming mount
  • Note: this macro will dismount you in mid air. Use it wisely.

by Ryarc of Sunstrider

Ground Only or Not Type Specific

Mount Outside

/dismount [mounted]
/cast [nomounted,outdoors] <mount 1>
  • Validated: 3.1
  • Focus: Universal
  • This will attempt to mount if you are outside and not mounted. There will be no reaction if you are in an area that does not permit mounts. It will produce an error if you are in combat.


Random mount

/dismount [mounted]
/castrandom <mount 1>, <mount 2>, <mount 3>
  • Validated: 3.1
  • Focus: Universal
  • This will randomly use one of the mounts listed in the macro. If you were mounted already, you will dismount for 3 seconds as the random mount is channeled.
  • Note: This macro will dismount you even while flying, be mindful!


One-button flyer or ground mount with emote

/mountspecial [mounted]
/use [modifier:alt] White Polar Bear Mount
/use [nomounted, flyable] Albino Drake
/use [nomounted] White Riding Talbuk
  • Validated: 3.1.1
  • Replace Albino Drake, talbuk etc. with flyers and ground mounts of your choice.
  • This mounts you on your flying mount anywhere you can fly, if you are not already mounted. In Old School WoW and in no-fly zones (Dalaran, Wintergrasp etc. Tested in 3.1.1a, you still need a conditional for Dalaran, etc.) and Northrend if you don't have the skill) it summons your ground mount. Holding down alt will summon a 'showing off' ground mount. Pressing the macro when you are already mounted will do the 'mountspecial' emote (rearing, growling, stretching).



Outdated Macros

The macros below this line have not been validated to work in 3.1 or 3.2. Use at your own risk.

Smart mount with modifier

/run C=CallCompanion if(not IsMounted())then if(((GetZoneText()=="Dalaran")and(GetSubZoneText()~="Krasus' Landing"))or(GetZoneText()=="Wintergrasp")or not IsFlyableArea()or IsModifierKeyDown())then C("MOUNT",X)else C("MOUNT",Y)end end
/dismount
  • Use: This will use your flying mount in any area that you can actually fly in (i.e. not in Dalaran city or Wintergrasp) or otherwise use your ground mount. If you want to use your ground mount in a flyable area all you have to do is hold down a modifier key (Ctrl/Alt/Shift) while using the macro. Replace X with the number of your ground mount and Y with the number of your flying mount.
  • Works in 3.1.1.


Random vanity pet

  • NEW* Use "CRITTER" in place of "MOUNT" to randomly select vanity pets.
/run CallCompanion("CRITTER", random(GetNumCompanions("CRITTER")))

Version which announces which pet is coming:

/script t="CRITTER"i=random(GetNumCompanions(t))c,n=GetCompanionInfo(t,i)SendChatMessage("Come out, "..n)CallCompanion(t,i)

And to dismiss your pet:

/run DismissCompanion("CRITTER")

One-button version (hold down alt/shift/control to put away pet, otherwise summon a random one):

/run if (not IsModifierKeyDown()) then CallCompanion("CRITTER", random(GetNumCompanions("CRITTER"))) else DismissCompanion("CRITTER") end


Random title

/run for i=1,(GetNumTitles()*2) do t=random(GetNumTitles())  if IsTitleKnown(t)==1 then SetCurrentTitle(t) break end

This macro will randomly choose one of your titles, which can be easily combined with a random vanitiy pet macro.


Outland Flying/Azeroth Ground Mount

/cast [flyable, nomounted] Swift Green Wind Rider
/cast [noflyable, nomounted] Black War Raptor
/dismount [mounted]

This will call your flying mount in Outland/Northrend, and your ground mount everywhere else. Works with 3.0.2. Replace mount names with the names of your mounts. The easiest way to do this is to open your mount pane and then shift click each mount into the macro. This does not work in Northrend


Fly where possible, ground mount elsewhere

/run if IsMounted() and not IsFlying() then Dismount() return end local t if (IsFlyableArea() and (GetRealZoneText()~='Dalaran' or GetMinimapZoneText()=="Krasus' Landing")) then t={4} else t={3,2} end CallCompanion("MOUNT",t[random(#t)])

(write it all in one line)

This will detect if the zone is flyable or not and summon a random mount accordingly. If you're in Dalaran, the flying mount will only be summoned at Krasus' Landing. In the example, my flying mount is 4, my ground ones are 3 and 2, the number stands for the order in your mount tab starting from 1. If you're flying above ground level you won't dismount so to avoid deaths by misclicking.

--Fixed by Allene of Malygos


Fly where possible, ground mount elsewhere (improved)

A variation on the Macro above, with Wintergrasp taken into account (Wintergrasp is reported as a flyable area, but isn't):

/run local z=GetZoneText(),t; if (IsMounted()) then Dismount() return end; if (not IsFlyableArea() or (z=="Dalaran" and GetSubZoneText()~="Krasus' Landing") or z=="Wintergrasp") then t={X,Y,Z} else t={F} end CallCompanion("mount", t[random(#t)])

Remember to replace {F} with the index of your flying mount and {X,Y,Z} with the indices your ground mounts.

--Gromm of Stormreaver


Smart Random Mount

/run if (not IsMounted()) then local t={x,y,z,...} CallCompanion("MOUNT", t[random(#t)]) else DismissCompanion("MOUNT") end

This will call a mount listed at a random index listed within the t array. For instance, if you set t={1,3,5}, this macro will randomly call the mount referenced at index 1, 3, or 5. This macro is useful if you want to call a random type of mount, such as a swift flying mount, or swift ground mount. The down side to this macro is that the list of mounts are alphabetized, so any time you add a new mount, odds are you will have to reindex t. The DismissCompanion call is optional. This macro allows for a greater list of random indices than the macros above, at the expense of the user needing to create two macros - one for ground mounts, and one for flying mounts (obviously, you would also need to know when each one applied).


Mount / Hearthstone

#showtooltip Hearthstone
/use [button:2] Hearthstone
/dismount
/use [flyable,nomodifier:alt] <flier 1>
/use <mount 1>

This one will make you ride your grounded mount in Azeroth, ride your flying mount in Outland, and Hearthstone on right-click. If you alt+click it, it'll summon your normal mount wherever you are. If you set the macro icon to the Question Mark, it'll also show the Hearthstone icon, cooldown, and tooltip.

Conditionals are common in mount macros that make choices based on your location. You should replace the gray conditionals with ones that best suit your key bindings.


No-dismount flight

#showtooltip
/stopmacro [mounted]
/use [flyable] <flier 1>; <mount 1>

or

#showtooltip
/stopmacro [flying,nobutton:2]
/use [flyable] <flier 1>; <mount 1>

The first macro mounts if not already mounted, but does not cause accidental or intentional dismounting.

The second macro will dismount or mount a grounded steed whenever flight is impossible, but prevent flying dismounts unless specifically ordered (in this case, by right-click).

Either macro can give you a preview of what they will do through the icon they display. Set the icon to the Question Mark when copying the macro into your settings.

No automatic dismount either!

#showtooltip
/use [button:2] <flier 1>
/console autoDismount 0
/stopmacro [button:2]
/use <mount 1>
/console autoDismount 1

With Patch 2.1.0, Blizzard introduced the ability to automatically dismount in the event that you cast a spell. This is good when on the ground, but dangerously bad for most classes when using a flying mount. While there is a toggle for this in your Interface Options, the above macro will enable auto-dismount when using your ground mount and disable auto-dismount when using your flying mount.

If you are flying, you can no longer cast spells -- The message "You are mounted" is displayed and the casting fails. If you are on the ground (flying or ground-bound mount) you will automatically dismount. (Confirmed as of Patch 2.4)


Mount while moving

There is no way to detect motion in a macro, and any attempt to mount while moving will fail. Therefore, most classes will have to stand still until a mount macro finishes channeling. Dismounting may still occur under any condition.

Exceptional cases are found in Druids' Travel and Flight Forms, and Shamans' Ghost Wolf abilities, which are instant-cast.

It may also be desirable to include an ability that increases speed or otherwise closes distance into a travel macro. If the ability is dependent on a target, like Intervene, put it at the macro's beginning. If the ability is independent but has a cooldown, like Sprint, put it at the macro's end.


Mounts and vanity pets

/cleartarget
/targetexact Speedy
/use [noexists]Turtle Box
/stopmacro [noexists]
/userandom [flyable]<flier 1>,<flier 2>;<mount 1>,<mount 2>
/dismount

This macro will dismount the player, if applicable. It then looks for a vanity pet by name and summons it if the pet is not found. If the pet was already present and the player was on foot, mounting occurs.

While neat, this macro is not without its problems. It's long, and in the version presented here was originally 252 characters. This can be resolved by using item numbers, or you can eliminate the randomization of mounts altogether. Clearing the target is unavoidable as there is no other way to check for a vanity pet: [pet] and [nopet] conditionals only work with combat pets.

Here's a version that will let you keep your old target!

/focus
/cleartarget
/targetexact <NAME OF VANITY PET EXACT>
/use [noflying,noexists] item:<ID OF "box" THAT BRINGS OUT YOUR VANITY PET>
/cleartarget
/target [target=focus]
/clearfocus
/cast [flyable] item:<ITEM ID FLYING MOUNT>;item:<ITEM ID GROUND MOUNT>
/dismount

Basically what it does additionally to the one above is this: It uses the "focus" target as a buffer to store your old target..once we are done with the check for the vanity pet we can thus restore the old target (and will clean up the "focus" too at that point) To shrink the macro to 255 use itemIDs instead of itemNames! How to grab the itemIDs of your Items

P.S. obviously you'll loose any focus targets you had though...


Druid Pre-Swift Flight Form/Post Epic Flying Button

This macro is highly useful for druids who have yet to get their Ability druid flightform [Swift Flight Form], but have bought their 300 riding skill and an epic mount. This mount macro will load your flyer if you're in Outland, your Swift Mount when in Azeroth, and while flying, will dismount and switch to Flight Form instantly. This allows the Druid to quickly switch to Flight Form in order to use a gathering profession with the added ability of being able to fly away if aggro is gained.

#showtooltip [flyable,mounted]Flight Form;[flyable]<flying mount>[noflying]<Ground Mount>
/use [nomounted,flyable]<flying mount>;[nomounted,noflyable]<Ground Mount>
/stopmacro [nomounted]
/dismount [flyable,mounted]
/cast [flyable] Flight Form


Equip and Unequip Riding Gear depending on location

/equip [mounted] item:30449; [indoors] item:30449; item:25653
/equip [mounted] item:29369; [indoors] item:29369; [flyable] item:32538
/use [flyable,nomounted] item:25471; [nomounted] item:29471
/dismount [mounted]

This macro completes four tasks. Line 1 equips your combat trinket if mounted, equips your combat trinket if indoors (for those times when you run inside and auto dismount), otherwise it equips your riding crop. Line 2 equips your combat cape if mounted, equips your combat cape if indoors, or equips your slowfall cape if you're in a flyable zone. Line 3 uses your flying mount if you're in a flyable zone or otherwise uses your ground mount. Line 4 dismounts you if you're mounted.


DK mount cast

/cast [nomount] Acherus Deathcharger; [mounted] Path of Frost
/cast [mod:shift] <2nd mount here>
/cast [mod:ctrl] <flying mount here>
/dismount [mod:alt]

Or, if you'd like to keep it rather simple:

/cast [nomod] Acherus Deathcharger
/cast [mod:shift] <2nd mount here>
/cast [mod:ctrl] <flying mount here>
/cast [mod:alt] Path of Frost
  • Credit: Corruptedone of Baelgun (Blackninja)