All guides   ·   Download DOCX

Q2PRO-X 1.6 Final by ly

Demo browser and player

Q2PRO-X document image

Project author: ly

Find recordings, seek through them, choose a player and use the director.

English edition • Q2PRO-X 1.6 Final by ly • November 7, 2026


Contents

The entries are links: click one to jump to that section.

Finding recordings and browsing the library

Network tools during playback

Recordings, the demo browser and the demo player

Where the settings live

1. Supported formats

2. Demo Browser

3. Tabs and organization

4. Playlist flow

5. Demo Player Overlay

6. Pause, seek, and keys

7. Demo volume, gun, and skins

8. MVD Director

9. Demo Analytics

10. Trail mode

11. Analytics colors

12. Demo Item Timers

13. Tracked items

14. Item timer colors

15. Demo visual cfg

16. Practical scenarios

Just watching demos

Watching an MVD duel with analytics

Studying item control

Making clean demo capture

17. The menu pages in full

17.1. Demo browser

17.2. Demo player

17.3. Demo analytics

17.4. In-demo item timers

18. The link to game statistics

19. Interface settings

POV and next-frag navigation

Contact effect sources

Appearance of specific players

Lighting preset names

Cvar Browser: complete lists and keyboard layouts

System-key behavior

Server address and Tab

External demo playback

Item animation

Server update rate

Connection and playback diagnostics


Finding recordings and browsing the library

demo and mvdplay search the current mod first, then baseq2, then other local mod directories alphabetically. Exact paths precede recursive fallback. Loose files precede archive fallback. Disconnect restores the user's game directory; demo discovery does not execute other mods' configs or require reconnecting.

demo match

demo baseq2/match

demo opentdm/match

demo --mod baseq2 __pa3Hoe/z3/z3

mvdplay --mod opentdm match

Names above are placeholders for your recordings. An explicit mod limits lookup to that directory. Use --mod to disambiguate a subfolder named like an installed mod. Basename/relative-suffix lookup covers nested folders and PAK/PKZ/ZIP recordings, including archives in subfolders. RAR/7z and archives inside archives are unsupported. OS path-length limits still apply. The first match starts immediately; extra loose copies are reported asynchronously as: Demo "z3": another match at "...". Exact demo path: /...

The browser index, All tab and search cover all mods. Current mod shows only the active directory, with no baseq2 entries mixed in when another mod is active. The packed-demo filter controls archived recordings. Above the list, Auto-update demos (cl_demo_index_autoscan) enables incremental refresh on opening; Rebuild index also works with automatic refresh disabled. Requests are not duplicated while busy. demo_index_refresh and demo_index_rebuild remain available. These controls belong to the browser, not the player.

Standard multiline menu tooltips show file, players, map, recorded mod, relative path and local file/archive time. The timestamp is not an exact match-start claim. Missing metadata remains unknown. Favorites, playlists and player details retain the selected copy's identity. Demo launch fades intro music before a separate demo music profile starts. Demo settings remain independent from normal play settings. The illustrations show the main controls; some screenshots were taken before the latest search and index controls were added.


Network tools during playback

Network God performs no network diagnostics/corrections and shows none of its HUD during DM2/MVD2 playback. Its user-selected mode is preserved. Demo playback does not qualify the next launch for automatic connection to the last server.


Recordings, the demo browser and the demo player

The demo browser organizes your recordings, while the player lets you pause, seek and change viewpoint. This guide also covers movement trails, match analysis, automatic camera selection, item timers and the separate visual profile used during playback.

A separate subject. The automatic analysis of your recordings and your personal match statistics are covered in the game statistics guide. This document is about watching only.

Where the settings live

What you are settingMenu path
Demo browserMain menu → Options → Advanced Q2PRO-X → Demo Browser
Demo playerMain menu → Options → Advanced Q2PRO-X → Demo Player
Demo analyticsMain menu → Options → Advanced Q2PRO-X → Demo Player → Demo Analytics
In-demo item timersMain menu → Options → Advanced Q2PRO-X → Demo Player → Demo Item Timers
Game statisticsMain menu → Options → Advanced Q2PRO-X → Game Statistics


1. Supported formats

Main formats:

.dm2 - normal single-POV demo;
.mvd2 - multi-view demo with extra data for MVD playback.

Some features work in both formats, some are MVD2-only:

demo browser - both formats;
demo player overlay - both formats;
pause/seek - both, with different internal implementation;
analytics traffic/frags/pickups - full MVD2, DM2 fallback via live POV

