ZTM’s Flexible HUD mod for ioquake3 (Quake 3 and Team Arena expansion).
Download the zip and put the flexible hud pk3 files in your baseq3 and missionpack folders.
This mod is based on the ioquake3 mod code. The default changes are that the HUD will be aspect correct and the Quake 3 start server menu will display 8 maps instead of 4. You can configure the HUD with cvars listed below.
For it to be used on multiplayer servers, the server needs to disable pure mode (set sv_pure cvar to 0) or install the flexible hud pk3 files.
cg_stretch [0 – 1] stretch 4:3 HUD to fit screen (default: 0)
cg_fovAspectAdjust [0 – 1] automatically convert 4:3 cg_fov values to current aspect (default: 0)
cg_fovGunAdjust [0 – 1] controls gun offset based on FOV. 0 uses Q3A code, 1 uses new code (works with FOV < 90 and fixed FOV dmflags) (default: 0)
The following cvars all default to 1. Only cg_drawWeaponBar is usable in Team Arena.
cg_statusScale [0.0 – 1.0] set scale of status bar (ammo, health, head, armor, CTF flag).
cg_drawStatusHead [0 – 2] 0 disables drawing head, 1 acts like Q3A, 2 drawing health item instead (supports 3D and 2D icons).
cg_drawPickups [0.0 – 1.0] set scale of item pickup message (0 to disable).
cg_drawWeaponBar [0.0 – 1.0] set scale of weapon select popup (0 to disable).
cg_drawScores [0 – 1] toggle drawing scores in bottom right corner (no scaling support).
cg_stretch 0; cg_fovAspectAdjust 1; cg_fovGunAdjust 1; cg_fov 90;
git clone https://github.com/zturtleman/ioq3.git zturtleman-ioq3 cd zturtleman-ioq3 git checkout flexible_hud-r7 make BUILD_SERVER=0 BUILD_CLIENT=0
The pk3s contain cgame QVM for HUD changes. They also contains qagame and ui QVMs. This allows me to distribute improvements to them (committed to ioquake3) and fix local server player pain sounds due to ioq3’s qagame <-> cgame communication not being compatible with official Quake 3 QVMs.
Widescreen support is based on Spearmint Quake 3. However, Spearmint Quake 3 does not have cg_stretch 1, cg_drawStatusHead, cg_drawWeaponBar, or hud scaling options.
Release 1, November 7 2013: ztm-flexible-hud-r1.pk3 (baseq3)
Release 2, August 30 2014: ztm-flexible-hud-r2.pk3 (baseq3)
Release 3, May 29 2017: ztm-flexible-hud-r3.pk3 (baseq3)
Release 4, May 14 2018: ztm-flexible-hud-r4.zip (baseq3 and missionpack)
Release 5, October 11 2018: ztm-flexible-hud-r5.zip (baseq3 and missionpack)
Release 6, November 16 2018: ztm-flexible-hud-r6.zip (baseq3 and missionpack)
The source code for release 1 and 2 can be obtained by applying a patch in the pk3 file (a renamed zip file) to ioquake3’s source code. The ioquake3 git version is included in patch file. The source code for release 3 and later are tagged as flexible_hud-r3 etc in zturtleman/ioq3 GitHub repo, see Source Code section above.