A big community-driven update. Huge thanks to the players who reported bugs, dug into deep problems, and even sent fixes: bauxite, SnoopKirby, mv, vizzys, cartesianBear, Johnny, and xx. A couple of changes below are marked (experiment.) They're live and we want your feedback on how they feel. WEAPONS & BALANCE
SmartLock pistols reworked (experiment).
Trackers are now painted on: hold right-click to enter tracking mode (amber crosshair + scan tone), and a tracker fires automatically when your crosshair passes a valid enemy.
Right-click is purely for locking and always acquires, with both guns locked on, your oldest lock jumps to the new target, alternating guns.
Locking needs line of sight (768-unit range, 2 seconds of grace after losing it), and a cloaked enemy can only be locked with thermal vision, while an active Cold Suit defeats locks it.
Lost locks are re-acquirable without reloading, with an audio cue when one drops.
A small dot appears in the center of the screen while both guns are locked on, so you can tell at a glance that you're fully committed and can still take a new target if you want one.
To keep painting fair, the scan tone others hear is directional: you only hear someone painting while their pistols are actually pointed your way. A Sound Suppressor silences it; the SWT implant is the counter and hears it anyway.
Server-togglable back to classic behavior.
SmartLocks hit softer and fire at a fixed rate.
Damage and rate of fire go from 8 per shot every 75ms to 6.434 every 78.125ms - about 20% less DPS, to offset how much easier the new locking is. The interval is a whole number of server ticks at every tickrate, so the guns now behave identically on every server instead of quietly varying with the host. (SnoopKirby)
Boltgun: bolts now embed in doors and other moving brushes on direct hits. They ride along and stay right-click detonatable, and ricochet on shallow hits instead of vanishing. (vizzys)
Boltgun damage lowered from 85 to 82. Just enough that a headshot no longer one-shots a full-armor Light. Body shots still two-shot every class.
Assault Rifle secondary fire works with a partial burst instead of refusing to fire, scaling damage to the ammo you have. (bauxite)
Minigun knockback halved (experiment). It was the only gun with a 3x knockback boost; it's now server-tunable from "same as every other gun" up to the old shove.
BUG FIXES
Movement: fixed "stuck on object" prediction errors and rubber-banding on ramps and against props and movers - the client now predicts against the same obstacle positions the server uses.
Lag compensation: fixed a rollback bug that shoved players out of position. (bauxite, SnoopKirby)
Movement: a standing jump now lands flush to the ground instantly instead of resting a hair above it until you move. No change to bhop, wallrun or jump height. (SnoopKirby)
Stealth: weapon world models (a Light's katana, say) no longer stay invisible to everyone after their owner stealths and unstealths. (Johnny, xx)
TAC Scanner no longer breaks on busy servers - it was dropping results past ~24 scanned players.
Rounds now restart when both teams first fill up, so the first players in don't play out a lopsided round that was already running.
Voting: mp_rounds votes apply the instant they pass, not at end of round.
CYBERSPACE
Fixed players (most visibly deckers) sometimes turning permanently invisible after a respawn.
Fixed a server crash when a decker died or jacked out in the first half-second of decking in.
Fixed the spectator camera staying tilted after decking out or dying while decked in (a 1.5.0-era regression).
Hardened the whole deck-in/deck-out flow: no more ghost meat bodies left at jack-in points, no more getting stuck half-decked. Dying while decked always removes your meatsack.
NETCODE
High-tickrate servers, up to 256 tick. The old hardcoded caps are gone, so operators can run high-tickrate servers for sharper hit registration and lower latency. Done properly in the official build - the client is told the real tickrate - so it's VAC-safe with no binary hacks. (engine research: SnoopKirby)
Rates follow the server automatically. Net defaults are modernised for 2026 connections, and a 128/256-tick server now gives you full-rate updates without ever touching cl_updaterate - before, you were silently capped. Your own settings are still respected. (SnoopKirby)
High-tick correctness pass, all found testing at 256: fast automatic doors no longer move faster at higher tickrates; melee viewmodel animations (most visibly the katana's block) no longer skip partway through; and servers keep a full second of delta history so high-ping players see fewer forced full updates. (SnoopKirby)
LINUX
Updated SDL: alt-tab and modern window/input handling now work; no more manual library swapping. (mv)
Raw mouse input on by default, matching Windows. (SnoopKirby)
Fixed the game failing to launch on modern Linux, and the console spam at the end of every round for players with stat logging on.
Custom maps just work now. Maps authored on Windows often reference assets with the wrong capitalization, which Linux's case-sensitive filesystem wouldn't load - you'd get ERROR models and missing sounds. Those now resolve automatically, so no more running the game under Wine to dodge it. (cartesianBear)
Achievements register properly again on Linux, in both Steam and the stats site, and a related server crash on unlock is fixed.
MENU & INTERFACE
The main menu is rebuilt. Far fewer entries: PLAY NOW up top in bigger type, then TUTORIAL / SEARCH / HOST on one line and STATS / ACHIEVEMENTS on the next - each word is its own button - then OPTIONS, DISCORD and QUIT GAME. Find Servers and Create Server are now SEARCH and HOST, the music player moved into Options, and the menu text is larger and no longer bold.
New PLAY button - one click finds and joins the best server for you: real players on it, lowest ping, maps you already have, never a passworded one or a version you can't join.
The main menu now crossfades through all of the background art instead of one fixed image.
The menus look like Dystopia now. The server browser, options, achievements and prompts are restyled from stock grey Source to the game's own palette - and each time you launch, it's a coin flip whether you get corp blue or punk red, instead of always leaning corp. Opening a dialog no longer dims the whole menu behind it either.
Dialogs say what you clicked: "Search Servers", "Host Server", "Options and Configuration".
The Options window is much bigger (it was tiny on modern displays), with the key bindings list using the extra room. On the Mouse tab, the two gamepad look-speed boxes actually work now - they'd been sitting off the edge of the window, wired to nothing, for years.
The server browser hides servers you can't join (wrong game version) instead of letting you try and bounce off.
Version mismatches explain themselves in plain language instead of "Server uses different class tables".
The Stats Page button opens your profile on the current stats site again.
Menus (vote / plugin menus) read the number keys directly, so they work even if you've rebound your weapon-slot keys.
The chat window is bigger (30% taller, 10% wider) with slightly smaller text, so more history fits.
First launch now picks your native resolution and borderless windowed.
MUSIC
Music plays past the first song again - playback used to stop after one track and stay silent.
"Silence audio in the background" now silences the music too. It only ever muted the game's own sounds; the music player runs on a separate backend that carried on regardless.
Music no longer restarts every time you change servers or drop back to the menu. Whatever's playing carries through the transition.
STATS
New stats backend. The game now talks to dystopia-stats.com over authenticated HTTP, replacing the old custom daemon.
Global awards are back on the scoreboard - the icons beside your name for the weapons and implants you hold the record for.
FOR SERVER OPERATORS & MAPPERS
New convars: dys_smartlock_paint_mode, the dys_smartlock_scan_* family, dys_minigun_knockback_scale, dys_spawntime_per_player (population-scaled respawn waves, off by default), and dys_min_client_version.
Live stats control: dys_stats_enabled applies instantly, plus a new dys_stats_restart.
Turrets: new "respawntime" keyvalue on npc_turret_ceiling, exposed in Hammer. (bauxite)
SECURITY
Fixed a remote server-crash exploit in chat handling - a malformed say command could crash any server. (reported by bauxite)
Thanks again to everyone for helping with testing. Keep the reports coming.
