RE:NODE

Reset světa Valheim serveru se zachováním postav

Text: Tým RE:NODE
11 min čtení


Pro nový svět ve Valheimu nemusíš nic mazat a postavu tím ztratit nemůžeš. Postavy žijí na počítači každého hráče; server drží jen svět. Změň jméno v -world na takové, které ještě neexistuje, restartuj a server vedle starého světa vygeneruje nový. Všichni se přihlásí se stejnou postavou, stejným inventářem a stejnými dovednostmi, stojící u obětních kamenů mapy, kterou nikdo neprozkoumal. Skutečná práce je jen rozhodnout, co se starým světem - archivuj ho pořádně, protože „už se nikdy nevrátíme“ vydrží zhruba měsíc - a domluvit se ve skupině, jestli jsou v novém světě vítané zkušené postavy.

Kde skutečně žijí světy a postavy#

Většina zmatků kolem resetu vychází z předpokladu, že server ukládá hráče. Neukládá. Dedikovaný server Valheimu ukládá světy a tři soubory se seznamy, a o lidech, kteří se k němu připojují, nic dalšího.

CoKde jeSoubory
SvětServer, ve složce worlds_localName.db, Name.fwl
Předchozí uložení a automatické zálohyServer, vedle světaName.db.old, Name_backup_auto-...
Seznamy adminů, banů a povolenýchServer, v adresáři uloženíadminlist.txt, bannedlist.txt, permittedlist.txt
PostavyPC každého hráčecharacters_local/<name>.fch

Na Windows jsou postavy hráče tady:

code
%USERPROFILE%\AppData\LocalLow\IronGate\Valheim\characters_local\

Postava uložená do Steam Cloudu leží místo toho ve složce characters a synchronizuje ji Steam. V obou případech server soubor nikdy nevidí; klient pošle stav postavy při připojení. To je celý důvod, proč reset nemůže na postavy sáhnout - a, jak je popsáno níže, proč server nemůže hráči zabránit, aby do čerstvého světa přivedl postavu v plné výbavě. Umístění souborů a uložení ve Valheimu uvádí všechny cesty pro oba operační systémy.

Co si postava do nového světa přenese#

Protože soubor postavy patří hráči, téměř vše o postavě přesun přežije. Několik věcí je uloženo u postavy, ale zařazeno pod konkrétní svět, takže se nepřenášejí.

Přenáší seNepřenáší se
Inventář a nasazená výbavaProzkoumaná mapa (ukládá se pro každý svět)
Dovednosti a jejich úrovněMísto obnovení u postele (ukládá se pro každý svět)
Známé recepty a objevené materiályZabití bossů jako postup světa (globální klíče)
Vzhled, vousy a vlasyStavby, truhly a vše v nich
Vybraná síla ForsakenPortály a jejich štítky
Jídlo a stavové efekty při odhlášeníZboží obchodníků odemčené postupem světa

Položky vázané na svět jsou svázané s interním ID světa, ne s jeho jménem. Smaž svět jménem Midgard, vygeneruj nový se stejným jménem a pořád dostaneš prázdnou mapu a start u kamenů, protože nový svět má nové ID. Vrať se později ke starému světu a tvoje mapa i postel tam zase jsou, protože je postava měla uložené pod starým ID.

Řádek o globálních klíčích je ten, který mění hru. Zabití bossů na serveru je stav světa - jedno zabití odemkne věci všem, jak vysvětluje postup po bossech na sdílených serverech. Nový svět začíná bez klíčů, takže nájezdy závislé na postupu světa a pozdější zboží Haldora se s ním resetují, i když hráči sami zabili všechny bossy. Pokud tvůj server běží s -setkey playerevents, nájezdy se vybírají podle postupu každého hráče, a ten patří postavě, takže zkušený hráč v čerstvém světě může vyvolat nájezdy daleko přesahující to, čeho nový svět dosáhl.

Nové postavy, nebo přenos: rozhodni se předem#

Technická část zabere pět minut. Rozhodnutí chce rozhovor a vyplatí se ho vést před restartem, ne poté, co se někdo první den objeví v brnění z Ashlands.

Obvyklé možnosti:

  • Všichni udělají novou postavu. Nejčistší restart. Na serveru nestojí nic; každý hráč prostě v menu vytvoří postavu. Staré postavy zůstanou na jejich PC pro starý svět.
  • Přenést všechno. Dobré, když je důvod resetu technický - poškozený svět, seed, který se nikomu nelíbil, změna balíčku modů - a ne touha hrát znovu. Skupina přijde silná a staví rychle.
  • Přenést dovednosti, nechat výbavu. Hráči před přepnutím vyprázdní inventáře do truhly ve starém světě. Dovednosti a recepty zůstanou; nový svět se přesto postupuje od dřeva a pazourku. Spoléhá se to jen na důvěru.
  • Nový svět, nová pravidla. Reset je dobrá chvíle změnit modifikátory světa. Pokud chtějí zkušení výzvu, udělá -preset hard nebo -modifier combat veryhard v novém světě víc než prosba, ať začnou nazí. Modifikátory světa a presety je vypisují.

