Enshrouded-mods installeren op een dedicated server

Enshrouded heeft geen officiële modondersteuning, maar de communitymod loader EML draait op een dedicated server, en de meeste wijzigingen gelden voor elke speler zonder dat die iets installeren. Hier lees je hoe het werkt, hoe je hem zelf installeert, hoe je mods weer verwijdert zonder wijzigingen achter te laten, en hoe het werkt op een Flux-server.

Wat EML is

EML, de Enshrouded Mod Loader, is een open-sourceproject van Brabb3l (kfc-parser op GitHub). Het wordt geleverd als een bestand genaamd dbghelp.dll. Geplaatst naast enshrouded_server.exe wordt het door de server geladen bij de start, draait het elke mod in de mods-map en schrijft het resultaat naar de gamedata voordat de wereld laadt. Mods zijn geschreven in Lua, en elke mod is een map (of zip) met een mod.json en een src-map.

Vandaag verandert EML de gamedata voordat de server start: stapelgroottes, kistslots, crafting- en lootaantallen, uithoudingsvermogen en vergelijkbare waarden. Het voegt geen commando's, chat of live kaart toe. Enshrouded is grotendeels server-autoritair, dus een mod die op de server is geïnstalleerd, geldt voor iedereen die joint. Sommige mods veranderen ook wat een speler op zijn eigen scherm ziet; die moeten op de game van elke speler worden geïnstalleerd, en hun Nexus-pagina vermeldt dat.

EML-mods en patchers zijn niet hetzelfde

SoortHoe het werktOp een dedicated server
EML-modEen map met mod.json en Lua, die EML bij elke start laadtInstalleer EML één keer, en voeg daarna mods vrijuit toe of verwijder ze
PatcherEen tool die je op je pc draait en die enshrouded_server.kfc herschrijftWordt ongedaan gemaakt door elke Steam-update of bestandscontrole, dus het moet opnieuw worden toegepast
Cheattabel, Reshade-presetDraait op de eigen pc van een spelerNiets te installeren op de server
WereldsaveEen wereldbestand en het bijbehorende _info-bestandGeüpload in de savegame-map, geen mod

EML installeren op een self-hosted server

  1. Stop de server en maak een backup van de savegame-map.
  2. Download dbghelp.dll van de nieuwste release op de kfc-parser GitHub-pagina.
  3. Zet dbghelp.dll in de servermap, naast enshrouded_server.exe.
  4. Maak in dezelfde map een map aan met de naam mods en zet elke mod erin: ofwel de map van de mod (met mod.json direct erin) ofwel zijn zip, zolang mod.json bovenaan in de zip staat.
  5. Op Linux met Wine of Proton start je de server met WINEDLLOVERRIDES="dbghelp=native,builtin" voor het commando. Zonder dit laadt Wine zijn eigen dbghelp en draait EML nooit, zonder ergens een foutmelding.
  6. Start de server. Een eml.json-bestand verschijnt in de servermap zodra EML is geladen.

EML stopt bij het eerste probleem dat het tegenkomt: een mod.json die het niet kan lezen, twee mods met dezelfde id, of een Lua-fout in een mod. Dan opent het een foutvenster, en een server zonder scherm komt simpelweg nooit op. Als de server na het toevoegen van mods blijft hangen bij het starten, lees dan het eigen log van EML, een bestand dat eindigt op eml.log in de logmap naast de server; daarin staan de mod en de fout. Of haal de nieuwste mod eruit en probeer het opnieuw.

Mods netjes verwijderen

EML schrijft zijn wijzigingen in enshrouded_server.kfc en bewaart het origineel ernaast als enshrouded_server.kfc.bak. Het verwijderen van de mods en dbghelp.dll stopt nieuwe wijzigingen, maar de wijzigingen die al zijn weggeschreven, blijven staan. Om terug te gaan naar het gewone spel verwijder je dbghelp.dll en de mods, en laat je Steam de bestanden controleren: app_update 2278520 validate in SteamCMD zet de originele spelgegevens terug.

Mods op een Flux-server

Elke Enshrouded-server op Flux heeft EML ingebouwd, dus je hoeft alleen de mods zelf te downloaden:

  1. Download het zip-bestand van de mod van Nexus Mods.
  2. Open je server in het dashboard, ga naar het tabblad Mods en kies het zip-bestand. Archieven met de mod in een map, meerdere mods tegelijk of een kopie van EML zijn allemaal prima: elke mod wordt afzonderlijk toegevoegd, en alles wat EML zou weigeren wordt genoemd voordat het de server bereikt.
  3. Herstart de server. Op het tabblad Mods zie je welke mods zijn geladen en hoeveel wijzigingen EML heeft gedaan.

De mods staan in een eigen map die met de wereld meereist, dus ze komen mee als de server naar zijn standby-node verhuist. Een mod uitzetten, verwijderen of alle mods uitzetten werkt pas bij de volgende herstart, en de server zet de originele spelgegevens zelf terug wanneer mods worden verwijderd. Als een mod de server laat stoppen, start hij opnieuw zonder mods en noemt het tabblad Mods de mod die faalde, zodat een kapotte mod een herstart kost en geen hele avond.

Mods en gameupdates

Mods worden gemaakt door de community, niet door Keen Games, en een gameupdate kan de data veranderen die een mod verwacht. Controleer na een grote update, ook Enshrouded 1.0, op de pagina van elke mod of er een passende versie is voordat je hem weer aanzet. Als de server niet start met een mod na een update, is die mod het eerste wat je eruit haalt.

Veelgestelde vragen

Kun je mods gebruiken op een Enshrouded-dedicated server?

Ja, via EML, de communitymatige Enshrouded Mod Loader. Keen Games biedt er geen officiële ondersteuning voor, maar hij draait op een dedicated server. Omdat het spel grotendeels server-authoritative is, gelden de meeste wijzigingen voor elke speler die meedoet.

Moeten spelers de mods ook installeren?

Meestal niet. Een mod die op de server is geïnstalleerd, geldt voor iedereen voor alles wat de server bepaalt, zoals stapelgroottes, kistslots of loot. Een paar mods veranderen ook wat een speler op zijn eigen scherm ziet. Die vermelden op hun Nexus-pagina dat spelers ze ook nodig hebben.

Waarom start mijn Enshrouded-server niet na het toevoegen van een mod?

EML stopt bij het eerste probleem dat het tegenkomt, zoals een ongeldige mod.json, twee mods met hetzelfde id of een Lua-fout, en opent een foutvenster dat een server zonder scherm niet kan tonen. Haal de nieuwste mod eruit en start opnieuw. Op Flux doet de server dit zelf: hij start zonder mods en het tabblad Mods noemt de mod die is mislukt.

Hoe verwijder ik mods van een Enshrouded-server?

Verwijder dbghelp.dll en de mods-map en voer daarna app_update 2278520 validate uit in SteamCMD. EML schrijft zijn wijzigingen in de gamedata, dus alleen de bestanden verwijderen laat ze staan; de bestandscontrole zet het origineel terug. Een Flux-server doet dit zelf wanneer mods worden verwijderd.

Werkt EML op een Enshrouded-server onder Linux?

Ja, onder Wine of Proton, als de server wordt gestart met WINEDLLOVERRIDES="dbghelp=native,builtin". Zonder die instelling gebruikt Wine zijn eigen dbghelp en laadt EML stilletjes nooit.

Gerelateerde Enshrouded-gidsen