HUD Customization

Weapons Factory Arena 2.9

( Jump: [ Full-size HUD ] [ Mini HUD ] [ 7oclock HUD ] [ Milli HUD ] )
[ Downloads ]

WFA 2.9 is the first release of Weapons Factory Arena that runs on the Quake III: Arena 1.27 point release. Prior releases (WFA 2.1 being the last) ran under v1.17 point release.

The new WFA adopted the Quake III: Team Arena (Q3TA) menu code, which uses text description files (".menu" files) as a way to script the menus. This allows a certain amount of user-made customization to the menus, without requiring such changes to be packaged in the pk3 files (this is significant with respect to sv_pure servers).

The HUD (Heads-Up Display) is a special case of the menu. As the menus can be altered by the player, so can the HUD. The default HUD for WFA is taken directly from Q3TA. Personally, for me, this is a rather busy HUD: along with a TGA file for HUD chrome, the background of the HUD has a staticy-looking animation that really drags down my framerate. Not to mention distracting.

Upon realizing (more like assuming...) the menus, and HUD, were customizable, I started on my venture to simplify the HUD into something more straightforward. Along the journey, I was forced to analyze the menu-parsing code; this resulted in a preliminary documentation of the .menu format, which is available here: /~phaethon/q3tamenu/q3tamenu.html.


(2001.02.14)

After about a week and half of wrestling with the Q3TA menu format, the result is a rather simple (maybe too simple) remake of the HUD elements' backgrounds. A screenshot is provided (fullsize is 640x480):

The bottom strip is composed of five elements, each smashed into each other, giving the appearance of one long seamless HUD display.

On the far left along the bottom (appearing empty), this element shows if I (personally) have the flag in possession, and any drugs I have been dosed with (delivered by nurse).

