diff --git a/modules/billing/docs/ricochet/index.php b/modules/billing/docs/ricochet/index.php index c1e5e4b5..09d99f9f 100644 --- a/modules/billing/docs/ricochet/index.php +++ b/modules/billing/docs/ricochet/index.php @@ -1,68 +1,275 @@ -
Ricochet is available for hosting on our platform. This guide covers the basics of setting up and managing your Ricochet server.
- -27015- Note: When running on a VPS or dedicated server, you can use the default port or configure a custom port in your server configuration file. -
+To create a Ricochet server:
+Ricochet is a Half-Life 1 era arena shooter that still uses the classic HLDS (GoldSrc) dedicated server stack. The notes below describe how to deploy and operate a Ricochet server on any Linux or Windows VPS without relying on a control panel.
+ +ricochet)rc_deathmatch; other stock maps include rc_arena and rc_trinityricochet/server.cfg, ricochet/mapcycle.txt, ricochet/motd.txthlds_run (Linux) or hlds.exe (Windows)ricochet/logs/Lxxxxx.log| Port | +Protocol | +Purpose | +Required? | +
|---|---|---|---|
27015 |
+ UDP | +Game traffic & master server heartbeats | +Required | +
27015 |
+ TCP | +RCON & remote console | +Optional | +
27016 |
+ UDP | +Spectator / HLTV relay (if used) | +Optional | +
27005 |
+ UDP (outbound) | +Client auth replies; allow outbound so players can connect | +Required outbound | +
Valve master servers also require outbound UDP 27010-27012; keep them open so your instance appears on public listings.
+# UFW (Ubuntu/Debian)
+sudo ufw allow 27015/udp comment 'Ricochet game'
+sudo ufw allow 27015/tcp comment 'Ricochet RCON'
+sudo ufw allow 27016/udp comment 'Ricochet HLTV (optional)'
+
+# FirewallD (RHEL/CentOS)
+sudo firewall-cmd --permanent --add-port=27015/udp
+sudo firewall-cmd --permanent --add-port=27015/tcp
+sudo firewall-cmd --permanent --add-port=27016/udp
+sudo firewall-cmd --reload
+
+# Windows Defender Firewall
+netsh advfirewall firewall add rule name="Ricochet Game" dir=in action=allow protocol=UDP localport=27015
+netsh advfirewall firewall add rule name="Ricochet RCON" dir=in action=allow protocol=TCP localport=27015
+
+ # Create user sudo useradd -m -s /bin/bash ricochet
+sudo passwd ricochet
+sudo -u ricochet bash
+
+# Install dependencies and SteamCMD
+sudo apt update && sudo apt install steamcmd lib32gcc-s1 lib32stdc++6 -y
+mkdir -p ~/ricochet-server && cd ~/ricochet-server
+steamcmd +login anonymous +force_install_dir $PWD +app_update 90 validate +quit
+
+# Launch once (tmux/screen recommended)
+./hlds_run -game ricochet -console -port 27015 +ip 0.0.0.0 \
+ +map rc_deathmatch +maxplayers 16 +sv_lan 0 +exec server.cfg
+
+
+C:\steamcmd.C:\servers\ricochet and run:steamcmd +login anonymous +force_install_dir C:\servers\ricochet +app_update 90 validate +quitcd /d C:\servers\ricochet
+hlds.exe -console -game ricochet -port 27015 -ip 0.0.0.0 ^
+ +map rc_deathmatch +maxplayers 16 +sv_lan 0 +exec server.cfgAfter your server is created, you can configure it through the control panel:
+| Parameter | +Description | +Example | +
|---|---|---|
-game ricochet |
+ Loads the Ricochet mod data folder | +Always required | +
-console |
+ Forces console-only mode (no GUI) | +Recommended on servers | +
-port / -sport |
+ Sets game and spectator ports | +-port 27015 -sport 27016 | +
-ip |
+ Binds to a specific interface | +-ip 192.0.2.10 | +
-autoupdate |
+ Linux only; pulls updates via SteamCMD when server restarts | +-autoupdate -steam_dir ~/steamcmd -steamcmd_script ~/ricochet/update.txt | +
+map |
+ Starting map when the process boots | ++map rc_deathmatch | +
+maxplayers |
+ Hard slot limit (1–32) | ++maxplayers 16 | +
+sv_lan |
+ 0 exposes to internet, 1 keeps LAN-only | ++sv_lan 0 | +
+exec server.cfg |
+ Ensures your config runs on boot | ++exec server.cfg | +
Append +log on and +sv_password "pass" directly on the command line to guarantee they are processed even if configs fail.
// Identity & access
+hostname "My Ricochet Arena"
+sv_password "" // Set for private servers
+rcon_password "ChangeMe!2025"
+sv_lan 0
+sv_region 0 // 0 = worldwide listing
+
+// Gameplay
+mp_timelimit 20
+mp_fraglimit 20
+mp_weaponstay 1
+mp_falldamage 1
+mp_friendlyfire 0
+mp_flashlight 0
+mp_chattime 10
+mp_footsteps 1
+sv_cheats 0
+
+// Physics
+sv_gravity 800
+sv_airaccelerate 10
+sv_accelerate 10
+sv_friction 4
+sv_maxspeed 320
+
+// Networking
+sv_minrate 1500
+sv_maxrate 20000
+sv_minupdaterate 20
+sv_maxupdaterate 60
+sys_ticrate 300
+
+// Logging & security
+log on
+sv_logbans 1
+sv_logecho 1
+sv_log_onefile 0
+writeid
+writeip
+
+
+rc_deathmatch
+rc_arena
+rc_trinity
+rc_bounce
+
+Reorder or duplicate entries to weight the rotation. Use mp_timelimit and mp_fraglimit to control the length of each round.
Create restart.sh (Linux) to keep the process alive:
#!/bin/bash
+cd /home/ricochet/ricochet-server
+while true; do
+ ./hlds_run -game ricochet -console -port 27015 \
+ +map rc_deathmatch +maxplayers 16 +sv_lan 0 +exec server.cfg
+ echo "Server crashed/restarted at $(date)" >> restart.log
+ sleep 5
+done
+
+Run it inside tmux or screen, or convert to a systemd service for automatic boot.
steamcmd +login anonymous +app_update 90 validate +quit after Valve pushes patches.ricochet/ directory (configs, logs, demos) before experimenting with mods.sys_ticrate around 300–500; higher values increase CPU usage without visible benefit.log on and parse logs for Banid, kick, or crash traces.Servers are automatically started after creation. You can stop/start your server from the control panel.
- -Use your server's IP address and port to connect from the game client.
- -Access your server files via FTP using the credentials provided in your control panel.
- -If you need assistance with your Ricochet server:
-sv_lan 0, firewall allows outbound UDP 27010-27012, and public IP is bound via -ip. Restart after making changes.validate. Old binaries are the primary cause.sv_maxrate and sv_maxupdaterate, and ensure the host is not power-saving the CPU. Monitor with net_graph 3 in-game.lib32gcc-s1, lib32stdc++6, and lib32z1 (Debian/Ubuntu) or glibc.i686 packages (RHEL).-port + +rcon_password and limit access with firewall source rules.