sampling;

director mode - MVD2;
item timers - MVD2.


2. Demo Browser

Path:

Options -> Demo Browser;
command demo_browser_open;
bind demo_browser_toggle.

Main settings:

cl_demo_browser_alpha;
cl_demo_browser_scale;
cl_demo_browser_fullscreen;
cl_demo_browser_show_details;
cl_demo_browser_row_colors;
cl_demo_browser_show_broken;
cl_demo_browser_show_packed;
cl_demo_browser_remember_tab;
cl_demo_browser_last_tab.

The browser uses a central index:

demo_index_rebuild - full rescan;
demo_index_refresh - incremental refresh.

The index is not part of the release package. It is created locally on the user's machine.


3. Tabs and organization

The modern demo browser groups demos into working views, for example:

All;
Favorites;
Date;
Mod;
Map;
POV.

Exact visibility depends on the discovered demos and metadata. remember tab opens the browser on the last used tab next time.

Partial/unreadable demos can be shown or hidden. Packed demos from engine-visible packs are hidden by default so the user's library is not mixed with pak contents unless desired.


4. Playlist flow

Demo browser supports selecting multiple demos and playlist behavior.

Useful actions:

check demos;
play selected queue;
jump next / previous;
clear playlist.

Binds in Demo Player:

demo_playlist_next;
demo_playlist_prev;
demo_playlist_clear.

When a playlist is active, the demo player overlay shows the related control cluster.


5. Demo Player Overlay

Path:

Options -> Demo Player;
command demo_player_open;
bind demo_player_toggle.

Key settings:

cl_demoplayer_overlay;
cl_demoplayer_overlay_alpha;
cl_demoplayer_overlay_scale;
cl_demoplayer_overlay_autohide_sec;
cl_demoplayer_overlay_seek_step_sec;
cl_demoplayer_overlay_seek_jump_sec;
cl_demoplayer_overlay_y;
cl_demoplayer_overlay_show_score;
cl_demoplayer_hide_draws;
cl_demoplayer_volume;
cl_demoplayer_gun;
cl_demoplayer_noskins.

The overlay shows playback controls, timeline, mode pills, and popup menus for several controls.


6. Pause, seek, and keys

Main binds:

demo_pause_toggle;
+demo_seek_back;
+demo_seek_forward;
demo_player_toggle;
demo_browser_toggle.

Defaults:

Space - pause/resume;
Left Arrow - seek back;
Right Arrow - seek forward.

Seek step and jump are configured separately. For long MVDs, raise jump; for short duels, keep a smaller step.


7. Demo volume, gun, and skins

cl_demoplayer_volume is a temporary volume override during demo playback.

Normal game volume is restored when playback ends.

cl_demoplayer_gun:

show gun;
hide gun.

This is a demo-playback override. It does not change normal cl_gun.

cl_demoplayer_noskins:

original;
no skins.

This is also a playback override. It does not change normal cl_noskins.


8. MVD Director

The MVD-only director helps automatically select POV.

Mode:

cl_demoplayer_mvd_director_mode;

Values:

off;
next frag;
quad;
penta;
leader.

Lead time:

cl_demoplayer_mvd_director_lead_sec.

Debug:

cl_demoplayer_nextfrag_debug.

next frag uses a pre-scanned frag timeline to switch before the event. A manual POV override temporarily cools the director down so it does not immediately take control back.


9. Demo Analytics

Path:

Options -> Demo Player -> Demo Analytics.

Main mode:

cl_demo_analytics_mode: off / traffic / frags / pickups / all.

Style:

cl_demo_analytics_style: overview / world / both.

Time scope:

cl_demo_analytics_time_scope: full / elapsed / window;
cl_demo_analytics_window_sec.

MVD/DM2:

cl_demo_analytics_mvd_autoscan;
cl_demo_analytics_dm2_mode.

Density/performance:

cl_demo_analytics_sample_ms;
cl_demo_analytics_cell_size;
cl_demo_analytics_draw_max_cells;
cl_demo_analytics_draw_max_events.

Visibility:

cl_demo_analytics_overview_alpha;
cl_demo_analytics_world_alpha;
cl_demo_analytics_world_scale;
cl_demo_analytics_show_legend.

Commands:

demo_analytics_rescan;
demo_analytics_info.


10. Trail mode

Trail mode is enabled when:

cl_demo_analytics_world_lifetime_sec > 0.

Instead of an aggregate heatmap, the renderer draws per-sample dots that live for N seconds and can be connected by lines.

Settings:

cl_demo_analytics_trail_stride;
cl_demo_analytics_trail_lines;
cl_demo_analytics_trail_height_mode;
cl_demo_analytics_trail_feet_z;
cl_demo_analytics_trail_hover_z;
cl_demo_analytics_trail_outline;
cl_demo_analytics_trail_outline_alpha;
cl_demo_analytics_trail_outline_scale.

trail_height_mode feet draws the trail closer to player feet while following jumps, falls, and box-to-box movement. hover_z lifts the dots slightly so they do not clip into the floor.


11. Analytics colors

Analytics colors are edited through:

Analytics colors....

Key cvars:

cl_demo_analytics_traffic_low_color;
cl_demo_analytics_traffic_high_color;
cl_demo_analytics_frag_color;
cl_demo_analytics_pickup_color;
cl_demo_analytics_trail_line_color;
cl_demo_analytics_trail_outline_color;
cl_demo_analytics_world_adaptive_colors.

The menu uses preset-style color selection, like the model and item timer editors. Hex values can also be changed through console/cvar browser.


12. Demo Item Timers

Item timers show respawn timers for important items in MVD2.

Master:

cl_demo_item_timers_world: off / world only / strip only / both.

World view:

translucent ghost item models;
countdown labels above the item location;
countdown disappears when the item is up.

Strip:

demo player strip with item icons;
translucent state while the item waits for respawn;
timer over the icon;
full-color icon when the item is available.

Settings:

cl_demo_item_timers_world_alpha;
cl_demo_item_timers_world_scale;
cl_demo_item_timers_strip_alpha;
cl_demo_item_timers_strip_pillarbox_workspace;
demo_item_timers_strip_edit;
demo_item_timers_strip_reset;
demo_item_timers_info.


13. Tracked items

Armor:

green jacket armor;
yellow combat armor;
red body armor.

Powerups/items:

Quad Damage;
Invulnerability;
Silencer;
Rebreather;
Environment Suit;
Adrenaline;
Mega Health;
Power Screen;
Power Shield.

Weapons, off by default:

Rocket Launcher;
BFG10K;
Railgun.

Per-item toggles:

cl_demo_item_timers_show_armor_green;
cl_demo_item_timers_show_armor_yellow;
cl_demo_item_timers_show_armor_red;
cl_demo_item_timers_show_quad;
cl_demo_item_timers_show_invuln;
cl_demo_item_timers_show_silencer;
cl_demo_item_timers_show_breather;
cl_demo_item_timers_show_enviro;
cl_demo_item_timers_show_adrenal;
cl_demo_item_timers_show_megahealth;
cl_demo_item_timers_show_power_screen;
cl_demo_item_timers_show_power_shield;
cl_demo_item_timers_show_rl;
cl_demo_item_timers_show_bfg;
cl_demo_item_timers_show_rail.


14. Item timer colors

Item timer colors are edited through:

Items colors....

Adaptive mode:

cl_demo_item_timers_adaptive_colors.

When adaptive is enabled, colors can inherit from the item-highlight palette.

When disabled, manual per-item text/ring colors are controlled separately.


15. Demo visual cfg

All demo visual settings should save to:

baseq2/q2pro-x/demo_visual/q2pro-x.demo.cfg

This matters for:

visibility highlights;
model color overrides;
analytics;
trail;
item timers;
item timer colors.

The idea: a demo from opentdm, k1, xatrix, or another mod should not replace your viewing graphics just because playback temporarily entered that demo's gamedir.


16. Practical scenarios

Just watching demos

open Demo Browser;
rebuild index once;
enable Demo Player overlay;
tune cl_demoplayer_volume;
choose gun/skins to taste.

Watching an MVD duel with analytics

cl_demo_analytics_mode all;
cl_demo_analytics_style both;
cl_demo_analytics_time_scope elapsed;
trail lifetime 3-10 sec;
trail_height_mode feet;
trail_outline 1.

Studying item control

item timers = both;
enable armor, megahealth, quad, invuln, power shield;
keep weapons off if they clutter the strip;
move the strip with demo_item_timers_strip_edit.

Making clean demo capture

use the demo-visual cfg;
cl_vis_players_mode model;
tune player model colors;
enable trail outline;
enable item timers only when they are useful in-frame.



17. The menu pages in full

