--- title: "How to Install ReGameDLL_CS on a CS 1.6 Server" excerpt: "Replace Valve's cs.so / mp.dll with ReGameDLL_CS, configure game.cfg, and verify the new game logic actually loaded." category: "installation" tags: "regamedll, gamedll" image: "" read_time: "8 min read" ---
ReGameDLL_CS is the reverse-engineered replacement for the Counter-Strike game library — cstrike/dlls/cs.so on Linux, cstrike\dlls\mp.dll on Windows. It is what implements rounds, buying, bomb logic, weapon behaviour and player spawning. Replacing it gives you dozens of fixed bugs, a large set of new cvars (things Valve hard-coded, like grenade damage or buy-time behaviour), and — the reason most people install it — it is the prerequisite for ReAPI.
It is engine-independent in principle, but in practice you should run it on ReHLDS. ReGameDLL and ReHLDS are developed together and tested together; pairing a current ReGameDLL with a 2013 Valve engine is asking for a crash nobody will help you debug.
cd /home/steam/hlds/cstrike/dlls cp cs.so cs.so.valve.bak ls -la
On Windows the file is mp.dll. Keep the backup — it is the only quick way back if a plugin turns out to depend on stock behaviour.
Download the current ReGameDLL_CS release archive from the project's GitHub releases page. The archive lays out a cstrike/ tree that mirrors your server exactly, which is deliberate — you can copy it over the top.
The pieces you need on Linux:
cstrike/dlls/cs.so <-- the game library cstrike/game.cfg <-- the new cvars, with defaults cstrike/game_init.cfg <-- executed once at server start cstrike/delta.lst <-- updated delta definitions
delta.lst matters. Skipping it is the classic ReGameDLL install bug: the server boots, players connect, and then movement or weapon prediction is subtly wrong or the server crashes when a specific entity is sent. Copy it.
cd /path/to/regamedll-release cp cstrike/dlls/cs.so /home/steam/hlds/cstrike/dlls/cs.so cp cstrike/game.cfg /home/steam/hlds/cstrike/game.cfg cp cstrike/game_init.cfg /home/steam/hlds/cstrike/game_init.cfg cp cstrike/delta.lst /home/steam/hlds/cstrike/delta.lst
Do not touch liblist.gam yet. If Metamod is installed, liblist.gam points gamedll at metamod.so, and Metamod is what chains through to cs.so. Overwriting liblist.gam with the one from the ReGameDLL archive will point the engine straight at cs.so and silently disable Metamod and every AMXX plugin you have. This is a very common and very confusing self-inflicted wound.
cd /home/steam/hlds ./hlds_run -game cstrike +map de_dust2 +maxplayers 20 +sv_lan 0
In the console:
regamedll_version
Stock CS answers Unknown command: regamedll_version. ReGameDLL prints its version. As with ReHLDS, this cvar is the only verification worth trusting.
game.cfg is executed by ReGameDLL and holds cvars that do not exist in stock CS. A few that server admins reach for immediately:
// buy behaviour mp_buytime 0.25 // in minutes; 0.25 = 15 seconds mp_buy_anywhere 0 // 1 = buy outside the buy zone mp_buy_during_immunity 0 // round / respawn mp_round_infinite 0 mp_respawn_immunitytime 0 // weapons and damage mp_free_armor 0 // 0 none, 1 kevlar, 2 kevlar+helm mp_falldamage 1 mp_forcerespawn 0 // realism / fixes mp_hostagepenalty 13 mp_kickercsay 1
Read the file that ships with your release rather than copying a cvar list from a forum. Cvars are added and renamed between versions, and setting one that does not exist is a silent no-op you will not notice until you wonder why the setting "does nothing".
Host_Error: Couldn't get DLL API from ./cstrike/dlls/cs.so! — the file is corrupt, is the wrong architecture, or is a Windows mp.dll renamed. Check with file cs.so: it must be ELF 32-bit LSB shared object, Intel 80386.Failed to load server DLL — permissions, or a missing 32-bit dependency. Run ldd cstrike/dlls/cs.so; anything reported not found must be installed. See that error in detail.delta.lst, or you copied one from a different ReGameDLL version. Copy the one from your release archive.liblist.gam. Restore it so gamedll_linux points at addons/metamod/metamod.so (or metamod_i386.so, depending on your Metamod build).regamedll_version answers with a version.meta list still lists every Metamod plugin as RUN — proving you did not break the chain.delta.lst bites).With ReGameDLL confirmed, you can install ReAPI and start using plugins that hook the real game functions instead of fighting them through Ham Sandwich. If you want to build the library yourself rather than trust a binary, see compiling ReGameDLL_CS from source.