Skip to content

Releases

openQ4 0.14.1

Choose a tag to compare

@github-actions github-actions released this 11 Nov 22:51

openQ4 0.14.1

Field Value
Version 0.14.1
Release tag v0.14.1
Commit 0abaa5c4
Generated 2026-11-11 22:46 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 43108547033
Since v0.13.2 (compare)

openQ4 0.14.1 replaces the withdrawn 0.14.0 and is the biggest update since 0.13.2. It delivers everything 0.14.0 introduced, from The Awakening and stable shadow mapping to the new interface and Android, then refines, fixes and optimizes all of it toward production quality. It is a big step on the road to 1.0.

Highlights

  • 🪐 The Awakening. Play the recovered Quake 4 expansion beside the original campaign from Single Player → Campaign. It is rebuilt on openQ4's own game code and keeps its own saves. You supply the expansion files.
  • 🌗 Shadow mapping you can leave on. Quality and Ultra cast soft, stable shadow maps on OpenGL and Vulkan, now cached, steady while you move and cheaper to draw.
  • 🖥️ A new interface. Rebuilt menus and settings, the Remastered HUD, weapon wheels, scopes and animated crosshairs, ready for controllers, touch, tall screens and text up to 200 %. Classic is one setting away.
  • ⚡ Faster, and instant. Re-tiered presets with smarter Auto-Detect and quicker loading. V-Sync, MSAA, texture quality and most presets now apply without a restart.
  • 🔺 Vulkan on Windows is now a supported renderer and the automatic choice for new installs, with OpenGL as the fallback.
  • 📱 Android (experimental). A signed ARM64 APK with touch controls, portrait play and a touch layout editor, built on Emile Belanger's port.
  • 🎯 Multiplayer. Bots that take orders, quick chat and voice chat, objective markers, demo markers with fast seeking, and inputs that reach the server on time again.
  • 🔊 And more. Room reverb as the level designers set it, subtitles and dialogue volume, six new languages, experimental VR and an experimental level editor.

Coming from 0.13.2? Here is what 0.14 brings

0.14.0 was withdrawn soon after release, so most players meet these features for the first time in 0.14.1.

Campaigns

  • The Awakening, the expansion Raven Software and Ritual Entertainment never released, which Justin Marshall recovered and published. All 13 maps run on openQ4's own engine and game code; its monsters, weapons and vehicles are rebuilt there, and it never loads the alpha's game DLL. Where the alpha's own code or content stopped something working as designed, openQ4 fixes it: the Valkaryne finale, the beach's death-ray turret, the Pain Lord's weak spot and Retches that could never move are the biggest examples. See the Awakening guide.
  • Separate campaigns. Quake 4 and The Awakening keep their own saves and settings; returning to Quake 4, Arena or multiplayer removes the expansion's overrides.

Rendering

  • Stable shadow mapping, turned on by the Quality and Ultra presets, with sharp contact shadows that soften with distance. Lower presets keep Quake 4's original shadows. See Shadow Mapping.
  • A supported Vulkan renderer on Windows, tested across every stock single-player map and 20 multiplayer maps on NVIDIA and Intel graphics, recovering from driver resets on its own.
  • Temporal anti-aliasing that rebuilds a full-resolution image when the scene renders below native resolution, and motion blur that works with it.
  • Physically based materials for mods, with reflection probes and light-grid lighting. Stock content looks exactly as before. See PBR materials.

Interface

  • The new interface is the default: animated start-up, rebuilt title, pause, loading and settings screens, and the Remastered HUD with Minimal, Competitive and Classic layouts, controller button prompts, and Reduced Motion and Reduced Flashing options.
  • Vector weapon wheels and scopes for Marine and Strogg, with live ammo and soft focus around them.

Multiplayer

  • Smarter bots that plan safer routes, hear the fight, time item respawns and follow team orders such as everyone follow me. See Giving bots orders.
  • Quick chat on D-pad Down or V, and objective markers for flags, assault points and DeadZone zones.

Sound and languages

  • Room reverb for every map, as the original game had with EAX hardware: closed doors muffle, hangars boom, and radio chatter stays dry.
  • Truer audio: sound variety, stereo width, headphone layouts, radio levels and distance falloff now match the original game.
  • German, Brazilian Portuguese, Czech, Hungarian, Turkish and Ukrainian menus and gameplay text. See Languages.

New platforms and modes

  • Android (experimental) on ARM64 phones and tablets with OpenGL ES 3.0, from Emile Belanger's port and GLES renderer.
  • VR (experimental) through OpenXR: head-tracked stereo, motion-controller aiming, room-scale movement and comfort options. See the VR guide.

What 0.14.1 refines

The weeks since 0.14.0 went into making those features dependable, fast and finished.

Performance and settings

  • Presets re-tiered by frame rate. Each preset now targets a refresh class, so Ultra plays smoothly instead of asking for everything at once; the old everything-on Ultra lives on as Maximum. New Low and Enhanced tiers fill the gaps, and Minimum and Low Power draw no shadows for weak or battery-powered hardware.
  • Auto-Detect reads your hardware better: the active GPU, shared memory, resolution and CPU, including render scale on high-resolution screens. Fresh installs use it automatically; existing settings are kept.
  • Display changes apply instantly. V-Sync, MSAA, texture quality, window and fullscreen changes and most presets apply to the running game, without a renderer or application restart.
  • Quicker loading. Maps load faster in several measured steps, sounds decode in the background, declarations parse a fifth faster and start-up is over a second quicker.
  • Smooth on high-refresh screens. Cutscenes, security cameras, third person, ragdolls, debris and spectating move between the game's 60 Hz ticks. The frame cap is steadier and uses less CPU, and a minimized game rests.