17.1. Demo browser

Demo Browser

TypeSectionRowVariable or targetWhat it does
SectionView & layoutView & layout
SliderView & layoutOpacitycl_demo_browser_alphaDemo browser overlay background opacity. Applies immediately.
SliderView & layoutText scalecl_demo_browser_scaleDemo browser text and UI scale (0.1..3.0). Applies immediately.
ToggleView & layoutFullscreencl_demo_browser_fullscreenMaximize the browser to the full HUD; hides the resize grip (also toggled by header [F]). Applies immediately.
ToggleView & layoutShow detail panecl_demo_browser_show_detailsShow the right-side detail pane. Applies immediately.
ToggleView & layoutAlternate row colorscl_demo_browser_row_colorsAlternate row background for readability. Applies immediately.
SectionDemo listingDemo listing
ToggleDemo listingShow partial / unreadable demoscl_demo_browser_show_brokenAlso list partial (playable, incomplete metadata) and unreadable demos. Applies immediately.
ToggleDemo listingShow demos from engine packscl_demo_browser_show_packedInclude demos from engine-visible packs (off by default). Applies immediately.
ToggleDemo listingRemember last tabcl_demo_browser_remember_tabRestore the last opened tab (All/Favorites/Date/Mod/Map/POV) next session. Applies immediately.
SectionOpenOpen
NavigationOpenOpen demo browser...demo_browser_openOpen the modern demo browser overlay (search and listing backed by the central index).
KeyOpenToggle keydemo_browser_toggleBind a key that opens/closes the demo browser overlay.
SectionIndex & serviceIndex & service
ToggleIndex & serviceAuto-update demo informationcl_demo_index_autoscancl_demo_index_autoscan: refresh the shared demo index in the background whenever the browser opens. Cached entries remain available when off; manual refresh always works. Applies immediately.
NavigationIndex & serviceRebuild demo indexdemo_index_rebuildFull rescan: reparse every demo and rewrite the central index.
NavigationIndex & serviceRefresh demo indexdemo_index_refreshIncremental refresh without reparsing unchanged demos.
NavigationIndex & serviceOpen legacy demo browser...menu_demosOpen the legacy demo browser (kept for compatibility).

17.2. Demo player

Demo Player

TypeSectionRowVariable or targetWhat it does
SectionOverlayOverlay
ToggleOverlayEnabledcl_demoplayer_overlayMaster switch for the modern playback overlay. Applies immediately.
SliderOverlayOpacitycl_demoplayer_overlay_alphaPlayback overlay background opacity. Applies immediately.
SliderOverlayText scalecl_demoplayer_overlay_scalePlayback overlay text and UI scale (0.5..3.0). Applies immediately.
SliderOverlayAutohidecl_demoplayer_overlay_autohide_secHide the passive bar after N sec of real idle (0 = always visible while playing). Applies immediately.
SliderOverlaySeek stepcl_demoplayer_overlay_seek_step_secSeconds jumped by the < and > step-seek buttons. Applies immediately.
SliderOverlaySeek jumpcl_demoplayer_overlay_seek_jump_secSeconds jumped by the << and >> jump-seek buttons. Applies immediately.
ToggleOverlayShow score buttoncl_demoplayer_overlay_show_scoreShow the MVD-only [score] button while playing .mvd2. Applies immediately.
SectionMVD directorMVD director
ListMVD directorMvd directorcl_demoplayer_mvd_director_modeMVD auto-follow: quad/penta/leader follow current state. Next frag uses a pre-scanned frag timeline (survives seek/replay). Applies immediately. [off / next frag / quad / penta / leader]
SliderMVD directorMvd director leadcl_demoplayer_mvd_director_lead_secLead time (sec) for next-frag mode; also sets the cooldown after a manual POV override. Applies immediately.
ListMVD directorNext frag debugcl_demoplayer_nextfrag_debugNext-frag diagnostics: tick = director decisions + timeline. Scan = also every obituary accept/reject. Applies immediately. [off / tick / scan]
SectionPlaybackPlayback
SliderPlaybackDemo volumecl_demoplayer_volumeDemo-playback volume multiplier. Final demo gain is s_volume * cl_demoplayer_volume. S_volume remains the master and is not rewritten. Applies immediately.
ListPlaybackDemo guncl_demoplayer_gunDemo POV gun visibility: force shown or hidden. Does not change cl_gun. Applies immediately. [show gun / hide gun]
ListPlaybackDemo skinscl_demoplayer_noskinsDemo skins: original as recorded, or force everyone to male/grunt. Does not change cl_noskins. Applies immediately. [original / no skins]
SliderPlaybackY offsetcl_demoplayer_overlay_yVertical offset of the overlay from the bottom of the HUD, in px (0 = flush). Applies immediately.
TogglePlaybackDisable draw interfacecl_demoplayer_hide_drawsHide user draw items during playback (cl_timer / cl_lag / cl_ping, etc.). Applies immediately.
TogglePlaybackHide laghax HUD during demo playbackcl_laghax_hud_hide_demoAuto-hide the laghax HUD during demo playback (same cvar as on the Laghax page). Applies immediately.
SectionSubmenus & actionsSubmenus & actions
NavigationSubmenus & actionsDemo analytics...q2prox_demoanalyticsDemo analytics / heatmap: traffic, frags, pickups (MVD2 full scan; DM2 live POV).
NavigationSubmenus & actionsItem timers...q2prox_demoitemtimersItem respawn timers: ghost models, countdowns, player strip; per-category toggles. MVD2 only.
NavigationSubmenus & actionsShow demo player...demo_player_openShow the demo player overlay (unhides it after autohide / manual close).
SectionKeysKeys
KeyKeysToggle keydemo_player_toggleBind a key that shows/hides the demo player overlay.
KeyKeysPause keydemo_pause_toggleBind a key to pause/resume the demo (default SPACE).
KeyKeysSeek back key+demo_seek_backHold to seek backwards; repeats every 1 s (default LEFTARROW).
KeyKeysSeek forward key+demo_seek_forwardHold to seek forwards; repeats every 1 s (default RIGHTARROW).
KeyKeysPlaylist next keydemo_playlist_nextBind a key to jump to the next playlist item.
KeyKeysPlaylist previous keydemo_playlist_prevBind a key to jump to the previous playlist item.
KeyKeysPlaylist clear keydemo_playlist_clearBind a key to clear the current playlist queue.

