CT 123 – CS 1.6 Web-Server
IP: 192.168.178.93
Domain: cs.ls-cloud.biz
Image: yohimik/cs-web-server-metpamx:latest
Stack: /opt/cs16/docker-compose.yml
Ports
| Port | Protokoll | Verwendung |
|---|---|---|
| 27016 | TCP | Web-Client (via Caddy) |
| 27015 | UDP | Game-Port Standard (Fritz!Box-Forward) |
| 27018 | UDP | Game-Port konfiguriert (Fritz!Box-Forward) |
Konfigurationsdateien – Pfade auf CT 123
| Was | Pfad auf CT 123 |
|---|---|
| Maps | /opt/cs16/cstrike/maps/ |
| server.cfg | /opt/cs16/cstrike/server.cfg |
| AMX configs (users.ini, plugins.ini, etc.) | /opt/cs16/cstrike/addons/amxmodx/configs/ |
| AMX Plugins (.amxx) | /opt/cs16/cstrike/addons/amxmodx/plugins/ |
| AMX Scripting (.sma) | /opt/cs16/cstrike/addons/amxmodx/scripting/ |
| Metamod (plugins.ini) | /opt/cs16/metamod/ |
| YaPB Bots | /opt/cs16/yapb/ |
Alle Ordner sind als Docker-Volumes gemountet – Änderungen sind sofort aktiv ohne Container-Neustart (außer neue Plugins/Maps die einen changelevel oder Serverneustart brauchen).
Verzeichnisstruktur
/opt/cs16/
├── docker-compose.yml
├── valve.zip # CS 1.6 Assets (SteamCMD AppID 90)
├── update-ip.sh # Cron: auto-updated public IP
├── metamod/
│ └── plugins.ini # Metamod Plugin-Liste
├── yapb/
│ ├── bin/yapb.so # YaPB Bot-DLL
│ ├── conf/yapb.cfg # Bot-Konfiguration (yb_quota etc.)
│ └── data/graph/de_dust2.graph # Waypoints
└── cstrike/
├── maps/ # .bsp Dateien hier ablegen
├── server.cfg
├── listenserver.cfg
├── config.cfg
└── addons/
└── amxmodx/
├── configs/
│ ├── plugins.ini # AMX Plugin-Liste
│ ├── users.ini # Admin-Accounts
│ └── amxx.cfg # AMX Hauptkonfiguration
├── plugins/ # .amxx Dateien
│ ├── tdm_respawn.amxx
│ └── admin_menu.amxx
└── scripting/ # .sma Quellcode
├── tdm_respawn.sma
└── admin_menu.sma
Plugins
| Plugin | Beschreibung |
|---|---|
| tdm_respawn | Team Deathmatch: Respawn nach 2s |
| admin_menu | /admin im Chat öffnet AMX-Menü |
| YaPB v4.4.957 | Bots (Xash3D-kompatibel, via Metamod) |
Admin-Login
Im Spiel-Console eingeben:
setinfo _pw "DEIN_PASSWORT"
Wird über den Spielernamen erkannt. Danach /admin im Chat für das Admin-Menü.
Account-Daten in /opt/cs16/cstrike/addons/amxmodx/configs/users.ini.
Bots (YaPB)
Warum YaPB? PODBot und andere Metamod-Bots nutzen RecursiveLightPoint – eine HLDS-interne Funktion, die Xash3D FWGS nicht implementiert (SIGSEGV). YaPB unterstützt Xash3D nativ.
Bot-Anzahl dauerhaft ändern
In /opt/cs16/yapb/conf/yapb.cfg:
yb_quota "5" # Anzahl Bots
Bot-Kommandos (Konsole / RCON)
| Befehl | Beschreibung |
|---|---|
yb_quota 5 |
Dauerhaft 5 Bots halten |
yb add [skill] [team] |
Bot hinzufügen (skill 0-4, team 0=random 1=T 2=CT) |
yb kick |
Zufälligen Bot entfernen |
yb kick t |
Bot aus T-Team entfernen |
yb kick ct |
Bot aus CT-Team entfernen |
yb kickall |
Alle Bots rauswerfen |
yb fill 0 5 2 |
Server mit 5 Bots Skill Normal füllen |
yb kill |
Alle Bots töten (bleiben im Spiel) |
yb list |
Aktive Bots anzeigen |
Schwierigkeitsgrade: 0=Newbie, 1=Average, 2=Normal, 3=Professional, 4=Godlike
Dynamische IP
Der Server läuft hinter einer dynamischen Fritz!Box-IP. Zwei Mechanismen sorgen für Aktualität:
- Cloudflare DDNS – A-Record
cs.ls-cloud.bizwird automatisch aktualisiert - Cron auf CT 123 –
/opt/cs16/update-ip.shläuft alle 10 Minuten, erkennt IP-Änderung, updateddocker-compose.ymlund startet Container neu
