CSRetro
Counter-Strike Retro is a clean x64 baseline of Counter-Strike 1.6, built on top of several open-source components.
Components
| Directory | Purpose |
|---|---|
engine/ |
Engine (renderer, network, audio, filesystem) — Xash3D FWGS fork |
client/ |
Client DLL: CS HUD, weapons, game logic — cs16-client fork |
client/3rdparty/ReGameDLL_CS |
Server DLL (game logic; built-in bots + gameplay) |
3rdparty/metamod/ |
Metamod plugin loader (vendored; required) |
3rdparty/nodemod/ |
Node.js plugin runtime for Metamod (vendored; required) |
client/3rdparty/yapb/ |
Metamod bot plugin (vendored; optional vs ReGameDLL bots) |
Upstream repositories and attribution: Credits. Who should read what: Documentation coverage.
All of the above are vendored in-repo (full source, no git submodule). See Vendor table (VENDOR.md) (source file: VENDOR.md in the repo root).
Platform
x64 only: Linux, Windows, macOS. No 32-bit, no Android, no console ports.
Quick Start
# 1. Clone (full tree is included — no submodules)
git clone https://github.com/benjarogit/csretro.git
cd csretro
# 2. Full build (engine + client + server + install)
./tools.sh build:full
# 3. Install CS 1.6 assets (Steam Half-Life or manual path)
./tools.sh install:assets
# 4. Run
./tools.sh run:game
Documentation
- Building – Requirements, build commands, toolchain
- Architecture – Directory layout, upstream sources
- Vendor table (VENDOR.md) – Component revisions for CMake /
csr version - Server Administrators – Commands, cvars, Metamod, NodeMod
- Players – Install, in-game commands, controls
- Developers – Build targets, developer cvars, CI, MkDocs
- Reference – Hub for component and audience pages
- Contributing – Issues, Discussions, docs policy
- Community – Discussions vs Issues; Wiki vs MkDocs
- NodeMod – NodeMod plugin setup and
csr_botmenu - Bot Nav Reference – ReGameDLL bot/nav regression notes
- Repository artifacts –
site/,build/, venvs (what is not on GitHub) - Credits – Thanks to upstream projects and Valve / GoldSrc