17.3. Demo analytics

Demo Analytics

TypeSectionRowVariable or targetWhat it does
SectionWhat to showWhat to show
ListWhat to showAnalyticscl_demo_analytics_modeWhich analytics layers the panel shows: off / traffic / frags / pickups / all. Applies immediately. [off / traffic / frags / pickups / all]
ListWhat to showStylecl_demo_analytics_styleWhere analytics are drawn: HUD overview, in-world particles, or both. Applies immediately. [overview / world / both]
ListWhat to showTime scopecl_demo_analytics_time_scopeTime range: full demo, elapsed up to now, or a sliding window (last N sec). Applies immediately. [full / elapsed / window]
SliderWhat to showWindowcl_demo_analytics_window_secSliding-window size (sec) when time scope = window. Applies immediately.
SectionSamplingSampling
ToggleSamplingAuto-scan MVD demoscl_demo_analytics_mvd_autoscanAuto-run the MVD pre-scan when an .mvd2 starts. Applies immediately.
ListSamplingDM2 modecl_demo_analytics_dm2_mode.dm2 fallback: off, or sample the live POV. Applies immediately. [off / live POV]
SliderSamplingSample intervalcl_demo_analytics_sample_msSampling interval (ms); lower = denser heatmap. Applies immediately.
SliderSamplingCell sizecl_demo_analytics_cell_sizeHeatmap cell size in world units. Applies immediately.
SliderSamplingMax cells drawncl_demo_analytics_draw_max_cellsCap on traffic cells drawn per frame. Applies immediately.
SliderSamplingMax events drawncl_demo_analytics_draw_max_eventsCap on frag + pickup dots drawn per frame. Applies immediately.
SectionAppearanceAppearance
SliderAppearanceHUD panel opacitycl_demo_analytics_overview_alphaHUD analytics panel background opacity. Applies immediately.
SliderAppearanceWorld particle opacitycl_demo_analytics_world_alphaWorld particle opacity (style world/both). Applies immediately.
SliderAppearanceWorld particle scalecl_demo_analytics_world_scaleWorld particle size multiplier (0.25..4.0). Applies immediately.
SliderAppearanceWorld particle lifetimecl_demo_analytics_world_lifetime_sec0 = aggregate; >0 = trail mode, per-sample dots that fade over N sec. Applies immediately.
SectionTrailsTrails
SliderTrailsTrail dot stridecl_demo_analytics_trail_strideDraw every Nth sample per slot (1 = densest trail). Applies immediately.
ToggleTrailsTrail connect linescl_demo_analytics_trail_linesConnect consecutive samples of the same slot with a line. Applies immediately.
ListTrailsTrail height modecl_demo_analytics_trail_height_modeTrail dot height: entity origin, or near feet level (follows jumps/falls). Applies immediately. [origin / feet]
SliderTrailsTrail feet Z offsetcl_demo_analytics_trail_feet_zZ offset in feet mode (negative = toward floor, typical -24). Applies immediately.
SliderTrailsTrail hover Zcl_demo_analytics_trail_hover_zExtra upward hover so dots don't clip into the floor. Applies immediately.
ToggleTrailsTrail outlinecl_demo_analytics_trail_outlineDraw an outline behind trail dots, lines and HUD event dots. Applies immediately.
SliderTrailsOutline alphacl_demo_analytics_trail_outline_alphaOutline particle opacity (0..1). Applies immediately.
SliderTrailsOutline scalecl_demo_analytics_trail_outline_scaleOutline size relative to the foreground dot (1.0..3.0). Applies immediately.
SectionLegend & colorsLegend & colors
ToggleLegend & colorsShow legendcl_demo_analytics_show_legendShow the counts + truncation line at the bottom of the HUD panel. Applies immediately.
NavigationLegend & colorsAnalytics colors...q2prox_demoanalytics_colorsOpen the analytics color editor (traffic, frag, pickup, trail, outline colors).
SectionActionsActions
NavigationActionsRescan current demodemo_analytics_rescanRe-run the MVD pre-scan for the currently-playing demo.
NavigationActionsPrint info to consoledemo_analytics_infoPrint the current analytics state to the console.

