Was der Server braucht: Speicherplatz, RAM und CPU
The Fun Pimps veröffentlichen keine eigenen Anforderungen für den Dedicated Server, deshalb lohnt es sich, genau zu sein, was dokumentiert ist. Ihre Systemanforderungen für das Spiel nennen 8 GB Arbeitsspeicher als Minimum und 12 GB als Empfehlung sowie 15 GB freien Speicherplatz, mit dem Hinweis, dass künftige Releases mehr brauchen können. Für Serverbetreiber ergänzen sie einen Satz: Laufen ein Dedicated Server und ein Client auf demselben Rechner, verdoppelt sich der Speicherbedarf.
Die Installation ist für ein Survival-Spiel groß und wächst mit jeder Hauptversion, und eine Zahl nur für den Server veröffentlicht der Entwickler nicht. Lass großzügig Platz über den Download hinaus: Eine zufällige Welt wird nach der Generierung auf der Platte gespeichert, und der Spielstand wächst, während die Spieler erkunden. Die Eigenschaft SaveDataLimit kann begrenzen, wie viel Platz jeder Spielstand belegen darf.
Was den Speicher treibt, steht in der Config-Datei selbst. ServerMaxAllowedViewDistance ist als Einstellung mit hohem Einfluss auf Speicher und Performance markiert, MaxSpawnedZombies als Einstellung mit sehr großem Einfluss auf die Performance. Darüber hinaus folgt die Last dem Teil der Karte, der gleichzeitig genutzt wird. Spieler, die über eine große Welt verteilt sind, halten viel mehr Gelände geladen als dieselbe Anzahl in einer gemeinsamen Basis, und eine größere zufällige Welt kostet mehr als eine kleine.
Unser 7 Days to Die Tarif hat 6 GB für 16,99 € alle 30 Tage, inkl. MwSt., ausgelegt für das Standardlimit von 8 Spielern auf Navezgane oder einer zufälligen 8k-Welt. Größere Welten und komplette Overhaul-Mods brauchen mehr. Selbst hosten oder mieten (auf Englisch) zeigt die echten Kosten eines Rechners zu Hause.
- Vom Entwickler veröffentlicht: 8 GB Minimum und 12 GB empfohlen für das Spiel, doppelt so viel, wenn Server und Client auf einem Rechner laufen
- Speicherplatz: 15 GB für das Spiel angegeben, dazu mehr für generierte Welten und Spielstände
- Größter Hebel beim Speicher: ServerMaxAllowedViewDistance, von 6 bis 12, Standard 12
- Größter Hebel bei der CPU: MaxSpawnedZombies, Standard 64 für die ganze Welt
- Standardlimit an Spielern: 8
Server installieren und Ports öffnen
Der Dedicated Server ist Steam-App 294420 und lässt sich mit einem anonymen SteamCMD-Login herunterladen. Unter Windows braucht er das Microsoft Visual C++ 2022 Redistributable. Gestartet wird er unter Windows mit startdedicated.bat oder unter Linux mit dem passenden Shell-Skript. Beide verweisen den Server über die Option -configfile auf die serverconfig.xml.
Eine gute Gewohnheit ist, die serverconfig.xml in eine Datei mit eigenem Namen zu kopieren und -configfile auf die Kopie zu richten, denn ein Update oder eine Dateiprüfung kann die mitgelieferte Datei durch eine frische Standardversion ersetzen.
Der Spielport ist ServerPort, standardmäßig 26900. Der Server nutzt diesen Port für TCP und UDP und die nächsten drei UDP-Ports darüber, du öffnest und leitest also 26900 für TCP und 26900 bis 26903 für UDP weiter. Änderst du ServerPort, wandert der UDP-Bereich mit. Laut Kommentar in der Datei solltest du den Port zwischen 26900 und 26905 oder 27015 und 27020 halten, wenn PCs im selben Netzwerk ihn als LAN-Server finden sollen.
Die Config wird mit ServerDisabledNetworkProtocols auf SteamNetworking ausgeliefert. Der Kommentar des Spiels erklärt, warum: Ein Dedicated Server mit korrekt weitergeleiteten Ports sollte das Relay-Netzwerk von Steam abschalten und direkte Verbindungen annehmen.
- Installieren oder aktualisieren: steamcmd +force_install_dir <ordner> +login anonymous +app_update 294420 validate +quit
- Experimentelle Builds: -beta latest_experimental nach der App-Nummer anhängen
- Zurück zu Stable: -beta public nutzen, falls SteamCMD den vorherigen Branch behält
- 26900 TCP und 26900 bis 26903 UDP: die Spielports
- 8080 und 8081 TCP: Web-Dashboard und Telnet, nur wenn du den Server aus der Ferne verwaltest
serverconfig.xml und der Sandbox-Code
Die serverconfig.xml ist eine Liste von Eigenschaftszeilen, jede mit Name und Wert. Ändere nur den Wert, halte die Datei als gültiges XML und bearbeite sie bei gestopptem Server. Neben jeder Eigenschaft steht ein Kommentar der Entwickler, und dieser Kommentar ist die beste Doku, die es für deinen Build gibt.
Die große Änderung ist noch nicht lange her. Mit V3.0 hat das Spiel mehr als 150 Sandbox-Optionen bekommen, und dreißig Gameplay-Eigenschaften wurden aus der serverconfig.xml entfernt und in einer neuen Eigenschaft zusammengefasst, SandboxCode. Schwierigkeit, Tageslänge, Loot-Menge, Zombie-Geschwindigkeit, Häufigkeit des Blutmonds und Gegnerzahl im Blutmond stecken jetzt alle in diesem Code. Die alten Eigenschaftsnamen in der Datei zu setzen, bewirkt nichts.
Um sie festzulegen, öffnest du das Spiel auf deinem eigenen PC, gehst auf den Bildschirm für ein neues Spiel, öffnest die Sandbox-Optionen, stellst ein, was du willst, und nutzt den Button zum Kopieren des Codes. Das Ergebnis fügst du als Wert von SandboxCode ein. Der Standardcode in der Datei entspricht der alten Schwierigkeit Adventurer. Die Notizen zu V3.1.0 mahnen zur Vorsicht: Ändert ein Update die Sandbox-Optionen, prüf deinen Code erneut, denn ein ungültiger Code kann für einige oder alle Einstellungen auf die Standardwerte zurückfallen.
- ServerName, ServerDescription, ServerPassword: wie der Server erscheint und wer beitreten darf
- ServerPort und ServerVisibility: der Spielport, und 2 für öffentlich, 1 nur für Freunde, 0 für nicht gelistet
- ServerMaxPlayerCount: standardmäßig 8
- GameWorld, WorldGenSeed, WorldGenSize, GameName: welche Welt lädt und welchen Spielstand sie nutzt
- SandboxCode: die Gameplay-Regeln, erzeugt in den Sandbox-Optionen des Spiels
- ServerMaxAllowedViewDistance, MaxSpawnedZombies, MaxSpawnedAnimals: die Performance-Grenzen
- EACEnabled und ServerAllowCrossplay: Anti-Cheat und Crossplay mit Konsolen
- TelnetEnabled, TelnetPort, TelnetPassword, WebDashboardEnabled: Fernverwaltung
- UserDataFolder: wo Spielstände, generierte Welten und die serveradmin.xml liegen
- Entfernt in V3.0: GameDifficulty, DayNightLength, DayLightLength, XPMultiplier, LootAbundance, LootRespawnDays, AirDropFrequency, BloodMoonFrequency, BloodMoonEnemyCount, DeathPenalty, DropOnDeath und die Einstellungen zur Zombie-Bewegung, neben anderen
Navezgane oder eine zufällige Welt
GameWorld entscheidet über die Karte. Navezgane ist die handgebaute Karte, die mit dem Spiel kommt. Sie ist für alle gleich und muss nicht generiert werden, ein neuer Server auf Navezgane ist also schnell bereit. Das Spiel bringt außerdem mehrere vorgenerierte zufällige Welten mit, aufgelistet im Kommentar neben GameWorld, die genauso laden.
Setz GameWorld auf RWG für eine eigene zufällige Welt. WorldGenSeed ist der Seed und WorldGenSize Breite und Höhe. Laut Datei reichen die offiziell unterstützten Größen von 6144 bis 10240 und müssen ein Vielfaches von 2048 sein, also 6144, 8192 und 10240, Standard ist 6144. Gibt es für diesen Seed und diese Größe schon eine Welt, lädt der Server sie und generiert sie nicht neu.
Die Generierung passiert beim ersten Start, bevor der Server Spieler annimmt, und die Konsole zeigt den Fortschritt. Zeiten veröffentlicht der Entwickler nicht. Sie hängen von Größe und Prozessor ab, und die größte Größe dauert viel länger als die kleinste. Ein neuer Server mit zufälliger Welt, der beim ersten Start zu hängen scheint, generiert also meist noch. Du kannst die Welt auch auf deinem eigenen PC generieren und in den Ordner GeneratedWorlds hochladen.
GameName ist der Name des Spielstands. Änderst du später Welt, Seed, Größe oder Spielnamen, startet der Server einen anderen Spielstand, und für die Spieler sieht es so aus, als wäre ihre Basis verschwunden. Der alte Spielstand liegt unter seinem alten Namen weiter auf der Platte. Leg diese vier Werte fest, bevor jemand baut.
Admins, Telnet und das Web-Dashboard
Admin-Rechte werden nicht in der serverconfig.xml vergeben. Sie stehen in der serveradmin.xml, benannt über die Eigenschaft AdminFileName, im Ordner Saves des User-Data-Ordners des Servers. Trag dich als Benutzer mit deiner Plattform-ID und einer Berechtigungsstufe ein, wobei 0 die höchste Stufe ist, und starte neu. Bearbeite die Datei bei gestopptem Server, damit der laufende Server deine Änderung nicht überschreibt.
Die Berechtigungsstufen steuern auch zwei Einstellungen für Slots. ServerReservedSlots hält Plätze für Spieler ab einer bestimmten Berechtigungsstufe frei, und mit ServerAdminSlots können Admins einem vollen Server beitreten.
Telnet ist die Fernkonsole. Sie ist standardmäßig auf Port 8081 aktiv, und die Standarddatei hat ein leeres TelnetPassword. Ohne Passwort lauscht der Server für Telnet nur auf dem lokalen Rechner, und das ist ein sicherer Standard: Es funktioniert vom Server selbst aus und nicht von außen. Willst du es aus der Ferne nutzen, setz ein starkes Passwort und öffne den Port. Wiederholt falsche Passwörter sperren den Client, gesteuert über TelnetFailedLoginLimit.
Das Web-Dashboard ist ein Kontrollpanel im Browser auf Port 8080. Es ist standardmäßig aus, und EnableMapRendering, ebenfalls standardmäßig aus, lässt es die erkundete Karte zeichnen. Unter Windows öffnet TerminalWindowEnabled ein Fenster mit Log und Befehlszeile. Auf einem Hosting-Panel erledigt die Konsole des Panels dieselbe Aufgabe.
EAC, Mods und Overhauls
Easy Anti-Cheat wird über EACEnabled gesteuert und ist standardmäßig an.
Mods sind Ordner im Ordner Mods des Servers, jeweils mit ihrer ModInfo.xml auf oberster Ebene des eigenen Ordners. Der Server listet die geladenen Mods im Startlog auf, und dort schaust du zuerst nach, wenn eine nicht zu funktionieren scheint. Einfache Mods, die nur XML-Werte des Spiels ändern, laufen oft allein auf dem Server. Mods, die Items, Blöcke, Kreaturen oder Änderungen an der Oberfläche hinzufügen, müssen zusätzlich auf dem PC jedes Spielers installiert sein, in derselben Version.
Mods mit eigenem Code, ausgeliefert als DLL-Dateien, laufen normalerweise mit abgeschaltetem EAC, auf dem Server und bei jedem Spieler, und die großen Overhaul-Mods gehören in diese Gruppe. Folge der Anleitung, die mit der Mod kommt, und prüf, für welche Spielversion sie gebaut ist. Overhauls sind an eine bestimmte Version des Spiels gebunden und brauchen nach jedem großen Release ein eigenes Update.
Crossplay mit Konsolen ist ein eigener Schalter, ServerAllowCrossplay, standardmäßig aus. Der Kommentar in der Datei nennt Bedingungen: Ein Crossplay-Server wird nur gelistet und ist nur beitretbar, wenn er Plattform-Sanktionen nicht ignoriert und höchstens die Standardzahl an Spielerplätzen hat. Wie Gameserver-Hosting funktioniert (auf Englisch) erklärt, wie du deine Dateien auf einen gemieteten Server hochlädst.
Updates, Hauptversionen und was mit Spielständen passiert
Spieler bekommen Updates automatisch über Steam. Ein Dedicated Server wechselt die Version nur, wenn du das Update ausführst, und einem Server auf einem älteren Build als dem der Spieler kann niemand beitreten. Aktualisiere mit demselben SteamCMD-Befehl, mit dem du installiert hast. Die Notizen von The Fun Pimps zu V3.1.0 sagen dasselbe von der anderen Seite: Können Spieler sich nach einem Release nicht verbinden, prüf, ob der Server auf dem öffentlichen Standard-Branch ist.
Mach vor jedem Update ein Backup. Zwei Ordner im User-Data-Ordner gehören zusammen: Saves, mit den Änderungen der Spieler und ihren Charakteren, und GeneratedWorlds, mit dem Gelände einer zufälligen Welt. Stellst du einen ohne den anderen wieder her, passt die Welt nicht zusammen.
Kleine Updates innerhalb einer Hauptversion laden vorhandene Spielstände normalerweise. Bei Hauptversionen ist das anders. Den größten Teil der Spielgeschichte war die Haltung des Entwicklers, dass Spielstände aus einer früheren Hauptversion nicht kompatibel sind, und eine frische Welt war die Regel. V3.0 war gnädiger: Die Release-Notizen beschreiben, wie Serverbetreiber einen Spielstand aus V2.6 weiterführen, indem sie ihre alten Einstellungen als Sandbox-Code nachbauen, und das Spiel warnt jetzt, wenn es einen Spielstand aus einer älteren Hauptversion lädt. Außerdem kam ein Befehl und eine Menüoption dazu, alle ungeschützten Chunks zurückzusetzen. Das erneuert die Welt außerhalb von Landclaims und Schlafsack-Bereichen und behält die Basen.
Der Entwickler hat gesagt, dass an V4.0 gearbeitet wird. Behandle jede Hauptversion als Entscheidung: Lies in den Release-Notizen, was zu vorhandenen Spielständen gesagt wird, warte, bis deine Mods aktualisiert sind, behalte das alte Backup und rechne damit, dass eine frische Welt die sauberere Wahl sein kann.