clcInfo - The Paladin's Complete Guide

Thought I'd get some useful information out to the community regarding what is, I think, the best Cataclysm addon ever. And yes, I know Cataclysm technically isn't even out yet: That's just how good it is.

Before we begin though, this is going to be a 3-post tutorial, so please wait a few minutes for the forums to let me post the second and third parts :P ...

1. What is clcInfo?
clcInfo is an addon that combines several of the most important combat functions into one small, nifty and HIGHLY customisable addon. It can track everything from buffs and debuffs to holy power, and also comes with the ability to set up a rotation tracker for several classes (with more to come). For example, I use it in PvE to track my key Ret cooldowns & procs, how much Holy Power I have, and also have it tell me which button to push next. No more staring all over my screen to track everything from Judgement's cooldown to Holy Power - I can now stick it all in the centre of my screen where I want it.

2. Where can I get it?
Curse ( is the best place to go. I'd also recommend getting the Curse Client, as it makes updating most of your addons a lot easier than doing it manually. Install it the same way you would any addon.

The addon's author also maintains a thread on clcInfo for paladins at Elitist Jerks. Note that most of the clcInfo stuff is at the end of the thread, as the same thread's been used for 3 different addons now (S.H.I.T., clcRet and now clcInfo). Find it here:

Finally, there is also a small wiki site for the addon:

3a. Setting it up: Templates
A word of caution before we begin. Setting up clcInfo can seem daunting. Well, it's not. An experienced LUA programmer will no doubt get a lot more out of clcInfo than anyone else, but all you need to do is follow the instructions below, use a little initiative, and spend a few minutes deciding how you'd like it all to look.

1. Type /clcinfo to bring up the options.

2. On the left hand side, choose Template 1.

3. Select Retribution and then pick a talent. I chose "Inquiry of Faith" and 3 ranks because I also have a Ret PvP spec and don't want clcInfo showing up in PvP. If you want (say) Zealotry, pick that one and just leave it at 1 rank.

4. Once that's done, you'll see a whole bunch of new options appear.

5. Note that if you're having trouble getting the layout just right, you can go to Active: Template 1 and set it to always show, under the Visibility heading. Strata determines whether or not other addons and the like can cover up clcInfo.

3b. Setting it up: Grids
1. Go to Active Template then Grids, then Add Grid. New options appear.

2. Go to Grid 1 and under the Grid tab on the right, set rows and columns to 1, and cell width and height to 50. Position controls its position in your screen - X for left / right, Y for top / bottom. In this case, I want clcInfo to appear below my character, near the centre, so let's try "X= 0, Y= -150" for its position.

3. Grid 2 is our "next ability to hit" icon. It will be smaller than Grid 1's button, and to the right of it. Notice the similarities and differences to Grid 1 - cell width / height is 40, and it's co-ordinates are 50,-155, which put it to the right and level with Grid 1.

4. Grid 3 is our cooldown monitoring box. It's got 9 cells in it (ie 1 spell / ability / item icon per cell), and they're all small and to the left of Grid 1. For this I'll just fill most of them with basic paladin cooldowns, with two exceptions - one being Hand of Light, our Mastery, and the other being Censure, the DoT from Seal of Truth. We'll cover exactly how to do these below, under the "Icons" section - for now, let's just get the grid set up.
3c. Setting it up: Icons
1. Go to Active Template then Icons then Add Icon. New options appear again.

2. Let's have a look at the Icon 1 options now. We're going to be using Icon 1 to show us the button we should be hitting right now. Note that under Select Grid it's set to Grid 1. Icons set to grids use the grid's size and position, which makes it a hell of a lot easier to group things together.

3. Under Icon 1's Grid tab, you can see how the layout works. Icon 1 is (as per the above) set to use Grid 1. Row and Column settings tell the addon which cell in the grid the icon is in. As there's only the 1 cell in Grid 1, we can leave it at "Row 1, Column 1".

4. Under Icon 1's Layout Tab, you can see the size etc. Again, it's using Grid 1's size etc, so not much need to touch this.

5. Under Icon 1's Behaviour tab, you can see the important bit: the Code section tells you what the icon actually does. Now, Icon 1 is going to be our "current ability" icon, meaning it'll tell us what to push next. The code for this is: return IconRet1(). Pretty simple.

6. We want Icon 2 to be out "next ability to hit" icon. It's attached to Grid 2, and has some different code to Icon 1: return IconRet2().

7. Tankadins can also get similar code: return IconProtection1() and return IconProtection2(). Healadins of course get nothing, because no addon can predict what heal you should be casting next.

8. Regular abilities are a lot more complex, however. Fortunately, here's some examples to help you on your way. The first shows the cooldown of Avenging Wrath. The second shows the Avenging Wrath icon when it can be cast (ie not on cooldown). The third shows an icon if you have Seal of Truth active on yourself. The fourth (and IMHO most useful one) shows Avenging Wrath's cooldown and duration all in one icon. The fifth quote tracks your stacks of Censure on the target. The sixth shows your helm's icon (perhaps it has an "On Use" effect). The seventh shows the internal cooldown of your Ashen Band of Endless Vengeance. The eighth shows you Hand of Freedom's icon when you're afflicted by Frost Nova or Hamstring, and the ninth quote shows you Hammer of Wrath's icon if the target is below 20% health.
return IconSpell("Avenging Wrath")

return IconSpell("Avenging Wrath", nil, "ready")

return IconAura("HELPFUL", "player", "Seal of Truth")

local visible, texture, start, duration, enable, reversed = IconAura("HELPFUL", "player", "Avenging Wrath")
if not visible then return IconSpell("Avenging Wrath") end
return visible, texture, start, duration, enable, reversed

return IconAura("HARMFUL", "target", "Censure", "player")

return IconItem(GetInventoryItemID("player", 1))

return IconICD(72412, 60, 0, 1, 0.3)

local visible = IconMAura("HARMFUL", "player", "Hamstring", "Frost Nova")
if visible then return IconSpell("Hand of Freedom") end

if UnitExists("target") and UnitCanAttack("player", "target") and not UnitIsDead("target") then
local c = floor(UnitHealth("target") / UnitHealthMax("target") * 100)
if c <= 20 then
return IconSpell("Hammer of Wrath", true)

3d. Setting it up: Bars
1. Bars behave pretty much exactly like icons do: they are assigned to cells in a grid, and fill up from left to right.

2. My preferred method with bars is to attach them to their own grid. Said grid has a single cell, which is very wide but not very high.

3. Like icons, go to the Behaviour tab, and under Code fill out the code you want. Several examples follow. The first tracks your Holy Power. The second tracks your mana, runic power, rage, focus or energy. The third tracks your focus target's health. The fourth tracks your Lightning Shield charges, with a max of 9 charges for Elemental & Enhancement specs.
return true, nil, 0, 3, UnitPower("player", SPELL_POWER_HOLY_POWER)

local cm = UnitPower("player").
return true, nil, 0, UnitPowerMax("player"), cm, nil, cm

local cm = UnitHealth("focus").
return true, nil, 0, UnitHealthMax("focus"), cm, nil, cm

local maxC = 9
local _ , _, _, c = UnitBuff("player", "Lightning Shield")
c = c or 0
return true, nil, 0, maxC, c, nil

4. If you don't want the icon showing next to the bar, go to its Skin options. Personally, I also set my bars to use their own skins, so I can have a single grid that, for example, shows my green health bar, my blue mana bar, and a gold holy power bar.
3e. Setting it up: Multi-Bars & Multi-Icons
1. Multi-Bars and Multi-Icons are used to track things like the Censure DoT on several targets.

2. Set them up like you would everything else. Attach to a grid, and let's get going.

3. The Censure multi-bar code is as follows: MBarSoV(1, 0.5, "before", true).

4. Further code examples. The first tracks your Holy Power, the second the stacks of Lightning Shield that you have (again, up to 9).
local c = UnitPower("player", SPELL_POWER_HOLY_POWER)
for i = 1, c do AddMBar(nil, nil, nil, nil, nil, nil, true, nil, 0, 1, 1) end
for i = c + 1, 3 do AddMBar(nil, nil, nil, nil, nil, nil, true, nil, 0, 1, 0) end

local maxC = 9
local _ , _, _, c = UnitBuff("player", "Lightning Shield")
c = c or 0
for i = 1, c do AddMBar(nil, nil, nil, nil, nil, nil, true, nil, 0, 1, 1) end
for i = c + 1, maxC do AddMBar(nil, nil, nil, nil, nil, nil, true, nil, 0, 1, 0) end

4. Advanced Setup: Alerts & Text
1. These behave pretty much like everything else. For example, I can re-use the code for my health pool bar (see Section 3d) to give me a number I can move around my screen.

2. Alerts are things like screen flashes and sounds. Be careful, because they will play every time they are activated: you don't want to play a 3 minute orchestral piece whenever you gain Holy Power, because it will never get past the first few bars of music...

3. Irritatingly, there's not much in the way of examples here. The wiki has more information, and you can check the Elitist Jerks thread (start at this post:

4. So no, I'm not going to tell you how to set up sound alerts or animations. Or at least not yet ;) .

5. Other Options
1. There is another option worth looking at. Under Class Modules then Retribution you can set a range check for non-melee abilities.

2. In addition, under Class Modules then Retribution, you can set the order of our filler spells. Websites like Elitist Jerks ( will give you the preferred order for your filler spells, should you not know them already.

3. The final Retribution option is to move the Holy Power bar from under your character frame. Note, however, that it will obey the display options on your Template: if your template is visible only in combat, your Holy Power UI will be visible only in combat. Personally, I keep Blizzard's frame up in its usual spot as an out-of-combat HP tracker, and use a custom bar for in-combat HP tracking.

4. Don't want to do all this again for your Prot template after you've set up your Ret one? Easy enough - go to the Import / Export option for that template, copy the export info, make a new template, and paste the copied export info into the import box. You'll be asked to confirm this in a popup box, but once you do this will clone your Ret template. Now all you need to do is change it to a Prot one (see Section 3a and the Prot icon codes above), and swap say your Zealotry icon for Ardent Defender or Divine Plea. Hey presto!

5. Finally, don't forget that the wiki has plenty of other code examples.

6. Finished!
And that's all there is to it. If you've followed this tutorial and made liberal use of the code I've sprinkled through it, most of the work you've had to do involves spell name changes and deciding where you want your icons and how big they should be. Hopefully you've also realised just why I list clcInfo as amongst the best - and most powerful - addons out there for this game.

7. Other Classes
clcInfo currently supports rotations for Ret & Prot paladins, Frost & Unholy DKs, and Destruction warlocks. However, it also has, for example, an eclipse power bar for balance druids, and every class can take advantage of its icons, bars and whatnot. I've currently got clcInfo setups for two paladins, a DK, a disc / shadow priest, an ele / resto shaman, a rogue, warrior, balance / resto druid, and plan on making one for my worgen mage once Cataclysm is released.

8. Other Resources
A very quick video tutorial for Rets:

Requital's tutorial:

Note that clcInfo is still being updated regularly, so some of the stuff in these tutorials is outdated.
Don't suppose you'd share some of your documentation for how you set this up for Rogues or Warriors?

I'm trying to help my guildies use this on their classes and it's just so far above my head :(

Join the Conversation

Return to Forum