17.4. In-demo item timers

Demo Item Timers

TypeSectionRowVariable or targetWhat it does
SectionWorld displayWorld display
ListWorld displayItem timerscl_demo_item_timers_worldMaster switch: off / world only (3D ghosts + labels) / strip only (2D icons + countdown) / both. MVD2 only. Applies immediately. [off / world only / strip only / both]
SliderWorld displayGhost opacitycl_demo_item_timers_world_alphaOpacity of ghost item models and countdown labels. Applies immediately.
SliderWorld displayGhost model scalecl_demo_item_timers_world_scaleGhost item model size multiplier (0.25..3.0). Applies immediately.
NavigationWorld displayItems colors...q2prox_demoitemtimers_colorsOpen the per-item timer color editor (adaptive toggle + per-item text/ring colors).
SectionArmorArmor
ToggleArmorShow green armor (jacket)cl_demo_item_timers_show_armor_greenTrack green (jacket) armor respawns. Applies immediately.
ToggleArmorShow yellow armor (combat)cl_demo_item_timers_show_armor_yellowTrack yellow (combat) armor respawns. Applies immediately.
ToggleArmorShow red armor (body)cl_demo_item_timers_show_armor_redTrack red (body) armor respawns. Applies immediately.
SectionPowerupsPowerups
TogglePowerupsShow Quad Damagecl_demo_item_timers_show_quadTrack Quad Damage respawns. Applies immediately.
TogglePowerupsShow Invulnerabilitycl_demo_item_timers_show_invulnTrack Invulnerability (pent) respawns. Applies immediately.
TogglePowerupsShow Silencercl_demo_item_timers_show_silencerTrack Silencer respawns. Applies immediately.
TogglePowerupsShow Rebreathercl_demo_item_timers_show_breatherTrack Rebreather respawns. Applies immediately.
TogglePowerupsShow Environment Suitcl_demo_item_timers_show_enviroTrack Environment Suit respawns. Applies immediately.
TogglePowerupsShow Adrenalinecl_demo_item_timers_show_adrenalTrack Adrenaline respawns. Applies immediately.
TogglePowerupsShow Mega Healthcl_demo_item_timers_show_megahealthTrack Mega Health respawns. Applies immediately.
TogglePowerupsShow Power Screencl_demo_item_timers_show_power_screenTrack Power Screen respawns. Applies immediately.
TogglePowerupsShow Power Shieldcl_demo_item_timers_show_power_shieldTrack Power Shield respawns. Applies immediately.
SectionWeaponsWeapons
ToggleWeaponsShow Rocket Launchercl_demo_item_timers_show_rlTrack Rocket Launcher respawns (off by default). Applies immediately.
ToggleWeaponsShow BFG10Kcl_demo_item_timers_show_bfgTrack BFG10K respawns (off by default). Applies immediately.
ToggleWeaponsShow Railguncl_demo_item_timers_show_railTrack Railgun respawns (off by default). Applies immediately.
SectionDemo-player stripDemo-player strip
SliderDemo-player stripStrip opacitycl_demo_item_timers_strip_alphaItem-timer strip background opacity. Applies immediately.
ToggleDemo-player stripStrip pillarbox workspacecl_demo_item_timers_strip_pillarbox_workspaceLet the strip be dragged into the pillarbox / letterbox bars (full window). Applies immediately.
NavigationDemo-player stripMove stripdemo_item_timers_strip_editDrag the strip to any position (Enter/Escape to exit).
NavigationDemo-player stripReset strip positiondemo_item_timers_strip_resetReset the strip position to default.
NavigationDemo-player stripPrint item-timer infodemo_item_timers_infoPrint the item-timer cache to the console.


18. The link to game statistics

The demo browser and game statistics read the same published snapshot of the recording library. The recording folders are walked exactly once per data generation, and every consumer — the browser, the statistics window and the intro personal-fact layer — works by querying that snapshot.

Practical consequences:

the browser lists every file, while statistics show only what passed its own selection conditions;
changing the minimum recording size changes the statistics instantly and reparses nothing, while the browser's file list stays complete;
refreshing the statistics does not disturb the browser and does not require closing it.

Details are in the game statistics and demo auto-statistics guide.


19. Interface settings

The browser and player settings belong to the client's interface and are described in the cvar reference. Visual viewing settings during playback are saved into a separate demo profile — see the visual profile section above and the cvars guide.

POV and next-frag navigation

The MVD2 POV list includes every participant, including the recording's local player; scroll the list if necessary. Next-frag navigation prepares the required event data when requested. Detailed diagnostic output appears only when its debug setting is enabled.

Contact effect sources

Open Main menu → Advanced Visual Effects → AVFX Detailed Settings → Local FX & Sound → Player Contact Effects → Effect sources.

ControlVariableNormal defaultMeaning
Current playercl_avfx_contact_source_playerOnYour actions in live SP/MP.
Demo playback (DM2 / MVD2)cl_avfx_contact_source_demosOffRecorded contact events from all participants; independent of live switches.
Monsters in single-playercl_avfx_contact_source_monstersOffMonster attacks on monsters, the player and the world.
All multiplayer playerscl_avfx_contact_source_multiplayerOffAll live MP players, including yourself.

These are source permissions, not masters. AVFX and Contact remain disabled by default: enable both. cl_avfx_multiplayer also permits AVFX in live MP, while cl_avfx_demo permits demo playback. Individual blood/mark/debris switches still apply. Turning Current player off does not exclude you from All multiplayer players. Live switches do not enable demos.

To view demo blood, enable demo sources and the masters, then play the recording. Seeking clears stale contacts; subsequent recorded events create new effects. No missing/PVS-excluded events are invented. Legacy events can omit attacker/ weapon information: observed cues refine the profile, otherwise the generic profile is used. Damage, physics, prediction and wire/demo formats are unchanged.

Sources belong only to Contact presets. Missing defaults are appended to old factory/user Contact profiles without resetting existing tuned values. Normal AVFX profiles and their generator do not control them. Bloody World enables all four; other factory profiles keep 1/0/0/0. Mechanical-body blood exclusions, own-blood visibility, budgets and prediction deduplication remain effective.

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.

Cvar Browser: complete lists and keyboard layouts

Open the browser with cvar_browser or its settings menu entry. All includes variables, native console commands and quick menu commands. Commands remains a separate view. Selecting a native command prefills the console; press Enter to execute. Category tabs and Favorites retain their filters.

Search checks the original text and English key positions for installed Windows keyboard layouts. Standard Russian is also supported for pasted text after a layout switch. For example, цкшеу finds writeconfig and пд_сщдщкувдшпреьфзы finds gl_coloredlightmaps. Matching is case-insensitive. The original text is kept in the search field. This maps keyboard positions; it does not transliterate words.

Russian search still works: Конф finds /конфиг and matching descriptions. Mixed input such as cl_avfx_сщтефсе_вуигп is supported. Unknown characters are not removed from the query.

System-key behavior

Open Settings → System → System key behavior, immediately after Menu settings. Settings are global across mods; all default to No and take effect immediately.

