← Blog

DayZ-Server konfigurieren: serverDZ.cfg und Mods im Detail

Par Benjamin D. · PDG

· Mis à jour le 9. September 2026 · Lecture 8 min

Inhaltsverzeichnis

Die DayZ Server Konfiguration entscheidet darüber, ob sich deine Welt nach hartem Survival oder entspanntem Loot-Run anfühlt. Fast alles läuft über eine einzige Datei: serverDZ.cfg. Dazu kommen Startparameter, Mod-Ordner und die XML-Dateien der Economy. Dieser Leitfaden zeigt, welche Werte wirklich Wirkung zeigen, wie du Mods sauber lädst und wie du Änderungen ohne Datenverlust ausrollst.



DayZ Server Konfiguration: Struktur der serverDZ.cfg

Die serverDZ.cfg liegt im Stammverzeichnis der Serverinstallation, direkt neben der ausführbaren Datei. Sie ist eine reine Textdatei im Arma-Syntaxstil: ein Parameter pro Zeile, Wert nach dem Gleichheitszeichen, Semikolon am Ende. Strings gehören in Anführungszeichen, Zahlen nicht. Ein einziges fehlendes Semikolon reicht, damit der Prozess beim Start abbricht oder Defaults lädt.

Ein funktionierendes Grundgerüst sieht so aus:

hostname = "[EU] Chernarus - Hardcore Survival";
password = "";
passwordAdmin = "EinLangesAdminPasswort_2024!";
maxPlayers = 60;

verifySignatures = 2;
forceSameBuild = 1;
allowFilePatching = 0;

disableVoN = 0;
vonCodecQuality = 20;
disable3rdPerson = 1;
disableCrosshair = 1;

serverTime = "SystemTime";
serverTimeAcceleration = 8;
serverNightTimeAcceleration = 4;
serverTimePersistent = 1;

guaranteedUpdates = 1;
loginQueueConcurrentPlayers = 5;
loginQueueMaxPlayers = 500;
instanceId = 1;
storageAutoFix = 1;
respawnTime = 5;

lightingConfig = 0;
disablePersonalLight = 1;
disableBaseDamage = 0;
disableContainerDamage = 0;
disableRespawnDialog = 0;

timeStampFormat = "Short";
logAverageFps = 1;
logMemory = 1;
logPlayers = 1;
logFile = "server_console.log";

adminLogPlayerHitsOnly = 0;
adminLogPlacement = 1;
adminLogBuildActions = 1;
adminLogPlayerList = 1;

enableDebugMonitor = 0;
steamQueryPort = 2305;

class Missions
{
    class DayZ
    {
        template = "dayzOffline.chernarusplus";
    };
};

Die Klasse Missions ist der wichtigste Block

Der template-Eintrag zeigt auf den Ordner unter mpmissions/. Wer auf Livonia wechselt, trägt dayzOffline.enoch ein. Wer eine modifizierte Karte fährt, kopiert die Mission in einen eigenen Ordner (zum Beispiel dayzOffline.chernarusplus.custom) und verweist darauf – so überschreibt ein Update der Serverdateien deine Anpassungen nicht.

Wenn du dich lieber direkt um Loot-Tabellen und Basisregeln kümmerst statt um Hardware und Netzwerk, findest du bei Fly-Serv passende Instanzen mit NVMe-Speicher, Ryzen-CPUs und Anti-DDoS: DayZ Server mieten. Panelzugriff, Konsole und automatische Sicherungen sind dabei bereits Teil der Verwaltung.



Spielerzahl, Tageszeit und Persistenz in der serverDZ.cfg steuern

maxPlayers realistisch wählen

maxPlayers ist kein reiner Zahlenwert, sondern eine CPU-Entscheidung. DayZ skaliert stark über Einzelkernleistung: Jeder zusätzliche Spieler bringt Netzwerk-Replikation, Infizierten-Simulation und Item-Persistenz mit sich. Auf einer Instanz mit hoher Taktfrequenz laufen 60 bis 80 Slots auf Chernarus stabil, sofern die Economy nicht zusätzlich aufgebläht ist. Wer 100+ Slots fährt und gleichzeitig ZombieMaxCount hochdreht, sieht Server-FPS unter 20 – und damit Desync beim Nahkampf.

