This fork ports Weapons Factory 4.2 (the last open-source WF release) to the
2023 Quake II (Kex) rerelease. It runs as a drop-in game module on Windows and
as a dedicated server on Linux. The full port story — refactor decisions and the
major bug fixes — is in rerelease-source/README.md.
Two ready-to-use bundles are published as GitHub Releases — download them from the Releases page (they're not committed to the source tree):
Everything a player needs to run WF on the 2023 rerelease. Contains the wf/ mod
folder with the compiled game_x64.dll, pak0.pak, the WF maps, the
class/config files (wfserver.ini, team10/6/3.class, bots.cfg, chat.txt),
the fixed keybinds (autoexec.cfg, keybinds.cfg), and a README.txt with
step-by-step install directions.
# 1. Unzip, then copy the wf folder into:
# C:\Users\<you>\Saved Games\Nightdive Studios\Quake II\
# 2. Launch Quake II, open the console (~), and run:
game wf
map 2fort2000
A self-contained Linux dedicated server on the q2repro engine. Contains the
q2reproded binary, the wf/ mod (game_x86_64.so + assets + config), run.sh,
and server.cfg. You supply baseq2/ (base Quake II rerelease data). Full
setup, config, and connect directions are in the bundled q2repro-server/README.md.
unzip q2wf_rerelease_server_linux.zip
cd q2repro-server
cp -r "/path/to/Quake 2/rerelease/baseq2" ./baseq2 # you supply this
./run.sh # default map: 2fort8wf
# clients connect with: connect <server-ip>:27910rerelease-source/— the C++17 Kex-rerelease port (buildsgame_x64.dll+game.so). See itsREADME.mdfor the port changelog and bug-fix list.Source/— Gregg Reno's original 1998 WF v4.2.1 C source (read-only reference).
The port builds on Linux with CMake + Ninja. A single script,
rerelease-source/build.sh, produces both targets and runs verification gates:
game.so(Linux) — the native module the q2repro dedicated server loads; the build runsldd -rand fails on any undefined symbol.game_x64.dll(Windows) — cross-compiled with MinGW; this is what the Kex engine loads. The build verifies it's a PE32+ x86-64 binary that exportsGetGameAPI.
Prerequisites (Debian/Ubuntu):
sudo apt-get install build-essential cmake ninja-build mingw-w64Build:
cd rerelease-source
./build.sh # build both game.so + game_x64.dll, with verification
./build.sh linux # Linux game.so only
./build.sh windows # Windows game_x64.dll only (cross-compile)Outputs (game.so, game_x64.dll) land in the rerelease-source/ directory.
See rerelease-source/build.sh for the optional deploy mode and full details.
This is an early alpha — expect rough edges. Prebuilt bundles live on the Releases page; please note the Release version you tested when reporting.
Before reporting, skim KNOWN_ISSUES.md — some behavior
(stubbed bots, the empty weapon wheel, verbose debug logging) is already known.
To report a bug, open an issue using the bug-report template, and include:
- Which bundle (Windows client / Linux server) and the Release version.
- Steps to reproduce, and expected vs. actual behavior.
- Logs (drag the files into the issue):
- Windows client:
stdout.txt+stderr.txt(in%USERPROFILE%\Saved Games\Nightdive Studios\Quake II\); on a crash, alsoCRASHLOG.TXT(in your Quake II install'srerelease\folder). - Linux server: the
q2reprodedconsole output.
- Windows client:
Want to build from source or dig into a crash yourself? See
CONTRIBUTING.md.
Released in 1998, my brother Tom Reno and I released a mod for Quake 2 called Weapons Factory. It had quite a following, and at one point had 50 servers hosting the mod. Over the years, Weapons Factory has been ported and played on many game engines, including:
- Quake 2
- Quake 3 Arena
- Unreal Tournament
- Half-Life
- Tribes
On this the 25th anniversary of WF for Q2, I am releasing the source code for version 4.2.1. Not that I was holding on to it for any reason. It's just I forgot about it for years until I was recently reminded by a group of dedicated WF players over at Weapons Factory Arena and Weapons Factory Roblox that it would be a good idea to do so.
Also included are the original client, server and map files.
Weapons Factory was such a blast work on, and I am humbled by the awesome community who loved playing the game as much as I loved working on it. Thank you to all the players and developers who made Weapons Factory so great.
-- Gregg Reno (gregg.reno@jigawattlabs.com)
GNU GENERAL PUBLIC LICENSE
Free To Use Any Way You Want