Skip to content

Chapter 9.3: Kompletna dokumentacja serverDZ.cfg

Strona glowna | << Poprzedni: Struktura katalogow | Dokumentacja serverDZ.cfg | Dalej: Szczegolowy przewodnik po ekonomii lootu >>


Podsumowanie: Kazdy parametr w serverDZ.cfg udokumentowany z jego przeznaczeniem, prawidlowymi wartosciami i domyslnym zachowaniem. Ten plik kontroluje tozsamosc serwera, ustawienia sieciowe, reguly rozgrywki, przyspieszenie czasu i wybor misji.


Spis tresci


Format pliku

serverDZ.cfg uzywa formatu konfiguracji Bohemia (podobnego do C). Zasady:

  • Kazde przypisanie parametru konczy sie srednikiem ;
  • Lancuchy znakow sa ujete w podwojne cudzyslowy ""
  • Komentarze uzywaja // dla jednej linii
  • Blok class Missions uzywa nawiasow klamrowych {} i konczy sie };
  • Plik musi byc zakodowany w UTF-8 lub ANSI -- bez BOM

Brakujacy srednik spowoduje, ze serwer cicho zawiedzie lub zignoruje nastepne parametry.


Tozsamosc serwera

cpp
hostname = "My DayZ Server";         // Nazwa serwera widoczna w przegladarce
password = "";                       // Haslo do polaczenia (puste = publiczny)
passwordAdmin = "";                  // Haslo do logowania administratora przez konsole w grze
description = "";                    // Opis widoczny w szczegolach przegladarki serwerow
ParametrTypDomyslnieUwagi
hostnamestring""Wyswietlane w przegladarce serwerow. Maksymalnie ~100 znakow.
passwordstring""Zostaw puste dla serwera publicznego. Gracze musza to wpisac, aby dolaczyc.
passwordAdminstring""Uzywane z komenda #login w grze. Ustaw to na kazdym serwerze.
descriptionstring""Wieloliniowe opisy nie sa obslugiwane. Pisz krotko.

Siec i bezpieczenstwo

cpp
maxPlayers = 60;                     // Maksymalna liczba slotow dla graczy
verifySignatures = 2;                // Weryfikacja sygnatur PBO (tylko wartosc 2 jest obslugiwana)
forceSameBuild = 1;                  // Wymaganie pasujace wersji klient/serwer
enableWhitelist = 0;                 // Wlaczenie/wylaczenie bialej listy
disableVoN = 0;                      // Wylaczenie czatu glosowego
vonCodecQuality = 20;               // Jakosc dzwieku VoN (0-30)
guaranteedUpdates = 1;               // Protokol sieciowy (zawsze uzywaj 1)
ParametrTypPrawidlowe wartosciDomyslnieUwagi
maxPlayersint1-6060Wplywa na zuzycie RAM. Kazdy gracz dodaje ~50-100 MB.
verifySignaturesint22Tylko wartosc 2 jest obslugiwana. Weryfikuje pliki PBO na podstawie kluczy .bisign.
forceSameBuildint0, 11Gdy 1, klienci musza miec dokladnie taka sama wersje pliku wykonywalnego jak serwer. Zawsze trzymaj na 1.
enableWhitelistint0, 10Gdy 1, tylko Steam64 ID wymienione w whitelist.txt moga sie polaczyc.
disableVoNint0, 10Ustaw na 1, aby calkowicie wylaczyc czat glosowy w grze.
vonCodecQualityint0-3020Wyzsze wartosci oznaczaja lepsza jakosc glosu, ale wieksze zuzycie pasma. 20 to dobry kompromis.
guaranteedUpdatesint11Ustawienie protokolu sieciowego. Zawsze uzywaj 1.

Shard ID

cpp
shardId = "123abc";                  // Szesc znakow alfanumerycznych dla prywatnych shardow
ParametrTypDomyslnieUwagi
shardIdstring""Uzywany dla serwerow z prywatnym hive. Gracze na serwerach z tym samym shardId wspoldziela dane postaci. Zostaw puste dla publicznego hive.

Reguly rozgrywki

cpp
disable3rdPerson = 0;               // Wylaczenie kamery trzeciej osoby
disableCrosshair = 0;               // Wylaczenie celownika
disablePersonalLight = 1;           // Wylaczenie swiatla otoczenia gracza
lightingConfig = 0;                 // Jasnosc nocy (0 = jasniejsza, 1 = ciemniejsza)
ParametrTypPrawidlowe wartosciDomyslnieUwagi
disable3rdPersonint0, 10Ustaw na 1 dla serwerow tylko z pierwsza osoba. To najczestsze ustawienie "hardcore".
disableCrosshairint0, 10Ustaw na 1, aby usunac celownik. Czesto laczone z disable3rdPerson=1.
disablePersonalLightint0, 11"Personal light" to subtelna poswiate wokol gracza w nocy. Wiekszosc serwerow je wylacza (wartosc 1) dla realizmu.
lightingConfigint0, 100 = jasniejsze noce (widoczne swiatlo ksiezyca). 1 = zupelnie ciemne noce (wymaga latarki/noktowizji).

Czas i pogoda

cpp
serverTime = "SystemTime";                 // Czas poczatkowy
serverTimeAcceleration = 12;               // Mnoznik szybkosci czasu (0-24)
serverNightTimeAcceleration = 1;           // Mnoznik szybkosci nocy (0.1-64)
serverTimePersistent = 0;                  // Zapisywanie czasu miedzy restartami
ParametrTypPrawidlowe wartosciDomyslnieUwagi
serverTimestring"SystemTime" lub "RRRR/MM/DD/GG/MM""SystemTime""SystemTime" uzywa lokalnego zegara maszyny. Ustaw staly czas jak "2024/9/15/12/0" dla serwera z wiecznym dniem.
serverTimeAccelerationint0-2412Mnoznik czasu w grze. Przy 12 pelny cykl 24-godzinny trwa 2 godziny realne. Przy 1 czas jest rzeczywisty. Przy 24 pelny dzien mija w 1 godzine.
serverNightTimeAccelerationfloat0.1-641Mnozone przez serverTimeAcceleration. Przy wartosci 4 z przyspieszeniem 12, noc mija z predkoscia 48x (bardzo krotkie noce).
serverTimePersistentint0, 10Gdy 1, serwer zapisuje swoj zegar w grze na dysk i wznawia go po restarcie. Gdy 0, czas resetuje sie do serverTime przy kazdym restarcie.

Typowe konfiguracje czasu

Zawsze dzien:

cpp
serverTime = "2024/6/15/12/0";
serverTimeAcceleration = 0;
serverTimePersistent = 0;

Szybki cykl dnia/nocy (2-godzinne dni, krotkie noce):

cpp
serverTime = "SystemTime";
serverTimeAcceleration = 12;
serverNightTimeAcceleration = 4;
serverTimePersistent = 1;

Czas rzeczywisty dnia/nocy:

cpp
serverTime = "SystemTime";
serverTimeAcceleration = 1;
serverNightTimeAcceleration = 1;
serverTimePersistent = 1;

Wydajnosc i kolejka logowania

cpp
loginQueueConcurrentPlayers = 5;     // Gracze przetwarzani jednoczesnie podczas logowania
loginQueueMaxPlayers = 500;          // Maksymalny rozmiar kolejki logowania
ParametrTypDomyslnieUwagi
loginQueueConcurrentPlayersint5Ilu graczy moze sie ladowac jednoczesnie. Nizsze wartosci zmniejszaja skoki obciazenia serwera po restarcie. Zwieksz do 10-15, jesli twoj sprzet jest mocny, a gracze narzekaja na czas oczekiwania w kolejce.
loginQueueMaxPlayersint500Jesli tylu graczy juz czeka w kolejce, nowe polaczenia sa odrzucane. 500 jest odpowiednie dla wiekszosci serwerow.

Trwalosc i instancja

cpp
instanceId = 1;                      // Identyfikator instancji serwera
storageAutoFix = 1;                  // Automatyczna naprawa uszkodzonych plikow trwalosci
ParametrTypDomyslnieUwagi
instanceIdint1Identyfikuje instancje serwera. Dane trwalosci sa przechowywane w storage_<instanceId>/. Jesli uruchamiasz wiele serwerow na jednej maszynie, nadaj kazdemu inny instanceId.
storageAutoFixint1Gdy 1, serwer sprawdza pliki trwalosci przy starcie i zastepuje uszkodzone pustymi plikami. Zawsze zostawiaj na 1.

Wybor misji

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

Wartosc template musi dokladnie odpowiadac nazwie folderu wewnatrz mpmissions/. Dostepne misje vanillowe:

TemplateMapaWymagane DLC
dayzOffline.chernarusplusChernarusNie
dayzOffline.enochLivoniaTak
dayzOffline.sakhalSakhalTak

Niestandardowe misje (np. z modow lub map spolecznosci) uzywaja wlasnej nazwy szablonu. Folder musi istniec w mpmissions/.


Kompletny przykladowy plik

To kompletny domyslny serverDZ.cfg ze wszystkimi parametrami:

cpp
hostname = "EXAMPLE NAME";              // Nazwa serwera
password = "";                          // Haslo do polaczenia z serwerem
passwordAdmin = "";                     // Haslo do uzyskania uprawnien administratora

description = "";                       // Opis w przegladarce serwerow

enableWhitelist = 0;                    // Wlaczenie/wylaczenie bialej listy (wartosc 0-1)

maxPlayers = 60;                        // Maksymalna liczba graczy

verifySignatures = 2;                   // Weryfikacja plikow .pbo na podstawie plikow .bisign (tylko wartosc 2 jest obslugiwana)
forceSameBuild = 1;                     // Wymaganie pasujace wersji klient/serwer (wartosc 0-1)

disableVoN = 0;                         // Wlaczenie/wylaczenie czatu glosowego (wartosc 0-1)
vonCodecQuality = 20;                   // Jakosc kodeka czatu glosowego (wartosci 0-30)

shardId = "123abc";                     // Szesc znakow alfanumerycznych dla prywatnego shardu

disable3rdPerson = 0;                   // Przelaczanie widoku trzeciej osoby (wartosc 0-1)
disableCrosshair = 0;                   // Przelaczanie celownika (wartosc 0-1)

disablePersonalLight = 1;              // Wylaczenie swiatla osobistego dla wszystkich klientow
lightingConfig = 0;                     // 0 dla jasniejszej nocy, 1 dla ciemniejszej

serverTime = "SystemTime";             // Poczatkowy czas w grze ("SystemTime" lub "RRRR/MM/DD/GG/MM")
serverTimeAcceleration = 12;           // Mnoznik szybkosci czasu (0-24)
serverNightTimeAcceleration = 1;       // Mnoznik szybkosci nocy (0.1-64), rowniez mnozony przez serverTimeAcceleration
serverTimePersistent = 0;              // Zapisywanie czasu miedzy restartami (wartosc 0-1)

guaranteedUpdates = 1;                 // Protokol sieciowy (zawsze uzywaj 1)

loginQueueConcurrentPlayers = 5;       // Gracze przetwarzani jednoczesnie podczas logowania
loginQueueMaxPlayers = 500;            // Maksymalny rozmiar kolejki logowania

instanceId = 1;                        // ID instancji serwera (wplywa na nazwe folderu przechowywania)

storageAutoFix = 1;                    // Automatyczna naprawa uszkodzonej trwalosci (wartosc 0-1)

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

Parametry uruchomienia nadpisujace konfiguracje

Niektore ustawienia moga byc nadpisane parametrami wiersza polecen podczas uruchamiania DayZServer_x64.exe:

ParametrNadpisujePrzyklad
-config=Sciezka do pliku konfiguracyjnego-config=serverDZ.cfg
-port=Port gry-port=2302
-profiles=Katalog wyjsciowy profili-profiles=profiles
-mod=Mody po stronie klienta (rozdzielone srednikami)-mod=@CF;@VPPAdminTools
-servermod=Mody tylko serwerowe-servermod=@MyServerMod
-BEpath=Sciezka do BattlEye-BEpath=battleye
-dologsWlaczenie logowania--
-adminlogWlaczenie logowania administratora--
-netlogWlaczenie logowania sieci--
-freezecheckAuto-restart po zawieszeniu--
-cpuCount=Liczba rdzeni CPU do uzycia-cpuCount=4
-noFilePatchingWylaczenie patchowania plikow--

Pelny przyklad uruchomienia

batch
start DayZServer_x64.exe ^
  -config=serverDZ.cfg ^
  -port=2302 ^
  -profiles=profiles ^
  -mod=@CF;@VPPAdminTools;@MyMod ^
  -servermod=@MyServerOnlyMod ^
  -dologs -adminlog -netlog -freezecheck

Mody sa ladowane w kolejnosci podanej w -mod=. Kolejnosc zaleznosci ma znaczenie: jesli Mod B wymaga Modu A, wymien Mod A jako pierwszy.


Poprzedni: Struktura katalogow | Strona glowna | Dalej: Szczegolowy przewodnik po ekonomii lootu >>

Released under CC BY-SA 4.0 | Code examples under MIT License