Mountiful
Mountiful is a mod that helps you randomly select and use a mount or pet based on pre-defined categories.
Features
- A new macro named 'Mountiful' should appear in your general macros. Click it to summon your mount. The icon should always show the next mount that will be cast.
- Right-click to summon a ground mount. Shift-Right-Click to change the icon.
- A new button should appear in your spell interface, below the default Mount button, that brings up the interface
- /mountiful, /mount, and /mo will also bring up the interface.
- Single-clicking on the mount will summon that mount/pet.
- 24 mounts are shown at once and are grouped by speed and ground/flying.
- Allows you to customize which mounts are used for each category
- Safeflying feature will keep you from dismounting in the air when turned on
- Support for Pets
- Support for Keybindings
- Now works with druid flight forms! (You must use either the keybindings or the macro. The /mount command will not work for flight forms)
- Auto dismiss pets when you stealth (Rogue love :)
Commands
Mount Commands (Depreciated)
- /click Mountiful - Casts the best mount for your location. Supports druid flight forms.
- /mount smart - randomly selects the best mount for your location. Does not work with druid flight forms.
- /mount smart pre - randomly selects the best pre-selected mount for your location
- /mount <category> - randomly uses a mount/pet from that category
- /mount <category> pre - randomly uses a pre-selected mount/pet from that category
- /mount add <name> - adds a new mount category (or just use the 'add' button in the interface)
- /mount remove <category> - removes an existing category
- /mount safeflying - toggle safeflying on/off
- /mount autoremount - If you want the first click/press to Dismount, and then the 2nd click/press to cast another mount (As opposed to a mount always being summoned when you click/press)
- /mount rebuildselections - rebuilds selections database (fixes graphical glitches and/or wrong mount being summoned)
- /mount preselecteddefault - Sets whether the automated macro uses preselected categories
- /mount settings - See what all your settings are currently at
- /mount reset - Removes settings and categories. Use this as a last resort if things aren't working.
- /mount help - See this text in-game
- /mount autopet - Automatically summon a companion when you mount.
Althought Blizzard has updated their UI in 3.2 so that IsFlyableArea() works in more places it should (i.e. sewer pie and landing areas of Dalaran), you still do specific checks in Dalaran that override the results, causing it not to work properly in the sewer pipe (lines 985 - 992). If I remove all the checks, it works beautifully in Dalaran (I haven't checked Wintergrasp yet).
Also, Mountiful_Loaded() does not seem to get called when you first log in, or when you reload your UI. This causes my keybinds to fail until I manually execute a /mount command (which causes Mountiful_Loaded() to be called, updating the selections table). Here is the error I get:
Mountiful-r140\Mountiful.lua:1012: attempt to get length of field 'ExtremeFlying' (a nil value)
<string>:"MOUNTIFULBIND2":1: in function <[string "MOUNTIFULBIND2"]:1>
Sorry if there isn't a stack trace, BugSack doesn't seem to provide that.
Message: Interface\AddOns\Mountiful\Mountiful.lua:298: attempt to index global 'Mountiful_Vars' (a nil value)
Time: 08/20/09 18:50:22
Count: 1
Stack: [string "Interface\FrameXML\BasicControls.xml:
[C]: ?
Interface\AddOns\Mountiful\Mountiful.lua:298: in function `Mountiful_LoadSavedVars'
Interface\AddOns\Mountiful\Mountiful.lua:255: in function `Mountiful_Loaded'
Interface\AddOns\Mountiful\Mountiful.lua:425: in function `Mountiful_Command'
Interface\AddOns\Mountiful\Mountiful.lua:93: in function `value'
Interface\FrameXML\ChatFrame.lua:3526: in function `ChatEdit_ParseText'
Interface\FrameXML\ChatFrame.lua:3176: in function `ChatEdit_SendText'
Interface\FrameXML\ChatFrame.lua:3200: in function `ChatEdit_OnEnterPressed'
[string "*:OnEnterPressed"]:1: in function
Locals: (*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = nil
(*temporary) = "attempt to index global 'Mountiful_Vars' (a nil value)"
Mountiful_Defaults = {
Categories = {
}
Categories_Selections = {
}
Options = {
}
}
Have fun with it ** If you can fix this I'll donate! Promisse ;)
This is during a wg battle. When its not being fought over then it works fine.
I assume yall tried '/mount reset'?
/mount reset Should fix it now. You MIGHT have to do it twice, to clear the blizzard bak files (backups). try it now.
i just tried installing the latest few versions from scratch (no saved settings lua file) and it does not work.... the file that gets created contains:
Mountiful_Vars = nil MOdebug = nil
and everything i try to do in game causes a error:
Message: Interface\AddOns\Mountiful\Mountiful.lua:327: attempt to index global 'Mountiful_Vars' (a nil value)
even rebuilding selections....
do i need to copy my old backup settings lua file to make this work? i guess so... but...
Now a little question, I was wondering if you ever considered the chance of adding a "stupid" little option to Mountiful, making so you put a txt or a lua file somewhere in the addon director, following a certain format of sentences divided by ";" symbol, and the addon uses randomly one of those sentences and outputs it on the /say chat each time you call for a mount.
Ever thought about adding something like that? Or... dunno, maybe it's offensive that I even thought about such a stupid feature. Hope I didn't make anybody mad :D
"Completely Exit World of warcraft
Go into your world of warcraft folder.
Go to WTF/account/Accountname/Realm/Character/SavedVariables folder
Find the files Mountiful.lua and Mountiful.lua.bak
delete them "
Please do it yourself and test.
Now when using the bindings key the add-on just open the menu windows.... :(
Please, test your add-on before posting. Here a suggested testing protocole :
Fist protocol :
1) exit WoW
2) delete YOUR mountiful.lua files in WTF folder
3) launch Wow
4) use the /mount command
5) Check what's appens
6) if all is OK bind a key
second protocol
1) exit WoW
2) delete YOUR mountiful.lua files in WTF folder (YES, AGAIN !)
3) launch Wow
4) DONT use the /mount command
5) JUST USE THE BINDING KEY. Check what's appens
Thanks for the hard work, your add-on is impressive. But please, please, test it...
..\AddOns\Mountiful\Mountiful.lua line 298:
attempt to index global 'Mountiful_Vars' (a nil value)
By the way, 3.2 fixed a lot of the in-game API regarding the detection of a flyable or non-flyable area. In fact, the only part that didn't get fixed is Wintergrasp during a battle. (Not during battle works fine as a flyable area.)
This mod could just use Blizzard's API regarding flyable-nonflyable everywhere else in the world, including Dalaran (fixed in 3.2) and would only need to step in for that one place/situation.
#showtooltip [noflyable] Black War Steed; [flyable] Turbo-Charged Flying Machine
/use World Enlarger
/mount smart
When I'm in Dalaran's sewer tunnel, the icon changes to a flying mount but the mount that actually is summoned is a ground mount. It's interesting that the icon changes but the mount summoned does not...