Q2PRO-X 1.6 Final by ly
Model highlights and appearance
Project author: ly
Colours, outlines, bloom, model parts and nickname presets.
English edition • Q2PRO-X 1.6 Final by ly • November 7, 2026
Contents
The entries are links: click one to jump to that section.
2.2. The player highlighting page
3.1. The complete settings page
4. Commands, presets and diagnostics
4.1. Where highlighting applies
6. What highlighting does not do
Appearance of specific players
The general idea
Q2PRO-X highlights are a local visual layer. They change no server, no hitboxes, no damage, no movement and no network protocol. Their job is to make items, weapons and players easier to read, especially in demos, in practice, in single player and in visual presets.
To start quickly: enable the highlight layer, then configure items, weapons or players.
Where the settings live
| What you are setting | Menu path |
|---|---|
| The highlight layer, items, weapons | Main menu → Online Play Setup → Visibility Highlights |
| Item highlighting | Main menu → Online Play Setup → Visibility Highlights → Visibility / Items |
| Weapon highlighting | Main menu → Online Play Setup → Visibility Highlights → Visibility / Weapons |
| Player highlighting | Main menu → Options → Skins & Models → Visibility / Players |
| Model part colours | Main menu → Options → Skins & Models → Visibility / Players → Player Part Colors |
| Teams and duel | Main menu → Options → Skins & Models → Visibility / Players → Visibility / Teams and Duel |
| Visibility presets | Main menu → Options → Visibility & Visuals → Visibility presets |
Highlights in WGL and EGL
Model-part colours, opacity and skin blending work with WGL and EGL/ANGLE, including reflected models. MD2 and MD5 models are supported. WGL draws cel outlines after the coloured layers with depth testing; EGL uses edges measured in pixels. Factory visibility presets include Purple Males, Lime Females.
Highlights and Bloom
The Bloom menu combines overall strength with independent 0–100% category multipliers. 100% uses overall strength; 0% skips that category as a Bloom source. Comets retain their own controls. AVFX categories remain in this menu but are excluded from Visibility presets.
Overall strength and Bloom categories.
Bloom can remain visible with fill opacity set to zero. Player body parts can exclude outlines independently of their fill colour, and the same highlights appear in mirrors and puddles.
Visibility presets offer four shared custom slots and one-click random generation. They save highlights and ordinary Bloom, excluding skin overrides, player identity, downloads and AVFX Bloom categories. A factory preset disables all highlight masters. Applying a preset retains each variable's existing global/mod save scope.
Combining outline and fill
Outline and fill have separate opacity settings, so you can combine a strong outline with a translucent tint. Reflections use the same settings as the visible model.
1. Items and weapons
1.1. The main page
Visibility Highlights
| Type | Section | Row | Variable or target | What it does |
|---|---|---|---|---|
| List | Graphics quality | cl_vis_overlay_batch | Renderer path for visibility overlays. Applies immediately. [High / Performance] | |
| Toggle | Enable highlighting | cl_vis_enable | Master switch for all visibility highlighting. Applies immediately. | |
| Toggle | Single-player | cl_vis_singleplayer | Allow visibility highlights in local single-player/training. Applies immediately. | |
| Navigation | Items... | q2prox_vis_items | Item highlight settings: style, alpha, scale, class toggles and colours. | |
| Navigation | Weapons... | q2prox_vis_weapons | Weapon highlight settings: scale, per-weapon toggles and colours. | |
| Navigation | Players... | q2prox_vis_players | Player highlight settings: mode, style, colours, team and duel logic. | |
| Navigation | Visual effects... | q2prox_vfx | Bloom, colour grading and other visual effects. | |
| Navigation | Lighting presets... | q2prox_lighting_presets_hub | Apply lighting and colour presets. | |
| Navigation | Visibility presets... | q2prox_visibility_presets | Apply visibility highlight and bloom presets. | |
| Navigation | Visibility info... | cl_vis_items_info | Print item classification and visibility status. |
1.2. Items
Items have a style (off, shell, tint, shell and tint), opacity, shell opacity, shell thickness, brightness and scale. Item classes are enabled separately: health, armor, ammo, powerups and keys. Colours are configured per class.
Visibility / Items
| Type | Section | Row | Variable or target | What it does |
|---|---|---|---|---|
| Toggle | Item highlighting | cl_vis_items | Toggle item highlighting. Applies immediately. | |
| List | Item style | cl_vis_items_style | Item highlight style: outline shell, color fill, or both. Applies immediately. [off / shell / tint / shell+tint] | |
| Slider | Tint alpha | cl_vis_items_alpha | Opacity of the item highlight overlay (tint and shell). Applies immediately. | |
| Slider | Shell alpha | cl_vis_items_shell_alpha | Opacity of the item outline (shell) pass only. Applies immediately. | |
| Slider | Shell thickness | cl_vis_items_shell_scale | Thickness of the item outline shell. Applies immediately. | |
| Slider | Item brightness | cl_vis_items_brightness | Brightness of item highlights; above 1 boosts saturation. Applies immediately. | |
| Slider | Item scale | cl_vis_items_scale | Enlarge pickup items so they read from range; 1 = stock size. Applies immediately. | |
| Navigation | Item toggles... | q2prox_vis_toggles | Per-class item toggles: health, armor, ammo, powerups and keys. | |
| Navigation | Item colors... | q2prox_vis_colors | Per-class item colours. |
1.3. Weapons
Weapons have their own master switch, a scale, per-weapon toggles and per-weapon colours. Those same colours can be used as the palette for the carried weapon in model-parts mode.
Visibility / Weapons
| Type | Section | Row | Variable or target | What it does |
|---|---|---|---|---|
| Toggle | Weapon highlighting | cl_vis_weapons | Toggle weapon highlighting. Applies immediately. | |
| Slider | Weapon scale | cl_vis_weapons_scale | Enlarge dropped weapons so they read from range; 1 = stock size. Applies immediately. | |
| Navigation | Weapon toggles... | q2prox_vis_weapon_toggles | Per-weapon enable toggles. | |
| Navigation | Weapon colors... | q2prox_vis_weapon_colors | Per-weapon colours. |
2. Players
2.1. Highlight modes
| Variable | Accepted values | Description |
|---|---|---|
| cl_vis_players_mode | 0=off / 1=all / 2=random FFA / 3=duel / 4=auto / 5=team / 6=model / 7=model parts | Player highlight classification mode. 0=off; 1=all; 2=random FFA; 3=duel; 4=auto; 5=team; 6=model (old uniform colour per resolved player-model directory); 7=model parts (separate head/arms/torso/legs/weapon colours, with detailed controls in Player part colors). |
| Mode | What it does |
|---|---|
| Off | Players are not highlighted |
| All | One common mode for everybody |
| Random FFA | Different colours in free-for-all |
| Duel | Marks the duel pair |
| Auto | Automatic logic with a safe fallback |
| Team | Friendly and enemy colours from the team source |
| Model | A uniform colour per model |
| Model parts | Separate colours for head, arms, torso, legs and weapon |
The player style also has off, shell, tint and shell-and-tint variants, opacity, shell opacity and thickness, scale and brightness.
| Player scale applies only in single player or while watching .dm2 and .mvd2 recordings. On a live server the model keeps its standard size. |
|---|
2.2. The player highlighting page
Visibility / Players
| Type | Section | Row | Variable or target | What it does |
|---|---|---|---|---|
| Section | Main | Main | ||
| Toggle | Main | Player highlighting | cl_vis_players | Toggle player highlighting. Applies immediately. |
| Navigation | Main | Skins & models... | g_skins | Open skin/model override and player setup settings. |
| List | Main | Player mode | cl_vis_players_mode | off/all/random FFA/duel/auto/team/model/model parts. Model = old uniform per-model colour. Model parts = separate head/arms/torso/legs/weapon colours. Applies immediately. [off / all / random FFA / duel / auto / team / model / model parts] |
| Navigation | Main | Player model colors... | q2prox_vis_player_model_colors | Old uniform per-model colours for Player mode = Model. |
| Navigation | Main | Player part colors... | q2prox_vis_player_parts | Body-part colours for Player mode = Model parts. |
| Section | Style & appearance | Style & appearance | ||
| List | Style & appearance | Player style | cl_vis_players_style | Player highlight style: outline shell, color fill, or both. Applies immediately. [off / shell / tint / shell+tint] |
| Slider | Style & appearance | Player tint alpha | cl_vis_players_alpha | Whole-player tint alpha. In Model+parts mode the part tint can replace this tint. Applies immediately. |
| Slider | Style & appearance | Player shell alpha | cl_vis_players_shell_alpha | Opacity of the player outline (shell) pass. Applies immediately. |
| Slider | Style & appearance | Player shell thickness | cl_vis_players_shell_scale | Thickness of the player outline shell. Applies immediately. |
| Slider | Style & appearance | Player scale | cl_vis_players_scale | Player model size. Applied ONLY in single-player or during .dm2/.mvd2 demo playback. Stock size on a live deathmatch server. Range 0.1..5.0, step 0.01. Applies immediately. |
| Slider | Style & appearance | Player brightness | cl_vis_players_brightness | Brightness of player highlights; above 1 adds an emissive glow. Applies immediately. |
| Toggle | Style & appearance | Highlight self | cl_vis_players_self | Also highlight yourself (visible only in third-person/chasecam). Applies immediately. |
| Section | Rules | Rules | ||
| Navigation | Rules | Teams and duel... | q2prox_vis_player_rules | Team, duel and auto-mode rules. |
2.3. Teams and duel
Visibility / Teams and Duel
| Type | Section | Row | Variable or target | What it does |
|---|---|---|---|---|
| List | Auto fallback | cl_vis_players_auto_fallback | Auto-mode fallback when team/duel can't be resolved (default Random FFA). Applies immediately. [all / Random FFA] | |
| Slider | Duel hold | cl_vis_players_duel_hold_ms | How long a detected duel pair stays locked, in ms. Applies immediately. | |
| List | Team source | cl_vis_players_team_source | Team detection source: off, auto (skin-based), or OpenTDM. Applies immediately. [off / auto / opentdm] | |
| List | Team fallback | cl_vis_players_team_fallback | Team-mode fallback when a side can't be resolved (default Duel). Applies immediately. [all / Random FFA / duel] | |
| Slider | Team hold | cl_vis_players_team_hold_ms | How long a team assignment stays held if data goes stale, in ms. Applies immediately. | |
| List | Friendly color | cl_vis_players_team_friendly_color | Highlight color for teammates in Team mode. Applies immediately. [Dark / Grey / Brown / Dark red / Red / Orange / Gold / Yellow / Green-yellow / Green / Lime / Pure green / Mint / Cyan / Sky / Aqua / Blue / Azure / Magenta / Violet / White] | |
| List | Enemy color | cl_vis_players_team_enemy_color | Highlight color for enemies in Team mode. Applies immediately. [Dark / Grey / Brown / Dark red / Red / Orange / Gold / Yellow / Green-yellow / Green / Lime / Pure green / Mint / Cyan / Sky / Aqua / Blue / Azure / Magenta / Violet / White] |
3. Model parts
The Model parts mode colours parts of the model on the fly:
| Variable | Part |
|---|---|
| cl_vis_player_parts_head_color | Head |
| cl_vis_player_parts_arms_color | Arms |
| cl_vis_player_parts_torso_color | Torso |
| cl_vis_player_parts_legs_color | Legs |
| cl_vis_player_parts_weapon_color | The carried weapon |
Both model paths are supported — MD2 and MD5. For MD5 the skeleton, the animation and the skin path are preserved: Q2PRO-X never falls back to MD2 for the sake of a highlight.
3.1. The complete settings page
Player Part Colors
| Type | Section | Row | Variable or target | What it does |
|---|---|---|---|---|
| Section | Settings | Settings | ||
| List | Settings | Color set | cl_vis_player_parts_source | Use one shared color set, or separate colors for male/female/cyborg. Applies immediately. [Global / Per model] |
| List | Settings | Weapon source | cl_vis_player_parts_weapon_source | Carried weapon colour source. Weapon palette uses the existing weapon-highlight colours. Custom uses the shared weapon colour below. Explicit per-model weapon colours override the palette. Applies immediately. [Weapon palette / Custom] |
| Slider | Settings | Alpha | cl_vis_player_parts_alpha | Part fill opacity; 0 hides the fill while keeping bloom. Applies immediately. |
| Toggle | Settings | Fullbright colors | cl_vis_player_parts_fullbright | Use raw part colours without multiplying by the skin texture. Applies immediately. |
| Toggle | Settings | Replace tint | cl_vis_player_parts_replace_tint | Replace the legacy whole-player tint with part tint instead of stacking both. Applies immediately. |
| Toggle | Settings | Disable whole-model outline | cl_vis_player_parts_no_shell | Disable the whole-model outline in Model+parts mode; keep part colours and their bloom. Independent of Replace tint. Applies immediately. |
| Section | Part colors | Part colors | ||
| List | Part colors | Head | cl_vis_player_parts_head_color | Shared head color. Applies immediately. [Dark / Grey / Brown / Dark red / Red / Orange / Gold / Yellow / Green-yellow / Green / Lime / Pure green / Mint / Cyan / Sky / Aqua / Blue / Azure / Magenta / Violet / White] |
| List | Part colors | Arms | cl_vis_player_parts_arms_color | Shared arms color. Applies immediately. [Dark / Grey / Brown / Dark red / Red / Orange / Gold / Yellow / Green-yellow / Green / Lime / Pure green / Mint / Cyan / Sky / Aqua / Blue / Azure / Magenta / Violet / White] |
| List | Part colors | Torso | cl_vis_player_parts_torso_color | Shared torso color. Applies immediately. [Dark / Grey / Brown / Dark red / Red / Orange / Gold / Yellow / Green-yellow / Green / Lime / Pure green / Mint / Cyan / Sky / Aqua / Blue / Azure / Magenta / Violet / White] |
| List | Part colors | Legs | cl_vis_player_parts_legs_color | Shared legs color. Applies immediately. [Dark / Grey / Brown / Dark red / Red / Orange / Gold / Yellow / Green-yellow / Green / Lime / Pure green / Mint / Cyan / Sky / Aqua / Blue / Azure / Magenta / Violet / White] |
| List | Part colors | Weapon | cl_vis_player_parts_weapon_color | Carried weapon custom color. Applies immediately. [Dark / Grey / Brown / Dark red / Red / Orange / Gold / Yellow / Green-yellow / Green / Lime / Pure green / Mint / Cyan / Sky / Aqua / Blue / Azure / Magenta / Violet / White] |
| Section | Body zones | Body zones | ||
| Slider | Body zones | Head start | cl_vis_player_parts_head_start | Normalized height where the head zone starts. Raise this if head colour leaks onto shoulders. Applies immediately. |
| Slider | Body zones | Border softness | cl_vis_player_parts_softness | Softness of head/torso/legs transitions. Lower values make cleaner borders. Applies immediately. |
| Slider | Body zones | Legs end | cl_vis_player_parts_legs_end | Normalized top of the legs zone. Applies immediately. |
| Section | Per model | Per model | ||
| Navigation | Per model | Model male... | q2prox_vis_player_parts_male | Separate part colours for the male model. |
| Navigation | Per model | Model female... | q2prox_vis_player_parts_female | Separate part colours for the female model. |
| Navigation | Per model | Model cyborg... | q2prox_vis_player_parts_cyborg | Separate part colours for the cyborg model. |
| Navigation | Per model | Reset to defaults | reset cl_vis_player_parts_source; reset cl_vis_player_parts_weapon_source; reset cl_vis_player_parts_alpha; reset cl_vis_player_parts_brightness; reset cl_vis_player_parts_fullbright; reset cl_vis_player_parts_replace_tint; reset cl_vis_player_parts_no_shell; reset cl_vis_player_parts_debug; reset cl_vis_player_parts_head_color; reset cl_vis_player_parts_arms_color; reset cl_vis_player_parts_torso_color; reset cl_vis_player_parts_legs_color; reset cl_vis_player_parts_weapon_color; reset cl_vis_player_parts_head_start; reset cl_vis_player_parts_softness; reset cl_vis_player_parts_legs_end | Reset this menu to defaults and refresh visible values immediately. |
3.2. Separate sets per model
The colour set can be shared, or separate for the male, female and cyborg models. Each of the three models has its own part-colour page.
3.3. Tuning the body zones
Three sliders solve the most common problem — one zone's colour spilling into its neighbour:
| Variable | Accepted values | Description |
|---|---|---|
| cl_vis_player_parts_head_start | default 0.86 / range 0.60..0.98 | Normalized height where the head tint starts. Increase this when the head colour leaks onto shoulders; decrease it if the lower head/neck is not coloured enough. Default 0.86 is tighter than the first Phase-A prototype. |
| cl_vis_player_parts_softness | default 0.035 / range 0.005..0.20 | Soft transition width for head/torso/legs classifier. Smaller values produce cleaner borders; larger values blend colours more gradually. Default 0.035 reduces head colour bleed on shoulders. |
4. Commands, presets and diagnostics
Visibility presets
| Type | Section | Row | Variable or target | What it does |
|---|---|---|---|---|
| Navigation | Default (All Highlights Off) | cl_visibility_preset_load_factory default_off | Disable visibility highlights and ordinary Bloom; AVFX Bloom percentages stay unchanged. | |
| Navigation | Player Parts, Items and Light Bloom | cl_visibility_preset_load_factory parts_items_light | Apply player-part colours, item highlights and the authored light Bloom settings. | |
| Navigation | Red Male, Green Female and Blue Cyborg | cl_visibility_preset_load_factory models_rgb | Apply the captured highlights and Bloom: red male, green female and blue cyborg. | |
| Navigation | Purple Male, Lime Female | cl_visibility_preset_load_factory models_purple_lime | Apply the saved purple/lime visibility and Bloom preset. | |
| Navigation | FFA (Automatic Model Colours) | cl_visibility_preset_load_factory ffa_auto | Apply the captured FFA automatic player colours, highlights and Bloom. | |
| Navigation | Generate random preset | cl_visibility_preset_generate | Enable highlights and apply random colours/settings now. Save a result in a user slot. AVFX Bloom percentages are excluded. | |
| Preset name | Slot 1 name | |||
| Navigation | Load | ui_visibility_load_custom 1 | Load user visibility preset 1; shared by all mods. | |
| Navigation | Save | ui_visibility_save_custom 1 | Save user visibility preset 1; shared by all mods. | |
| Navigation | Rename | ui_visibility_rename_custom 1 | Rename user visibility preset 1; shared by all mods. | |
| Preset name | Slot 2 name | |||
| Navigation | Load | ui_visibility_load_custom 2 | Load user visibility preset 2; shared by all mods. | |
| Navigation | Save | ui_visibility_save_custom 2 | Save user visibility preset 2; shared by all mods. | |
| Navigation | Rename | ui_visibility_rename_custom 2 | Rename user visibility preset 2; shared by all mods. | |
| Preset name | Slot 3 name | |||
| Navigation | Load | ui_visibility_load_custom 3 | Load user visibility preset 3; shared by all mods. | |
| Navigation | Save | ui_visibility_save_custom 3 | Save user visibility preset 3; shared by all mods. | |
| Navigation | Rename | ui_visibility_rename_custom 3 | Rename user visibility preset 3; shared by all mods. | |
| Preset name | Slot 4 name | |||
| Navigation | Load | ui_visibility_load_custom 4 | Load user visibility preset 4; shared by all mods. | |
| Navigation | Save | ui_visibility_save_custom 4 | Save user visibility preset 4; shared by all mods. | |
| Navigation | Rename | ui_visibility_rename_custom 4 | Rename user visibility preset 4; shared by all mods. | |
| Section | Related settings | Related settings | ||
| Navigation | Related settings | Visibility highlights... | q2prox_vis | Item, weapon and player highlights, including model-part colours. |
| Navigation | Related settings | Visual effects... | q2prox_vfx | Bloom, colour grading and other visual effects. |
| Navigation | Related settings | Mod configs... | q2prox_modcfg | Open mod configs: choose and save settings for each mod and manage its default profile. |
4.1. Where highlighting applies
| Variable | Accepted values | Description |
|---|---|---|
| cl_vis_singleplayer | 0=multiplayer only / 1=also singleplayer | Also apply the visibility layer in singleplayer. When off, the highlight system only activates in multiplayer maps (cl.maxclients > 1) since most classic SP players dislike shell overlays on AI. |
By default the layer is aimed at online play and at watching recordings. A separate setting permits it in single player as well.
5. Practical recipes
| Task | Setting |
|---|---|
| Demo analysis | Model parts mode, brightness 1.5–2.5, shell-and-tint style, moderate opacity |
| Single player | Item scale 1.3–1.8, weapon scale 1.2–1.5, permit the layer in single player |
| A good-looking showcase | Part tint with pure colours off, so the skin texture is preserved |
| Maximum readability | Pure colours on, tint replacement on, bright head, torso and leg colours |
6. What highlighting does not do
Appearance of specific players
Open Skins & models → Player nickname overrides. Eight slots are arranged in two rows of four. Rules operate simultaneously, persist globally across mods, and apply both in live games and demo playback.
Open a slot to edit its fields:
| Setting | Purpose |
|---|---|
| Preset name | Optional label used to identify this slot. |
| Nicknames | One or more complete nicknames separated by commas, for example tet, Domik_v_derevne. Matching ignores case and trims spaces around each list entry. |
| Rule | Enable or temporarily disable the rule without losing its settings. |
| Model | An installed model, or Inherit to keep the ordinary model selection. |
| Skin | A skin belonging to the selected model. No independent skin replacement is applied when the model is inherited. |
| Colour | A named highlight colour, or Inherit highlights to retain ordinary colour rules. |
| Save | Apply edits. At least one nickname is required. |
| Clear preset | Remove the slot settings and stop applying its rule. |
| Cancel | Close the editor without applying edits. |
For example, enter tet, Domik_v_derevne, select male and claymore, choose a named colour, then Save. Only those complete nicknames receive the selected appearance, regardless of letter case.
Nickname matching is exact, not a substring or pattern search. If lists overlap, the first enabled matching slot wins; later slots are not combined with it. Renaming a player changes the match. This is local client presentation: the server and other players do not receive appearance changes from your rule.
A named model takes precedence over general model overrides. Its attached weapon model and local sexed sounds follow the same selection. Missing model/skin files retain the existing fallback; the independent named colour still works.
An explicit named colour replaces general team, model and body-part highlights for matching players. It also works with general player highlighting disabled. Inherit highlights retains the ordinary colour policy. Clearing a slot returns its players to the existing model and highlight rules.
Lighting preset names
Presets → Lighting presets contains Super Bright followed by Bright, with different sets of 38 lighting parameters. Selecting a preset applies its values; the existence of a factory preset does not change your current settings or user slots.
The console identifiers retain their original mapping: cl_lighting_preset_load_factory bright selects Super Bright; cl_lighting_preset_load_factory super_bright selects Bright.
Modulation intensity by group
Lighting model → Modulation intensity controls living players, player corpses, living monsters, monster corpses, world weapons, first-person weapon, armor, health, ammunition, powerups and keys independently. Each ranges from 0 to 200% of its existing lighting, default 100%. This is a multiplier, not an independent gl_modulate value. Changes apply immediately and persist globally; factory/user lighting presets include them. Older presets without group fields use neutral 100%.
For darker bodies, reduce Player corpses while leaving Living players at 100%. A gun carried by another player follows its owner's group, not the world-pickup group. Highlights, bloom and reflections respect the same group. Zero makes a model black rather than transparent. gl_modulate_groups_reset restores group factors without changing master modulation.
Item animation
Online game settings → Item animation controls a small hop, squash/stretch, fall and settling for 22 pickup categories. Master and all categories default to off. Rotation remains; shadows, highlighting, bloom and reflections follow the pose. Players and held weapons are unaffected. Demo playback is supported. See Item Animation Guide for all controls.