Shadows and image quality

  • Shadow maps are cached and kept while lights and casters stay still, and drawn directly when a light moves, so they cost less every frame.
  • No more shimmer while you walk. Cached shadows and their soft-edge grain stay still under a moving camera.
  • The flashlight casts shadows on every preset that draws them, and surfaces light the same with or without a shadow map on OpenGL.
  • Temporal AA holds still. The image no longer trembles when nothing moves, and characters and your weapon keep their anti-aliasing in motion.
  • Motion blur looks the same at any frame rate, works with temporal AA and no longer smears your weapon.
  • Vulkan matured: GPU selection in Settings, safer start-up on multi-GPU systems, a same-launch fallback to OpenGL, driver-reset recovery, mod material support and parity fixes throughout.

Interface

  • Settings rebuilt as tabbed pages of the main menu, at most two columns wide, with a Display page that keeps or reverts a change on a countdown.
  • Built for every screen. Portrait and tall layouts, text up to 200 %, notch- and system-bar-safe menus and HUD, touch scrolling with inertia, and bound keys drawn as controller or keyboard glyphs.
  • Clearer menus. Campaign gets New Game and Chapters pages, Join Game gets Spectate, Demos moves under Multiplayer, pop-ups and pictures are reframed, and menus describe the section you point at.
  • Animated crosshairs. Each weapon's original crosshair assembles, kicks, charges and reloads with the weapon. On by default in the new interface.
  • The classic interface catches up: its HUD, team modes, Tourney and kill feed follow the Remastered layout, and its menus step with the arrow keys.

Campaigns and Arena

  • The Awakening plays through as designed, with repairs across its missions from the opening dropship scene to the final battle, a chaingun turret with heat and its own HUD, and vehicle HUDs in both interfaces.
  • Arena regains its ceremony: the match-start camera move and "Fight!", opponent introductions, a real pause menu and best results for every match.
  • Saves are sturdier: new saves use a portable format 5, checkpoint pauses are shorter, a save is reported only once it is safely written, and saves made right after a level change load again.
  • Campaign demos: record a whole campaign, level transitions included, as one demo.