Menu itemVariableWhat Yes blocks
Win and Win combinationswin_block_windows_keyWindows keys and their combinations
Alt+Tabwin_block_alt_tabWindow switching
Alt+Escwin_block_alt_escCycling windows with Alt+Esc
Alt+F4win_block_alt_f4Closing the window with Alt+F4
Alt+Enterwin_block_alt_enterWindowed/fullscreen switching
Alt+Spacewin_block_alt_spaceThe window system menu
Ctrl+Escwin_block_ctrl_escOpening Start
Ctrl+Shift+Escwin_block_ctrl_shift_escOpening Task Manager with the shortcut
Print Screenwin_block_printscreenPrint Screen key handling

Blocking applies only while the game window is active, with either WGL or EGL. Other foreground applications keep their keyboard behavior. Ctrl+Alt+Delete is not intercepted. If Alt+F4 is blocked, the normal game menu can still be used to quit.

Server address and Tab

Type or paste only an address into an empty console prompt and press Tab.

InputResult
q2.playground.ruconnect q2.playground.ru:27910
q2.playground.ru:27915connect q2.playground.ru:27915
157.22.241.24connect 157.22.241.24:27910
[::1]:27915connect [::1]:27915

A leading backslash may appear before connect: it is the normal console command prefix. Edit the result if needed, then press Enter. Tab itself performs no connection or DNS lookup. Ports must be 1..65535; omitted ports become 27910. Existing command, variable and alias names retain priority. Completing a command name with Tab also adds the space before its arguments.

External demo playback

Use demo with an absolute path to an existing file:

demo "O:\Demos\match.mvd2"

Quotes are needed for spaces. Far's filename-only quoting is also accepted:

demo O:\Demos\"match.mvd2"

From the Windows command line, pass the same path through +demo:

Q2PRO-X.exe +demo O:\Demos\"match.mvd2"

DM2, MVD2 and their .gz variants are supported, with Windows drive or UNC paths. The file is opened read-only and is not copied into the game directory. Required maps, models and other game resources must be available to the installed game. Missing or invalid files produce a console error.

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.

Server update rate

Open Settings → Online game settings → Server update rate. This controls how frequently the client receives the world state, not rendering FPS. Higher server update rates deliver opponent positions and events more frequently. Game speed, movement physics and weapon firing rates remain unchanged.

Adapt to server rate (cl_serverfps_adapt) defaults to off: the client requests the classic 10 world updates per second. Enabling it allows negotiation of a higher rate and an exact time scale with compatible servers that support higher update rates. Ordinary servers retain their previous mode. Changing the setting during play sends a new request without reconnecting.

Preferred rate (cl_updaterate) defaults to Server maximum (0). The other choices are 10, 20, 30, 40, 50 and 60. Servers supply divisors of their own rate: requesting 40 on a 60 Hz server yields 20 Hz; requesting 50 yields 10 Hz. With adaptation disabled, the saved preference is ignored but preserved. Both settings are global across mods.

Show connection state opens the console and runs protocol_info. Startup reports the saved client mode. Toggling adaptation immediately reports the client preference, followed by the actual connection rate after the server reply. A requested frequency is not reported as established before acknowledgement.

After connecting, the console prints one line with the endpoint and actual rate: [188.225.33.164:27912] Connection rate: 60 Hz. A standard connection shows 10 Hz. A requested higher rate is not considered active before server acknowledgement. Detailed information remains available through protocol_info; additional notices explain pending or unconfirmed changes. Startup and setting changes explicitly report whether support for server rates above 10 Hz is enabled or disabled.

Network God, LagHax, the port scanner and view smoothing use the negotiated time scale. Demo recordings retain the standard 10 Hz format and normal playback speed. Network God remains inactive during DM2 and MVD2 playback.

An unsupported server-assigned rate triggers a request for 10 Hz and holds world time until confirmation. No reply within two seconds ends the connection with an explanation. If an ordinary preference change is ignored, the console reports that the requested connection-rate change was not confirmed.

cl_serverfps_debug enables detailed negotiation diagnostics at 1 and disables them at 0. It is session-only and defaults to off. Normal mode and connection summaries do not require this diagnostic setting.

Connection and playback diagnostics

protocol_info distinguishes DM2/MVD playback from a live connection and live GTV. A demo is no longer described as an unfinished network connection. The new high-rate remote-player smoothing works in live play, including following another player; recorded DM2/MVD playback is unchanged.