All guides   ·   Download DOCX

Q2PRO-X 1.6 Final by ly

Model highlights and appearance

Q2PRO-X document image

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.

The general idea

Where the settings live

Highlights in WGL and EGL

Highlights and Bloom

Combining outline and fill

1. Items and weapons

1.1. The main page

1.2. Items

1.3. Weapons

2. Players

2.1. Highlight modes

2.2. The player highlighting page

2.3. Teams and duel

3. Model parts

3.1. The complete settings page

3.2. Separate sets per model

3.3. Tuning the body zones

4. Commands, presets and diagnostics

4.1. Where highlighting applies

5. Practical recipes

6. What highlighting does not do

Appearance of specific players

Lighting preset names

Modulation intensity by group

Item animation


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 settingMenu path
The highlight layer, items, weaponsMain menu → Online Play Setup → Visibility Highlights
Item highlightingMain menu → Online Play Setup → Visibility Highlights → Visibility / Items
Weapon highlightingMain menu → Online Play Setup → Visibility Highlights → Visibility / Weapons
Player highlightingMain menu → Options → Skins & Models → Visibility / Players
Model part coloursMain menu → Options → Skins & Models → Visibility / Players → Player Part Colors
Teams and duelMain menu → Options → Skins & Models → Visibility / Players → Visibility / Teams and Duel
Visibility presetsMain 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.

Q2PRO-X document image

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

TypeSectionRowVariable or targetWhat it does
ListGraphics qualitycl_vis_overlay_batchRenderer path for visibility overlays. Applies immediately. [High / Performance]
ToggleEnable highlightingcl_vis_enableMaster switch for all visibility highlighting. Applies immediately.
ToggleSingle-playercl_vis_singleplayerAllow visibility highlights in local single-player/training. Applies immediately.
NavigationItems...q2prox_vis_itemsItem highlight settings: style, alpha, scale, class toggles and colours.
NavigationWeapons...q2prox_vis_weaponsWeapon highlight settings: scale, per-weapon toggles and colours.
NavigationPlayers...q2prox_vis_playersPlayer highlight settings: mode, style, colours, team and duel logic.
NavigationVisual effects...q2prox_vfxBloom, colour grading and other visual effects.
NavigationLighting presets...q2prox_lighting_presets_hubApply lighting and colour presets.
NavigationVisibility presets...q2prox_visibility_presetsApply visibility highlight and bloom presets.
NavigationVisibility info...cl_vis_items_infoPrint 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

TypeSectionRowVariable or targetWhat it does
ToggleItem highlightingcl_vis_itemsToggle item highlighting. Applies immediately.
ListItem stylecl_vis_items_styleItem highlight style: outline shell, color fill, or both. Applies immediately. [off / shell / tint / shell+tint]
SliderTint alphacl_vis_items_alphaOpacity of the item highlight overlay (tint and shell). Applies immediately.
SliderShell alphacl_vis_items_shell_alphaOpacity of the item outline (shell) pass only. Applies immediately.
SliderShell thicknesscl_vis_items_shell_scaleThickness of the item outline shell. Applies immediately.
SliderItem brightnesscl_vis_items_brightnessBrightness of item highlights; above 1 boosts saturation. Applies immediately.
SliderItem scalecl_vis_items_scaleEnlarge pickup items so they read from range; 1 = stock size. Applies immediately.
NavigationItem toggles...q2prox_vis_togglesPer-class item toggles: health, armor, ammo, powerups and keys.
NavigationItem colors...q2prox_vis_colorsPer-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

TypeSectionRowVariable or targetWhat it does
ToggleWeapon highlightingcl_vis_weaponsToggle weapon highlighting. Applies immediately.
SliderWeapon scalecl_vis_weapons_scaleEnlarge dropped weapons so they read from range; 1 = stock size. Applies immediately.
NavigationWeapon toggles...q2prox_vis_weapon_togglesPer-weapon enable toggles.
NavigationWeapon colors...q2prox_vis_weapon_colorsPer-weapon colours.



2. Players

2.1. Highlight modes

VariableAccepted valuesDescription
cl_vis_players_mode0=off / 1=all / 2=random FFA / 3=duel / 4=auto / 5=team / 6=model / 7=model partsPlayer 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).
ModeWhat it does
OffPlayers are not highlighted
AllOne common mode for everybody
Random FFADifferent colours in free-for-all
DuelMarks the duel pair
AutoAutomatic logic with a safe fallback
TeamFriendly and enemy colours from the team source
ModelA uniform colour per model
Model partsSeparate 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

TypeSectionRowVariable or targetWhat it does
SectionMainMain
ToggleMainPlayer highlightingcl_vis_playersToggle player highlighting. Applies immediately.
NavigationMainSkins & models...g_skinsOpen skin/model override and player setup settings.
ListMainPlayer modecl_vis_players_modeoff/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]
NavigationMainPlayer model colors...q2prox_vis_player_model_colorsOld uniform per-model colours for Player mode = Model.
NavigationMainPlayer part colors...q2prox_vis_player_partsBody-part colours for Player mode = Model parts.
SectionStyle & appearanceStyle & appearance
ListStyle & appearancePlayer stylecl_vis_players_stylePlayer highlight style: outline shell, color fill, or both. Applies immediately. [off / shell / tint / shell+tint]
SliderStyle & appearancePlayer tint alphacl_vis_players_alphaWhole-player tint alpha. In Model+parts mode the part tint can replace this tint. Applies immediately.
SliderStyle & appearancePlayer shell alphacl_vis_players_shell_alphaOpacity of the player outline (shell) pass. Applies immediately.
SliderStyle & appearancePlayer shell thicknesscl_vis_players_shell_scaleThickness of the player outline shell. Applies immediately.
SliderStyle & appearancePlayer scalecl_vis_players_scalePlayer 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.
SliderStyle & appearancePlayer brightnesscl_vis_players_brightnessBrightness of player highlights; above 1 adds an emissive glow. Applies immediately.
ToggleStyle & appearanceHighlight selfcl_vis_players_selfAlso highlight yourself (visible only in third-person/chasecam). Applies immediately.
SectionRulesRules
NavigationRulesTeams and duel...q2prox_vis_player_rulesTeam, duel and auto-mode rules.

2.3. Teams and duel

Visibility / Teams and Duel

TypeSectionRowVariable or targetWhat it does
ListAuto fallbackcl_vis_players_auto_fallbackAuto-mode fallback when team/duel can't be resolved (default Random FFA). Applies immediately. [all / Random FFA]
SliderDuel holdcl_vis_players_duel_hold_msHow long a detected duel pair stays locked, in ms. Applies immediately.
ListTeam sourcecl_vis_players_team_sourceTeam detection source: off, auto (skin-based), or OpenTDM. Applies immediately. [off / auto / opentdm]
ListTeam fallbackcl_vis_players_team_fallbackTeam-mode fallback when a side can't be resolved (default Duel). Applies immediately. [all / Random FFA / duel]
SliderTeam holdcl_vis_players_team_hold_msHow long a team assignment stays held if data goes stale, in ms. Applies immediately.
ListFriendly colorcl_vis_players_team_friendly_colorHighlight 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]
ListEnemy colorcl_vis_players_team_enemy_colorHighlight 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:

VariablePart
cl_vis_player_parts_head_colorHead
cl_vis_player_parts_arms_colorArms
cl_vis_player_parts_torso_colorTorso
cl_vis_player_parts_legs_colorLegs
cl_vis_player_parts_weapon_colorThe 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

TypeSectionRowVariable or targetWhat it does
SectionSettingsSettings
ListSettingsColor setcl_vis_player_parts_sourceUse one shared color set, or separate colors for male/female/cyborg. Applies immediately. [Global / Per model]
ListSettingsWeapon sourcecl_vis_player_parts_weapon_sourceCarried 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]
SliderSettingsAlphacl_vis_player_parts_alphaPart fill opacity; 0 hides the fill while keeping bloom. Applies immediately.
ToggleSettingsFullbright colorscl_vis_player_parts_fullbrightUse raw part colours without multiplying by the skin texture. Applies immediately.
ToggleSettingsReplace tintcl_vis_player_parts_replace_tintReplace the legacy whole-player tint with part tint instead of stacking both. Applies immediately.
ToggleSettingsDisable whole-model outlinecl_vis_player_parts_no_shellDisable the whole-model outline in Model+parts mode; keep part colours and their bloom. Independent of Replace tint. Applies immediately.
SectionPart colorsPart colors
ListPart colorsHeadcl_vis_player_parts_head_colorShared 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]
ListPart colorsArmscl_vis_player_parts_arms_colorShared 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]
ListPart colorsTorsocl_vis_player_parts_torso_colorShared 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]
ListPart colorsLegscl_vis_player_parts_legs_colorShared 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]
ListPart colorsWeaponcl_vis_player_parts_weapon_colorCarried 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]
SectionBody zonesBody zones
SliderBody zonesHead startcl_vis_player_parts_head_startNormalized height where the head zone starts. Raise this if head colour leaks onto shoulders. Applies immediately.
SliderBody zonesBorder softnesscl_vis_player_parts_softnessSoftness of head/torso/legs transitions. Lower values make cleaner borders. Applies immediately.
SliderBody zonesLegs endcl_vis_player_parts_legs_endNormalized top of the legs zone. Applies immediately.
SectionPer modelPer model
NavigationPer modelModel male...q2prox_vis_player_parts_maleSeparate part colours for the male model.
NavigationPer modelModel female...q2prox_vis_player_parts_femaleSeparate part colours for the female model.
NavigationPer modelModel cyborg...q2prox_vis_player_parts_cyborgSeparate part colours for the cyborg model.
NavigationPer modelReset to defaultsreset 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_endReset 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:

if the head colour spills onto the shoulders, raise the head start;
if the legs reach into the torso, lower the legs end;
if the boundaries are too blurred, reduce the boundary softness.
VariableAccepted valuesDescription
cl_vis_player_parts_head_startdefault 0.86 / range 0.60..0.98Normalized 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_softnessdefault 0.035 / range 0.005..0.20Soft 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

cl_vis_items_info prints the item classification and the current state of the visibility layer.
The visibility presets are collected on their own page and give you ready-made profiles.
For a clean competitive look, keep highlights and AVFX separate: choose the AVFX preset first, then apply a visibility preset or configure it by hand.

Visibility presets

TypeSectionRowVariable or targetWhat it does
NavigationDefault (All Highlights Off)cl_visibility_preset_load_factory default_offDisable visibility highlights and ordinary Bloom; AVFX Bloom percentages stay unchanged.
NavigationPlayer Parts, Items and Light Bloomcl_visibility_preset_load_factory parts_items_lightApply player-part colours, item highlights and the authored light Bloom settings.
NavigationRed Male, Green Female and Blue Cyborgcl_visibility_preset_load_factory models_rgbApply the captured highlights and Bloom: red male, green female and blue cyborg.
NavigationPurple Male, Lime Femalecl_visibility_preset_load_factory models_purple_limeApply the saved purple/lime visibility and Bloom preset.
NavigationFFA (Automatic Model Colours)cl_visibility_preset_load_factory ffa_autoApply the captured FFA automatic player colours, highlights and Bloom.
NavigationGenerate random presetcl_visibility_preset_generateEnable highlights and apply random colours/settings now. Save a result in a user slot. AVFX Bloom percentages are excluded.
Preset nameSlot 1 name
NavigationLoadui_visibility_load_custom 1Load user visibility preset 1; shared by all mods.
NavigationSaveui_visibility_save_custom 1Save user visibility preset 1; shared by all mods.
NavigationRenameui_visibility_rename_custom 1Rename user visibility preset 1; shared by all mods.
Preset nameSlot 2 name
NavigationLoadui_visibility_load_custom 2Load user visibility preset 2; shared by all mods.
NavigationSaveui_visibility_save_custom 2Save user visibility preset 2; shared by all mods.
NavigationRenameui_visibility_rename_custom 2Rename user visibility preset 2; shared by all mods.
Preset nameSlot 3 name
NavigationLoadui_visibility_load_custom 3Load user visibility preset 3; shared by all mods.
NavigationSaveui_visibility_save_custom 3Save user visibility preset 3; shared by all mods.
NavigationRenameui_visibility_rename_custom 3Rename user visibility preset 3; shared by all mods.
Preset nameSlot 4 name
NavigationLoadui_visibility_load_custom 4Load user visibility preset 4; shared by all mods.
NavigationSaveui_visibility_save_custom 4Save user visibility preset 4; shared by all mods.
NavigationRenameui_visibility_rename_custom 4Rename user visibility preset 4; shared by all mods.
SectionRelated settingsRelated settings
NavigationRelated settingsVisibility highlights...q2prox_visItem, weapon and player highlights, including model-part colours.
NavigationRelated settingsVisual effects...q2prox_vfxBloom, colour grading and other visual effects.
NavigationRelated settingsMod configs...q2prox_modcfgOpen mod configs: choose and save settings for each mod and manage its default profile.

4.1. Where highlighting applies

VariableAccepted valuesDescription
cl_vis_singleplayer0=multiplayer only / 1=also singleplayerAlso 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

TaskSetting
Demo analysisModel parts mode, brightness 1.5–2.5, shell-and-tint style, moderate opacity
Single playerItem scale 1.3–1.8, weapon scale 1.2–1.5, permit the layer in single player
A good-looking showcasePart tint with pure colours off, so the skin texture is preserved
Maximum readabilityPure colours on, tint replacement on, bright head, torso and leg colours


6. What highlighting does not do

It does not change hitboxes and does not affect hit registration.
It does not show players through walls and reveals no hidden entities.
It does not change server rules and needs no server support.
It does not replace models or skins: it only colours what is already drawn.

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:

SettingPurpose
Preset nameOptional label used to identify this slot.
NicknamesOne or more complete nicknames separated by commas, for example tet, Domik_v_derevne. Matching ignores case and trims spaces around each list entry.
RuleEnable or temporarily disable the rule without losing its settings.
ModelAn installed model, or Inherit to keep the ordinary model selection.
SkinA skin belonging to the selected model. No independent skin replacement is applied when the model is inherited.
ColourA named highlight colour, or Inherit highlights to retain ordinary colour rules.
SaveApply edits. At least one nickname is required.
Clear presetRemove the slot settings and stop applying its rule.
CancelClose 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.