This client has MQWCL's customizable Head Up Display.
You can customize your Head Up Display either by typing customization commands into the console, loading existing HUD configs, or, in the most straight-forward way, by using the in-built HUD Editor.
To load the HUD Editor, simply type hud_editor
into the console. A screen describing what keys represent what edit actions will appear and by simple drag&drop system you can move the HUD elements on your screen, resize and align them.
You can also load some existing HUD setups. Type one of the following lines into the console to load example HUD configurations:
/exec cfg/hud_berzerk
/exec cfg/hud_corner
/exec cfg/hud_dobbz
/exec cfg/hud_empezar
/exec cfg/hud_murdoc
/exec cfg/hud_vleesh
This client allows you to modify your HUD as you wish, you can choose which HUD elements to draw, where to draw them, how to draw them and how large to draw them.
You can either use your keyboard to move, hide and show, align, group, scale and change style of HUD elements on your screen or you can learn using commands to customize the HUD.
Since ezQuake version 1650 you we provide you a way to do most of the customization using your keyboard. To start with that, go to the game, join/start a map and type following:
/exec cfg/ezhud
A list of instructions now appears on screen / in console. You should notice that you can select hud elements using your [ and ] keys, move them using arrow keys, and perform other actions using keys on the numpad, page up, page down, home, end, insert, delete, space, enter, z, x, c, v, combine some keys with shift, and finally save your work by pressing U key.
You get your config saved into the <quake>/ezquake/configs directory. It's full name will be printed on the screen.
Some specific HUD elements have specific properties which you cannot change using the way described above and you might also want to know all the potential this client offers you in HUD scripting. Here you will learn how to customize the HUD using commands you type into console or configuration files.
Following text is based upon MQWCL HUD readme.
To enable new HUD,
you have to type /scr_newhud 1
- which disables FuhQuake-originated
HUD. If you're missing some features of FuhQuake HUD, you can combine those two HUDs
using /scr_newhud 2
.
This flexibility comes at a price though, it usually
takes a while to understand how to work with the HUD system, but once you've
managed that, it will be great fun to design your very own Quake HUD.
Check the examples throughout this document, if you have any problems with
understanding the HUD system.
A HUD element is a single 2D element, that can be drawn on-screen, moved to different positions, aligned etc. For most HUD elements it's also possible to display a frame in the background behind them.
Every HUD element has a name which is a string, like "netgraph", "fps" etc.. You use that name in HUD commands, like "show netgraph". The HUD element used remembers all its settings (its properties) as variables, which are named hud_<hud_name>_<property_name>.
Examples:
Changing a property of an element is simple. Obviously, a simple way to do this
is changing the appropriate variable, however there is a more convenient way:
try typing the element name at console, like this:
netgraph [ENTER]
You will see some infos about netgraph and a list of its properties with its
current values. If you want to change some - it's easy:
It's possible to use TAB completion for HUD properties, so if you type "netgraph inf" and press [TAB], it should complete. All variables for HUD elements (hud_*_*) are hidden.
Some properties (like "show") are controlled by commands (like "show" and "hide"). Some of them (those for setting element position) will not have a effect if you change them directly by variables. If you do so and you see no change, try the "hud_recalculate" command.
To show a certain HUD element, use the "show" command with the element name as a parameter. Giving no parameters will display a list of all HUD elements with their current status. There is a special parameter "all" which you can use to show all elements.
Examples:
The opposite to "show" is the command "hide", which obviously hides the specified HUD element. The current status is remembered as a "show" property, so typing "show netgraph" will have the same effect as typing "netgraph show 1".
When you want to move a certain HUD element, first you have to decide what screen area it occupies, the command used for placing a HUD element is: "place <element-name> <where-to-place>".
Examples:
If you have a place for your favorite element, align it to some edges. The command is "align <element-name> <X-alignment> <Y-alignment>".
align netgraph left top | left upper corner |
align fps right bottom | right lower corner |
Finally, if the element position still does not match your preferences, you can fine-tune it by using the command "move <element_name> <X-offset> <Y-offset>". Offsets can be either negative or positive. Setting a positive X-offset moves the element to the right, and a positive Y-offset moves the element to the bottom.
move netgraph 2 2 | move the netgraph 2 pixels right and 2 pixels down |
move fps -10 5 | move the FPS 10 pixels left and 5 pixels down |
Note that your element will not be drawn, if you locate it off the screen, even partially.
All those commands ("place", "align", "move") can be used without parameters, (print help then) or with on parameter - HUD element name. Then current values are printed.
You can align some elements relative to other elements. First you have to decide, if the element that you are locating now (element B) is to be positioned inside another element (element A) or outside it.
If inside do | place A @B |
If outside do | place A B |
Examples:
Then you have to align it. If you want to place it outside, you have some additional alignments - before and after.
Examples:
and you have a nice chain combined of health, armor and it's icons.
The difference between inside and outside placing can easily be seen if you add a frame to your elements and enlarge them (for example by using frame 2).
Frame is a regular property, it differs a little because every HUD element can have a frame. Values for frame property are:
0 | no frame |
(0..1) | transparent frame, lower number means more transparency |
1 | black frame |
2 | a box like that for netgraph |
Examples:
Currently the list of HUD elements contains few elements for occasional use (like netgraph), many elements taken from your status bar (reorganize your screen with them) and additional "group" objects, which display nothing (except frame if enabled) and can be used for grouping some objects together (like ammo counts).
ammo | current ammo value |
ammo1 | number of shells |
ammo2 | number of nails |
ammo3 | number of rockets |
ammo4 | number of cells |
armor | armor level |
armordamage | amounf of received damage to armor |
clock | clock |
face | player face |
fps | fps counter |
frags | small scoreboard |
group1 | grouping object |
group2 | grouping object |
group3 | grouping object |
group4 | grouping object |
group5 | grouping object |
gun | current weapon icon |
gun2 | shotgun icon |
gun3 | super shotgun icon |
gun4 | nailgun icon |
gun5 | super nailgun icon |
gun6 | grenade launcher icon |
gun7 | rocket launcher icon |
gun8 | lightning gun icon |
health | health level |
healthdamage | amounf of received damage to health |
iammo | current ammo icon |
iammo1 | shells icon |
iammo2 | nails icon |
iammo3 | rockets icon |
iammo4 | cells icon |
iarmor | armor icon |
key1 | silver key |
key2 | gold key |
net | net statistics |
netgraph | everything about net |
pent | pentagram icon |
ping | small net statistics |
quad | quad icon |
ring | ring icon |
sigil1 | sigil 1 icon (rune) |
sigil2 | sigil 2 icon |
sigil3 | sigil 3 icon |
sigil4 | sigil 4 icon |
speed | your current speed |
suit | suit icon |
teamfrags | number of frags per team |
tracking | name of tracked player |
Every element has its own properties. You can check them, by simply typing the element name in console. Some common properties are described below, which affect your inventory elements (guns, health etc):
Grouping elements have only two properties (width and height), they should be self-explanatory.
Below are some HUD elements that may be of interest. All of them have the property "frame" even though it is not listed. You can check the status of properties of a certain element by typing "<name of the HUD element> <property>".
Examples:
You can change their value with "<name of the HUD element> <property> <value>".
Examples:
Also all of the below elements have +/- commands to enable/disable them for easier binding. These commands always look like this: "+hud_<name>".
Examples:
Displays amount of damage done to your armour.
Properties are:
This displays the current local time (hh:mm). As stated above, it is a HUD element.
big | if should be BIG, |
blink | if ':' should blink, |
style | check yourself, values are (0, 1) for big one, and (0, 1, 2, 3) for small one |
The FPS counter is a HUD element now, so you can place it wherever you want.
show_min | show minimum framerate in last second |
title | if the annoying "fps" text should be displayed |
Displays short version of scoreboard, shows amount of frags per player.
Properties are:
Displays amount of damage done to your health.
Properties are:
This element displays statistics about your connect. It used to be "+shownet", but since this has now been transformed into a HUD element, there is no use for "+shownet" anymore.
Properties are:
The netgraph has been made a HUD element, it is a good tool to monitor your ping and see how it changes during battles. However, in QWCL the netgraph had ugly scale, and your ping was nearly invisible unless it was > 100. This is changed in this client and its HUD features, you can now change the scale, width, height, background etc.
Properties are:
Note, that some of these properties/variables are used by server browser connection tester. These are: alpha, full, inframes, lostscale, scale.
This HUD element displays your ping and by default your PL as well.
Properties are:
The speed display is a HUD element now, so the "show_speed" variable is no longer needed and has thus been removed.
Properties are:
Displays short version of scoreboard, shows amount of frags per team.
Properties are:
Displays nickname of tracked player while being spectator or watching demo. Usually displays instruction how to change point of view (POV) to next player too.
Properties are:
Here are some variables, which will be useful when changing the design of your HUD:
0 | display all items normally (default) |
1 | draw all items as if you have them; this for planning your HUD, for example you can move the quad icon to the desired position, because you see this icon even if you don't have quad at the moment; you should rather not play or do "cfg_save" with that |
0 | do not apply teamplay need settings to status bar drawings |
1 | this will apply teamplay need settings to your status drawings, like your health will be red if below "tp_need_health", not if below 25, armor will depend on tp_need_ga, tp_need_ya, tp_need_ra, not always red if below 10 etc |
Last update: 23.04.2009 16:55 UTC
ezQDocs