Hey guys, sorry for deleting my original post. I made a few changes to this macro to help make it the “perfect” mount macro and now works with all changes from Patch 3.1!
Purpose:
The main focus of this macro is to mount you on the appropriate mount depending on where you are in WoW.
Here’s two lists that specify where each mount type will occur:
Ground Mount:
-Dalaran
-Wintergrasp
-Kalimdor
-Eastern Kingdoms
-In an instance (ie. Ulduar) *NEW*
-Swimming anywhere *NEW*
Flying Mount:
-Anything not listed above
-Northrend
-Outlands
Creation:
There is a small modifcation required on your part to get this to work. Please refer to the picture below.

NOTE: If you have to do to Page 2 for example. The mount numbers will be 13 – 24.
Notice the numbers over the mount slots. To access a specific mount of your choice, you need to use the number the applies to the mount you would like to use. In my example, I will be using the “Black War Mammoth” (Mount #2) and the “Bronze Drake” (Mount #3).
Template:
/run m=”MOUNT”n=GetZoneText()if(IsMounted()~=1)then if(GetSubZoneText()~=”Krasus’ Landing”and(n==”Dalaran”or n==”Wintergrasp”or IsInInstance()or IsFlyableArea()~=1 or IsSwimming()))then CallCompanion(m,<ground mount number>);else CallCompanion(m,<flying mount number>);end else Dismount();end
Example:
/run m="MOUNT"n=GetZoneText()if(IsMounted()~=1)then if(GetSubZoneText()~="Krasus' Landing"and(n=="Dalaran"or n=="Wintergrasp"or IsInInstance()or IsFlyableArea()~=1 or IsSwimming()))then CallCompanion(m,2);else CallCompanion(m,3);end else Dismount();end
Please let me know if this doesn’t work for you. It was a real challenge to fit everything in the macro. I had to compact it has much as humanly possible to add the swimming and instance conditions. Also some more great news is this macro takes up 252/255 characters, so there’s still room if you need to change the mount number(s) to a double digit!
Enjoy!
-Zurom




