Heads Up! (Part 5: Summary and Conclusion)

This is part 5 of a five-part series.

  • Part 1: Introduction – What they are, what my methodologies are, and a brief recommendation for the attention-span-impaired.
  • Part 2: The Lightweights – I look at the low end of the spectrum in terms of size, but not necessarily, as you will see, short on usefulness.
  • Part 3: The Middleweights – I compare the various virtues of those apps that try to ride a line between features and efficiency – and how well they pulled it off.
  • Part 4: The Heavyweights – I look at the big guns, the ones that bring it all to the table – hopefully!
  • Part 5: Summary and Conclusions – Here there be charts! I also take a shot at naming what I, personally, consider to be the best of the three categories, and why.

So, let’s get started!

Click to view the spreadsheet! Feature Comparison

Feature for feature, how did they then fare? I have a chart that shows how they compare, relatively. It is color-keyed. 

Be sure to click through for the actual chart. I will not be updating the graphic, but I will update the spreadsheet as information comes available.

  • Green square means the feature is available and functional.
  • Red square means the feature is not implemented.
  • Asterisk in a blue square means that there is more to it than that, so read the text in this review about that addon for more information.
  • Black square means the feature is not applicable. For example, if the addon does not support portraits at all, don’t worry about 3D portraits.

The name of the addon is across the top (abbreviated), while the feature name is down the side. Let me summarize what these are and some findings.

  • Bars – Bars, or arcs, of various sorts. I consider debuffs, raid icons, and symbols (i.e. Master Looter, PvP, etc) to be decorators for the bars themselves. I find these to be quite useful since they are often more visible than the corresponding unit frame’s. A lot of addons support extensible bars, but usually it is very limited or specialized. The one that was most flexible in this regard appears to be IceHUD.
  • Look and Feel – An abstract of how flexible the arcs are in size, shape, color, and so forth. I also looked at interface buttons such as a minimap or LDB ((LibDataBroker)) interface. Overall, only IceHUD covered all the bases.
  • Bar Types – An overview of the different kinds of bars supported by the addons. Some offered a lot more than others, and in such a varied way that it was difficult to categorize, so in the end I just punted with an "other" category and an asterisk to go essplain it more. I also included here whether there were nameplates for each bar, and if they could be tweaked or moved.
  • Misc Features – Here I stuck features that were possibly not directly HUD-related.
      • Many allow you to suppress the display of the Blizzard unit frames. I’m of the opinion that users of HUDs will also be using addon unit frames, and thus have that item well under control. In this regard I consider this less a feature and more a mis-feature; questionable code that we could probably do without. This is one thing I liked about UnderHood2’s ability to not even load the "Hide Blizzard Frames" module.
      • Configurable – I was amazed that this was even an option, but a lot of the smaller addons not only didn’t have a config option, they didn’t even make it easy to hack the LUA.  Additionally, I found the availability of a "Config mode" toggle to be invaluable when setting up the interface.
      • Unit Frames – I really have no use for unit frames as part of my HUD UI. This is where bigger addons like IceHUD lose a bit of shine, because part of that huge memory footprint is something you don’t really need, if you use a unit frame addon – and you should, if you need to replace the stock ones!
      • Portraits – Again, this is a realatively meaningless frill that just clutters up the screen. Some even offer the means to view a full-length 3D model of your target and/or yourself. I don’t see the point of this, but perhaps I am not the intended audience of these features.
      • Profiles – This is a pretty important feature, in that different characters may need different setups.  Two or three years ago, this was the only way to sort out different abilities, etc.  The current state of the art is, however, more flexible and automated. For example, rather than have to turn off mana and on energy for your rogue, the "power" bar just adjusts itself automatically. Every one of these addons pretty much supported that, and that makes Profiles less urgent. Still, they are a good thing to have.
  • Class Support – An overview of how well each class was supported in its special needs – Warlock shards, Rogue combo points, and so forth. Surprisingly, several had no support at all!  A couple had it but in some state of flux, not quite there, or broken but being fixed.


Click for spreadsheety goodness! Memory Consumption

One would assume that in this day and age, memory consumption would not be a big deal, and one would be right to a certain extent. However, the bigger the addon, the more sluggish your client is likely to be. Entering instances and logging in, for example, are almost always impacted. So, the goal here is to find the best compromise between features and memory footprint.  On the feature side, we list the features we cannot do without. On the memory side, we look at how much that will cost us.

Overall, memory consumption varied massively from biggest to smallest. My memory footprint addon could only list the first 70 or so addons, and some of the smaller ones were smaller than the smallest one in my list. Thus, for the lightweights, I generally said "around 33K" since that was where my needle bottomed out.

On the other end, over a megabyte was consumed by our largest contenders, one which was not on par with the other two, feature-wise.