Praktische Faustregel: Starte mit einem konservativen Wert, beobachte über logAverageFps = 1 die Server-FPS im Log und erhöhe schrittweise. Fällt der Wert unter 25 bei voller Auslastung, ist die Grenze erreicht.

Tageszeit und Beschleunigung

Drei Parameter steuern den Zyklus. serverTime setzt die Startzeit ("SystemTime" oder ein fester Wert wie "2024/06/21/09/00"). serverTimeAcceleration multipliziert den Zeitfluss, gültig von 0.1 bis 64. serverNightTimeAcceleration wirkt zusätzlich, aber ausschließlich während der Nacht.

ZielserverTimeAccelerationserverNightTimeAccelerationErgebnis
Realistisch1124 h Echtzeit pro Ingame-Tag
Ausgewogen84Tag ca. 2 h, Nacht deutlich kürzer
Kurze Sessions128Tag ca. 1 h 20, Nacht ca. 10 min
Dauerhaft hell464Nacht praktisch übersprungen

Wichtig: serverTimePersistent = 1 speichert die Uhrzeit über Neustarts hinweg. Steht der Wert auf 0, springt die Welt nach jedem Restart auf den in serverTime definierten Punkt zurück. Für Communities mit geplanten Neustarts alle vier Stunden ist Persistenz meist die bessere Wahl, sonst herrscht dauerhaft Morgen.

Sichtweite, Licht und Netzwerkbereiche

lightingConfig = 0 bedeutet helle Nächte (Vanilla-freundlich), 1 steht für die dunkle Variante, bei der ohne Lichtquelle kaum etwas erkennbar ist. Kombiniert mit disablePersonalLight = 1 ergibt das echte Nachtangst – rechne aber mit Spielerabwanderung, wenn die Nacht zu lang ist.

Die Netzwerkparameter beeinflussen Bandbreite und CPU-Last spürbar:

networkRangeClose = 20;
networkRangeNear = 150;
networkRangeFar = 1000;
networkRangeDistantEffect = 4000;
defaultVisibility = 1375;
defaultObjectViewDistance = 1375;
multithreadedReplication = 1;
speedhackDetection = 10;

networkRangeFar auf 2000 zu setzen wirkt verlockend für Sniper-Gameplay, verdoppelt aber das Datenvolumen pro Client. Bei knapper Server-Leistung ist der Standardwert die sicherere Basis.



Mods einbinden und Startparameter richtig setzen

Ordnerstruktur und Keys

Jeder Mod liegt als eigener Ordner mit @-Präfix im Serververzeichnis, zum Beispiel @CF, @VPPAdminTools oder @BuilderItems. Aus jedem Mod-Ordner muss die .bikey aus dem Unterordner keys/ in das zentrale keys/-Verzeichnis des Servers kopiert werden. Fehlt der Key, lehnt verifySignatures = 2 jeden Client mit diesem Mod ab.

Mods lädst du über SteamCMD (Workshop-App-ID 221100) oder direkt über den Dateimanager des Panels:

steamcmd +force_install_dir /home/container/dayz \
  +login DEIN_STEAM_ACCOUNT \
  +workshop_download_item 221100 1559212036 \
  +quit

Startparameter

Die Mod-Liste gehört nicht in die serverDZ.cfg, sondern in die Startzeile. Reihenfolge ist relevant: Framework-Mods wie CF zuerst, abhängige Mods danach.

./DayZServer \
  -config=serverDZ.cfg \
  -port=2302 \
  -BEpath=battleye \
  -profiles=profiles \
  -mod=@CF;@Community-Online-Tools;@BuilderItems \
  -servermod=@AdminLogTool \
  -dologs -adminlog -netlog -freezecheck

-mod= lädt clientseitige Mods, die jeder Spieler ebenfalls abonniert haben muss. -servermod= lädt Inhalte, die nur serverseitig laufen und beim Client keine Anforderung erzeugen. Im Panel trägst du diese Werte in den Startparametern ein; ein Neustart über die Konsole übernimmt sie.

Mod-XML zusammenführen

