Planet Czero→Guides→Dedicated Server

GUIDE 07 · SERVER

EIGENEN CZ
SERVER BAUEN.

Von einem leeren Ordner bis zum öffentlichen Condition-Zero-Server.

SteamCMD, HLDS, Ports, server.cfg, Rates, VAC, Metamod, AMX Mod X, Custom Maps und FastDL: Klingt erst einmal nach einem Wochenende voller Fehlermeldungen. Muss es aber nicht sein. Wir bauen den Server in einer Reihenfolge auf, bei der du nach jedem Schritt weißt, ob die Basis noch funktioniert.

01

VORBEREITUNG

Was brauchst du?

Ein Condition-Zero-Server benötigt heute keine spektakuläre Hardware. Wichtiger sind eine stabile Internetverbindung, ein dauerhaft erreichbares System und eine saubere Ordnerstruktur.

SERVER WINDOWS / LINUX

HLDS läuft auf beiden Plattformen. Ein kleiner Homeserver, Mini-PC, VPS oder Docker-Host reicht für einen klassischen CZ-Server meist völlig aus.

NETZWERK ÖFFENTLICH ERREICHBAR

Für einen öffentlichen Homeserver muss der Spielport von außen erreichbar sein. Bei CGNAT oder DS-Lite kann zusätzliche Netzwerktechnik nötig sein.

Außerdem sinnvoll:

01Feste Ordner für SteamCMD und Serverdateien
02Zugriff auf Router bzw. Firewall
03Texteditor für Config-Dateien
04Steam-Client mit Condition Zero zum Testen
DIE WICHTIGSTE REGEL Erst Vanilla zum Laufen bringen. Danach Mods installieren.
02

INSTALLATION

SteamCMD & HLDS

Valve verteilt den klassischen Half-Life Dedicated Server über SteamCMD. Für GoldSrc wird App 90 verwendet; über die Mod-Konfiguration installieren wir die Condition-Zero-Dateien.

STEAMCMD · GRUNDABLAUF
force_install_dir ./czserver
login anonymous
app_set_config 90 mod czero
app_update 90 validate
quit

Unter Linux verwendest du natürlich einen passenden absoluten Pfad, beispielsweise /home/steam/czserver. Unter Windows kann das beispielsweise C:\czserver sein.

APP 90 IST EIN SONDERFALL

Bei den alten GoldSrc-Dedicated-Servern steckt mehr als ein Mod hinter App 90. Deshalb ist app_set_config 90 mod czero wichtig, damit SteamCMD die Condition-Zero-Komponente berücksichtigt.

⚠ UPDATE NOCH EINMAL AUSFÜHREN

Wenn nach dem ersten Durchlauf Dateien fehlen, SteamCMD nicht sofort verfluchen. Bei App 90 war und ist es nicht ungewöhnlich, app_update 90 validate erneut laufen zu lassen. Entscheidend ist anschließend, dass der Ordner czero vorhanden ist.

03

ERSTER START

Vanilla-Server starten

Bevor irgendein Plugin auf den Server kommt, starten wir HLDS einmal komplett ohne Metamod und AMX Mod X.

LINUX · BEISPIEL
./hlds_run -game czero -secure -port 27015 +maxplayers 16 +map de_dust2_cz
WINDOWS · BEISPIEL
hlds.exe -console -game czero -secure -port 27015 +maxplayers 16 +map de_dust2_cz

Wenn der Server startet, die Map lädt und du lokal verbinden kannst, hast du bereits den wichtigsten Meilenstein erreicht.

CLIENT-CONSOLE
connect SERVER-IP:27015
JETZT BACKUP MACHEN Eine funktionierende Vanilla-Basis ist dein bester Rettungspunkt.
04

NETZWERK

Port & Erreichbarkeit

Für unseren Beispielserver verwenden wir den klassischen Spielport 27015. Bei einem Homeserver muss dieser Port durch Firewall und Router bis zum Server gelangen.

BEISPIEL
Protokoll: UDP
Externer Port: 27015
Interner Port: 27015
Ziel: IP deines CZ-Servers

Läuft der Server in Docker oder einer anderen Container-Umgebung, muss der Port zusätzlich korrekt zum Container veröffentlicht werden.

LOKAL GEHT – INTERNET NICHT?

Dann ist HLDS wahrscheinlich gar nicht dein erstes Problem. Prüfe Router, Firewall, Port-Mapping und ob dein Anschluss überhaupt eingehende IPv4-Verbindungen zulässt.

⚠ NICHT DEN GANZEN SERVER FREIGEBEN

Öffne nur die Dienste und Ports, die du tatsächlich brauchst. „Exposed Host“ oder eine komplett deaktivierte Firewall sind keine elegante Abkürzung für eine saubere Portfreigabe.

05

KONFIGURATION

server.cfg

Die zentrale Serverkonfiguration liegt im Mod-Verzeichnis:

PFAD
czero/server.cfg

Eine einfache Ausgangsbasis kann so aussehen:

SERVER.CFG · BASIS
hostname "Mein Condition Zero Server"

sv_lan 0
sv_password ""

rcon_password "HIER_EIN_STARKES_PASSWORT"

mp_autoteambalance 1
mp_limitteams 2
mp_friendlyfire 0
mp_freezetime 5
mp_roundtime 3
mp_buytime 1.5
mp_c4timer 35
mp_timelimit 30

sv_allowdownload 1
sv_allowupload 0
⚠ RCON-PASSWORT

Verwende ein langes, einzigartiges Passwort und veröffentliche es niemals in Screenshots, Forenposts oder einer öffentlich zugänglichen Config. Das Beispiel oben ist ausdrücklich nur ein Platzhalter.

Danach kannst du Regeln Stück für Stück ergänzen. Eine kleine Config, deren Befehle du verstehst, ist besser als eine 800-Zeilen-Datei aus dem Jahr 2005.

06

NETCODE & PERFORMANCE

Rates & Server-FPS

Für unsere Stutengasse-Server verwenden wir bewusst klassische, nachvollziehbare Rate-Limits:

PLANET-CZERO-BASIS
sv_maxrate 25000
sv_minrate 10000

sv_maxupdaterate 101
sv_minupdaterate 20

sv_unlag 1
sv_maxunlag 0.5
sv_unlagsamples 1
sv_clienttrace 1

Diese Werte sind unsere Serverbasis – keine universelle Pflicht für jeden GoldSrc-Server. Client und Server müssen sinnvoll zusammenspielen.

→ ZUM GUIDE: RATES & INTERPOLATION
SYS_TICRATE & PINGBOOST

Unter Linux existieren zusätzlich klassische HLDS-Tuningoptionen wie sys_ticrate und -pingboost. Ändere solche Werte erst, wenn dein Vanilla-Server stabil läuft und du die tatsächliche Server-Framerate misst. Unterschiedliche Hosts und Builds reagieren nicht immer identisch.

STUTENGASSE-ERFAHRUNG Erst messen. Dann genau einen Parameter ändern. Nicht fünf gleichzeitig.
07

VAC & ADMIN

Server absichern

Mit -secure startest du den Server im normalen VAC-Modus. Wenn der Server erfolgreich mit Steam kommuniziert, sollte die Konsole entsprechend anzeigen, dass er secure läuft.

STARTPARAMETER
-secure

Für Administration solltest du RCON nicht unnötig verteilen. Sobald später AMX Mod X läuft, können Adminrechte sauber an eine SteamID gebunden werden.

AMXX · USERS.INI · BEISPIEL
"STEAM_0:X:123456" "" "abcdefghijklmnopqrstu" "ce"

Die SteamID im Beispiel ist nur ein Platzhalter. Für echte Admins trägst du die jeweilige SteamID und nur die benötigten Rechte ein.

⚠ KEIN -INSECURE AUS BEQUEMLICHKEIT

-insecure ist für Tests und spezielle Entwicklungsfälle gedacht. Ein normaler öffentlicher Communityserver sollte nicht grundlos ohne VAC laufen.