Which brings me to the crux of the memory footprint analysis. Generally speaking, you get what you pay for. But you look out for addons that provide unexpected value for the byte, and you look out for those that provide much less value per byte consumed.  In this regard, I have the following recommendations.

  • DHUD4 and Ascii: HUD both consume more memory that one would expect considering their feature set.
      • DHUD4 is a fork of the same code that "DHUD for 4.0" is derived from, with the biggest difference in the configuration model.  Honestly, I expected DHUD4 to consume less memory than its cousin, because it was using someone else’s framework to configure with. Maybe my assumptions are wrong, or maybe they are right and something else is eating memory.  In general the memory difference is around 500K, which, if not a system-breaker, won’t be a deal-breaker, either.

    Update 5/1/2011: the author of DHUD4 has presented in the comments a valid explanation for the discrepancy. DHUD4 and DHUD for 4.0 share a common ancestor, but are not from the same codebase, ultimately.

  • Additionally, DHUD4 utilizes the DogTags library to provide fully formattable text; this provides a feature above that in the other that, while increasing the memory footprint, does provide value for the byte.

  • Were I to do this over again, DHUD4 would be more properly classified among the heavyweights, and not as a variation on the DHUD theme as I originally presented it.

  • Thanks to Arcanefoam (author, DHUD4), I now know a bit more about what to look for in reviewing such things. So, thanks for that!

      • Ascii: HUD boggles my mind. At 960K (almost a meg!) one would expect a lot more features, based on, well, the other HUDs we have reviewed thus far.  I looked through the code, and could not puzzle out what it was doing to consume that much memory. If it were more featureful, I’d overlook such things, but the memory consumed can’t be justified with the current feature set. Between the memory consumed and the confusing presentation, I’d not recommend this one for anything but novelty.
  • On the other hand, at 500K, ArchHUD and MetaHUD serve up excellent value per byte. The difference between ArcHUD and IceHUD in memory is profound, but the feature gap is nowhere near as huge as that suggests.  Both are excellent value and recommended, with the caveat that I encountered LUA errors with MetaHUD in raids. Try it, and if it doesn’t happen to you, it’s golden.

One final note: some addons varied in memory consumption for reasons I could not discern. I took several readings under many circumstances and then took the mean for this analysis. Anyone that feels this was not done fairly, please contact me and we’ll discuss methodologies. I’m nowhere near the LUA expert I’d like to be. I’m just a QA guy doing a QA guy thang.

For the record, the worst case was taken with the standard bars up (health, power, opponent health, and power) and the config window open, if it had one. In most cases, this was the default setup, as well.


Now we get to the tricky part.How does one recommend one over the other, without invoking the curse of the internet fanboy? Let me state up front that I favor none over the other. I have no dog in this race. In fact, the whole exercise has convinced me that I don’t really benefit from having a HUD at all. Still, if I were to choose one, which would I choose? Hmmmm…

First of all, give up the idea of there being a "best" addon here. Even within weight classes, the best anyone can expect is a nudge in one direction or another. "Best" is a vague, stupid little word that has no place in any but the most subjective senses, and I refuse to engage in that discussion.


Ideally, I’d like an addon that has a minimal footprint, but supports health, power, pet status, and class-specific things like shards and Eclipse.  Of the three, TuttiHUD comes the closest to that, although its interface may put you off. Functionally it’s fine, aesthetically it may grate on your nerves. 

Surprisingly, I really like CircleHUD’s idiom. I’m keeping it installed and watching for updates. Maybe the author will expand its reach a little.

sHUD is serviceable, despite its UI resizing quirks, but it doesn’t have sufficient scope to satisfy my needs.


This is a most target-rich environment, and the most likely to satisfy your needs without going overboard. Of these, I found ArcHUD, MetaHUD, and DHUD for 4.0 to be more or less on par with each other, with the edge to ArcHUD for its combination of moderate footprint and stability. However, I preferred the look of DHUD and MetaHUD, though the configuration panels for those two leave something to be desired.

DHUD4 was on par with the other three, but, given its size, not as attractive to me.

FusionHUD lacks the polish of the others but has a lot of potential, and I hope it continues development. Having said that, I would not choose it over the others.


Between IceHUD and UnderHood2, it comes down to polish and stability. IceHUD has been around forever, and is still undergoing slow, steady, improvement. UnderHood2 is the new kid in town, and has great promise, but still has rough edges that need smoothed out before it can take the lead from such an esteemed rival.


Overall, taking everything into consideration, I would recommend the following:

  • Without constraint, IceHUD is the clear winner here. Its rich feature set and relatively shallow learning curve make it a natural choice.
  • For more advanced users looking for fewer thrills, my first choice would be MetaHUD. If that bugs on you like it does me, go with DHUD for 4.0.
  • For the purists, TuttiHUD does the job, if you don’t mind its appearance. 
  • My sentimental favorite is CircleHUD, but I can’t use it without at least Pet tracking.


HUD Comparison Overview


Furthermore, Ergo, and In Conclusion

What really stands out here is that there were very few real clunkers. All the addons were relatively stable, and none presented any real programmatic issues to deal with. There are some great ideas out there, many not getting the exposure they deserve. I was consistently surprised and pleased at what I found.

