Macro Toolkit

Action Bars Login to Add Favorites
  • World of Warcraft
  • 7,531 Monthly Downloads
  • Supports: 7.3.0
  • 1,370,099 Total Downloads
  • Updated Sep 9, 2017
  • Created Nov 11, 2012
  • 839 Favorites
  • Project Site
  • Comments
  • Release Type: Release
  • License: GNU General Public License version 2 (GPLv2)
  • Newest File: v7.3.0.2
Support development! **

About Macro Toolkit

Macro Toolkit

Please share your macros and custom commands in our forum:

If you need to report a bug please use the ticketing system on Curseforge. I don't get notifications of comments left on Curse, so if you need me to see something,either PM me or comment/ticket on Curseforge.

Macro Toolkit is an enhanced macro frame that adds the following features to the default macro UI:

  • Macro Shortening
  • Key Binding and key bind only macros
  • Extended Macros
  • Condition Builder
  • Extended, Searchable Icon Frame
  • Syntax Highlighting
  • Syntax Checking
  • Drag and Drop Moving
  • Movable Macro Frame
  • Scalable Macro Frame
  • Insert Special commands
  • Easy Slot Selection
  • Backup
  • Restore
  • Clear all Macros
  • Share Macro
  • Add Custom Slash Sommands
  • Slash Commands for Common Lua Script Functions
  • Copy macros between characters
  • ElvUI Skin
  • Add certain types of macro to a data broker (new in

Using Macro Toolkit

By default Macro Toolkit overrides the built in macro UI and can be accessed in the same way. If you chose to keep the default UI as well, Macro Toolkit can still be accessed using the following slash commands:

  • /mac
  • /mtoolkit
  • /macrotoolkit

Be warned though that if you chose this option the two macro frames may not play well together .

Macro Shortening

Macro Toolkit will attempt to shorting your macros without affecting functionality. It does by looking for the shortest options for each command used, removing unnecessary spaces and optionally replacing known common Lua script functions with Macro Toolkit commands. This is more involved than it may sound, so it's worth checking that nothing has been removed that you kinda wanted left alone once you've used this function.

Key Binding and key bind only macros

Macros can be bound directly to keys without the need to place the macro on an action bar. Macro Toolkit also has a special tab that adds 18 keybind only macros - these macros can only be used with key binds, they cannot be put onto action bars.

Extended Macros

Macro Toolkit can extend macros beyond the 255 character limit.

Condition Builder

Macro Toolkit has a tool to help you build conditional statements for use in macros using dropdown boxes with easy to understand descriptions of the conditions.

Extended, Searchable Icon Frame

When creating a new macro or changing an existing one, the default macro UI offers you a small window showing 15 of the available icons for your macro at a time. As of version Macro Toolkit uses LibAdvancedIconSelector to make more icons visibible at the same whilst also offering a search facility and icon filtering by means of options.

Syntax Highlighting

Macro Toolkit can optionally highlight commands, conditions and parameters in macros by changing the colour (yeah, I'm British :-)) of each keyword. These colours can adjusted using the in game options menu.

Syntax Checking

Basic syntax (which can be switched off if required) is performed on the macro as you type (or after they've been typed). Any errors found, along with suggestions for mistyped keywords are shown in an adjacent window.

Drag and Drop Moving

Macros can be moved from General to Character Specific, or vice versa by a simple drag and drop operation

Movable Macro Frame

Macro Toolkit's frame can be moved to anywhere you want it on your screen. The position will be remembered for future use.

Scalable Macro Frame

Macro Toolkit's scale can be adjusted. This allows you to increase or decrease the size of the frame in relation to the rest of the game UI which can help considerably in making your macros easier to read.

Insert Special Commands

Macro Toolkit contains a dropdown list of common Lua script functions used in macros that can be inserted into your macro. The scripts have been converted to slash commands - see below for an explanation of those commands

Easy Slot Selection

To make is easier to work out which slot number equates to which equipment slot on your character, Macro Toolkit includes a dropdown that list all available slots by name, and inserts the appropriate number into your macro.

Backup / Restore / Clear All

Macros can be backed up to your saved variables file and restored later. Macro backups are performed by group, so, if you have the character specific tab selected, then only those macros will be backed up. The same is true for restore. There is also a function to clear all your macros (subject to which tab is selected) if you just want to wipe them all and start again.

Share Macro

Macro Toolkit will print the selected macro to either the Guild, Raid or Party frame if required so that you can share you macros with other people. As of version macros can also be sent directly to other Macro Toolkit users, either individually or to whole group.

Add Custom Slash Commands

If you have a Lua script function that you often use, or just want to shorten, you can create your own custom slash command and add the script to it. Parameters to your script can be accessed using the variables arg1, arg2, arg3 and arg4.

Copy macros between characters

When you log into a character with Macro Toolkit enabled, that character's macros will be recorded (with the right option set) so they can be used with other characters.

Slash Commands for Common Lua Script Functions

Macro Toolkit has the following built in slash commands designed to be used within macros:

  • /mtce - Clears UI Errors
  • /mtex - Stops errors being sent to the Errors Frame
  • /mteo - Allows errors to be sent to the Errors Frame
  • /mtrp - Summons a random non combat pet
  • /mtso - Enable sound effects
  • /mtsx - Disable sound effects
  • /mtrt - Set raid target marker
  • /mtev - Exit vehicle
  • /mtmc - Print the player's map position
  • /mttc - Toggle display of cloak
  • /mtth - Toggle display of helm
  • /mtep - Eject all passengers
  • /mtsg - Sell all grey quality items at the vendor screen
  • /mtdg - Destroy all grey quality items
  • /mtnb - Print a list of all people in your raid with no food buff
  • /mtnf - Print a list of all people in your raid with no flask buff
  • /mtfm - Summons a random favourite mount, like the mount journal button, but this command accepts conditionals
  • /mtc - Add conditionals to conditionally execute insecure commands (i.e. not /cast, /target, etc) - new in

ElvUI Skin

For those of you that use the excellent ElvUI, MacroToolkit will skin itself to match. Note that this will only work for ElvUI users. Version adds an option to switch off the ElvUI skin for ElvUI users if desired.

Bug Reports / Change Requests

If you find any bugs or have any suggestions for improvements, please use the ticketing system, accessible from the following link:


Macro Toolkit is currently localised for all WoW game client locales. If you would like to contribute to translating Macro Toolkit, please use the following link:

Please note that the quest names and NPC names are not included in the locale and will still appear in English.


  • Dohram - for features and testing
  • HOPE - for very helpful and patient testing. Added: canexitvehicle condition, credit to Faithwarrior Fixed: Missing PlaySound replacements, credit to EmmetOtter Changed: Update for patch 7.3 Fixed: Truncrated XML file Changed: ToC update
Fixed: Ticket 162
Fixed: Ticket 163 Changed: ToC update
Partial Fix: Ticket 159
Fixed: Ticket 155
Fixed: Ticket 154
Fixed: Ticket 151
Added: search for icon by spell id - ticket 149
Added: pvptalent condition
Added: button to reset position on screen - ticket 41
Changed: minor reworking of the condition builder for the talent conditions
Changed: reworked showtooltip error
Added: Feature to hide the character reduction popup - ticket 147
Fixed: ElvUI skin for new 'Go Large' button
Added: Feature to increase the size of the icon popup frame by 1.5
Minor adjustments to icon search
Fixed: Ticket 121
Fixed: Ticket 131
Fixed: Ticket 136
Fixed: Ticket 139
Fixed: Ticket 134 (fix by picro)
Fixed: Ticket 129
Fixed: Ticket 132
Changed: Updated for 7.0
Fixed: Ticket 124
Fixed: Ticket 127
Fixed: Ticket 128
Fixed: Ticket 117
Fixed: Ticket 114
Fixed: Ticket 115
Removed orphaned macro detection
Added macro delete confirmation
Changed: Updated toc for 6.2
Fixed: Tickets 106, 107
Fixed: Ticket 105 - add "channelling" as a valid condition
Fixed: Tickets 100, 101
Fixed: Ticket 67
Changed: Dynamic icons disabled for extended macros whilst I work out the code
Fixed: Tickets 88, 89 & 90
Fixed: Tickets 86 & 87
Fixed: Tickets 84 & 85
Fixed: Lua error seen by some users in the UpdateIcon function (properly this time)
Fixed: Lua error seen by some users in the UpdateIcon function
Fixed: Ticket 81
Fixed: Ticket 80
Fixed: Changes made to dynamic icon function
Fixed: Extended macros should now update their icon automatically, ticket 21
Added: Option to add certain types of macro to a data broker, ticket 43
Added: Option to prevent Macro Toolkit from being skinned for ElvUI
Fixed: Ticket 76
Fixed: Infinite loop in shortening algorithm affecting macros using noexists
Fixed: Ticket 70
Fixed: Ticket 69
Fixed: Ticket 67
Fixed: Ticket 68
Fixed: Macro shortening now correctly recognises Macro Toolkit slash command equivalents
Added: Orphaned macro check
Fixed: Ticket 65
Fixed: Keybind errors reported by hubot
Fixed: Better (i.e. some) handling of blocked actions during combat
Added: Summon Random Favourite Mount - ticket 64
Fixed: Ticket 62
Changed: Renamed LibAdvancedIconSelector to avoid conflicts
Fixed: Binding issue
Added: Advanced icon selection is back
Fixed: Missing talent localisation
Added: Additional macro shortening (ticket 52)
Fixed: Removed spam on macro upgrade
Added: Talent condition
Fixed: Icon selection issue - LibAdvancedIconSelector now removed
Changed: Updated for 6.0
Fixed: Corrected macro issue from previous release, sorry all :-(
Fixed: Ticket 34
Fixed: Ticket 33
Fixed: Tickets 31 and 32
Changed: Updated ToC for 5.4
Fixed: Slot insert button now remains in place when increasing Macro Toolkit's height
Fixed: Correctly anchored the error frame in ElvUI, reported by tehnerdbox
fixed: Ticket 26
Fixed: Ticket 22
Changed: ToC update for 5.3
Fixed: Ticket 18
Changed: ToC update for 5.2
Added: Support for Macro Box extended macros
Changed: Main icon
Fixed: Item link clicking issue reported by SodiumIon
Added: Key bind only macros
Added: Macros can now be copied from other characters
Changed: Macro Toolkit no longer responds to the escape key, so all keys should now work as expected
Fixed: Ticket 12
Fixed: Ticket 14
Fixed: swapactionbar no longer shortens to swapbar
Added: Interface customisation options
Added: Macros can now be bound to keys without placing them on actionbars
Changed: Shorten now changes "Spellname1;Spellname1" to "[]Spellname1"
Changed: Code optimisations
Changed: Improved castsequence validation
Fixed: ElvUI skin for sharing popup
Fixed: Corrected "No Flask" message
Fixed: Stopped popup from opening on login, oops >.<
Added: Button for MacroBox
Added: SELFCAST to modifiers list
Changed: Macro icon frame now uses LibAdvancedIconSelector for search and filter functions, by request of NickyJean
Changed: Frames now respond to the escape key again
Changed: Improved macro sharing, macros can now be sent directly to other Macro Toolkit users
Fixed: Issue with formatting empty conditions
Fixed: Issue with icons for extended macros
Fixed: Issue with formatting long commands
Fixed: Macros will now save after being shortened, reported by Gennoken
Added: /mteo and /mtex
Fixed: macro renaming no longer recreates the macro, reported by HOPE
Added: Preview of condition in condition builder
Changed: Removed "playertarget"
Fixed: Stop scaling making the frame move
Added: UI is now scaleable, by request of Ishmael
Added: Options button added to main UI
Fixed: Extended macros now correctly display tooltips - reported by HOPE
Fixed: Links can now be embedded into macros
Fixed: Macro Toolkit no longer prevents the spell book from opening
Changed: Update ToC for 5.1
Fixed: Ticket 10 by HOPE
Changed: Extend number of visible icons in the popup frame
Added: Conditions builder
Added: More conditional shortening
Fixed: Various bug fixes
Fixed: Tickets 3 and 6 by Baihu
Fixed: Tickets 4 and 5 by Iaincar
Fixed: Ticket 7 by gleiNNek
Fixed: Minor bugs
Changed: Updated shortening algorithm
Fixed: Condition parsing issue
Fixed: Ticket 4, reported by Iaincat
Added: Extended macros by request of Dohram
Added: Button on default macro frame, ticket 2, by Baihu
Fixed: Various bugs
Initial release
  • 1
  • 2
  • 3
  • 4
  • 5
  • Next


  • To post a comment, please or register a new account.
Posts Quoted:
Clear All Quotes