IHML - I Have Macro Lol!
What it does
Important Notice: I am looking for someone to help maintain this addon. It's a great addon, I just don't have the time any longer.
Tired of manually having to open your macro window to swap macros for bosses? Running out of macro space because of all the different boss macros taking up a slot each? Getting sick of having to dig through your bags every time for those special daily quest items? Then IHML might be what you want.
IHML is an addon that gives you one macro which automagically changes what it is depending on what zone you're in or which BigWigs boss module is enabled. All you have to do is take the IHML macro (the addon creates this for you and you can find it in your macro window or by typing /ihml pickup) and place it on one of your action bars.
It comes preloaded with various macros for most if not all daily quests found in the game, and also provides marcros to help with boss encounters.
You can also add your own macros using the options menu (found by typing /ihml).
IHML will only use one macro slot and will work with any action bar addon that you can put a normal macro on. Due to addon limitations macros can't be swapped in combat but will instead be queued for swap as soon as possible.
French (frFR)
Change de macro selon la zone où vous vous trouvez ou selon les modules de boss BigWigs activés.
Simplified Chinese (zhCN)
随地点或首领模组变换宏
Traditional Chinese (zhTW)
隨地點或首領模組變換巨集
Where to get it
- WoW Ace - Alpha Quality
- Curse - Stable release
- WoWInterface - Stable release
Donations
I have setup a donation site via Plegie. Feel free to donate if you like this mod. I have put countless hours of time and effort into it along with many people who have helped me. I did not write this mod with the intent to make any money from it, I wrote it to help me with some needs that I saw in-game.
How to get it to work
You should have a macro named "ihml" that you can drag to the desired space on your action bar. You can find it among your normal macros or by typing /ihml pickup. If you logged in with all macro slots taken go to your macros and delete one from the general macros page (not the character specific). Then open the IHML configuration window (with /ihml) and click "Make Macro" on the options page.
Done! Whenever a BigWigs boss module load/reset or you enter a zone you have a macro for IHML will automagically swap to the correct macro.
Chat commands
- Show the configuration window.
or
/ihml
or/ihml config
/ihml show
- Place the IHML macro on your cursor, ready to be placed on an action bar where you want it.
/ihml pickup
Everything is configurable from the configuration window, so that's the only command you need to learn. There are some more commands available if you happen to prefer chat commands:
/ihml help
- Show a list of commands.
/ihml save
- Save any modifications to the current macro.
/ihml saveas "new name"
- Save modifications to a new macro. Notice the quotation marks. Use them if the name contains spaces.
/ihml rename "new name"
- Change name for current macro.
/ihml rename "macro" "new name"
- Change name for another macro.
/ihml delete "macro"
- Delete a macro.
/ihml delete
- Delete the current macro.
/ihml list
- List all available macros.
/ihml anything else
- Swap to the macro "anything else" if it exists. Notice the lack of quotation marks.
Macros
See the Default macros and Macro suggestions pages.
There are some special macros you can make apart from boss and zone macros.
- default - This macro will be swapped in when no other macro takes priority.
- default1 - This macro will be swapped in when no other macro takes priority and you are in talent spec 1 (if the option is enabled).
- default2 - This macro will be swapped in when no other macro takes priority and you are in talent spec 2 (if the option is enabled).
- party - Will be swapped in when you enter a 5-man instance. (NYI)
- raid - Will be swapped in when you enter a raid instance. (NYI)
- pvp - Macro for battle grounds. (NYI)
- arena - Macro for arenas. (NYI) Note that macro names are case sensitive. "Default" or "PvP" will not work.
Contributing Macros
If you have a common task that can be used in a macro for this mod, please make a ticket with the macro and other information.
Localization
Please see the documentation on Localization to help with translation.
Bug Reports
Please use the WoW Ace tracker to file bug reports. Posting bugs in the comments is not the place to do it.
Wish List
Please use the WoW Ace tracker to add suggestions and feature requests.
Bug Reporting
Please use the WoW Ace tracker to file bug reports.
GetActiveTalentGroup(isInspect,
isPet) was removed in WoW v
5.4.2.17688. The following changes should be made.50:
local GetActiveSpecGroup = GetActiveSpecGroup
839:
local activetalent = GetActiveSpecGroup()
Any update? Got the hack fix in then had to do another one, however I can not swap out macros at all so something went wrong - no errors though
FIX FOR 5.1
Replace the following lines:
555:
return CreateMacro(name, "INV_MISC_QUESTIONMARK", "", perChar)
894:
EditMacro(index, p.macroname, "INV_MISC_QUESTIONMARK", body, 1, 0)
1227:
image = function() return "INTERFACE\\ICONS\\INV_MISC_QUESTIONMARK", 56, 56 end,
1289:
EditMacro(GetMacroIndexByName(p.macroname), p.macroname, "INV_MISC_QUESTIONMARK")
1309:
EditMacro(GetMacroIndexByName(p.macroname), p.macroname, "INV_MISC_QUESTIONMARK", k)
THIS A HACK!!!
This hack forces all ihml icons to use the ? icon. In other words, specific macro icons will NOT work.
I'm currently looking into properly fixing the addon, but until then this will remove the green texture and restore it to mostly working order.
Here's the diff if you're lazy: http://pastebin.com/s7YuupN9
Will it work for 5.2? I really miss this addon.
Yes. That hack will make it work for 5.2.
I've recently been granted author rights to the project, so you should be seeing a more polished and working fix within the next few weeks or so.
Are there any plans to update this for 5.0.4?
From the looks of it, it's just a few simple lua tweaks and apparently getting macro icons has changed.
This is by far and away my favorite addon, it would be such a shame to see it stay broken :/
Changes need to be made to line 555 ( i think? it seems to work fine on its own) and line 1227 (needs a preface of 'INTERFACE\\ICONS\\').
Is there any where other than those two lines that the icon is changed?
Just as a reference:
local icons = GetMacroIcons(); GetMacroItemIcons(icons);
for i = 0, #icons, 1 do
if string.tolower(icons[i]) == "inv_misc_questionmark" then print[i] break end
end
This prints something like 5290 instead of the expected value of 1.
Mr Ackis just got married and asked me to check through his code.
So if you need this addon to work for WoW 4.3 then replace the following lines in IHML.lua with this:
At line 555 the new input is:
return CreateMacro(name, 'INV_MISC_QUESTIONMARK', "", 1, perChar)
At line 1227 :
image = function() return 'INV_MISC_QUESTIONMARK', 56, 56 end,
Fulgerul
Thanks! I pushed these changes in to the latest alpha.
Bug posted for addon being busted for 4.3. Any of the developers considering fixing the error?
Any chance of adding support for the other 2 major boss mods?
Deadly Boss Mod and DXE
You have a bug with your CreateMacro(). You used the function like this,
CreateMacro(name, 1, "", 1, perChar)
However, tutorial and blizzard code says to use it like,
CreateMacro(name, 1, "", perChar, 1)
Feature request: Global settings, and not per character ? Thanks
You have a bug with your GetMacroInfo(). It uses x*18+18
However, the tutorial and blizzard code recommends to use, x*18+36
Slots are 1 through 36 for general macros, 37 through 54 for per-character macros.
Feature request: Save and use the macro in the general tab when the character tab is full? Thanks
report error
51x IHML-v2.8-1-gcd5489e\IHML.lua:660: bad argument #1 to 'strfind' (string expected, got nil) IHML-v2.8-1-gcd5489e\IHML.lua:660: in function `?' CallbackHandler-1.0-6:147: in function <...ags\libs\CallbackHandler-1.0\CallbackHandler-1.0.lua:147> <string>:"safecall Dispatcher[1]":4: in function <[string "safecall Dispatcher[1]"]:4> <in C code>: ? <string>:"safecall Dispatcher[1]":13: in function `?' CallbackHandler-1.0-6:92: in function `Fire' AceEvent-3.0-3 (AdiBags):120: in function <...ce\AddOns\AdiBags\libs\AceEvent-3.0\AceEvent-3.0.lua:119>
report a error
AceLocale-3.0: IHML: Missing entry for 'Thunder Ridge':\nIHML-v2.71-3-g495600e
IHML.lua:490: in main chunk\n\n
-Has this project been abandoned?
It still does not function with BW, DBM, or any other boss mod.
the last new version has three error
AceLocale-3.0: IHML: Missing entry for 'm_allianceblind':\nIHML-2.7 Beta
IHML.lua:435: in main chunk\n\n
-AceLocale-3.0: IHML: Missing entry for 'The Crimson Dawn':\nIHML-2.7 Beta
IHML.lua:451: in main chunk\n\n
-AceLocale-3.0: IHML: Missing entry for 'The Silver Blade':\nIHML-2.7 Beta
IHML.lua:452: in main chunk\n\n
-For instance, I would like a custom macro displayed when I target a particular mob, so like if I target a rabbit, the macro would change to "/hello" or whatever.
Is this still possible? Thanks for any input! :)
For the supject "DBM support", please see
http://www.wowace.com/addons/ihml/tickets/11-dbm-support/#comments