This wraps up my tour of the HUD addons for WoW. If I missed any, please point it out to me. If you are an author and feel I’ve been unfair in my comments, please drop a line, either in comments or email – I do want feedback!  If I get enough useful feedback, I may run a follow-up installment to overview that.

After I recharge the batteries, I think I’ll have a look at Unit Frame addons. If you have an area you’d like to see get the same exposure – well, drop me a line!

Thanks for your time and patience, and I hope that this has proven useful to you.


Posted on March 28, 2011, in Addons. Bookmark the permalink. 8 Comments.

  1. What a fantastic, in-depth series of posts, Grimmtooth! I don’t use a HUD myself, but I will recommend your posts to all my guildies who do use them.


  2. A great series, thank you! As for an analysis I would like to see…CD timers and/or casting bars. There are so many out there, and everyone seems to have a different opinion. It would be nice to see the information all in one place. Thanks again for all your hard work 🙂


  3. Spreadsheets & graphs oh my! Seriously, I love a good spreadsheet and yours is quite spectacular in it’s detailing! Very informative! I look forward to your future posts, be it unit frames and/or caster bars and/or CD timers.


  4. Just wanted to drop a comment and say thanks for this series! I’m sure it took a lot of time, and it made for an interesting and useful read. I don’t currently use a HUD, but I’ve been curious – this was really helpful in comparing the different offerings.

    If you’re looking to do more addon comparisons, perhaps you’d consider the gathering supporters/map replacements? I’m trying to get a GatherMate2 + SexyMap + Routes combo configured right now, and it seems more complicated than warranted by the task. Perhaps there’s a better offering!


    • Map addons – wow, that’s a huge one there. But I already have a moderate notion of how I’d tackle that… thanks for the suggestion.

      Directly to your point, I don’t use SexyMap but I do use Routes + Gathermate2 and just follow the little line on my minimap. A long time ago there was some addon that would work with Cartographer (RIP) to put a bit arrow over your head pointing to the next node, but it was pretty fussy, too.

      If nothing else, should be interesting to compare Mapstar to SexyMap from a footprint perspective 🙂


  5. Hello,

    I am the author of DHUD4 (and it’s predecessors DHUD3 and DHUD2). First of all let me thank you for including my addon in your review/series and for taking the time to test it and rate it. Your words are most welcome.

    Second, let me defend my addon in some points, if I may:

    1. Tests. Did you tried the HUDs alone, or with your usual addons loaded?

    2. Memory footprint. DHUD4 uses the ACE3 framework as a base. ACE3 are a set of libraries that provide you with a “quick” and reliable way of managing general addon functionality. Although you can speed addon development and reduce the amount of code/functionality you have to implement, it comes with a cost: The libraries have a lot of functionality and you nay only use a reduced set of it. This means that you load the library to memory but will not use it all. Regarding why sometimes the memory consumption varies, it happens so that once an addon has loaded the ACE3 framework to memory any other addon that uses it will not. This means that the library is shared among them (one of the huge benefits of using a framework), but also means that only one will be blamed for having a big memory footprint. Maybe a better metric would be CPU resources/time. I will rather wait 2 seconds more at loading screen that loosing 10FPS. See numeral 1, usually test are done on the application alone, and with an exact procedure. Like for example a base rotation on a dummy.

    3. DHUD4 and DHUD for 4. The two come form the original Drathal’s HUD – DHUD. However, DHUD3 and DHUD4 are not similar in any way to it. So much have changed, so much have been recoded that I would say that only about 2 or 3% of the original addon remains, code wise. Obviously the layout has been kept (and keeping it has been one of the reasons that some functionality will be never – or at least will take very careful thought – implemented). If I am not wrong DHUD for 3 (and I assume DHUD for 4) came with WotLK when DHUD3 was on the works and people wanted to be able to use DHUD, and took the original DHUD code and fix it. I don’t know how much it has changed ever since, but either way you can not compare the behavior of the two having code similarity as a reference.

    4. Configurable texts. All texts in DHUD4 (except cast bar ones) are configurable using DogTags (if you don’t know what they are load DHUD4 and type /dogtag in game). So, I get a green square in the spread sheet =D.

    Again, thanks for your time and hope your next review is as good as this one.

    DHUD2, DHUD3 and DHUD4 author.


    • @Arcanefoam,

      Thanks so much for the detailed feedback!

      To answer your comments in turn:

      1 + 2) Memory footprint testing was done with my normal addon load. So, that’s a good point to consider. In the future I’ll probably footprint them in isolation. Somewhat painful process, but the results will be a lot more stable.

      3) Thanks for the background on the lineage of both variations. From the config UI perspective, they are quite noticeably different, but I didn’t realize that that difference extended so far under the hood.

      4) The spreadsheet has been updated, and thanks much for the DogTags insight! I had no idea what that was all about, but a lot of developers seemed to fancy it. I guess I should have followed that lead, yes? 🙂

      Cheers to you for an outstanding addon! It was a lot of fun!


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

%d bloggers like this: