Ten przewodnik wyjaśnia, jak edytować plik types.xml, aby dostosować ekonomię łupów na serwerze DayZ hostowanym w Legion Hosting. Dowiesz się, co kontroluje każdy atrybut, zobaczysz przykłady typowych scenariuszy strojenia oraz zrozumiesz, jak zweryfikować swoje zmiany. Aby poznać ogólną konfigurację serwera, zobacz Przewodnik konfiguracji serwera DayZ.
types.xml lub jakiegokolwiek innego pliku misji. Zmiany zapisane podczas działania serwera mogą zostać nadpisane lub zignorowane przy następnym wyłączeniu.
Lokalizacja types.xml
Ekonomia łupów w DayZ jest kontrolowana przez plik types.xml. Plik ten definiuje każdy przedmiot, który może pojawić się na mapie, oraz jak często każdy przedmiot się pojawia. Znajduje się w lokalizacji:
mpmissions/dayzOffline.chernarusplus/db/types.xml
Jeśli korzystasz z innej mapy (takiej jak Livonia), zastąp dayzOffline.chernarusplus nazwą folderu Twojej misji. Typowe nazwy folderów misji:
| Mapa | Folder misji |
|---|---|
| Chernarus | dayzOffline.chernarusplus |
| Livonia | dayzOffline.enoch |
Otwórz types.xml w edytorze plików GPanel lub pobierz go przez SFTP, edytuj lokalnie i prześlij ponownie.
Zrozumienie kluczowych atrybutów
Każdy przedmiot w types.xml jest zdefiniowany przez element <type>. Najważniejsze elementy podrzędne kontrolujące częstotliwość łupów to:
| Element | Opis |
|---|---|
nominal |
Docelowa liczba tego przedmiotu, którą serwer stara się utrzymać na mapie przez cały czas. Zwiększ tę wartość, aby przedmiot był częstszy. Ustaw na 0, aby całkowicie wyłączyć pojawianie się. |
min |
Minimalna liczba tego przedmiotu na mapie, zanim system uzupełniania zacznie generować więcej. Musi być mniejsza lub równa nominal. |
lifetime |
Jak długo (w sekundach) przedmiot pozostaje na ziemi, zanim zniknie, jeśli nie wejdzie się z nim w interakcję. Zwiększ tę wartość, aby przedmioty pozostawały dłużej przed zniknięciem. |
restock |
Czas (w sekundach) pomiędzy próbami pojawienia się. Ustawienie na 0 oznacza, że przedmiot pojawia się ponownie, gdy tylko liczba spadnie poniżej min. |
quantmin / quantmax |
Kontroluje zakres ilości, gdy przedmiot się pojawia (np. ilość amunicji w magazynku). Wartość -1 oznacza, że gra używa wartości domyślnej. |
cost |
Waga priorytetu używana przez Central Economy. Wyższe wartości sprawiają, że przedmiot pojawia się wcześniej podczas cyklu uzupełniania. Rzadkie przedmioty zazwyczaj mają wyższe wartości cost. |
Wyjaśnienie flag
Każdy element <type> zawiera element <flags>, który kontroluje, w jaki sposób ekonomia liczy istniejące instancje przedmiotu:
| Flaga | Opis |
|---|---|
count_in_map |
Licz przedmioty na ziemi do sumy nominal. |
count_in_cargo |
Licz przedmioty wewnątrz pojemników (plecaki, magazyny) do sumy. |
count_in_hoarder |
Licz przedmioty w skrytkach graczy i zakopanych pojemnikach do sumy. |
count_in_player |
Licz przedmioty noszone przez graczy online do sumy. |
crafted |
Ustaw na 1, jeśli ten przedmiot można wyłącznie wytworzyć i nie powinien pojawiać się naturalnie. |
deloot |
Ustaw na 1 dla łupu z Dynamic Event (rozbicia helikopterów itp.). |
Przykład: Wpis karabinu szturmowego AKM
<type name="AKM">
<nominal>5</nominal>
<lifetime>14400</lifetime>
<restock>0</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="0"/>
<category name="weapons"/>
<usage name="Military"/>
</type>
W tym przykładzie serwer stara się utrzymać 5 sztuk AKM na mapie przez cały czas (nominal=5). Gdy liczba spadnie poniżej 2 (min=2), nowe pojawiają się natychmiast (restock=0). Każdy AKM znika po 4 godzinach, jeśli nie zostanie ruszony (lifetime=14400 sekund). Liczone są tylko egzemplarze na ziemi (count_in_map=1), więc AKM-y w plecakach graczy lub zakopanych skrytkach nie są odejmowane od sumy.
Tagi Category i Usage
Tagi <category> i <usage> kontrolują, gdzie przedmioty pojawiają się na mapie:
<category name="weapons"/>-- klasyfikuje typ przedmiotu (broń, ubrania, narzędzia, jedzenie itp.)<usage name="Military"/>-- ogranicza pojawianie się do stref militarnych. Inne wartości obejmująTown,Village,Farm,Industrial,Hunting,School,Medic,Police,FirefighterorazCoast.
Możesz dodać wiele tagów <usage>, aby pozwolić przedmiotowi pojawiać się w kilku typach lokalizacji.
Typowe przykłady strojenia łupów
| Cel | Co zmienić |
|---|---|
| Sprawić, by przedmiot był częstszy | Zwiększ nominal i min |
| Wyłączyć pojawianie się przedmiotu | Ustaw nominal na 0 i min na 0 |
| Sprawić, by przedmioty trwały dłużej przed zniknięciem | Zwiększ lifetime (wartość w sekundach; 3600 = 1 godzina) |
| Przyspieszyć ponowne pojawianie się przedmiotu po podniesieniu | Zmniejsz restock lub ustaw na 0 |
| Sprawić, by rzadki łup był liczony nawet gdy gromadzony | Ustaw count_in_hoarder="1" i count_in_cargo="1" |
| Pozwolić przedmiotowi pojawiać się w miastach i strefach militarnych | Dodaj zarówno <usage name="Town"/>, jak i <usage name="Military"/> |
Weryfikacja zmian
types.xml musi być poprawnym kodem XML. Pojedynczy niezamknięty tag, niedopasowany nawias lub przypadkowy znak uniemożliwi serwerowi załadowanie misji i może spowodować jego awarię przy uruchomieniu. Podczas lokalnej edycji tego pliku przed przesłaniem używaj edytora tekstu z walidacją XML (takiego jak Notepad++ lub VS Code).
Typowe błędy XML, na które należy uważać:
- Zapomnienie o zamknięciu elementu
<type>za pomocą</type> - Niedopasowane cudzysłowy w wartościach atrybutów (np.
name="AKMbez zamykającego cudzysłowu) - Przypadkowe znaki lub dodatkowe nawiasy ostrokątne
- Przypadkowe usunięcie deklaracji XML na początku pliku
Interakcje modów z types.xml
Jeśli korzystasz z modów dodających nowe przedmioty, mody te mogą zawierać własne wpisy types.xml w folderze db/ moda. Jeśli Twoje zmiany w domyślnym types.xml nie wydają się działać dla przedmiotów z modów, sprawdź, czy mod nie nadpisuje wpisu. Może być konieczne edytowanie własnego pliku types.xml moda.
Powiązane artykuły
- Przewodnik konfiguracji serwera DayZ -- konfiguracja serverDZ.cfg i sposób łączenia się graczy
- Instalacja modów DayZ -- mody Steam Workshop, kolejność ładowania i pliki kluczy
- Rozwiązywanie problemów DayZ -- typowe błędy, problemy z BattlEye i konfiguracja RCON
- Jak przesyłać pliki przez SFTP