- Auto-installed Bhop server plugins (Metamod, Sourcemod, Shavit Timer, etc.)
- Docker containerization for easy setup and portability
- 100-tickrate enforced for smooth bunnyhopping
- Works locally or for remote server deployment
- Includes a few starter maps — add your own, use !zones to configure
- Pre-made zones/tiers for 10000 maps
- Docker (https://docs.docker.com/get-started/get-docker/) + WSL (Take Ubuntu)
- Git (optional)
Clone the repository:
git clone https://github.com/iErcann/Docker-Bhop-CSSor download zip and extract it to a folder
Edit the server configuration file to personalize your setup:
File Path: cssserver.cfg
Example configuration:
hostname "Bhop Server" # Server name rcon_password "" # Secure RCON password or disable sv_setsteamaccount "your_token_here" # Steam Game Server Login Token, only needed if you want to be in the server browser // Force 100 ticks sv_mincmdrate 100 sv_maxcmdrate 101 sv_minrate 100000 sv_maxrate 0 sv_minupdaterate 100 sv_maxupdaterate 101 Tip: Generate a Steam Game Server Login Token (GSLT) at Steam Game Server Account Management.
Launch the Docker container to initialize your Counter-Strike: Source server:
docker compose upWait for all services to start. The server will run in the foreground.
Could take some time if running first time.
To run it in the background, use
docker compose up -d
Check the server's current status and details:
docker exec -it --user linuxgsm css-server ./cssserver detailsSet up the server with essential plugins like Metamod, Sourcemod, and a Bhop Timer:
docker exec -it --user linuxgsm css-server bash /init.shThis script will install the required plugins for a Bhop server:
- MetaMod:Source
- SourceMod
- Shavit's Bhop Timer
- bhop-get-stats
- Tickrate Enabler
- RNG Fixer
- 260 Velocity Fix for Weapons (so we don't need to drop them)
- Bash2 AntiCheat
- Show Clips
- Show Triggers
- LandFix with Hud and Cookies
- Gap
- Event Queue Fixer
- PushFix DE (booster fix, broken in new CSS update february 2025)
Access the game server console:
docker exec -it --user linuxgsm css-server ./cssserver consoleRun the following command to confirm Metamod and Sourcemod are loaded:
meta list sm plugins list To connect to your server, you'll need its IP address. This is especially important if you're running Docker locally, as the server IP will typically be something like 172.17.x.x (not 127.0.0.1).
-
Check your network interfaces
Run the following command to list your network interfaces and their IP addresses:ifconfig
Look for the
inetaddress under thedocker0interface (for Docker containers) or your main network interface (commonlyeth0). -
Examples:
Tip: Use the
inetaddress (e.g.,172.17.0.1) to connect to your server from your local machine or LAN.
For remote access, ensure your firewall and port forwarding settings allow external connections.
Use this pre-made command to edit the file directly using vi:
docker exec -it --user linuxgsm css-server \ vi /app/serverfiles/cstrike/addons/sourcemod/configs/admins_simple.iniAdd your Steam ID in this format (replace with your actual Steam ID):
"STEAM_0:0:12345678" "z" STEAM_0:0:12345678: Your Steam ID (find yours here)z: Full admin privileges flag
After saving the file:
- Restart your server, OR
- Run this in-game command:
docker exec -it --user linuxgsm css-server ./cssserver consolesm_reloadadmins Use
"a"instead of"z"for basic admin rights To give only !zones to someone, give him only the"m". Disable RCON.
On all maps, you must create start and end zones for the bhop timer to work. To do this, type the commands in the chat:
!zones - This will enable zone editing mode. (https://github.com/shavitush/bhoptimer/#shavit-zones-required) !noclip - This will allow you to fly and move through walls to go to the end.
Player commands: !set, !setstart, !ss, !sp, !startpoint - Set your current position as the teleport location on restart. !deletestart, !deletesetstart, !delss, !delsp - Delete your spawn point. !drawallzones, !drawzones - Draws all zones (if the server has the cvar for this enabled). Admin commands: (RCON flag) !zones, !mapzones, !addzone - Opens the mapzones menu. !deletezone, !delzone - Delete a mapzone. !deleteallzones - Delete all mapzones. !modifier - Changes the axis modifier for the zone editor. Usage: !modifier <number> !addspawn - Adds a custom spawn location. !delspawn - Deletes a custom spawn location. !zoneedit, !editzone, !modifyzone - Modify an existing zone. !setstart, !spawnpoint, !ss, !sp - Set your restart position & angles in a start zone. !tptozone - Teleport to a zone. Admin commands: (ROOT flag) !reloadzonesettings - Reloads the zone settings. - LinuxGSM Sourcemod Guide
- Bhop Stats
- Bhop Timer
- RNGFixer
- Bash2 AntiCheat (this one has .smx, but always require SteamWorks to work)
- Tickrate Enabler (fork, because broken)
- LandFix
- Show Clips
- Show Triggers
- Weapon PreSpeeds velfix
- Gap
- Line
- Requires : https://github.com/rtldg/sm_closestpos
- Event Queue Fixer
- PushFixDE
- Tracks player activity: who joined or left
- Alerts on map changes
- Supports multiple game servers using GameDig
- Built with TypeScript & Bun
- Dockerized
For more details, see /monitor/README.md.