Mods, die neue Items mitbringen, liefern eigene types.xml-Dateien. Diese müssen in der cfgeconomycore.xml registriert werden, sonst spawnt kein einziges Item:

<economycore>
    <classes>
        <rootclass name="DefaultWeapon" />
    </classes>
    <defaults></defaults>
    <ce folder="custom_types">
        <file name="builderitems_types.xml" type="types" />
        <file name="custom_events.xml" type="events" />
    </ce>
</economycore>

Der Ordner custom_types liegt dabei innerhalb deiner Mission unter db/ beziehungsweise direkt im Missionsordner. Halte Mod-Inhalte immer getrennt von der Vanilla-types.xml – das erspart dir bei jedem Spielupdate stundenlanges Zusammenführen. Details zur Syntax dokumentiert das offizielle Bohemia-Wiki.



Loot und Economy: types.xml, events.xml und globals.xml

types.xml verstehen

Die types.xml ist das Herz des Loot-Systems. Jeder Eintrag beschreibt ein Item mit Zielmenge, Lebensdauer und Spawnregeln:

<type name="M4A1">
    <nominal>4</nominal>
    <lifetime>7200</lifetime>
    <restock>1800</restock>
    <min>2</min>
    <quantmin>-1</quantmin>
    <quantmax>-1</quantmax>
    <cost>100</cost>
    <flags count_in_cargo="0" count_in_hoarder="0"
           count_in_map="1" count_in_player="0" crafted="0" deloot="1"/>
    <category name="weapons"/>
    <usage name="Military"/>
</type>
  • nominal: angestrebte Anzahl in der Welt. Der Wert 0 deaktiviert das Item faktisch.
  • min: Untergrenze, ab der die Economy nachliefert.
  • lifetime: Sekunden, bis ein unberührtes Item despawnt.
  • restock: Wartezeit in Sekunden vor dem Nachspawnen; 0 bedeutet sofort.
  • usage: Zonentyp (Military, Police, Farm, Village, Industrial …).
  • tier: Loot-Stufe der Region, relevant für hochwertige Ausrüstung.

Wer den Loot spürbar erhöhen will, verändert nominal und min gemeinsam. Nur nominal anzuheben bringt wenig, weil der Nachschub erst unterhalb von min greift. Und übertreibe es nicht: Zehntausende persistente Objekte drücken die Server-FPS und verlängern jeden Neustart.

events.xml für dynamische Ereignisse

Helikopter-Wracks, Polizeiautos, Tierherden und Infizierten-Gruppen laufen über events.xml. Der Aufbau ist identisch aufgebaut wie bei Items, arbeitet aber mit nominal, min, max und einem lifetime-Wert pro Event:

<event name="StaticHeliCrash">
    <nominal>6</nominal>
    <min>4</min>
    <max>8</max>
    <lifetime>1800</lifetime>
    <restock>0</restock>
    <saferadius>500</saferadius>
    <distanceradius>800</distanceradius>
    <active>1</active>
</event>

Mehr Heli-Crashes bedeuten mehr PvP-Hotspots, aber auch mehr militärische Ausrüstung im Umlauf. Passe parallel die lifetime der dort spawnenden Waffen an, sonst kippt die Balance innerhalb weniger Tage.

globals.xml: Infizierte, Tiere und Aufräumzyklen

In globals.xml stehen die weltweiten Grenzwerte. Besonders relevant sind ZombieMaxCount, AnimalMaxCount, CleanupLifetimeDeadPlayer und TimeLogin. Ein reduzierter ZombieMaxCount entlastet die CPU sofort und ist der schnellste Hebel, wenn die Server-FPS bei voller Spielerzahl einbrechen.



Administration, Absicherung und Fehlersuche

Zugänge und Rechte sauber trennen

Setze für passwordAdmin eine lange, zufällige Zeichenkette und nutze sie nicht doppelt für RCON oder Panel. BattlEye bringt mit BEServer_x64.cfg einen eigenen RCON-Zugang mit – auch dort gehört ein separates Passwort hin. Wer mit mehreren Moderatoren arbeitet, legt im Pterodactyl-Panel Unterbenutzer mit begrenzten Rechten an, statt Hauptzugangsdaten weiterzugeben.

