essays and pithy thoughts

eXtv/TGBF spectator HUD for Team Fortress 2

in glhf

Work continues ‘behind the scenes’ in preparation for resuming full video coverage of TF2. I’ve been working with eXtine on specifications for a HUD that meets our needs. If there’s sufficient interest I’ll put the relevant files up on GitHub.

The current state of the HUD

I used the Garm3n HUD as a starting point; it’s a tremendously clean HUD and really well crafted from a player’s standpoint, but needed some work on the spec side.

The primary fault of most spec HUDs I’ve seen to this point is an attempt to cram too much information onto the screen at once. The more information that’s presented at any given time, the more your mind has to work to parse and categorize everything on the screen. With the ability to just hold ‘TAB’ and get the full gamut of information available to you as a spectator, there’s little need to have it all present on the HUD at all times. So, out of everything, here’s the short list of stuff I felt the HUD needed to communicate:

  • Alive/Dead. The difference between these two states has to be obvious. When that’s in place, it’s easy to determine…
  • Current numbers up per team. You should be able to identify the current (# on #) situation – 5 on 5 in the screenshot above – very quickly.
  • Classes. Needed to be clear, large, and unambiguous. Identifying what class just bit it is often more important than identifying who exactly just bit it.
  • Lit / Doing OK / Buffed. The numbers themselves could even go, but in the end I decided to leave them in because it can sometimes be useful in commentary. Really, the important bit that needs to be communicated is if a player is badly hurt or way over-healed. I stretched the bonus indicator cross so that it could be used as a progressive bar, which communicates clearly the extent of the damage or buff in a glance.
  • Medic charge percentage. Missing from the screenshot, but gets overlaid on top of the medic’s class icon. Doing so saves space that would otherwise be wasted in every other player box, and if there’s a charge percentage, the class icon is redundant anyways – you know that’s the medic.

What most people would probably notice are missing and might complain about are the names of the players. Yup, they’re gone, and there’s several reasons for that:

  • Saves space. Holy moly; do the names ever take up a ton of space! To ensure that all names will fit properly, all the spec boxes would need to take up 200% more space than they do without. Since a primary goal of these modifications was to make sure the class icons were easily recognized, the boxes had to be made taller, and extending them to fit the name wasted far too much space.
  • Saves on visual processing. At least in my case, I noticed every time I’d look left to get information from the HUD, the first thing I’d fixate on were names – stuff that never changed, and had no real bearing on the current situation in the game. The visual complexity of all the names sitting on the left side of the screen acted as a speed bump, and acted contrary to the purpose of the HUD – to communicate important information fast.
  • Removes a commentary crutch. Look, TF2 is a class-based, team game. Often, in any situation, it’s more important to know what classes are still involved than the names of the players that are controlling them. The purpose of any segment of commentary is to describe an event or convey a particular insight. Using a name instead of a class, when it comes to TF2, adds two extra unnecessary steps to that process – first the commentator has to translate class to name, and then the audience member needs to translate that back to class to get the full picture. From a commentary standpoint, it’s far more clear to use team names and classes in the run of play, and then using player names to highlight a notable play, and in such cases names can be picked up from the obit readout, anyway.

That’s it for now; thoughts are appreciated.