// the find
FWGS/xash3d-fwgs
Xash3D FWGS engine
Xash3D FWGS is a from-scratch reimplementation of the Half-Life/GoldSrc engine, extended to run on platforms Valve never shipped for (Linux, BSD, Android, iOS, ARM). It's for people who want to run Half-Life and its mods on unsupported hardware/OS, or who are hacking on old GoldSrc-era mod code and want a modern, buildable engine underneath it.
Genuinely broad platform matrix with CI to back it up (GitHub Actions for the main targets, Cirrus CI for FreeBSD) rather than just claimed support. It grafts modern pieces onto a 25-year-old engine design: multiple renderer backends (GL, GLESv1/2, software), PNG/KTX2 textures, Ogg Vorbis/Opus audio, and GoldSrc network protocol compatibility including IPv6. Having an actual engine-level test binary (`xash3d_tests`) that runs without game assets is rare for a codebase in this genre.
Waf as the build system is an unusual choice today and adds friction for anyone used to CMake - expect to read the Waf Book before your first successful build. Dependency setup is heavy: a long list of vendored submodules (SDL2, mbedtls, opus, vorbis, freetype, miniz...) means `git clone --recursive` is mandatory and GitHub's zip download literally won't work, which the README has to call out explicitly. 32-bit is still the default target on 64-bit x86 to stay binary-compatible with Steam's Half-Life, so running existing compiled mods on 64-bit requires recompiling them from source via a separate HLSDK fork - not obvious until you hit it. The prominent malware warning about third-party builds in the README signals this project is enough of a target for shady repacks that they feel the need to warn users up front.