allowFilePatching = 0 sollte der Standard bleiben. Der Wert 1 erlaubt Clients das Laden ungeprüfter Dateien und wird nur für bestimmte Entwickler-Setups gebraucht.

Sicherungen vor jeder Änderung

Bevor du types.xml oder die Mission anfasst, ziehe eine Sicherung des kompletten mpmissions-Ordners inklusive storage_1. Genau dort liegen Basen, Fahrzeuge und Container. Eine defekte XML-Datei kann die Economy komplett blockieren – dann spawnt nichts mehr, und die einzige schnelle Rettung ist das Zurückspielen des letzten Stands. Automatische Sicherungen im Panel nehmen dir diesen Schritt weitgehend ab, ein manueller Snapshot vor größeren Eingriffen bleibt trotzdem sinnvoll.

Typische Fehlerbilder

SymptomWahrscheinliche UrsacheLösung
Server erscheint nicht in der ListesteamQueryPort blockiert oder falschPort 2305 (bzw. Spielport +3) prüfen und freigeben
Client wird beim Beitritt getrenntFehlende .bikey oder Mod-Version weicht abKeys kopieren, Mods auf identischen Stand bringen
Kein Loot in der WeltSyntaxfehler in types.xmlXML validieren, Log auf „Cannot open file" prüfen
Uhrzeit springt nach NeustartserverTimePersistent = 0Auf 1 setzen und neu starten
Basen nach Neustart verschwundenstorage-Ordner beschädigt oder instanceId geändertinstanceId zurücksetzen, Sicherung einspielen
Starke Desync bei KämpfenZu hohe Objektzahl oder NetzwerkreichweiteZombieMaxCount senken, networkRangeFar reduzieren

Logs auswerten

Mit -dologs -adminlog -netlog schreibt DayZ nach profiles/. Die script_*.log zeigt Fehler aus Mods, die DayZServer_x64_*.RPT enthält Startprobleme und Crashes. Wer über SSH arbeitet, verfolgt sie live:

tail -f profiles/script_2024-06-21_18-30-00.log

Im Panel reicht die Live-Konsole für dieselbe Aufgabe. Weitere Konfigurationsleitfäden zu anderen Survival-Titeln findest du im Fly-Serv Blog, und einen Überblick zu allen unterstützten Spielen unter Alle unsere Gameserver. Wer parallel eine Militär-Sim betreibt, findet vergleichbare Missionslogik beim Arma Reforger Server.



Fazit

Eine saubere DayZ Server Konfiguration ist Handarbeit: serverDZ.cfg für Regeln und Zeitfluss, Startparameter für Mods, XML-Dateien für Loot und Events. Ändere immer nur wenige Werte gleichzeitig, sichere vorher den Missionsordner und beobachte anschließend die Server-FPS im Log. So bleibt deine Welt spielbar, stabil und genau so hart, wie du sie haben willst.



FAQ

Warum spawnt nach dem Bearbeiten der types.xml gar kein Loot mehr?

In fast allen Fällen liegt ein XML-Syntaxfehler vor: ein nicht geschlossenes Tag, ein doppelter Item-Name oder ein ungültiges Zeichen. Die Economy bricht dann komplett ab. Prüfe die Datei mit einem XML-Validator und durchsuche die Logs im Ordner profiles/ nach Zeilen mit „Cannot open file" oder „unexpected". Nach der Korrektur ist ein vollständiger Neustart nötig.

Wie lange dauert ein Ingame-Tag bei serverTimeAcceleration = 8?

Der Multiplikator teilt die 24 Ingame-Stunden: Bei Wert 8 vergeht ein kompletter Zyklus in drei Echtzeitstunden. Mit zusätzlichem serverNightTimeAcceleration = 4 wird ausschließlich der Nachtabschnitt nochmals um Faktor 4 beschleunigt, sodass die Nacht rund 20 bis 25 Minuten dauert. Der zulässige Bereich beider Werte liegt zwischen 0.1 und 64.

Müssen Spieler alle Mods installiert haben, die ich lade?

Nur die Mods aus dem Parameter -mod=. Alles, was über -servermod= geladen wird, lä