WoW \”Out-of-combat Do\” macro button addon Dragonflight/Wrath of the Lich King Classic 2024
wow addon \”Out-of-combat Do\” macro button

\”Out-of-combat Do\” macro button

Game Version: 7.1.0
Total Downloads: 1,100
Updated: Jan 10, 2017
Created: Oct 8, 2016
download \”Out-of-combat Do\” macro buttonDownload Earlier Versions

Earlier Versions

Name Size Uploaded Game Version Downloads
v4 release 1.54 KB Jan 10, 2017 7.1.0 682 download \”Out-of-combat Do\” macro button v4 releaseDownload
v2 release 1.04 KB Oct 8, 2016 7.0.3 307 download \”Out-of-combat Do\” macro button v2 releaseDownload
v1 release 1.02 KB Oct 8, 2016 7.0.3 55 download \”Out-of-combat Do\” macro button v1 releaseDownload
305c7411fa4a-alpha alpha 3.00 KB Jan 27, 2017 7.1.5 29 download \”Out-of-combat Do\” macro button 305c7411fa4a-alpha alphaDownload
r3 alpha 1.14 KB Oct 8, 2016 7.0.3 16 download \”Out-of-combat Do\” macro button r3 alphaDownload
r1 alpha 1.08 KB Oct 8, 2016 7.0.3 11 download \”Out-of-combat Do\” macro button r1 alphaDownload


Share this:

There are many tasks that can be accomplished with a simple macro without going through all the hoops of creating addons. The only missing thing is ability to create dynamic macros that can, for example, find best food in your inventory and use it. The ability to do so is there: Blizzard gives us SecureActionButtons that can be freely reprogrammed out-of-combat, but they require a rather large setup that won't fit in every macro.
This addon offers a preset button with all the required boilerplate code that can be quickly set to any macro with a short command and clicked afterwards.


All functions accept both dot and colon (. and 🙂 addressing so you don't have to remember which one to use. All command are automatically ignored in combat and button is cleared to empty state right after you click it so your next click won't accidentally reuse whatever you programmed last if you click macro in combat. All commands overwrite whatever was previously bound to button, so for example, even if you call OOCDo.Use with ID of item that you don't have, previous command will be replaced with "do nothing".

  • Setting a command to be invoked on next click:

/run OOCDo.MacroText("/use 1 1")

OOCDo.Macro, OOCDo.M, and OOCDo.T are provided as shorter aliases.

  • Actually perform whatever is currently bound to button:

/click OOCDo

  • Try to find and use one of items from list (uses item IDs), can be used in conditionals – returns true if any item was found and nil otherwise:

/run OOCDo.Use(80610, 113509)

  • Try to find and use one of spells from list (uses spell IDs), can be used in conditionals – returns true if any item was found and nil otherwise:

/run OOCDo.Cast(190336)

Some examples

  • Find and use any Artifact Power item in bags (also requires LibTTScan-1.0 to scan tooltips to find those AP items):

/run for b=0,NUM_BAG_FRAMES do for s=1,GetContainerNumSlots(b) do local i=GetContainerItemID(b,s) if i and LibStub("LibTTScan-1.0").GetItemArtifactPower(i,1) then OOCDo.Use(i) end end end
/click OOCDo

  • Eat mage solo or group food and conjure a new stack if there are none in inventory:

/run if not OOCDo.Use(80610, 113509) then OOCDo.Cast(190336) end
/click OOCDo

  • Use Ancestral Recall if it not on cooldown or Hearthstone:

/run OOCDo.M(GetSpellCooldown(556) == 0 and "/cast " .. GetSpellInfo(556) or "/use item:6948")
/click OOCDo


2017-01-10 v4

  • New functions to set up using items and casting spells: .Use / .Cast.

2016-11-03 v3

  • 7.1 TOC update

2016-10-08 v2

  • ./: adressing fix.

2016-10-08 v1

  • Initial release.


Add a comment