Server Pak/Pure Validation System
The pure validation system has been improved to be more flexible and community-friendly, with broader support for official and community paks. Enable with sv_pure 1.
- A new HUD element shows the pure status of all connected players — displayed as
N/M(pure / total) in the bottom-right corner - A colored dot indicates your own status: green = pure, red = impure
Server sv_autokick
Automatically kick clients that fail pure pak validation after a configurable grace period.
sv_autokick
=
0
|
Seconds to wait before kicking unpure clients. 0 = disabled.
- Set to
0(default): disabled — unpure clients stay connected but are marked as impure - Set to a positive integer (e.g.
5): clients failing pure validation are kicked after that many seconds - The kick timer starts when the client enters the game (CS_ACTIVE state), not during loading — so they have time to see the kick message
- If a client fails validation after a map restart (already in-game), the timer starts immediately
- Setting
sv_autokickto0at runtime cancels all pending kicks - Enabling
sv_autokickat runtime starts kick timers for any already-connected unpure clients - Kick message:
Unpure client detected. Invalid or missing pk3 files.
Game g_spectatefix
Control the spectator follow-camera behavior with a toggle between modern and original MoHAA modes.
g_spectatefix
=
1
|
Toggle between fixed (1) and original MoHAA (0) spectator camera.
g_spectatefix 1(default): Uses the player's eye position for the spectator camera — cleaner, more predictable follow behaviorg_spectatefix 0: Reverts to the original MoHAA spectator camera — 56 units behind the player, 24 units above, with lean angle interpolation
Game g_roundstartdelay
Freeze players in place at the start of each round in round-based game modes, with a countdown printed to chat.
g_roundstartdelay
=
5
|
Seconds to freeze players at round start. 0 = disabled.
- Only applies to round-based game modes (Round, TOW, Objective, Liberation)
- Set to
0: disabled — round starts immediately with no freeze - Set to a positive integer (e.g.
5): players are frozen for that many seconds; a countdown is printed to chat each second - When the countdown reaches zero, a
Go, GLHF!message is broadcast and movement is unlocked - Any active freeze is cancelled automatically when a round ends
Game g_preventghostwalk
Prevent the "ghost walking" exploit where players switch weapons mid-stride to reset footstep sounds and move more quietly.
g_preventghostwalk
=
0
|
Preserve leg animation timing across weapon switches to prevent ghost walking. 0 = disabled.
g_preventghostwalk 0(default): original behavior — weapon switches restart the leg animation from the beginning, allowing ghost walkingg_preventghostwalk 1: when a player switches weapons while in the same leg state (e.g. walking), the animation clock is preserved — footstep timing continues uninterrupted