Status bar

The status bar is displayed at the bottom of the screen during gameplay and shows the player's status. (At the largest screen size the status bar is not shown, except in automap mode.) The status bar shows:


 * Ammo:  The remaining ammo of the currently selected weapon.
 * Health: The player's health. This can range from 0-200%. If it does reach 0% the player dies (unless he is in a sector of type 11; in such a sector the observant player may also notice a negative number here for a split second).
 * Arms:  The weapons currently possessed by the player.  These correspond to the keys pressed to activate them.
 * Face:  The player's face. This gives an immediate indicator of health and also reacts to events such as damage to the player. Specifically, if the player is hurt, the face turns and looks in the direction of the origin of the damage; a new weapon causes the face to grin briefly; and as health falls, the face becomes more beaten and bloodied. If the player has activated iddqd, the invulnerability cheat, or picks up the invulnerability powerup, the face has glowing golden eyes.
 * Armor: The player's armor level.  This can range from 0-200% (and, in versions of Doom prior to v1.2, an arbitrarily high number).
 * The keys possessed by the player.
 * Remaining and maximum ammo for all four ammunition types (bullets, shells, rockets and cells).

In deathmatch mode, the "Arms" display is replaced by a "Frags" display showing the player's current score in the game. Furthermore, the background color of the player face is changed to match the player's color.



Technical
The status bar code in the Doom source code is responsible not only for drawing the status bar, but also performs the palette special effects when injured or picking up items, and detects the entry of cheat codes.

Beta versions of Doom showed messages to the player and multiplayer chat being performed inside the status bar. This was moved to the Heads-up display; however, the Doom source includes leftover variables relating to "status bar chat" and the message display.

In the Doom source code, ST_* is used as a prefix for files and functions associated with the status bar. This trend continues in the IWAD file, where graphic resources relating to the status bar begin with ST. The following resources are used for the status bar:


 * STBAR:       The main status bar graphic
 * STGNUM0-9:   Small grey numbers used for weapons not yet possessed
 * STTNUM0-9:   Large numbers, used for Health, Armor, Frags, Ammo displays
 * STTMINUS-9:  Negative symbol for large text
 * STTPRCNT:    Percent symbol for large text
 * STYSNUM0-9:  Small yellow numbers to indicate weapons possessed (also used for total ammo display)
 * STKEYS0-5:   Icons used for the key display
 * STDISK:      Floppy disk graphic used when accessing the disk
 * STCDROM:     CD-ROM graphic used when accessing a CD-ROM
 * STARMS:      The STBAR graphic includes a "Frags" box.  This graphic overwrites it with the "Arms" box when not in deathmatch.  Early versions of Doom (pre 1.2) did not include this graphic, as the status bar did not include a "frags" display.
 * STFB*:       Used as backgrounds for the player face when in multiplayer.
 * STF*:        Player face graphics.  The sprite names take the form STF[type][health][frame], where the text [type] represents one of several conditions currently being experienced by the player, [health] is a digit denoting his approximate current health, and [frame] is an optional extra digit signifying a repeating animation sequence.


 * The possible values of [type] are:


 * Additionally, STFGOD0 (unhurt, glowing eyes) appears while an invulnerability powerup or the iddqd cheat code is in effect.


 * The number [health] can take on the following values:

The sprite STFDEAD0 (head bowed and bruised, hair completely dishevelled) takes over when the player is killed.