Wikia

WoWWiki

Mount macros

Talk6
101,351pages on
this wiki
Revision as of 23:10, September 10, 2011 by Mage0r (Talk | contribs)

Macrose

Useful macros
Macro commands

General guides

Beginner's guide
FAQs
Making a macro
Wiki Formatting
Category:Macros
UI Customization

Class Macros

IconSmall Deathknight IconSmall Druid IconSmall Hunter IconSmall Mage IconSmall Monk IconSmall Paladin
IconSmall Priest IconSmall Rogue IconSmall Shaman IconSmall Warlock IconSmall Warrior

Smart Mount Macro With Aquatics

/run if not IsMounted() then local g,f,s,v={g,g},{f,f},{s,s},{v} local t=(IsUsableSpell(40192)) and f or (strsub(GetMapInfo(),0,7)=="Vashjir" and IsSwimming()) and v or (IsSwimming()) and s or g CallCompanion("MOUNT",t[random(#t)]) end
/dismount

Modified from "Random Smart Mount with Sea Horse" (Don't like modifiers inside macros) Replace "g,g" with ground mounts, "f,f" with flying mounts, "s,s" with all-around aquatic mounts(turtles), "v" with Abyssal Seahorse.

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.)

Things it tries to do in order from first to last:

  • checks if a flying mount is usable -> mounts up if possible (checks for Ashes of Al'ar, no need to actually have those for it to work)
  • checks if you are in Vashjir and SWIMMING -> mounts Abyssal Seahorse
  • checks if you are swimming in any area -> mounts a turtle (if no turtles could also use hybrid mounts that work for flying, ground and swimming like X-53 Touring rocket?)
  • tries to go with a ground mount
  • dismounts if mounted

Shamans and druids could also replace the "/dismount" with "/cast Ghost Wolf" or "/cast Travel Form" depending on their needs. might display "Another action in progress" when mounting from travel forms.

For those who do not have turtles or hybrid mounts:

/run if not IsMounted() then local g,f,v={g,g},{f,f},{v} local t=(IsUsableSpell(40192)) and f or (strsub(GetMapInfo(),0,7)=="Vashjir" and IsSwimming()) and v or g CallCompanion("MOUNT",t[random(#t)]) end
/dismount

When swimming and not in vashjir it will just go with a ground mount

Compact Smart Mount for 4.1

/cast [swimming,nomod] Abyssal Seahorse; [swimming,nomod] Sea Mount; [flyable][mod:ctrl] Flying Mount; [mod:alt][] Ground Mount
/dismount [mounted]
  • Does not throw errors unless swimming
  • Use Alt modifier to force ground mount in poorly categorised terrain
  • Use Ctrl modifier to force flying mount when swimming at surface
  • Written in 4.1

Compact Smart Mount for 4.1 - for classes with an alternate travel form

/cast [indoors][combat][mod:alt] Alt Form; [swimming,nomod] Abyssal Seahorse; [swimming,nomod] Sea Mount; [flyable][mod:ctrl] Flying Mount; Ground Mount
/dismount [mounted]
  • Will summon a mount or put you in your travel form in almost all situations
  • Does not throw errors unless swimming
  • Use Alt modifier to force Alt Form in poorly categorised terrain (eg Vortex Pinnacle)
  • Use Alt modifier to force-cancel Alt Form if state is nocombat or outdoors
  • Use Ctrl modifier to force flying mount when swimming at surface
  • Applicable alt forms are Ghost Wolf, Aspect of the Pack, Aspect of the Cheetah (tested) Cat Form, Travel Form (untested)
  • Written in 4.1

Smart Mount working with 4.0.6

#showtooltip
/use [flyable]Twilight Drake
/use [swimming]Abyssal Seahorse
/use [swimming]x-53 Touring Rocket
/use [noflyable]Fossilized Raptor
/script VehicleExit()
/dismount [mounted]
  • I had problems getting all the other scripts here working the way I wanted and got this one to work for me.
  • It will mount in no-fly areas like the sewer in Dalaran.
  • It will try to use the Seahorse if swimming, and if that fails because of the wrong zone, then it uses a flyable mount that works under water
  • so when you surface you can fly out. (The rocket and Celestial Steed work under water.)
  • I don't have the Sea Turtle yet, so I didn't throw it in the mix, but I could probably put it between the underwater flyables and the Seahorse when I get it.
  • I don't know how that would effect the mounting to fly out method I like to use. I may have to add a modifier key when the time comes.

Random Smart Mount with Sea Horse (WORKING)

#showtooltip RM
/castrandom [nomounted, flyable] FM, FM, FM
/cast Abyssal Seahorse
/castrandom [nomounted, noflyable] GM, GM, GM
/dismount


  • Showtooltip if you put your favorite mounts name in the RM spot then when you mouse over the macro it will show the tool tip for that mount.
  • /castrandom can be replace with /cast if you only want a single mount to be cast.
  • Change FM to what ever FM you want the macro to cast at random.
  • Change GM to what ever GM you want the macro to cast at random.
  • /dismount will dismount you if you click the button again.
  • You will see an error if you are not in Vashj'ir saying "you can't use that here", but other then that the macro works fine.
  • If you go to the surface in Vashj'ir it will cast a FM.
  • If you want to make room for more mounts in the macro #showtooltip and /dismount can be removed, if /dismount is removed then the macro wont dismount you when you click it again.

Key
RM - Favorite Mount
FM - Flying Mount
GM - Ground Mount

  • Valid in patch 4.0.6
  • Credit Macro below, had issue with macro only casting ground mounts, made some tweaks.

Random Smart Mount with Sea Horse, Sea Turtle and Vehicle Exit (WORKING)

#showtooltip Red Proto-Drake
/castrandom [nomounted] Red Proto-Drake, Black Drake
/cast [nomounted] Abyssal Seahorse
/cast [nomounted, swimming] Sea Turtle
/castrandom [nomounted] Brown Riding Camel, Orgrimmar Wolf
/script VehicleExit()
/dismount
  • Shows tooltip of favorite Mount. (change to your preference, or remove if you wish, to free up space for more mounts)
  • By default, this will try to mount on a random flying mount (change mount names to your preference)
  • When swimming in Vashj'ir, it will mount up on the Abyssal Seahorse. If you're at the surface it will mount on your flying mount.
  • When swimming NOT in Vashj'ir, it will mount on your flying mount if you're at the surface, or your Sea Turtle if underwater. (if you don't have a sea turtle, remove this line)
  • In Battlegrounds/Non-flyable will mount ground. (again, change mount names to your preference)
  • If you are in a vehicle, you will exit the vehicle.
  • If you are mounted, you will dismount.

If you only want it to use one type of mount in any category, replace "castrandom" with "cast" and remove the comma after the name of the mount you wish to use.


  • Validated 4.0.3
  • Credit: ßæöñ of Malfurion, Collaboration of ideas from below with some tweaks of my own to reduce character usage.

Random Smart Mount with Sea Horse (WORKING)

/run if not IsMounted() then local g,f,s={g,g,g},{f,f,f},{s,s,s} local t=(strsub(GetMapInfo(),0,7)=="Vashjir" and IsSwimming() and not IsShiftKeyDown()) and s or (IsFlyableArea()) and f or g CallCompanion("MOUNT",t[random(#t)]) end
/dismount

Replace "g,g,g" with your preferred ground mount slot numbers; "f,f,f" with flyers; "s,s,s" with water mounts. Where only one mount is desired, place only one number in the {} with no commas. The number of mounts you can list is limited by the 255 character macro limit.

This macro takes into consideration the zone name so it only tries to use the Vashj'ir mount if you're in Vashj'ir. GetMapInfo() returns the Zone + Subzone (VashjirRuins, Vashjir<SubZone>, e.g.), so by trimming after the 7th character, it always will say "Vashjir." There is a possibility this could error out if the zone+subzone length < 7, but I can't think of any areas that meet this criteria.

  • When swimming (not standing on the sea floor) in Vashj'ir, it'll mount the Abyssal Seahorse. If you're at the surface and would like to use your flying mount, hold Shift.
  • When swimming at the surface outside of the Vashj'ir zone, it'll mount your flying mount.
  • In flyable areas, it'll mount your flying mount.
  • In Battlegrounds/non-flyable areas, it'll cast your ground mount.

If you have no need to mount on the surface of the water in Vashj'ir, use the following macro as it frees up more space for random mounts since the "IsShiftKeyDown() modifier is removed.

/run if not IsMounted() then local g,f,s={g,g,g},{f,f,f},{s,s,s} local t=(strsub(GetMapInfo(),0,7)=="Vashjir" and IsSwimming()) and s or (IsFlyableArea()) and f or g CallCompanion("MOUNT",t[random(#t)]) end
/dismount
  • Validated 4.0.3
  • Credit: Collaboration of ideas from below with fixed zone checking

Random Smart Mount with Sea Horse (NOT WORKING)

/run if not IsMounted() then local g,f,s={g,g,g},{f,f,f},{s,s,s} local t=(IsSwimming() and not IsShiftKeyDown()) and s or IsFlyableArea() and f or g CallCompanion("MOUNT",t[random(#t)]) end 
/dismount


Replace g,g,g, with your preferred ground mount slot numbers, f,f,f with flyers, and s,s,s with water mounts. If only one mount desired in any type, place one number in the {} with no comma's. The number of mounts you can list is limited by the 255 character macro limit.

This is based on the below macro which didn't work for me. The GetCurrentMapAreaID only worked detecting one zone at a time, not all 3, so I modded it as follows, since I don't use Shift to mount ground mount anyway, nor do I mount when swimming except in Vashj'ir.

  • When swimming anywhere it will try to mount Abyssal Seahorse (It doesn't zonecheck Vashj'ir cos that didn't work).
  • Shift when swimming will mount Flying (so you can mount from the surface of water).
  • In Flyable areas will mount Flying (no way to mount ground, but why would you need to, since flying is always 100% ground speed now)
  • In Battlegrounds/Non-flyable will mount ground.
  • It's also shorter without the broken zone check, so room for more mounts in the random list :)
  • Validated: 4.0.3
  • Credit: based on the macro below, modified by beforan as noted above.

Random Smart Mount with Sea Horse in Vashj'ir

/run if not IsMounted() then local g,f,s={g,g,g},{f,f,f},{s,s,s} local t=(GetCurrentMapAreaID()==(610 or 614 or 615) and IsSwimming()) and s or (IsFlyableArea() and not IsShiftKeyDown()) and f or g CallCompanion("MOUNT",t[random(#t)]) end 
/dismount


Replace g,g,g, with your preferred ground mount slot numbers, f,f,f with flyers, and s,s,s with water mounts. If only one mount desired in any type, place one number in the {} with no comma's. The number of mounts you can list is limited by the 255 character macro limit.

  • Validated: 4.0.3
  • Credit: Corrected existing code by unknown, Qwerk of Alexstrasza

Simple Druid Flight Form, Aquatic Form, and otherwise Mount

 /cast [swimming] Aquatic Form
 /cast [flyable] Swift Flight Form
 /use [noflyable,noswimming] Black War Bear


Replace Black War Bear with your favorite mount. This should work anywhere, even underwater. You can use the seahorse in place of the Aquatic Form.

  • Validated: 4.0.3
  • Credit: Weylin of Mug'thol

Fly where possible, ride, dismount if mounted

/cast [nomounted,flyable] Flight Form
/run if not(IsFlyableArea()and IsMounted())then CallCompanion("Mount",2) else Dismount()end

This will work in any area. Replace the number of the mount with the desired mount, 1 is the first mount in your mounts list.

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 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)

Complex Ground and Flying mount macro with dismount

Right Click forces ground mount or dismounting while in flight

#showtooltip [flyable] Albino Drake; Great Red Elekk
/use [nobutton:2, flyable, nomounted] Albino Drake;[nomounted] Great Red Elekk
/cancelaura [noflying] [button:2]  Albino Drake
/cancelaura  Great Red Elekk

Since the "flyable" condition was fixed for Dalaran in patch 3.0, the only place the old standby macros from the past will not work properly is Wintergrasp. If it weren't for the Wintergrasp problem, my addon [Mounty] would have no purpose at all and could be replaced by the above macro. I am not certain if the macro will take into account the conditions of Cold Weather Flying, which could give another use to [Mounty].

As with the previous macro; simply replace the names of the mounts with the names of your preferred flying and riding mount. Spelling must be exact, and I advise you highlight the current name and shift+click the mount icon from your mount frame. This will place the name of the mount into the macro. The only exception may possibly be with the "Bronze Drake Mount" as it is named in your mount list. You may need to put "Bronze Drake" in the macro instead of "Bronze Drake Mount".

Ground and Flying mount macro that will not dismount you when flying unless you hold alt

Replace the names of the mounts with the names of your preferred flying and ground mounts. Works everywhere, only dismounts when you are not flying or if you hold alt while flying, and has no errors. Requires Cold Weather Flying in Northrend. Remove the last line if you don't ever want to dismount when flying (It's annoying trying to land while racing another for a node.)

#showicon
/use [flyable, nomounted] Swift Red Gryphon
/use [noflyable, nomounted] Black War Steed
/dismount [noflying, mounted]
/dismount [mod:alt, mounted]

And you can take it further too. For a priest you can set mod:ctrl to not only dismount you but cast levitate (just replace with slow fall(mages) or some parachute (engineers))

#showicon
/use [flyable, nomounted] Swift Red Gryphon
/use [noflyable, nomounted] Black War Steed
/dismount [noflying, mounted]
/dismount [mod:alt, mounted]
/cast [mod:ctrl, target=player]Levitate

So now holding ctrl-alt while activating macro will dismount you even in air and then cast a safty spell so you don't go squish.

If you are in Northrend and don't have Cold Weather Flying, you can use this macro, but it will flash an error on the screen when mounting.

#showicon
/use [flyable, nomounted] Ebon Gryphon
/use [nomounted] Acherus Deathcharger
/dismount [noflying, mounted]


  • Validated: 3.2.0
  • Credit: Sinful of Alleria (US)

A macro similar to the above for death knights that allows you to mount flying if available, ground if unavailable, override and mount ground even if flying is available, dismount on the ground, and dismount in flight with alt.

#showicon
/use [mod:shift, nomounted] Acherus Deathcharger; [noflyable, nomounted] Acherus Deathcharger; [flyable, nomounted] Winged Steed of the Ebon Blade
/dismount [noflying, mounted]
/dismount [mod:alt, mounted]

Works in 4.0.6, by Sinirina of Grizzly Hills (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 you're in is flyable or not, works for Dalaran depending if you are inside the city, then your ground mount will be selected or if you're 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 you're in Wintergrasp and if the timer is 0, it will then select your ground mount if so, but if you're 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 to the 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.3.3a
  • 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 with Flying Dismount

/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;if(IsMounted())then Dismount()else CallCompanion("MOUNT",f[random(#f)])end
  • Validated: 3.2.2.10505
  • Focus: Universal
  • Credit: Magumbadin of Sen'Jin, Xaeros of Shadowmoon, Faceeater of Nozdormu
  • Use: When you are mounted the macro will dismount you (even if you are flying - only difference from the above "Random Smart Mount"), 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!

Supercompact Smart Mount 3.3

/run if IsMounted()then return end local m if IsFlyableArea() and not (GetWintergraspWaitTime() == nil and GetZoneText()=="Wintergrasp") then m={a,b,c} else m={d,e,f} end CallCompanion("MOUNT",m[random(#m)])
/dismount
/run if IsMounted()then return end local m if IsFlyableArea() and not (GetWintergraspWaitTime() == nil and GetZoneText()=="Wintergrasp") then m={a,b,c} else m={d,e,f} end CallCompanion("MOUNT",m[random(#m)])
/dismount [noflying, mounted]
/dismount [mod:alt, mounted]
  • Validated: 3.2.2a and 3.3.0
  • Updated to fix will no longer cast second mount instead of dismount
  • Focus: Universal
  • They seem to have fixed the IsFlyableArea() script command, so this allows you to use a random mount. The second macro dismounts you, and dismounts you in-flight if you hold alt to click it.
  • Replace a,b,c and d,e,f with the list of your flying mounts and ground mounts, respectfully.
    • The list consists of the number of you mount as it appears in your pet tab on you character pane. (The first mount is 1, the last mount on the first page is 12, the first mount on the 2nd page is 13, and so on.)
    • You can have more or less than 3 in each list, just have a comma between each mount number.
  • Note: This macro is very similar to the one from above, it just allows you to use alt to dismount in air and does not show any errors.

Random Smart Mount 4.0 (Alliance version, english client)

/run n={"rake","ryp","rpet","qui"};g={G1,G2};z=random;s="Mount";m=g[z(#g)];if(IsFlyableArea())then i=0;while i<1 do m=z(200);for j=1,#n do b=({GetCompanionInfo(s,m)})[2];x=strfind(b or"",n[j]);if(x~=nil)then i=9;break;end end end end CallCompanion(s,m)
  • Validated: 4.0.1
  • Focus: Universal
  • Credit: Puriella of Gilneas
  • There is still no easy way to determine if a mount is capable of flying
  • Use: When you are in any non-flyable zone it will use one of your ground mounts. When you can fly it will put you on a flying mount.
  • Replace G1,G2 with a list of ground mounts (watch for 255 characters!). 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.)
  • It will look for certain parts in the mount name (p.e. "rake" finds "Red Proto Drake" as well as "Albino Drake", "ryp" will find "Ebon Gryphon" as well as "Cenarion War Hippogryph" or "Argent Hippogryph", "rpet" will find all sorts of "Carpet", and "qui" all "Vanquishers". You can localize your macro or adapt it to Horde (p.e. you could change "ryp" to "d R" for Wind Rider). But those parts should be unique to flying mounts, or there is a chance you may get a ground mount (p.e. "Swift" will find "Swift Green Gryphon" as well as "Swift Frostsaber"). And it is case-sensitive.
  • 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.

Random Smart Mount for 4.0.3 Shattering

/run g,f,c,t={G,G},{F,F}; if IsMounted() and not IsFlying() then Dismount(); return end; c=GetCurrentMapContinent(); if (c==3) or (c==4) and IsFlyableArea() then t=f else t=g end; CallCompanion("MOUNT",t[random(#t)]);
  • Older continents return true for isFlyableArea() now. This works with the latest patch. Enter your mount #s similar to other macros.

Random Smart Mount for 4.0.3 with modifier to force ground mount

/run g,f,t={G,G},{F,F}; if IsMounted() and not IsFlying() then Dismount(); return end; if IsFlyableArea() and not IsModifiedClick() then t=f else t=g end; CallCompanion("MOUNT",t[random(#t)]);
  • Older continents return true for isFlyableArea() now. This works with the latest patch. Enter your mount #s similar to other macros. If for some reason you are in an area flagged as flyable but you want to use a ground mount, hold down any modifier key (alt, shift, ctrl) to force the choice of a ground mount.


Mount Macro Addon

<<< This addon now works for mounting in Vashj'ir >>>

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 4.0.3. 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

Left/Right Click for Random Flying/Ground Mount

/run local m,f,g,c=GetMouseButtonClicked(),{1,2,4,11,13},{3,5,6,7,8};if m=="LeftButton"then c=f[random(#f)]else c=g[random(#g)]end;CallCompanion("MOUNT",c);
  • Use: Left-click to summon random flying mount, right-click to summon random ground mount. Replace the first set of numbers with your flying mounts, and the second set with your ground mounts. To find your mount number: open your mounts tab and count from top-left to bottom-right, starting on the first page. (ex: The first mount on page 1 is "1", the first mount on page 2 is "13")
  • Credit: Xaeros of Shadowmoon
  • Works in 4.0.3a

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: 4.0.3a
  • 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

Mount macros written before Patch 3.1 that have not been re-validated in newer patches can be found on the Old Mount Macros page.

Around Wikia's network

Random Wiki