ConsumableTracker

NEWS: Version 2.x now supports The Burning Crusade.
A nifty little tool that helps you keep track of your active buffs and consumables. Especially handy when you're raiding
and have a lot to keep up.
Each row tracks one of three things:
- Items: consumables that grant a buff. Potions, elixirs, foods, flasks.
- Enchants: temporary weapon enchants. Poisons, oils, imbues, sharpening stones. Clicking an enchant applies it to
the bound weapon slot.
- Buffs: spell IDs to track, whether you cast them yourself or receive them from someone (Power Word: Fortitude,
Mark of the Wild). If you can cast it, click the icon to recast even in combat.
Each row has its own warning threshold and an optional stock target for raid prep. Buffs that consume a reagent (Holy
Candles, Soul Shards) can be linked to that reagent, so the row counts it the same way an items row counts potions.
| Compressed |
Expanded |
 |
 |
Edit mode
In Edit Mode, drag items and spells from your bags or spellbook to add them. Per-row options cover renaming, reordering,
hiding, warning threshold, stock target, and linking a reagent for buffs that consume one.

Warnings
When a tracked buff is about to expire, the row turns yellow and plays a sound or prints a line in chat.
The threshold is configured globally and can be overridden per row. Setting a row's threshold to zero silences it.
Rows that track charges (rogue poisons) also warn when the charges-remaining hit a low limit.
Sound and chat warnings can be turned off entirely in the addon options, and the warning sound itself is configurable.

Profiles
Each character can have multiple profiles and switch between them in the addon options. You can also bind a profile to
your primary and secondary talent spec, in which case the addon swaps when you change spec. Handy if your raid and 5-man
setups differ, or if you want different consumables for AoE vs. single-target on a hybrid.

Share profiles via chat
Profiles can be shared from the addon options. Sharing drops a clickable link into chat. Anyone on the other end who has
ConsumableTracker sees a clickable link, gets a confirmation popup, and the profile imports.

Stock overview
The addon also indexes every tracked item, so you can see how stocked you are. Hover the bar to get a tooltip with
counts. Any row you've stocked above its target turns green, which makes the list quick to scan before raid.

Note: this addon adds a line to the game tooltip showing Item and Spell IDs on hover. If another addon (such as ElvUI)
already shows these, you can turn it off in the addon options.
Defaults
The addon ships with reasonable defaults for each class. You can customize them freely, and /ct reset puts the current
profile back to the class default. This wipes whatever was in the profile.
Manual Configuration
A profile is a LUA table. Normal setup is done in the UI, but editing the table by hand is there if you need it, such as
if creating a manual buff-to-item mapping or pasting in a profile someone shared outside the game.
Two ways to work with the table:
- Edit in-game. Open the Advanced Configuration editor from the addon options (or
/ct config). The editor
validates as you type. If the table is invalid, you get an error pointing at the bad row instead of broken bars.
- Share as plain text. Copy the table out of the in-game editor and paste anywhere. Good for publishing a fixed
list, like a class' "Naxx consumes" template.

Sample
{
{
name = "Demon Armor",
buffs = {
11735 -- rank 5
},
warning = 120
},
-- Comma-separate each row
{
name = "Defense Elixirs",
items = {
13445, -- Superior Defense
8951, -- Greater Defense
5997 -- Minor Defense
}
}
}
Rules
Each "row" represents one set of buffs, consumables or enchants that either don't stack at all or that you don't
expect to have at the same time. Examples:
- Blasted Lands consumables (Lung Juice, ROIDS, …).
- Elixir of Superior Defense and Elixir of Greater Defense.
- Arcane Elixir and Greater Arcane Elixir.
Each row must have exactly one of items, enchants or buffs (mutually exclusive). The name property is also
required. Optional properties: warning, hidden, clickable, slot (enchants only), minimum, ingredient (
buffs only).
Reference
name
The name of the buff row. This is used when no buff tracked on the row is active.
warning
The global warning threshold (see options) can be overridden for each row. This is useful if you want different
thresholds. You can set this to zero to disable a warning entirely for that row. This parameter is optional.
hidden
Hides the row if true. Identical to toggling the Hidden attribute in the UI.
clickable
If set to false, the items/spells on the row cannot be clicked to be consumed. This is useful for very expensive
consumes as it makes you less likely to click by mistake.
items
items is a list of items the row tracks. Most rows hold consumables that grant a buff, but items without an on-use
effect are also allowed — the row then works as a pure checklist driven by minimum (see below). For instance, if you
wanted to track your defense potions:
{
name = "Defense Elixirs",
items = {
13445, -- Superior Defense
8951, -- Greater Defense
5997 -- Minor Defense
}
}
--or if an item does not map to a buff directly and the addon does not know about it, you provide objects instead
with a list of ids (items) and a buff property that indicates which buff the items give. Since none of these stack,
they all go on the same row. This is rarely necessary in practice.
{
name = "Example mapping",
items = {
{ ids = { 184938 }, buff = 22888 } -- Maps Dragonslayer to a Supercharged Chronoboon.
}
}
buffs
buffs must be a simple array/list of spell IDs that you want to keep track of on that row. This example tracks the
three warlock pet sacrifice buffs and Blood Pact. Since the first three override each other, and you rarely have blood
pact at the same time (you'd have to be 2 warlocks in the group), you could put these on the same row.
Be sure to use the ID for the correct rank of the spell you want to track - you can add multiple ranks of course, as
they would not stack.
{
name = "Blood Pact/Sacrifice",
buffs = {
18789, -- Burning Wish
18790, -- Fel Stamina
18791, -- Touch of Shadow
11767 -- Blood Pact
}
}
enchants
enchants must be a list of item IDs that provide a temporary weapon enchant, such as Wizard Oils, Sharpening Stones,
Rogue poisons or Shaman imbues. The IDs in this list must be a valid item for a temporary enchant or a Shaman imbue
spell. You are allowed to mix poisons and imbues with regular enchant items for the same slot.
Clicking any tracked enchant applies it to the slot it's bound to (mainhand or offhand).
Rogue poisons will track either the remaining charges or the remaining duration, whichever is lower (percentage-wise).
{
name = "Wizard Oil",
enchants = {
20749, -- Brilliant Wizard Oil
20750, -- Wizard Oil
20744 -- Minor Wizard Oil
},
slot = "mainhand"
}
slot
Only used for rows containing enchants. Must be either "mainhand" or "offhand". You can have multiple rows for
the same slot; the only constraint is that a given enchant id (item or imbue spell) appears at most once per slot
across all rows.
minimum
A stack-count threshold (positive integer). When the row is inactive but you own at least this many of the tracked
consumables, the row turns green to show you're stocked. Useful for raid prep.
Allowed on:
items rows: counts the items themselves.
enchants rows: counts the enchant items (oils, sharpening stones, poisons).
buffs rows: only valid when paired with ingredient, and counts the reagent.
{
name = "Sharpening Stone",
enchants = {
23529, -- Adamantite Sharpening Stone
18262, -- Elemental Sharpening Stone
12404 -- Dense Sharpening Stone
},
slot = "mainhand",
minimum = 20
}
ingredient
The item ID of a reagent that the tracked spell consumes when cast. Soul shards, ankhs, holy candles, that sort of
thing. Only meaningful on buffs rows. Pairs with minimum to count the reagent and colour the row.
{
name = "Prayer of Fortitude",
buffs = {
21562 -- Prayer of Fortitude (rank 1)
},
ingredient = 17028, -- Holy Candle
minimum = 20
}