My New UI
When Mists of Pandaria came out, there was an inevitable scramble for updating addons. With that came a natural opportunity to reevaluate my UI, try some new things, and try to make it more responsive to my needs. I’d never been really happy with my UI before and I wanted to break fresh and try something new.
The first thing I did, and the thing I should have done long ago, was to evaluate what I really needed to see. I decided that would be a focus of my UI: to get rid of the things I didn’t need to see and put before me things I wanted to see.
I wasn’t always good at that. For a long time, I depended on the default Blizzard UI. There are all sorts of things I could criticize about the default UI: it has quite a few extraneous graphics (think of the borders around the default action bar. It puts things that you need to see (e.g., your health) in far flung corners of the screen. I’m sure it works for many people but one can do better.
My first experience with an alternative UI was something called nUI. Here was something that took a lot of information and made it organized. Bars were in their place. Buffs and debuffs were neatly lined up. There’s no question that nUI is crafted in an organized pattern. But it still suffered from many problems, one of which I figured out when I tried to heal with the thing. The UI seemed to be designed to make neat Blizzard’s UI, but it didn’t give much thought as to what you really needed to know. A quarter of the screen was covered with default information that was of minimal value. Also, the UI chewed through memory and CPU cycles like mad. After trying and failing to heal with it, I got rid of it entirely and began the process of crafting my own UI.
What I came up with wasn’t much better, unfortunately. I ended up trying to recreate the nUI look with a few tweaks of my own. For healing I used an addon called VuhDo, but for Traxy and Jana I didn’t need such a thing. Instead I used a variety of different bar mods (Bartender and RazerNaga were two, the latter of which I switched to when I got the mouse), and then used Pitbull to cobble together some raid frames. The gist of the UI was to create a virtual keyboard out of the action bar mod on the screen duplicating the keys I would press to cast the spell used. I also used IceHud for a HUD display for health, mana and casting bars, very similar to what was available in nUI.
It took me until Pandaria to realize what was wrong with my setup. My “virtual keyboard” took a lot of room on the screen without returning much value (I knew where my keys were). Pitbull put the raid frames in a nice place but it took up a lot of my screen to display things I wasn’t that concerned with, and in some ways reduced the functionality available (I could not figure out, for instance, how to drop raid markers on the ground). I had the same problem I had with nUI: a lot of the screen was covered with things that really didn’t help me play.
That was the focus for my redesigned UI. If something were to be put on the screen, it would be something I would need to see. Information was, if at all possible, compressed to display only what I needed to see. In all, I wanted a clean UI that displayed as much of the action as possible while giving me the information I needed to know.
Let’s walk through it. I’ll start with the outside, from the upper left and going clockwise.
My minimap is in the upper left. I use an addon called Chinchilla Minimap to manage that addon. The minimap is important for me to find where my quest items are, where points of interest are, and where nodes are for mining, herbing or fishing. When I’m gathering rather than questing, I double the size of the minimap to make it easier to see where nodes are. (I’d alter the look of the clock if possible, but I haven’t found a way to do that easily.)
Hidden above the screen is Titan Panel. This provides a bunch of useful information, but a flick of the wrist will bring it down and I don’t usually need to see it in combat.
In the upper right are Blizzard’s standard buff frame, a row of TellMeWhen icons, and a bag icon. I’m reluctant to use anything other than the standard buff frame because my previous buff frame mod prevented me from clicking off buffs, which was very annoying when people start throwing pumpkin heads around. (I made a macro for “/removeaura Jack-o’-Lanterned” because I was frustrated with it.) The TellMeWhen bar tracks the different player-assignable buffs I would care about plus the ones I apply myself.
On the right side of the screen is Blizzard’s standard objectives listing. I find it very useful to look at while questing.
At the bottom right are most of my action bars. I used Dominos to manage my action bars. The default action bar is shown because I will occasionally need to see it when I am doing a vehicle quest or the like. Not shown are seven other action bars that can be activated with a mouseover, which I do when I have to get my profession panes or the like.
Following along to the left are the standard Blizzard special buttons, which I find myself using a lot, and then the XP/rep bar. To the left of that are two more hidden action bars representing the bulk of my spells and the buttons I use on my mouse.
In the lower left corner is my chat window. I use WIM to manage whispers, and when one comes up a window will pop up just above the chat window.
Right above that are buttons that would normally be around the minimap. I use an addon called Minimap Button Frame to manage that. These are useful to have access to, but I’d rather them not crowd the minimap with such things.
Above that is open space that is inevitably filled by various panes like the social tab, character viewer, or Blizzard’s standard party frames or raid frames. I’m reluctant to modify the raid/party frames because of the functionality problem I had earlier, but I’m not a big fan of the ornamental nature of the party frames. Any suggestions here would be appreciated.
That brings us to the “meat” of the UI, which is the HUD in the middle. This was created using four addons: TellMeWhen, WeakAuras, IceHUD and MiksScrollingBattleText. Let’s take this from the top down.
At the top of the HUD are three rows of TellMeWhen buttons (the second screenshot has them all turned on for reference; usually some of them are dimmed). I made these and put them in such a prominent place because I find that it’s where my attention gravitates toward. These buttons represent things I need to know.
The top row is my “cooldowns” bar. From left to right, it shows: 1) my Inferno Blast cooldown; 2) my Combustion cooldown; 3) my Alter Time cooldown; and 4) my Evocation “cooldown”. The first three buttons are simple; they are dim when the spell is unavailable, with a timer “sweep” showing how long until they become available. The fourth one is a little different, because I use it to track the Invoker’s Energy buff available with my level 90 talent choice Invocation. That icon is completely gone when Evocation is on cooldown, dim with a timer sweep when the Invoker’s Energy buff is present, and lit up completely when the buff is gone and Evocation is available.
The second row of icons is my “Defenses” row. It shows: 1) whether Cauterize is available; 2) whether Ice Block is available; 3) whether Frostjaw/Deep Freeze is available; 4) whether Dragon’s Breath is available; and 5) whether Frost Nova is available. The general idea behind this bar is to let me know what I can do to get out of trouble when a mob has gotten within melee range (which happens constantly). Of special note is the third button. I will often use Frostjaw to freeze a mob followed immediately by Deep Freeze to lock them in place for a while. This usually gives me a couple crits and a Pyroblast and is a very nice combination, so it’s my first line of defense. The button itself is absent when Frostjaw is on cooldown, dim when Frostjaw is available but Deep Freeze is on cooldown, and fully lit up when both are off cooldown.
Finally there’s the largest and most important row of buttons, ones I’ve detailed in prior posts. From left to right, they tell me: 1) to cast Inferno Blast now; 2) that Heating Up is active but Inferno Blast is off cooldown; 3) that Pyroblast! is active; 4) whether a Living Bomb is on the target; and 5) the status of my Ice Barrier. These are worth taking one by one.
The first button combines the two things you look for when deciding to cast Inferno Blast: whether the spell is available, and whether the buff is available. It’s a simple button but one that exemplifies my UI strategy of telling me what I need to know in as simple a package as possible. I need to react to something within a second and I use this button so I only have to look in one place to see it.
The second button is more of a transitional thing. I do want to know if a Heating Up buff is up because sometimes I will wait until Inferno Blast is off cooldown, sometimes I will use Frost Nova or Frostjaw to force a crit, or I just want to hope for another crit.
The third button is self explanatory.
The fourth button is a little tricky. It will light up completely when there is no Living Bomb on the target. When there is a Living Bomb on the target, it will be dim and there will be a timer sweep showing the progress of the DoT. When there is 2.5 seconds left on the DoT, it will light up (with the sweep), showing me that I can cast Living Bomb to force an explosion for optimal dps.
The fifth buttton is also a little tricky. Technically it tracks the Ice Barrier spell cooldown, but it also tracks the state of the buff on my character. When there is no buff and the spell is available, the button will be completely lit. When there is a buff on me and the spell is available, the button will be completely lit but will show me a sweep indicating how long the buff has remaining. When there is a buff on me and the spell is unavailable, the button will be very dim. Finally, in the sad occurrence when I have no buff but the spell is on cooldown, the button will be dim.
Now for the left side of the HUD. There are three numbers listed on the left side while in combat. The first number is equal to estimated total Combustion damage if I were to cast Combustion now. The second number is my haste percentage, which is self-explanatory. The third number is my crit percentage, which is also self-explanatory. Before now I had used TellMeWhen icons to track various buffs. This didn’t really tell me what I wanted to know, though: I wanted to know my current haste and crit and combustion damage. Thus, I used WeakAuras to calculate and display those values.
The Combustion calculation is worth explaining. Prior to this I had used an addon called CombustionHelper. The addon was very helpful in Cata when you couldn’t be sure that individual DoTs would be on the target. My problem with it is that it seemed to evolve past a tool to help you decide whether to cast Combustion or not and into a general purpose fire mage tool, tracking Living Bombs and Critical Mass, and the like. It hasn’t evolved to reflect the new circumstances in Pandaria, where Ignite and Pyroblast DoTs are almost always on the target and Combustion is more about having haste buffs and the size of the Ignite DoT than anything. So I looked for something new.
I briefly tried a tiny addon called Combustion. This is a very simple addon that displays the expected DoT value of a Combustion (basically the Ignite DoT value divided by 2 plus the Pyroblast DoT value divided by 3). This came closer to what I wanted, but the problem with it was that it didn’t incorporate haste buffs. All other things being equal, you want to cast Combustion when you have a significant haste buff, and this number did not tell me all I needed to know.
Thus, I used WeakAuras to incorporate haste and crit to calculate a total expected combustion value. I used the formulae in both the Combustion and CombustionHelper code, multiplied it by the expected ticks from current haste, added expected crit damage, and came up with a number. Frustratingly, this number is not accurate, but it is at least relatively accurate (in that bigger numbers will always result in more damage). I’m not sure why it consistently underestimates Combustion damage, but it does. I’m hoping to figure it out someday.
Below those three numbers is my cast bar. Below that is my character’s name, health, and mana totals. The name is there because I need a place to right click to pull up the contextual menu you would get when clicking on your portrait in the standard UI frame. Otherwise, I wouldn’t display it (I know which character I’m playing). The numbers on the health and mana pools are in thousands. The circles will “drain” as my health and mana go down, and when my health goes below a certain threshold the health circle will turn red.
On the right side are similar health/mana circles for the target. The health circle will increase in size if the target has a health greater than a certain threshold (currently 600k, but I may change that), just to alert me that I need to treat the mob with more care. The numbers are dynamically displayed based upon the total mob health; anything over a million will be displayed in millions followed by M, anything over a thousand will be displayed in thousands followed by K, and otherwise it will be displayed as the exact number. Directly beneath the health and mana circles is a range finder, showing the range to target.
MiksScrollingBattleText displays various damage numbers and changes, but it isn’t a huge part of my UI. I may get rid of it altogether.
And that is my UI. I hope you like it, and if you have any questions or suggestions I would be happy to hear about them!