Multiplayer, bots and demos

  • Your inputs reach the server on time again, and prediction and lag compensation no longer correct the same delay twice.
  • Bots fight fairer and smarter: they avoid knocking team-mates off walkways, swim to underwater routes, escape napalm and grenades, and recover from knockback.
  • Push-to-talk voice chat, with receive volume and per-player mute. See [Multiplayer Chat](https://github.com/themuffinator/openQ4/blob/v0.14.1/docs/user/multi...
Read more

openQ4 0.13.2

Choose a tag to compare

@github-actions github-actions released this 14 Sep 20:18

openQ4 0.13.2

Field Value
Version 0.13.2
Release tag v0.13.2
Commit fcdd5696
Generated 2026-09-14 20:14 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 34889058765
Since v0.13.1 (compare)

Highlights

  • Stop a gui var transition aborting the save that catches it
  • Stop the mods menu corrupting the heap on a second mod
  • Give the renderer validation matrix room to finish
  • Stop the multiplayer smokes qualifying a stale runtime
  • Keep headless runs off the user's mouse
  • Point CI at the game tree that declares g_weaponMuzzleKick

Change Log

  • Stop a gui var transition aborting the save that catches it (fcdd5696, 2026-09-14)
  • Stop the mods menu corrupting the heap on a second mod (15fa8d14, 2026-09-14)
  • Give the renderer validation matrix room to finish (ec7cc5ff, 2026-09-14)
  • Stop the multiplayer smokes qualifying a stale runtime (3e79a4e3, 2026-09-14)
  • Keep headless runs off the user's mouse (8fb3606d, 2026-09-14)
  • Point CI at the game tree that declares g_weaponMuzzleKick (38a646ad, 2026-09-13)
  • Ignore hyphenated build directories (ae87499e, 2026-09-13)
  • Add a Weapon Kick row to Game Options (526cb339, 2026-09-13)
  • Remove the stray root compile probe (4202847a, 2026-09-13)
  • Record GLEW provenance and resync the mirrored source (36f7e80c, 2026-09-13)
  • Move CI onto the current GitHub Actions majors (bddffc88, 2026-09-13)
  • Update the pinned OpenAL Soft runtime to 1.25.2 (30f2e7e1, 2026-09-13)
  • Track SDL3 3.4.16 in the bundled wrap (6ff97e1e, 2026-09-13)
  • Update the vendored Vulkan SDK to 1.4.357.0 (eb1c0b81, 2026-09-13)
  • Ignore all meson-extracted subprojects, not just SDL3 (9651c3ae, 2026-09-13)
  • Anchor multiplayer chat to the left edge of the whole screen (e35fe69e, 2026-09-12)
  • Record hangar2 AAS parity evidence for the reported map (cad0aa31, 2026-09-11)
  • Compile Quake 4 AAS navigation in the engine (d2765041, 2026-09-11)
  • Record 0.13.1 publication and issue dispositions [skip ci] (01d0b462, 2026-09-08)

Linux ARM64 Support

Linux ARM64 preview artifacts enabled. First-class publication remains gated on accepted real-hardware native-Wayland SP/MP, dedicated-server, audio, input, display, and package evidence.

openQ4 0.13.1

Choose a tag to compare

@github-actions github-actions released this 08 Sep 07:16

openQ4 0.13.1

Field Value
Version 0.13.1
Release tag v0.13.1
Commit e74ae236
Generated 2026-09-08 07:09 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 34196053568
Since v0.13.0 (compare)

Highlights

  • Saving works again in release packages. New saves no longer fail validation because the release was incorrectly identified as build 1.
  • Release downloads are checked end to end. Archives must decompress completely, and uploaded file sizes and SHA-256 digests must match the validated originals before a new release is published.
  • Compiled maps carry the correct geometry checksum. A newly generated .proc is no longer immediately reported as out of date.

Upgrade Notes

  • Replace the complete package, keeping the engine, renderer modules, game modules, and bundled data together. Retail Quake 4 assets are still required.
  • Failed save attempts in 0.13.0 did not produce a usable new save. This patch does not recover those attempts or add compatibility with unsupported older saves stamped as build 1; keep backups and use the version that wrote an older campaign save when necessary.
  • Map authors: openQ4 rebuilds render geometry and collision, but does not yet include the Quake 4 AAS compiler. Rebuild navigation with the Quake 4 SDK tools after changing map geometry. The compiler now reports this limitation explicitly; remaining navigation work is tracked in #158.
  • The experimental macOS packages target Apple Silicon/arm64. Intel Mac packages are not published, and Rosetta is not a supported substitute. Linux ARM64 remains a preview.
  • The macos_graphics_bridge=metal package is a Metal bridge around the OpenGL renderer, not a native Metal renderer; platform_backend=native is comparison-only diagnostic infrastructure, not a release backend. Existing macOS visual-parity limitations remain tracked in issue #98, and support promotion remains gated by docs/dev/macos-signoff-evidence.md.

Change Log

  • Corrected release build numbering and rejected stable builds made without complete Git history, preventing freshly written saves from being mistaken for unsupported development saves (#159).
  • Added full archive integrity checks and verification of the exact bytes stored by GitHub; new releases stay in draft until those checks pass (#160).
  • Replaced the map compiler's placeholder checksum with the compiled map's geometry checksum, and added a clear warning when navigation cannot be rebuilt (#158).

Linux ARM64 Support

Linux ARM64 preview artifacts enabled. First-class publication remains gated on accepted real-hardware native-Wayland SP/MP, dedicated-server, audio, input, display, and package evidence.

openQ4 0.13.0

Choose a tag to compare

@github-actions github-actions released this 07 Sep 22:14

Save-game fix: Upgrade to 0.13.1 to fix saving in release packages. The download repairs below restore the original 0.13.0 files and do not change that build.

Download repair — 8 September 2026: The macOS Metal archive, Linux x64 archive, Linux x64 AppImage and Windows x64 installer were restored from their intact original CI artifacts. If an earlier download failed to unpack or install, discard that partial file and download it again. The restored files contain the original 0.13.0 build.

openQ4 0.13.0

Field Value
Version 0.13.0
Release tag v0.13.0
Commit b639d265
Generated 2026-09-07 22:12 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 34164437153
Since v0.12.0 (compare)

Highlights

  • Multiplayer matches are easier to organize, follow and replay. Managed series support map vetoes, selected-map handoffs, persistent results and recovery between maps. Spectators can switch player cameras from Match Control, replays preserve their selected player, and the configurable chat panel retains conversations and channel drafts.
  • High-refresh gameplay is much smoother while game logic stays at its original rate. The camera, first-person weapon, skeletal animation, projectiles, moving world objects, lights, and effects can now present an interpolated pose between authoritative game ticks. Zoom markings and joint-bound effects follow the pose actually shown.
  • Experimental rendering has a broader, safer foundation. OpenGL and Vulkan now share sealed contracts for classic materials, GUIs, interactions, fog, subviews, deforms, and post effects. Optional temporal AA/upscaling, dynamic resolution, GPU skinning, PBR materials, reflections, volumetrics, and indirect-light previews remain default-off and retain complete fallback paths.
  • Vulkan shadows are more complete and easier to diagnose. Shadow-mapped lights can replace eligible stencil work, combine cached static and dynamic casters, reuse fitted cascades, expose receiver/debug views, and report non-blocking GPU timings without losing direct lighting when a shadow allocation fails.
  • Complex levels load and settle faster. The airdefense1 opening avoids presentation work for cinematic frames that are never displayed and skips bake-only light-grid setup during ordinary play. A guarded repeat-load cache can be enabled for evaluation, while the classic source path remains the default.
  • Saving and restoring fail safely. Unset or invalid GUI animation values can no longer abort an otherwise valid save, malformed GUI and auxiliary data is rejected before partial state reaches the renderer, and incompatible old saves are refused before the active level is unloaded.
  • Internet multiplayer is safer and easier to enter. Network parsers now reject truncated state at explicit boundaries, remote administration avoids plaintext passwords by default, pure play keeps asset checks without accepting executable code from servers, and connecting opens a compact Quake 4-styled join card over the live map.
  • Liquids and effects feel more complete. Projectiles and hitscan shots cross liquid surfaces with matching splashes, sounds, and underwater trails; water jumping is reliable; slime, lava, and drowning have distinct feedback; and soft particles now reduce hard intersections between smoke and solid geometry.
  • Everyday controls and presentation received focused polish. Controller menu traversal no longer fights stale mouse focus, scalable menu text selects a sharper source atlas on modern displays, material texture filtering is configurable again, and light-grid preloading is available in Display settings.
  • Platform and tool reliability improved. macOS packages bundle OpenAL Soft to prevent long-session audio exhaustion, Linux accepts legitimate repeated-dot save paths, staged packages reject case-colliding files, and dmap once again compiles func_group geometry correctly.

Upgrade Notes

  • Replace the complete openQ4 package for your platform. Keep the engine, renderer modules, game_sp, game_mp, and bundled baseoq4 data from the same 0.13.0 package.
  • Retail Quake 4 assets are still required. Point openQ4 at a complete installation, including the unsuffixed language archive such as zpak_english.pk4.
  • Existing settings remain valid. Soft particles now default to on for new configurations; an existing archived r_softParticles value is preserved.
  • OpenGL remains the default and recommended renderer. Vulkan remains experimental and opt-in with r_renderApi vulkan, applied after restart.
  • Temporal AA, dynamic resolution, GPU skinning, modern shared-renderer domains, PBR lighting, screen-space effects, and repeat-load caching remain experimental and default-off. r_rendererModernQuality 0 and com_levelLoadModernization 0 retain the established rendering and loading paths.
  • Saves from unsupported older development formats are rejected before unloading the current map. Finish an affected campaign using the build that wrote it, and keep backups of important saves before upgrading.
  • macOS users should replace the complete package to receive the bundled OpenAL Soft runtime. Linux ARM64 downloads remain preview packages. The experimental macOS packages target Apple Silicon/arm64 and may be unsigned when Apple signing and notarization credentials are unavailable. Intel Mac packages are not published or supported, and Rosetta is not a supported substitute.
  • On macOS, OpenGL remains the recommended renderer; the Vulkan option runs through MoltenVK, a Vulkan-on-Metal translation layer. The macos_graphics_bridge=metal package is a Metal bridge around the OpenGL renderer, not a native Metal renderer, while platform_backend=native is comparison-only diagnostic infrastructure, not a release backend. Visual parity remains tracked by issue #98, and support promotion remains gated by docs/dev/macos-signoff-evidence.md.
  • Server operators should review the updated remote-console, pure-server, package-download, and malformed-packet behavior before replacing a public server.
  • Update multiplayer clients and servers to the same build, and finish active managed series before upgrading; structured match views now use schema 4 for persistent results, and spectator-follow requests, player requirements, Duel contender seats, round resets and One Flag map support have changed. Replay older development multiplayer demos with the build that recorded them.

Change Log

  • Added a configurable multiplayer chat panel with wrapped message history, preserved scroll position, per-channel draft and sent-message recall, and adjustable size, placement, opacity and fade timing.
  • Fixed multiplayer warmup with bots: bots fill player slots without voting for unready humans, Duel waits for its seated contenders, and players can cancel countdown by withdrawing readiness.
  • Restored automatic starts when casual ready-up is disabled, kept bots out of option-vote majorities, and preserved the ongoing match state on remote clients between rounds.
  • One Flag and Arena One Flag can now complete captures on original CTF maps: missing neutral flags use stock assets at a central pickup location, while authored objectives take precedence. Remote clients also receive server announcer cues correctly.
  • Freeze Tag rescues now work when a teammate reaches a frozen player, and overkills no longer destroy the body needed for the rescue.
  • DeadZone scores only eligible controllers during live play, handles lost tokens and contested zones consistently, and supports map-authored zones that do not require a token.
  • Managed Red Rover converts defeated players without opening voluntary live team changes, preserves declared rosters and restores their home sides between rounds.
  • Managed listen servers honor initial auto-join, and authorized force-ready actions now complete their countdown and enter gameplay.
  • Remote players now keep their accepted join choice, and managed team or roster changes update their own client correctly.
  • Managed series now load the selected map after veto and publish the final series result after review, with matching match reports and committed demo links. Clients can recover from long countdown-to-play world resets without being disconnected for predicting ahead.
  • Managed Duel admits its two contestants reliably and gives each their own timeout budget, with matching request and resume controls.
  • Managed summaries now distinguish the committed winner, forfeit, draw and abort from the original scores. Winning identities and names survive later player changes, and Match Control shows Last Result through review and the next warmup until the next countdown or session, even with optional evidence recording disabled.
  • Long winner names and forfeit messages fit the result banner, and older chat lines no longer leave distorted text above the summary's chat history.
  • Captain invitations are revoked when the captain loses authority, and roster actions explain when they must wait for warmup. Canceled, expired or unsuccessful proposals release their voting slot for the next proposal while retaining normal cooldowns.
  • Series check that the selected map file is available before starting the handoff, keeping a missing-map attempt ready for retry. Repeated checks of loose map files no longer accumulate open file handles.
  • Added Previous, Next and Free Camera buttons to Match Control's...
Read more

openQ4 0.12.0

Choose a tag to compare

@github-actions github-actions released this 18 Aug 22:02

openQ4 0.12.0

Field Value
Version 0.12.0
Release tag v0.12.0
Commit eab43b99
Generated 2026-08-18 22:01 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 32188915868
Since v0.11.0 (compare)

Highlights

  • High-refresh gameplay looks smoother without changing game logic. Players, weapons, projectiles, lights, client effects, and moving-world attachments now sample a presentation transform between authoritative game ticks. View-model effects stay anchored to the pose actually drawn, including the lightning gun beam, while simulation, networking, collision, demos, and savegames retain their original timing.
  • Polish and Russian are now built in. Text rendering works by Unicode code point, the Polish tables use the correct Central European encoding path, and generated font data is checksum-validated so translated menus and HUD text remain reproducible across packages.
  • The marine hovertank has its vehicle audio back. Single-player once again creates and updates the engine and hover-pad loops used throughout the vehicle sequence, with safe cleanup during map or engine shutdown.
  • Arena Campaign scoring starts reliably. Disabling ready-up now also clears the ready threshold, preventing deathmatch-backed Arena cards from remaining forever in a non-scoring warmup.
  • Multiplayer setup is easier to control. The server menu exposes guarded bot controls, and competitive free-for-all disclosure now accepts the active recipients intended by the match policy.
  • Developer map compilation is more reliable. dmap and other engine-side geometry tools initialize their triangle-surface allocator before generating light volumes, fixing the Windows crash seen while compiling game/airdefense1.

Upgrade Notes

  • Replace the complete openQ4 package for your platform so the engine, renderer modules, game_sp, game_mp, and bundled openQ4 data all come from 0.12.0. Do not mix modules from older releases.
  • Existing settings and compatible saves do not need to be reset. As a precaution, retain a copy of important saves before replacing an older installation.
  • Retail Quake 4 assets are still required. Point openQ4 at a complete retail installation, including the unsuffixed base dialogue archive such as zpak_english.pk4.
  • OpenGL remains the default and recommended renderer. Vulkan is experimental and opt-in with r_renderApi vulkan, applied after an engine restart. The modern OpenGL visible path also remains guarded and experimental.
  • Linux ARM64 downloads remain preview packages. The experimental macOS packages target Apple Silicon/arm64 and may be unsigned when Apple signing and notarization credentials are unavailable. Intel Mac packages are not published or supported, and Rosetta is not a supported substitute. OpenGL remains the recommended renderer; the Vulkan option runs through MoltenVK, a Vulkan-on-Metal translation layer. The macos_graphics_bridge=metal package is a Metal bridge around the OpenGL renderer, not a native Metal renderer, while platform_backend=native is comparison-only diagnostic infrastructure, not a release backend. Visual parity remains tracked by issue #98, and support promotion remains gated by docs/dev/macos-signoff-evidence.md.

Change Log

  • Added presentation-only interpolation for high-refresh rendering of actors, movers, first-person weapons, projectiles, lights, and client effects while preserving authoritative tick behavior.
  • Kept view-model client entities and the lightning gun beam attached to the exact rendered weapon pose.
  • Fixed weapon swaps that could inherit firing state or leave stale effects behind.
  • Added complete Polish and Russian UI tables, Unicode code-point drawing, CP1250 conversion support, and stricter generated-font checksum validation.
  • Restored the marine hovertank engine and hover-pad loops with null-safe sound-emitter teardown.
  • Prevented partial attachment restoration from tearing down incompletely restored entities twice.
  • Restored Arena Campaign countdown and scoring progression when ready-up is disabled.
  • Added multiplayer bot controls and validation to the server setup menu.
  • Allowed the intended active free-for-all recipients through competitive match disclosure policy.
  • Corrected s_muteUnfocused transitions so returning to the game cannot leave audio muted for the rest of the level.
  • Initialized engine-side triangle-surface allocators for dmap and related geometry tools.
  • Strengthened the experimental modern OpenGL lighting path with per-light image ownership and missing-binding fallbacks.

Linux ARM64 Support

Linux ARM64 preview artifacts enabled. First-class publication remains gated on accepted real-hardware native-Wayland SP/MP, dedicated-server, audio, input, display, and package evidence.

openQ4 0.11.0

Choose a tag to compare

@github-actions github-actions released this 14 Aug 09:34

openQ4 0.11.0

Field Value
Version 0.11.0
Release tag v0.11.0
Commit f8783b7f
Generated 2026-08-14 09:31 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 31787009431
Since v0.10.0 (compare)

Highlights

  • Windows gameplay is more reliable during streaming and avatar-overlay use. AMD OpenGL systems now avoid the persistent-mapped upload and fence path associated with driver timeouts under capture workloads, while retaining the modern renderer through a safer orphaned map-range stream. Crash logs also identify the module and relative offset responsible for an exception, making driver and capture-hook faults much easier to distinguish from openQ4 faults.
  • Story checkpoints no longer fail on transient stock-map references. Save serialization once again treats an out-of-graph area-location reference as null, matching retail Quake 4 behavior, and failed save attempts cannot resume serialization after map teardown.
  • Underwater play looks and feels substantially better. OpenGL adds depth-aware absorption, scattering, refraction, caustics, bloom, marine snow, and underwater projectile bubbles before the HUD. Swimming speed and vertical control, water friction, and sound occlusion across liquid surfaces have also been corrected. Vulkan retains its existing compatible water tint while broader renderer parity continues.
  • Every retail and Raven map-pack loading screen is now complete. All 56 base-game and 7 map-pack load images have validated center, left, right, top, and bottom views. Generated widescreen and ultrawide screens are published atomically, so an interrupted write can no longer replace the live image with a truncated file that aborts map loading.
  • Windows respects redirected per-user folders. The save root now comes from the Windows Known Folder service, so redirected Local AppData and Saved Games locations work without relying on environment-variable guesses.
  • Incomplete retail-asset installs are easier to diagnose. Startup warns when the unsuffixed zpak_<language>.pk4 dialogue archive is absent instead of allowing numbered language patches to hide the missing base media.
  • Experimental Apple Silicon macOS packages are more robust. MoltenVK discovery now supports both loose-package layouts used by openQ4, universal2 candidate assembly and launch validation are stricter, and OpenAL Soft migration builds fail clearly when Homebrew's package is not visible through pkg-config. macOS support remains experimental while visual parity issue #98 and real-hardware signoff remain open.

Upgrade Notes

  • Replace the complete openQ4 package for your platform so the engine, renderer modules, game_sp, game_mp, and bundled openQ4 data all come from 0.11.0. Do not mix modules from older releases.
  • Existing settings and compatible saves do not need to be reset. As a precaution, retain a copy of important saves before replacing an older installation.
  • Retail Quake 4 assets are still required. If dialogue is missing, install the base language archive—such as zpak_english.pk4—or point openQ4 at a complete retail installation; numbered _01 through _04 patch archives are not substitutes for that file.
  • OpenGL remains the default and recommended renderer. Vulkan is experimental and opt-in with r_renderApi vulkan, applied after an engine restart.
  • Linux ARM64 downloads remain preview packages. The experimental macOS packages target Apple Silicon/arm64 and may be unsigned when Apple signing and notarization credentials are unavailable. Intel Mac packages are not published or supported, and Rosetta is not a supported substitute. OpenGL remains the recommended renderer; the Vulkan option runs through MoltenVK, a Vulkan-on-Metal translation layer. The macos_graphics_bridge=metal package is a Metal bridge around the OpenGL renderer, not a native Metal renderer, while platform_backend=native is comparison-only diagnostic infrastructure, not a release backend. Visual parity remains tracked by issue #98, and support promotion remains gated by docs/dev/macos-signoff-evidence.md.

Change Log

  • Added a capture-safe Windows AMD OpenGL upload policy and richer crash-module diagnostics.
  • Restored retail-compatible handling of transient savegame references and made save-writer cleanup safe on both success and failure paths.
  • Added the OpenGL underwater view treatment and corrected swimming, liquid friction, underwater effects, and sound propagation.
  • Capped loading-screen redraw pacing at 60 Hz, accounted for redraw cost, and reduced unnecessary progress updates during large reads.
  • Completed and validated the five-view levelshot inventory for every supported retail and Raven map-pack load image.
  • Made generated widescreen loading-screen publication atomic, collision-resistant across concurrent processes, and safely fall back to the original image on failure.
  • Added a specific warning for missing base dialogue archives in partial Quake 4 installations.
  • Switched Windows save-root discovery to the system Known Folder service with hardened fallbacks and consistent native path display.
  • Improved reliable-network overflow handling, snapshot initialization, client visibility packing, large-allocation safety, and presentation throttling.
  • Corrected localized menu-header capitalization and added missing match-series and vote-cooldown translations.
  • Hardened experimental macOS MoltenVK staging, provenance, universal2 assembly, signing, package documentation, and Finder-style launch validation.
  • Made the optional macOS OpenAL Soft provider use an explicit pkg-config lookup with clearer Homebrew setup guidance.
  • Kept sanitizer builds linkable across the in-process BSE and runtime renderer boundary, and closed MD5R export files through the engine-owned filesystem API.
  • Strengthened release artifact validation and reproducible GameLib staging across supported build hosts.

Linux ARM64 Support

Linux ARM64 preview artifacts enabled. First-class publication remains gated on accepted real-hardware native-Wayland SP/MP, dedicated-server, audio, input, display, and package evidence.

openQ4 0.10.0

Choose a tag to compare

@github-actions github-actions released this 10 Aug 13:55

openQ4 0.10.0

Field Value
Version 0.10.0
Release tag v0.10.0
Commit c3be062f
Generated 2026-08-10 13:54 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 31393542552
Since v0.9.0 (compare)

Highlights

  • Stop macOS startup failures presenting as an unexplained CI hang
  • Discard the tri-surf check results explicitly instead of using verify()
  • Report where the macOS app-bundle smoke hangs instead of exiting silently
  • Stage MoltenVK in the release lane so macOS packaging can bundle it
  • Use verify() for the tri-surf memory checks so release builds compile
  • Mark multiplayer and the Arena Campaign as experimental

Change Log

  • Stop macOS startup failures presenting as an unexplained CI hang (c3be062f, 2026-08-10)
  • Discard the tri-surf check results explicitly instead of using verify() (5dae4310, 2026-08-10)
  • Report where the macOS app-bundle smoke hangs instead of exiting silently (b9b90a5c, 2026-08-10)
  • Stage MoltenVK in the release lane so macOS packaging can bundle it (bf1f780d, 2026-08-10)
  • Use verify() for the tri-surf memory checks so release builds compile (01173fd0, 2026-08-10)
  • Mark multiplayer and the Arena Campaign as experimental (53d9bd59, 2026-08-10)
  • Report Arena launch failures and carry the ceremony's new state (996f724e, 2026-08-10)
  • Give the ported Quake Live modes their menus, HUD and thaw strings (295b3dd3, 2026-08-10)
  • Keep bot-filled servers out of the idle bucket and pin the bot fixes (f9bc78d7, 2026-08-10)
  • Add dual-stack IPv6 networking and GUI fixes (f90bf768, 2026-08-09)
  • Report renderer startup failures instead of crashing in teardown (#96) (2b99802b, 2026-08-09)
  • Complete IPv4 networking support (7bba18a9, 2026-08-09)
  • Pin the stored thread identifier where win_main.cpp actually lives (89d26e1e, 2026-08-08)
  • Strip MSVC output flags from the input-safety analysis command (ed9073be, 2026-08-08)
  • Detect the MSVC driver by its flags in the input-safety lane (7b8432a1, 2026-08-08)
  • Fix the macOS window-border cast and the clang-tidy cl driver mode (f83a421b, 2026-08-07)
  • Pin the GameLibs repo in the POSIX wrapper refresh test (38f4a562, 2026-08-07)
  • Add match control, liquid support, and input-safety hardening (963df8dd, 2026-08-07)
  • Add Arena Campaign and related features (227ee810, 2026-08-01)
  • Bots tweaks and chat, MVD, advanced demo viewer, demo menu (d41186e4, 2026-07-31)
  • Get Push Verification green again after the renderer-module split (3a08e762, 2026-07-29)
  • Restore the 8-bit idlib tables lost to a UTF-8 re-encode (2038e639, 2026-07-29)
  • Land TTF fonts, cel shading, console themes and MP work (8632851a, 2026-07-29)
  • Do not promote memory-bound arm64 boards out of the downsizing tier (d495e61a, 2026-07-28)
  • Cover Windows packages and renderer modules in release validation (0d960803, 2026-07-28)
  • Make testSIMD honest and measurable outside Windows and macOS (51253cfc, 2026-07-28)
  • Serialize the win32 thread registries against their readers (30ee5e13, 2026-07-28)
  • Make idStr hashing and comparison independent of char signedness (aa477f29, 2026-07-28)
  • Make the command-completion varargs AAPCS64-safe (d8a2051e, 2026-07-28)
  • Stop arm64 hosts classifying as the lowest machine-quality tier (2709cf57, 2026-07-28)
  • Restore the generated image cache to fix long level loads (089331a6, 2026-07-28)
  • Fix rotated skyboxes from doubly-converted retail progimg cube faces (918236c8, 2026-07-28)
  • Add Quake Live MP gametypes and HUD support (425761a3, 2026-07-28)
  • Fix six non-macOS bug reports (3f6d35c1, 2026-07-26)
  • Add MoltenVK-backed Vulkan renderer for macOS (ffc96c71, 2026-07-25)

Linux ARM64 Support

Linux ARM64 preview artifacts enabled. First-class publication remains gated on accepted real-hardware native-Wayland SP/MP, dedicated-server, audio, input, display, and package evidence.

openQ4 0.9.0

Choose a tag to compare

@github-actions github-actions released this 24 Jul 20:47

openQ4 0.9.0

Field Value
Version 0.9.0
Release tag v0.9.0
Commit 7a1d0c54
Generated 2026-07-24 20:46 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 30124106846
Since v0.8.0 (compare)

Highlights

  • Experimental Vulkan rendering has taken a major step forward. The opt-in renderer now covers stock world geometry, interaction lighting, stencil and mapped shadows, fog and blend lights, post-processing, SMAA, material-program effects, and common gameplay subviews while retaining a safe OpenGL fallback if it cannot initialize.
  • Saving a game while using Vulkan no longer flashes the 320x240 save-preview render in the bottom-left corner of the display. Save previews are captured without presenting their temporary cropped frame.
  • Linux desktop support is more robust across Wayland, X11 fallback, high-DPI displays, input-focus changes, PipeWire-optional audio startup, AppImages, and ARM64 package validation.
  • Game and engine portability checks now cover more Linux x64/ARM64 and macOS failure cases, including stricter module ABI, save/load, startup, package, and sanitizer validation.
  • Windows, Linux, and experimental macOS packaging now carry stronger runtime and symbol-validation checks, making release artifacts easier to install and diagnose. macOS app packages also preserve their startup splash resource correctly.

Upgrade Notes

  • OpenGL remains the default renderer. To try Vulkan, set r_renderApi vulkan and restart the engine; it is still experimental, so report visual problems with openq4.log and your GPU/driver details.
  • Replace an existing openQ4 package with the matching new archive or installer. Keep your retail Quake 4 assets separate from openQ4's baseoq4/ runtime files.
  • Linux ARM64 downloads remain preview packages unless the release asset name explicitly says otherwise. Experimental macOS downloads remain Apple Silicon/arm64-only and may be unsigned when release signing credentials are unavailable.

Change Log

  • Added the native Vulkan renderer's expanded lighting, shadow, post-process, material-program, capture, and render-target paths, with OpenGL retained as the default compatibility renderer.
  • Prevented Vulkan save-preview readback from presenting its temporary cropped image before the normal gameplay frame is ready.
  • Improved Linux Wayland/X11 lifecycle handling, text input, focus recovery, display changes, audio startup, dedicated-server isolation, and x64/ARM64 package validation.
  • Expanded cross-platform safety checks around game modules, save games, rendering resources, package contents, symbols, release provenance, and diagnostics.
  • Improved experimental macOS build, package, support-collection, and validation workflows while keeping its published support scope explicit.

Linux ARM64 Support

Linux ARM64 preview artifacts enabled. First-class publication remains gated on accepted real-hardware native-Wayland SP/MP, dedicated-server, audio, input, display, and package evidence.

openQ4 0.8.0

Choose a tag to compare

@github-actions github-actions released this 10 Jul 09:40

openQ4 0.8.0

Field Value
Version 0.8.0
Release tag v0.8.0
Commit 975e296b
Generated 2026-07-10 09:39 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 29082718786
Since v0.6.95 (compare)

Highlights

  • Fix macOS SDL audio link and ARM64 self-tests
  • Wire macOS shadow policy into validation
  • Update savegame bounds validation contract
  • Harden renderer and savegame systems
  • Shadow mapping phases 5d/6: subview policy, importance budget, translucent receivers, product polish
  • Shadow mapping phase 5c: modern path consumes the real persistent atlas

Change Log

  • Fix macOS SDL audio link and ARM64 self-tests (975e296b, 2026-07-10)
  • Wire macOS shadow policy into validation (14911358, 2026-07-10)
  • Update savegame bounds validation contract (b2fc6929, 2026-07-10)
  • Harden renderer and savegame systems (fbeff719, 2026-07-10)
  • Shadow mapping phases 5d/6: subview policy, importance budget, translucent receivers, product polish (f3198bb7, 2026-07-10)
  • Shadow mapping phase 5c: modern path consumes the real persistent atlas (688a0999, 2026-07-10)
  • Shadow mapping phase 5b: layered static/dynamic composition for projected lights (1fb5f9b4, 2026-07-09)
  • Shadow mapping phase 5a: persistent projected-light shadow atlas (50bf1f9e, 2026-07-09)
  • Shadow mapping phase 4c: graceful budget degradation and subview telemetry (439aa62b, 2026-07-09)
  • Shadow mapping phase 4b: point lights become the default mapped path (71766eb8, 2026-07-09)
  • Shadow mapping phase 4a: scene scalability and a bit-exact regression net (4365b04c, 2026-07-09)
  • Shadow mapping phase 3: temporal stability, filtering polish, regression net (cf8cb5b7, 2026-07-09)
  • Shadow mapping phase 2b: coverage parity for casters, receivers, and failures (4af18189, 2026-07-09)
  • Shadow mapping phase 2a: parallel-light ortho path and deterministic LOD (c31d1df2, 2026-07-09)
  • Shadow mapping phase 1: bias contract correctness (d1c430d8, 2026-07-09)
  • Shadow mapping phase 0: salvage Phase A onto main with CI coverage (31c74cc3, 2026-07-09)
  • Add production-grade shadow mapping assessment and plan (122e6f0f, 2026-07-09)
  • Add engine header parity test for macOS libs (35546e69, 2026-07-09)
  • Harden macOS runtime and release pipeline (c6817d5b, 2026-07-09)
  • Fix menu backgrounds and sound emitter lifecycle (fc65d3f5, 2026-07-08)
  • Fix splash stability and objective popup clipping (94cc9102, 2026-07-08)
  • Update air defense GUI assets (c1e2938a, 2026-07-08)
  • Fix macOS package preflight module paths (7f909900, 2026-07-08)

openQ4 0.6.95

Choose a tag to compare

@github-actions github-actions released this 07 Jul 23:26

openQ4 0.6.95

Field Value
Version 0.6.95
Release tag v0.6.95
Commit 22c7c52f
Generated 2026-07-07 23:25 UTC
Release scale override
Version decision Version override was supplied manually.
Workflow 28904964505
Since v0.6.92 (compare)

Highlights

  • Align OpenAL channel logic with retail behavior
  • Harden savegame, macOS, and audio reliability for v0.6.5
  • Harden macOS packaging and OpenAL audio

Change Log

  • Align OpenAL channel logic with retail behavior (22c7c52f, 2026-07-08)
  • Harden savegame, macOS, and audio reliability for v0.6.5 (ab725f55, 2026-07-07)
  • Harden macOS packaging and OpenAL audio (40629e7d, 2026-07-07)