Správná archivace starého světa#

Nejdřív archivuj, pak přepni. Starému světu přepnutí samo nehrozí - změna jména nechá jeho soubory nedotčené - ale složka serveru je místo, kde se soubory za měsíce omylem mažou, a jeho automatické zálohy se časem ořežou, pokud někdo jméno znovu použije.

Svět na disku je víc než dva soubory. Pro svět jménem Midgard seber ze složky worlds_local všechny tyto:

code
Midgard.dbMidgard.fwlMidgard.db.oldMidgard.fwl.oldMidgard_backup_auto-20261011093000.dbMidgard_backup_auto-20261011093000.fwl

Soubory .db a .fwl bez přípony jsou svět. Dvojice .old je předchozí uložení, ke kterému se vrátíš, pokud se to poslední ukáže jako poškozené. Dvojice backup_auto jsou rotace, kterou server drží podle -backups. Přesný formát časového razítka v těchto jménech se mezi verzemi měnil; přiřazuj je podle jména světa na začátku.

  1. Zastav server čistě a počkej na World saved a ukončení procesu. Svět zkopírovaný za běhu může být uprostřed zápisu.
  2. Udělej backup z panelu, pokud ho hosting má, a zamkni ho, pokud jde zamknout, aby ho rotace nikdy neodstranila.
  3. Stáhni výše uvedené soubory přes SFTP nebo file manager a ulož je někam mimo server: na svůj PC, sdílený disk, objektové úložiště. Backupy a poškození světa vysvětlují, proč backup na stejném disku jako svět není backup.
  4. Zapiš si seed. Vyber svět v seznamu světů ve hře na libovolném PC, které soubory má, a seed se zobrazí. Dej ho do názvu archivu nebo do poznámky vedle něj.
  5. Nech soubory, kde jsou, nebo je přesuň do podsložky jako worlds_local/archive/. Server načítá jen svět určený v -world, takže staré soubory tam nikomu nevadí.

Na serveru RE:NODE lze backupy zamknout proti rotaci, stáhnout z panelu a jsou uloženy mimo stroj, který chrání. Pozor, smazání serveru smaže i jeho backupy, včetně zamčených - přežije ho jen kopie stažená v kroku 3.

Přepnutí na nový svět#

Po archivaci je přepnutí jedno nastavení. Vyber nové jméno světa: krátké, písmena a číslice, bez mezer, a jiné než staré.

bash
# Před./valheim_server.x86_64 -nographics -batchmode -name "Longship Crew" \    -port 2456 -world "Midgard" -password "herring-barrel-42" -crossplay# Po: mění se jen jméno světa./valheim_server.x86_64 -nographics -batchmode -name "Longship Crew" \    -port 2456 -world "Midgard2" -password "herring-barrel-42" -crossplay

Na hostingu s panelem je jméno světa pole na záložce Startup; změň ho tam. Potom:

  1. Spusť server a sleduj log.
  2. Ověř, že vygeneroval svět pod novým jménem a nenačetl starý.
  3. Připoj se, zkontroluj, že stojíš u obětních kamenů a mapa je prázdná.
  4. Dej vědět skupině. Hráči na své straně nemusí nic dělat - jméno serveru, adresa, heslo i port zůstávají.

Pokud pro nový svět chceš konkrétní seed místo náhodného, nenech ho generovat server. Vytvoř svět lokálně s tím seedem a před krokem 1 nahraj dvojici souborů pod novým jménem. Průvodce seedy ve Valheimu popisuje hledání seedu a jeho dostání na server.

Použití stejného jména světa

Některé skupiny chtějí, aby nový svět zachoval staré jméno, třeba protože na něj odkazují skripty nebo backupy. Jde to, s jedním krokem navíc: staré soubory musí být před startem serveru pryč ze worlds_local, jinak je server načte. Přesuň nebo přejmenuj každý soubor ze seznamu výše, včetně dvojic .old a backup_auto, a pak spusť. Nechat staré automatické zálohy vedle nového světa stejného jména znamená pozvat někoho, aby později v panice obnovil špatnou.

Nové jméno je bezpečnější, proto je to výchozí rada.

Proč prostě nepřesměrovat -savedir jinam

-savedir přesouvá celý adresář uložení a žijí v něm tři soubory se seznamy. Start s prázdným adresářem dá čerstvý svět a také prázdný adminlist.txt, prázdný bannedlist.txt a prázdný permittedlist.txt. Tvoji admini přijdou o práva, zabanovaní hráči se mohou vrátit a server s allow listem se otevře každému, kdo zná heslo. Pokud -savedir měníš, nejdřív zkopíruj ty tři soubory. Průvodce soubory adminlist, bannedlist a permittedlist popisuje jejich formát.

Návrat, nebo běh obou světů#

Jeden server běží s jedním světem naráz. Pro návrat ke starému světu zastav server, nastav jméno světa zpět na Midgard a spusť. Postavy najdou svou starou mapu a postel, protože byly celou dobu uložené pod ID starého světa. Vše, co si přenesly do nového světa, ale půjde s nimi, a co v novém světě nechaly, tam zůstane - inventář patří postavě, ne světu.

Přepínání tam a zpět je na víkend v pořádku; jako zvyk usnadňuje duplikaci předmětů, protože se postava může naplnit v jednom světě a vyprázdnit do truhel v druhém. Pokud chce skupina trvale dva světy, čisté řešení jsou dva servery, každý se svým jménem, portem a adresářem uložení. Dvě instance na jednom stroji potřebují hodnoty -port lišící se alespoň o dva, protože každá používá svůj port a ten následující.

Když se s resetem mění balíček modů#

Resety často přicházejí s novým seznamem modů - jiný overhaul, nový balíček obsahu. Postavy přenášejí předměty a předměty z modu, který už není nainstalovaný, jsou známý zdroj problémů: mizí z inventářů, nebo v nejhorším případě hra postavu nenačte. Před změnou balíčku by si hráči, kteří chtějí postavy zachovat, měli modové předměty nejdřív uložit ve starém světě. Postavy bez modů do světa s mody jít mohou; naopak předměty mizí.

Udělej seznam modů serveru konečný dřív, než se k novému světu připojí první hráč, a dej skupině přesný profil k instalaci - profily r2modman pro skupinu jsou nejméně bolestivá cesta. Hráči s neodpovídající sadou jsou vyhozeni, jak popisují vyhazování kvůli neshodě verzí modů.

Vynucení čistého začátku pomocí postav na serveru#

Pokud se musí přenos zabránit, a ne jen odrazovat, musí postavy vlastnit server. Vanilla Valheim to neumí, mody ano. ServerCharacters (od Smoothbrain, na Thunderstore) je obvyklá volba: ukládá data postav na serveru, takže hráči používají postavu, která existuje jen tam, a nemohou přinést jinou. Musí být nainstalován na serveru i na každém klientovi, což vylučuje hráče na Xboxu, a mění fungování backupů, protože postavy jsou teď součástí souborů serveru. Aktuální verzi a nastavení si přečti na stránce modu - aktualizuje se s hrou a podrobnosti se mění.

Pro většinu soukromých skupin je to zbytečné. Stačí rozhovor a truhla ve starém světě.

Řešení problémů#

Server načetl starý svět. Nové jméno odpovídá existujícímu souboru, třeba z dřívějšího testu. Zkontroluj v logu, jaké jméno načetl, a podívej se do worlds_local.

Hráč říká, že jeho postava zmizela. Jeho postava je na jeho PC. Ať se podívá na obrazovku výběru postavy; pokud nedávno měnil PC nebo přeinstaloval, může být ve Steam Cloudu místo v characters_local, nebo nezálohovaná vůbec. Server nepomůže, protože ji nikdy neměl.

Admini po resetu přišli o práva. Adresář uložení se změnil, takže adminlist.txt je nový, prázdný soubor. Zkopíruj staré soubory se seznamy.

Nový svět má obtížnost starého. Argumenty -preset, -modifier a -setkey jsou stále na příkazové řádce, takže platí pro jakýkoli načtený svět. Pokud se má nový svět hrát jinak, změň je nebo odstraň spolu s jménem světa.

FAQ#

Smaže reset světa naše postavy?

Ne. Postavy jsou uložené na počítači každého hráče a server je nikdy nedrží. Nový svět na nich nic nemění, jen jejich mapa a místo obnovení u postele tam začínají prázdné.

Můžu zachovat stejné jméno serveru, heslo a IP?

Ano. Mění se jen -world. Hráči se připojují přesně jako dřív a seznam serverů ukazuje stejný záznam.

Přenášejí se síly bossů?

Síla vybraná v okamžiku přepnutí putuje s postavou. Postup bossů pro svět ne: nový svět nemá žádné klíče bossů, dokud je tam někdo nezabije.

Můžu smazat jen stavby a nechat terén?

Ne vanilla nástroji. Stavby i úpravy terénu jsou v souboru .db. Nový svět na stejném seedu ti dá stejný nedotčený terén bez jakýchkoli staveb.

Jak zabránit lidem, aby do nového světa nosili výbavu z pozdní hry?

Požádej je, ať ji nejdřív uloží, nebo vyžaduj nové postavy. Vynucení potřebuje mod pro postavy na serveru, protože vanilla server přijme jakýkoli soubor postavy.