For years there was one way to run a CS 1.6 server: Valve's HLDS (Half-Life Dedicated Server), a closed binary that had not meaningfully changed in a decade. Today most serious servers run ReHLDS instead — a clean-room reimplementation of that same engine maintained by the rehlds project. It is a drop-in replacement, not a mod, and understanding what it does (and does not) change clears up most of the confusion around the modern "Re" stack.
1. What HLDS actually is
HLDS is the dedicated-server build of the GoldSrc engine — the executable and engine shared library (engine_i486.so on Linux, swds.dll on Windows) that runs the networking, physics, entity system and master-server heartbeat. On top of it sits the game logic (mp.dll / cs.so), and on top of that Metamod and AMX Mod X. HLDS is stable and battle-tested, but Valve stopped developing it, so its old bugs, exploits and limits are frozen in place.
2. What ReHLDS replaces
ReHLDS reimplements the engine layer only — you swap the engine binary and keep everything else. Because it is binary-compatible, your existing Metamod, AMX Mod X and plugins keep working unchanged. It does not touch game rules; that is ReGameDLL_CS's job. The three layers of the "Re" stack are independent:
| Layer | Original | Re-implementation |
|---|---|---|
| Engine | HLDS | ReHLDS |
| Game rules | mp.dll / cs.so | ReGameDLL_CS |
| Metamod loader | Metamod-P | Metamod-r |
3. Why admins switched
- Performance. ReHLDS is optimized modern C++ and generally runs the same load with lower CPU, which matters when you host several servers on one VPS or chase a stable 1000 FPS.
- Security. Many remote crashes and buffer-overflow exploits that plague old HLDS are patched. This is the biggest single reason to switch — an unpatched HLDS is a soft target.
- Extra cvars and hooks. ReHLDS exposes tuning and hardening cvars (the
sv_rehlds_*family) that stock HLDS never had — see the ReHLDS performance cvars. - ReAPI. ReHLDS + ReGameDLL together enable ReAPI, a modern plugin API that hooks engine and game events cleanly instead of the old fakemeta/orpheu hacks.
- Active maintenance. Bugs get fixed and releases keep coming, which HLDS has not seen in years.
4. What it does not change
ReHLDS is still the GoldSrc engine — same protocol, same clients, same map format, same content limits in most respects. It does not make your server non-Steam by itself (that is Reunion), does not add new gameplay (that is ReGameDLL and plugins), and does not magically stop DDoS. It also will not fix a badly configured server: rates, sv_lan 0 and firewalling still matter exactly as before. If you are hardening against floods, that is still an OS-level job — see blocking UDP floods with iptables, independent of which engine you run.
5. Is it a drop-in, really?
In practice, yes. You place the ReHLDS engine binary and its support files over an existing, working HLDS install; the game content, maps, configs and add-ons stay where they are. Nothing about server.cfg, mapcycle.txt or your plugins.ini changes. Because the engine ABI is preserved, Metamod loads exactly as before and AMXX sits on top unchanged. The main thing to get right is matching the ReHLDS build to your platform — the Linux engine is still 32-bit, so the usual i386 library requirements apply just as they do for stock HLDS. Keep a backup of the original engine binary so you can roll back in seconds if a specific build misbehaves.
6. The 25th Anniversary angle
Valve's 2023 25th Anniversary update changed client behavior and broke a wave of old servers and plugins. ReHLDS tracks these protocol changes and is generally quicker to stay compatible than a frozen HLDS install. If your server broke after that update, moving to a current ReHLDS is often part of the fix — see the anniversary breakage guide and the steam_legacy rollback.
Common questions
- Do my plugins need recompiling? No. ReHLDS is binary-compatible; AMXX plugins run as-is. You only recompile if you adopt ReAPI-based plugins.
- Can I run ReHLDS without ReGameDLL? Yes — the layers are independent. But most people who install one install both, because ReAPI and the extra
mp_cvars need ReGameDLL. - Is it against the rules? No. It is a widely used, legitimate engine replacement for community servers.
- Is it harder to install? Not really — you drop the ReHLDS files over a normal install. See installing ReHLDS on Linux or on Windows.
Verification
After installing ReHLDS, the server console prints the ReHLDS version banner on startup instead of the stock HLDS build string, and the sv_rehlds_* cvars exist (type one with no argument and it echoes a value rather than nothing). Confirm your plugins still load with amxx plugins, then measure CPU under a realistic player count and compare against your old HLDS baseline. If you plan to build the engine yourself for a specific patch level, see building ReHLDS from source.









