Skip to content

Instantly share code, notes, and snippets.

@pollend
Created May 2, 2026 21:54
Show Gist options
  • Select an option

  • Save pollend/5d21233e19215c598d95fc4768e55c20 to your computer and use it in GitHub Desktop.

Select an option

Save pollend/5d21233e19215c598d95fc4768e55c20 to your computer and use it in GitHub Desktop.

Warfork Release Notes

Covers changes from the previous release through the current master.

Highlights

  • New Vulkan renderer. Warfork now ships a Vulkan-based renderer (NRI backend) alongside the existing OpenGL one. You can pick which to use from the video options menu. The new backend brings modern descriptor management, GLSL→SPIR-V shader compilation via glslang, and a foundation for future graphics work.
  • Steam integration. Steam avatars, friends, server browser, server info, and ticket-based authentication are now wired through a dedicated Steam shim. Includes groundwork for peer-to-peer connections and voice chat (both currently opt-in / disabled by default while we soak-test them).
  • Warmonger master server. New first-party master server with up-to-date server lists, in-band browser updates, and richer server info (including Steam ID).
  • Crash reporting. Crashes are now captured via Crashpad and uploaded to Sentry with debug symbols, so we can actually fix what's hitting players in the wild.
  • Q1 / Q2 BSP support (preview). Map loading code from upstream qfusion has been merged. Q2 is functional in this build; Q1 is present but disabled pending more work.

Gameplay & UI

  • Scoreboard no longer waits for a server response before showing — opens instantly.
  • Scoreboard scaling, team colors, and text padding fixed and now scale with font size.
  • Crosshair: more options and customizable right-click behavior.
  • Damage numbers: size handling fixed; riotgun damage numbers behave correctly again.
  • Player outlines: new black option, default updated.
  • Voices HUD added; push-to-talk binds; in-game voice blocklist now respected for both effects and chatter.
  • Chat / console: ANSI and RGB color codes supported, with background color rendering.
  • New cvars for dash and wall-jump cooldowns, additional g_pmove_* tuning cvars, g_callvote_usercooldowntime, and a strafe HUD toggle.
  • Right-click on most cvars now shows a console description.
  • Callvote: instagib mode added.
  • Loading screen: pressing Esc now triggers disconnect after a 3-second delay (prevents accidental drops).
  • Updated Russian translation.

Renderer

  • Reworked resource uploader, batching, and dynamic mesh streaming.
  • Lightmaps now use texture arrays.
  • Added pogo buffers for FXAA and color correction.
  • Health model shader: deformvertexes wave move and bulge restored.
  • Increased max animmap frames from 8 to 32 (used for weapon textures).
  • Repaired model smoothing for better lighting; ammobox UVs corrected; backface added to playerspawn model; projectile model triangle counts increased.
  • Mip-map rendering restored.
  • KTX loader fixes; cubemap rendering fixed; reflection rendering fixed; LUT post-effect binding fixed.
  • Numerous Vulkan validation fixes and memory-leak fixes (fences, scratch allocator, pipeline layouts).
  • Optional debug callback for OpenGL.

Networking & Servers

  • Dedicated server startup regression fixed.
  • Steam P2P routing available as an opt-in option (off by default).
  • New NET_* primitives for P2P connections; proper socket close handling.
  • Memory leak in NET_SendPacket fixed.
  • Null-pointer crashes from invalid client reads fixed.
  • Dispatch loop and heartbeat deadlock fixed.
  • Bad-file-handle error message typo fixed.
  • Bumped MAX_RELIABLE_COMMANDS and APP_PROTOCOL_VERSION.

Stability & Crashes

  • Fixed crash when switching to fullscreen.
  • Fixed crash with skybox rendering.
  • Fixed crash in shadow map rendering.
  • Fixed broken Steam avatar images.
  • Fixed several event-handling crashes.
  • Fixed building on aarch64.
  • Fixed Windows hang on certain server states.

Build, Packaging & Infrastructure

  • Migrated CI from CircleCI to GitHub Actions.
  • Linux builds now run inside a Steam Runtime (SLR) container for better compatibility.
  • Visual Studio 2019 → 2022; Windows runner 2019 → 2022; macOS runner 13 → 14.
  • Dedicated server deployment via GitHub Actions + SSH.
  • Steam depot deployment workflow.
  • Improved Dockerfile build process; macOS packaging fixes.
  • Removed vcpkg in favor of in-tree dependencies under source/extern/.
  • Removed legacy auto-update code (Steam handles updates).

Developer-Facing

  • New qcore shared library: qstr, qhash, scratch allocator, frame ring allocator, segment allocator, command and cvar modules.
  • Renderer split into ref_base (shared) and backend-specific ref_gl / ref_nri.
  • New ref_import interface centralizes the renderer's exposed API.
  • Tracy profiler support.
  • Dropped legacy OpenGL state and unused code paths (r_framebuffer, BGRA handling, myhalf indirection, SPIRV-Reflect, several unused cvars/uniforms).
  • Removed duplicate string implementation (q_sds).

Known Limitations

  • Steam P2P routing and voice chat are disabled by default while we continue testing.
  • Q1 BSP loading is present but disabled.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment