Jak zainstalować mody Enshrouded na serwerze dedykowanym

Enshrouded nie ma oficjalnego wsparcia modów, ale społecznościowy mod loader EML działa na dedykowanym serwerze, a większość jego zmian dotyczy każdego gracza bez instalowania czegokolwiek. Oto jak to działa, jak zainstalować go samodzielnie, jak ponownie usunąć mody bez pozostawiania zmian i jak działa na serwerze Flux.

Czym jest EML

EML, Enshrouded Mod Loader, to projekt open source autorstwa Brabb3l (kfc-parser na GitHub). Dostarczany jest jako plik dbghelp.dll. Umieszczony obok enshrouded_server.exe jest ładowany przez serwer przy starcie, uruchamia każdy mod z folderu modów i zapisuje wynik do danych gry, zanim świat się załaduje. Mody są napisane w Lua, a każdy to folder (lub zip) zawierający mod.json i folder src.

Dziś EML zmienia dane gry przed startem serwera: rozmiary stosów, sloty skrzyń, wartości craftingu i łupów, wytrzymałość i podobne. Nie dodaje poleceń, czatu ani żywej mapy. Enshrouded jest w dużej mierze autorytatywny po stronie serwera, więc mod zainstalowany na serwerze działa dla każdego, kto dołączy. Niektóre mody zmieniają też to, co gracz widzi na własnym ekranie; te trzeba zainstalować w grze każdego gracza, a ich strona na Nexus mówi o tym wprost.

Mody EML i patchery to nie to samo

RodzajJak to działaNa serwerze dedykowanym
Mod EMLFolder z plikiem mod.json i kodem Lua, wczytywany przez EML przy każdym uruchomieniuZainstaluj EML raz, a potem dodawaj lub usuwaj mody swobodnie
PatcherNarzędzie uruchamiane na PC, które przepisuje enshrouded_server.kfcCofane przy każdej aktualizacji Steama lub sprawdzeniu plików, więc trzeba to zastosować ponownie
Tabela cheatów, preset ReshadeDziała na własnym PC graczaNic nie trzeba instalować na serwerze
Zapis świataPlik świata i jego plik _infoWgrywany do folderu zapisów, a nie jako mod

Instalacja EML na serwerze self-hostowanym

  1. Zatrzymaj serwer i zrób backup folderu zapisów.
  2. Pobierz dbghelp.dll z najnowszego wydania na stronie GitHub kfc-parser.
  3. Umieść dbghelp.dll w folderze serwera, obok enshrouded_server.exe.
  4. Utwórz folder o nazwie mods w tym samym miejscu i umieść w nim każdy mod: albo jego folder (z mod.json bezpośrednio w środku), albo jego zip, pod warunkiem że mod.json znajduje się na najwyższym poziomie zipa.
  5. Na Linuksie z Wine lub Proton uruchom serwer z WINEDLLOVERRIDES="dbghelp=native,builtin" przed poleceniem. Bez tego Wine ładuje własny dbghelp i EML nigdy nie działa, bez żadnego błędu.
  6. Uruchom serwer. Gdy EML się załaduje, w folderze serwera pojawi się plik eml.json.

EML zatrzymuje się na pierwszym napotkanym problemie: plik mod.json, którego nie może odczytać, dwa mody z tym samym id albo błąd Lua w dowolnym modzie. Wtedy otwiera okno błędu, a serwer bez ekranu po prostu nigdy się nie uruchamia. Jeśli serwer zawiesza się przy starcie po dodaniu modów, przeczytaj własny log EML, plik kończący się na eml.log w folderze logs obok serwera, który wskazuje mod i błąd; albo usuń najnowszy mod i spróbuj ponownie.

Czyste usuwanie modów

EML zapisuje swoje zmiany w enshrouded_server.kfc i zostawia obok oryginał jako enshrouded_server.kfc.bak. Usunięcie modów i dbghelp.dll zatrzymuje nowe zmiany, ale te, które już zostały zapisane, pozostają. Aby wrócić do zwykłej gry, usuń dbghelp.dll i mody, a potem pozwól Steamowi sprawdzić pliki: app_update 2278520 validate w SteamCMD przywraca oryginalne dane gry.

Mody na serwerze Flux

Każdy serwer Enshrouded na Flux ma wbudowany EML, więc nie trzeba pobierać nic poza samymi modami:

  1. Pobierz zip moda z Nexus Mods.
  2. Otwórz swój serwer w panelu, przejdź do zakładki Mody i wybierz plik zip. Archiwa z modem w folderze, kilka modów naraz albo kopia EML są w porządku: każdy mod jest dodawany osobno, a wszystko, co EML by odrzucił, zostaje nazwane, zanim trafi na serwer.
  3. Uruchom ponownie serwer. Karta Mody pokazuje, które mody się załadowały i ile zmian wprowadził EML.

Mody znajdują się we własnym folderze, który podróżuje razem ze światem, więc przechodzą na zapasowy węzeł, jeśli serwer się przeniesie. Wyłączenie moda, usunięcie go albo wyłączenie wszystkich zacznie działać przy następnym restarcie, a serwer sam przywraca oryginalne dane gry, gdy mody zostaną zdjęte. Jeśli mod zatrzyma serwer, ten uruchomi się ponownie bez modów, a zakładka Mody wskaże, który mod zawiódł, więc zepsuty mod kosztuje restart, a nie cały wieczór.

Mody i aktualizacje gry

Mody tworzy społeczność, a nie Keen Games, a aktualizacja gry może zmienić dane, których oczekuje mod. Po dużej aktualizacji, także Enshrouded 1.0, sprawdź stronę każdego moda pod kątem wersji zgodnej z grą, zanim go znowu włączysz. Jeśli serwer nie wystartuje z modem po aktualizacji, to właśnie ten mod wyjmij w pierwszej kolejności.

Najczęściej zadawane pytania

Czy można używać modów na dedykowanym serwerze Enshrouded?

Tak, przez EML, społecznościowy Enshrouded Mod Loader. Nie ma oficjalnego wsparcia od Keen Games, ale działa na dedykowanym serwerze, a ponieważ gra jest w dużej mierze autorytatywna po stronie serwera, większość jego zmian dotyczy każdego gracza, który dołączy.

Czy gracze też muszą zainstalować mody?

Zazwyczaj nie. Mod zainstalowany na serwerze działa dla wszystkich w tym, co decyduje serwer, na przykład rozmiary stosów, sloty w skrzyniach czy łupy. Kilka modów zmienia też to, co gracz widzi na własnym ekranie, i te mówią na swojej stronie Nexus, że gracze też muszą je mieć.

Dlaczego mój serwer Enshrouded nie startuje po dodaniu moda?

EML zatrzymuje się na pierwszym napotkanym problemie, na przykład na nieprawidłowym mod.json, dwóch modach z tym samym id albo błędzie Lua, i otwiera okno błędu, którego serwer bez ekranu nie może pokazać. Wyjmij najnowszy mod i uruchom ponownie. Na Flux serwer robi to sam: startuje bez modów, a karta Mody wskazuje mod, który się nie powiódł.

Jak usunąć mody z serwera Enshrouded?

Usuń dbghelp.dll i folder modów, a potem uruchom app_update 2278520 validate w SteamCMD. EML zapisuje swoje zmiany w danych gry, więc samo usunięcie plików zostawia je na miejscu; sprawdzenie plików przywraca oryginał. Serwer Flux robi to sam, gdy mody zostaną usunięte.

Czy EML działa na serwerze Enshrouded na Linuksie?

Tak, pod Wine lub Proton, jeśli serwer zostanie uruchomiony z WINEDLLOVERRIDES="dbghelp=native,builtin". Bez tego ustawienia Wine używa własnego dbghelp i EML nigdy się po cichu nie ładuje.

Powiązane przewodniki: Enshrouded