08

MODDING

Metamod & AMX Mod X

Jetzt – und wirklich erst jetzt – kommt die Modding-Schicht. Metamod sitzt zwischen Game-DLL und Server; AMX Mod X läuft wiederum als Metamod-Plugin und stellt das bekannte Admin- und Plugin-System bereit.

01Passende Metamod-Version für GoldSrc/CZ installieren
02Server starten und Metamod allein prüfen
03AMX Mod X Base installieren
04Counter-Strike-Addon ergänzen und Plugins prüfen
METAMOD PRÜFEN
meta list
AMX MOD X PRÜFEN
amxx version
amxx plugins
amxx modules
CONDITION ZERO BEACHTEN

Verwende eine Metamod-/AMXX-Kombination, die Condition Zero unterstützt. Das offizielle AMX-Mod-X-Projekt unterstützt CZ; bei sehr alten Paketen aus irgendwelchen Downloadarchiven weißt du dagegen oft nicht, was du dir einbaust.

PLUGIN-REGEL Ein Plugin installieren → Server starten → prüfen → erst dann das nächste.
09

CUSTOM CONTENT

Maps & FastDL

Eigene Maps kommen in czero/maps/. Je nach Map können zusätzliche Models, Sounds, Sprites oder andere Ressourcen dazugehören. Diese Dateien müssen ebenfalls in ihrer korrekten Verzeichnisstruktur vorhanden sein.

BEISPIEL
czero/maps/de_meinemap.bsp
czero/models/...
czero/sound/...
czero/sprites/...

Ohne FastDL lädt der Client Custom Content direkt vom Gameserver. Für größere Dateien ist ein separater HTTP-Webspace deutlich angenehmer.

SERVER.CFG · FASTDL
sv_allowdownload 1
sv_allowupload 0
sv_downloadurl "https://download.example.org/czfastdl/"

Im FastDL-Verzeichnis spiegelst du die benötigte Struktur relativ zum CZ-Mod-Verzeichnis, also beispielsweise:

WEBSERVER
/czfastdl/maps/de_meinemap.bsp
/czfastdl/models/...
/czfastdl/sound/...
/czfastdl/sprites/...
⚠ DER KLASSIKER

Map auf dem Server vorhanden, aber ein Model oder Sound fehlt auf FastDL: Schon lädt der Client nicht sauber oder bekommt einen Fehler. Bei Custom Maps deshalb immer die komplette Ressourcenliste prüfen.

10

GO LIVE

Testen & Fehler finden

Bevor du den Server überall bewirbst, teste ihn einmal wie ein fremder Spieler: mit öffentlicher Adresse, sauberem Client und einer Custom Map.

01Server startet ohne Errors und lädt die Startmap
02Verbindung über die öffentliche Adresse funktioniert
03VAC, Metamod und AMXX melden den erwarteten Status
04Custom Map und FastDL mit einem Client testen
NÜTZLICHE SERVER-CHECKS
status
version
meta list
amxx version
amxx plugins
WENN ETWAS KAPUTTGEHT

Zur letzten funktionierenden Stufe zurückgehen. Startet Vanilla, aber nach Metamod nicht mehr? Dann liegt das Problem in dieser Schicht. Startet AMXX, aber nach einem neuen Plugin nicht mehr? Plugin wieder deaktivieren. Genau deshalb bauen wir den Server Schritt für Schritt.

SO KANN DAS ERGEBNIS AUSSEHEN [GER] STUTENGASSE | CZ REUNION 31.18.86.75:27015 UNSEREN CZ-SERVER ANSEHEN
FERTIG? Nein. Ein Gameserver ist nie fertig. Aber jetzt hast du wenigstens einen, der läuft. 😂

GESCHAFFT

Die komplette CZ-Basis.

GUIDE 01 Condition Zero
2026 einrichten
→
GUIDE 02 Rates &
Interpolation
→
PLANET CZERO Alle
Guides
→