The next element is the ammo display. This is the regular ammo count display from WFA 2.1, showing all ammo that are non-zero count, and its count (meaning if I ran out of grenades, the grenade icon and count wouldn't be drawn).

In the middle is actually two separate HUD elements aligned top/bottom. The top is the health bar. The bottom is the armor bar. The two bars are separately placed, but are currently placed to appear as one single HUD element. This allows the relative position of health and armor to be swapped (i.e. you can have armor over health instead) What isn't visible in the shot is that the background for both the health and armor bar will pulse dark red if health is critically low (which is at about the 20-health level).

The next element over is the specials (or extras) display. It currently shows I have a sentry gun up, an alarm deployed, and a supply depot laid. You can see the sentry gun along the top part of the screenshot, the alarm by the flag at about head height on the wall, and the supply depot along the bottom, partially hidden by the HUD.

In the lower right is the scores display. In this element, the far right is the red team's score. In the middle is the blue team's score. The lower left has the capturelimit (0 means no limit). The upper left in pink is my personal score ("frags"). There really is no good reason the color is pink. A WFA player named "BattleBitch" concurred with the choice of pink. Like I'm going to disagree with someone named "BattleBitch"...

Over back on left, a bit higher, is the player-selection display. This cycles through teammates (I had none for the testings), showing their various states. After cycling past the last member, this shows the team info display, which is a summarized display of all teammates, health, weapon, and location.

Over on right at about the same level is my current location and status. (Status is for Q3TA, and is one of: Attacking, Defending, Patrolling, Camping, Following, Escorting, Retrieving)

In the upper right, you can tell I have problems playing on a large server.


(2001.02.14)

The default mini-HUD, frankly, sucks. I didn't even feel like taking a screenshot of it.

Whereas my "fullsize" HUD elements were designed around a 128x48 size, my mini-HUD version concentrates on a 20-pixel height. After having groveled through the menu format and the fullsize HUD, this mini-HUD of mine was completed in one day.

The two absolute exceptions were the ammo count, and the specials display. These two do not scale/resize. Any smaller, and the ammo display shrinks to show just the currently selected weapon's ammo. Specials display flat out does not scale. Even if it could, it wouldn't be legible at 20-pixel height (6 pixels per line).

My mini-HUD set up puts the ammo display in the lower left and the specials display in the lower right. The bottom row, going left to right is:

  1. Health (pulses on critically-low health)
  2. Armor (pulses on critically-low health)
  3. Status and Location
  4. Personal score
  5. Blue team's score
  6. Capture limit
  7. Red team's score

The team scores for red and blue team are boxed in their respective color. Continuing with pink, the personal score is boxed in pink. Capturelimit is boxed in white.

The next row above is the miniaturied player-select view in a horizontal format, and over on right the (currently invisible) drug display.

The Team Info display is above the ammo display, but is only visible when player-select has rotated to Team Info display.


(2001.02.14)

This next screenshot shows my mini-HUD when I have the flag.

Many components pulse. The ammo display, my location, personal score box, red team's score box, and the specials display. If I don't have the flag, but one of my teammates do, then only the red team score box pulses. This, however, is troublesome. The screenshot shows the shotgun "underlapping" the scores boxes. If only that one little 64x20 box is pulsing, the weapon is dark enough to make the pulse not noticeable.


(2001.02.14)

The following screenshot is the fullsize HUD when I have the flag. It has a similar pulsing-elements theme to it, but only the lower-left lement and the my team's score box. Note the inconsistency of when the red flag is stolen, blue box pulses on the fullsize HUD, and red box pulses on the mini-HUD.

One more element has been added to the fullsize HUD. For the llamas/newbies to WFA CTF, a full-screen notice. This can be disabled with a one-line change in the menu file.


(2001.04.03)

This here is yet another HUD I did at the request of WFADEV (Hi, Solly!). I am terrible at any graphical design, so (1) excuse how bad the HUD layout looks, and (2) excuse any artifacts in the actual HUD.

This HUD was designed around clustering all the data into the lower-left corner. So I dubbed it the "7-o-clock HUD", as the elements are clustered at the 7-o-clock position on an analog 12-hour clock. I should stop watching movies that involve airplanes and piloting.

The core element was the ammo count, which is at the extreme lower-left. The rest were placed as afterthoughts. That's one reason why this HUD is a bit lousy: no design. Still, it's here to show what kind of customization is possible with the new menu/HUD system.

Specials (sentries, lasers, etc.) to the right of ammo, team scores above ammo. The health and armor sits to the upper-right of the ammo count. Drug (if Nurse, or if been injected) is listed above the health/armor. The bounding box is invisible, but the word just sort of pops up there.

This particular HUD is an overhaul of the original HUD, and has been designed solely for 2CTF (two flags capture-the-flag). Other modes (Harvester, Command Point, Deathmatch, etc.) will have the scores element missing or incorrect.


2001.04.23

Milli HUD

This is a slight modification on the above mini-HUD, made to be even smaller. The teamMemberSelect was shrunk, replacing the location window. The Scores display was squashed further as well; it may even be unreadable.


HUD when a team member is selected. The window on the bottom center is the team member selection.


HUD when teaminfo is selected. The location window pops up where the team member selection would be.

The scores display has capture limit on the left on a light black background, red team score in the upper middle on a red background, blue team score underneath that on a blue background, and personal score over on the right on a pink background.

The flag-stolen effect was redone with a shader named 'hudalert_good'. This is a pulsing green effect (instead of red or blue). But the way I set up the HUD (to mix colors with team color), the blue-team mixed with the green pulse produces a color that makes me want to hurl. It might have to do with my red-green color-deficiency (colorblindness), though. YMMV.


Downloads

These HUDs are still being worked on. This page presents the potential customization possible in the new menu/HUD code.

Other potentials include defining your own in-game menu (ESC menu), and even the main menu(s).

You can edit these files as you see fit. They require just a regular text editor. Additional information on the syntax is available in my preliminary Q3TA menu documentation: /~phaethon/q3tamenu/q3tamenu.html.

Fullsize HUD:
The file HUD-PH-full.cfg sets up the menu (HUD) files. The actual HUD description is in HUD-PH-full.menu.

To use: (Simpler instructions) Place the two files in your WFA directory. In WFA console (the ``~'' console), run "set cg_hudFiles HUD-PH-full.cfg; loadhud".

Mini HUD:
The file HUD-PH-mini.cfg sets up the menu (HUD) files. HUD description is in HUD-PH-mini.menu.

To use: (Simpler instructions) Place the two files in your WFA directory. In WFA console (the ``~'' console), run "set cg_hudFiles HUD-PH-mini.cfg; loadhud".

7oclock HUD:
The file HUD-PH-0700.cfg sets up the menu files. HUD description is in HUD-PH-0700.menu.

To use: (Simpler instructions) Place the two files in your WFA directory. In WFA console (the ``~'' console), run "set cg_hudFiles HUD-PH-0700.cfg; loadhud".

Milli HUD:
HUD-PH-milli.cfg to set up the menu files. HUD-PH-milli.menu for the actual HUD.

To use: (Simpler instructions) Place the two files in your WFA directory. In WFA console (the ``~'' console), run "set cg_hudFiles HUD-PH-milli.cfg; loadhud".

Returning to the regular HUD
You can return to the regular HUD with "set cg_hudFiles ui/hud.txt; loadhud" or by selecting it through the in-game (ESC) menu somewhere.


Maintenance: phaethon at linux.ucla.edu