RE:NODE

Limit hráčů ve Valheimu: strop 10 lidí a větší skupiny

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


Vanilla Valheim dedicated server přijme najednou deset hráčů a jedenáctého odmítne s hláškou „Server is full“. Neexistuje žádný startovní argument, konfigurační soubor ani nastavení u hostingu, které by to změnilo, protože číslo je zapsané přímo ve hře. Módy ho zvednout umí a skupiny po patnácti nebo dvaceti lidech takhle opravdu hrají, ale cena je reálná: víc paměti, víc provozu, nepřátelé, kteří se škálují zvláštním způsobem, a mnohem větší šance, že jedno špatné připojení zkazí večer všem. Tento článek vysvětluje, proč strop existuje, co se nad ním doopravdy kazí, jak fungují módy, které ho zvedají, a s čím má větší skupina počítat, než nějaký nainstaluje.

Obecné nastavení serveru - porty, startovní argumenty, uložené hry - najdeš v průvodci Valheim dedicated serverem. Tento článek předpokládá, že server už běží a vaše parta z něj vyrostla.

Odkud se bere strop 10 hráčů#

Limit sídlí v síťovém kódu serveru. Když se klient připojí, pošle informace o svém peeru a server před přijetím zkontroluje, kolik hráčů už ve světě je. Při deseti připojení odmítne se stavem „full“, který klient zobrazí jako Server is full. Žádný startovní argument dedicated serveru tuto kontrolu neovlivňuje, a proto hledání -maxplayers nic nenajde: takový argument neexistuje.

Iron Gate zvolil desítku z důvodů, které jsou vidět, jakmile pochopíš, jak hra rozděluje práci:

  • Vlastnictví zón. Svět je rozdělen na zóny a každou zónu, u které jsou hráči, simuluje jeden klient - obvykle ten, kdo do ní vešel první. Server ukládá svět a přeposílá stav, ale velká část skutečné simulace běží na počítačích hráčů. Každý další hráč je další stroj, který vlastní zóny, a další spojení, které musí slyšet všichni okolní klienti.
  • Synchronizace objektů. Všechno ve světě - truhla, poleno, upuštěná pryskyřice, zeď - je síťový objekt. Když se hráči sejdou, každý klient v okolí musí držet krok se vším, co ostatní mění. Tento provoz roste rychleji než počet hráčů, když se lidé shlukují u jedné základny.
  • Vyváženost. Tvorové škálují zdraví a poškození podle počtu hráčů poblíž a souboje s bossy, nájezdy i rychlost získávání surovin jsou vyladěné pro hrstku lidí, ne pro dav.

Strop je designové rozhodnutí, ne pevná technická zeď. Server poběží i nad ním. Nebude se ale chovat tak, jak byla hra testována.

Co uvidí jedenáctý hráč#

K odmítnutí dojde během handshaku, ještě před načtením světa, takže jedenáctý hráč uvidí obrazovku připojování, pak chybu „Server is full“ a vrátí se do menu. Do světa se nic nezapíše a nic se neztratí. Pár věcí partu zaskočí:

  • Admini nemají rezervovaný slot. Být v souboru adminlist.txt ti ve vanille neumožní kontrolou projít. Pokud je online deset kamarádů a admin se potřebuje připojit něco opravit, někdo musí odejít.
  • Crossplay hráči se počítají stejně. Hráči ze Steamu, Microsoft Storu i Xboxu čerpají ze stejných deseti slotů. PlayFab relay, který crossplay používá, kapacitu nepřidává.
  • Mrtvé spojení drží slot ještě chvíli. Hráč, kterému spadla hra, může zůstat v seznamu hráčů, dokud server nezjistí, že spojení vypršelo. Pokud někomu hned po pádu napíše, že je server plný, počkej minutu a zkus to znovu, než začneš předpokládat, že se připojil někdo jiný.

Módy, které zvedají limit#

Zvednutí stropu znamená přepsat kontrolu na serveru. Protože kontrola probíhá na straně serveru, rozhoduje nastavení na serveru; co musí mít nainstalované hráči, závisí na módu, kterým to uděláš.

Běžná cesta je ValheimPlus (udržovaný komunitní fork). Jeho konfigurační soubor BepInEx/config/valheim_plus.cfg má sekci [Server] s přepínačem zapnutí a počtem hráčů:

BepInEx/config/valheim_plus.cfg
[Server]; Turn the section on, or nothing below appliesenabled = true; Maximum players on the servermaxPlayers = 16

ValheimPlus je velký mód, který mění desítky dalších hodnot, a porovnává svou vlastní verzi mezi serverem a klientem, takže pokud ho zvolíš kvůli stropu, musí ho nainstalovat i všichni hráči. Pro skupinu čistě z PC, která už módy používá, je to v pořádku. Pro partu, která jinak hraje vanillu, je to hodně módu kvůli jednomu číslu a úplně to vyřadí hráče na Xboxu a v Game Passu, protože ti nemohou nic instalovat. Názvy klíčů ve ValheimPlus se mezi forky a verzemi měnily, takže po prvním startu si přečti vygenerovaný soubor a neopisuj slepě blok výše.

Na Thunderstore existují i malé mody s jediným účelem, které limit jen zvedají. Vyhledej tam v komunitě Valheimu „max players“, podívej se, kdy byl každý naposledy aktualizován, a upřednostni ten, který uvádí, že je pouze serverový. Mód s jedním úkolem se udržuje snáz než ValheimPlus, ale malý mód s jedním autorem je zároveň přesně ten typ, který po patchi hry nejspíš přestane být udržovaný. Než na server, ke kterému se připojují další lidé, nainstaluješ cokoli neznámého, stojí za přečtení Škodlivé pluginy a módy.

Ať použiješ cokoli, nainstaluj to přes BepInEx podle článku Módy na Valheim serveru s BepInEx a ve startovním logu ověř, že se načetl. Limitní mód, který se tiše nenačetl, vypadá přesně jako vanilla: jedenáctý hráč je odmítnut a nikdo neví proč.

Co se kazí nad deseti hráči#

Na jedenácti se nic nezhroutí. Věci se postupně zhoršují a pořadí, v jakém se zhoršují, je předvídatelné.

Škálování nepřátel

Tvorové získávají zdraví a poškození za každého dalšího hráče v jejich dosahu. V současných buildech škálování počítá hráče v okruhu zhruba 200 metrů a u pěti přestává počítat, takže souboj, kde kolem bosse stojí dvanáct lidí, není obtížností pro dvanáct hráčů - je to obtížnost pro pět hráčů, do které mlátí dvanáct lidí. Bossové se rozpouštějí a nájezdy, které měly tlačit na malou skupinu, jsou triviální. Na okrajích se objevuje opačný problém: osamělý hráč, který se potuluje u přeplněné základny, dostane zesílené tvory, aniž by měl dav, který by s nimi bojoval. Přesné konstanty se mezi verzemi měnily, takže čísla ber jako orientační. Pokud chce parta výzvu, poctivou pákou je world modifier combat, popsaný v článku Valheim world modifiers a presety, a ne naděje, že víc hráčů hru ztíží.

Zátěž sítě u hlavní základny

Skutečným limitem pro velké skupiny není server, ale hlavní základna. Když patnáct lidí stojí v několika stejných zónách, každý klient musí držet krok se všemi objekty, kterých se ostatní dotýkají: plní se pece, otevírají se truhly, jezdí vozíky, staví a ničí se stavební prvky. Valheim posílá aktualizace světa omezenou rychlostí na jedno spojení, a když se fronta zahltí, projeví se to rubber-bandingem, dveřmi, které se otevřou pozdě, a předměty, které naskočí zpět do truhel. Hráč s nejhorším připojením obvykle vlastní aspoň jednu z vytížených zón, což to zhoršuje všem kolem něj.

To je efekt popsaný v článku Výkon Valheim serveru a lag, jen zesílený. Větší skupina ho pocítí jako první u portálového hubu a u tavicí oblasti, protože tam jsou všichni najednou.

Paměť a doba ukládání

Víc hráčů prozkoumává víc mapy souběžně a každá prozkoumaná a zastavěná zóna zvětšuje soubor světa i to, co server drží v paměti. Skupina dvaceti lidí nespotřebuje víc RAM jen v době, kdy je online; vyrobí také rychleji větší svět a pauza při ukládání s ním roste. Ta pauza nastává každých -saveinterval sekund a u velkého světa s velkou skupinou online je znát.

Kolik větší skupina stojí server#

Jde o pracovní hodnoty ze skupin, které běží nad stropem, ne o záruky. Svět s hodně terraformingu nebo stovkami pecí bude nad nimi a svět, kde všichni staví u spawnu, začne laggovat dřív, než mu dojde paměť.

HráčiRAMCPUCo selže jako první
Do 10, vanilla3-4 GB1,5-2 jádraNic, pokud jsou základny rozprostřené
11-15, limitní mód5-6 GB2-2,5 jádraLag u hlavní základny
16-20, limitní mód6-8 GB2,5-3 jádraLag všude, kde se lidé shromažďují, delší ukládání
20+, limitní mód8 GB a víc3+ jádraDesync a vyhazování; hra na to nebyla stavěná

Na taktu CPU záleží víc než na počtu jader, protože hlavní smyčka serveru se opírá o jedno vlákno; jádra navíc v tabulce slouží pro ukládání a síť, které běží souběžně. Šířka pásma na straně serveru málokdy bývá problém - Valheim posílá na hráče málo dat - ale záleží na rychlosti odesílání na domácím připojení každého hráče, protože vlastníci zón posílají aktualizace všem v okolí. Kolik RAM potřebuje Valheim server má podrobnosti pro vanilla rozsah a CPU vs RAM pro herní servery vysvětluje, jak poznat, na který limit doopravdy narážíš, než zaplatíš víc za ten druhý.

Na RE:NODE Valheim řada běží od 2 GB do 8 GB, takže nejvyšší tarif pokryje módovanou skupinu kolem dvaceti lidí s rezervou pro samotné módy. Přechod na vyšší tarif změní limit na stávajícím serveru, nepostaví ho znovu, takže můžeš začít o tarif níž a přejít, až to řekne graf paměti v konzoli, místo abys hádal předem.

Jak zařídit, aby velká skupina fungovala#

Většinu lagu, který velká skupina cítí, způsobuje to, kde lidé stojí, ne jejich počet. Opravy nic nestojí:

  1. Rozprostři základny. Oddělené základny znamenají oddělené zóny s oddělenými vlastníky. Dvacet lidí ve čtyřech základnách je mnohem plynulejší než dvacet v jedné. Rozestupy rozebírá Umístění základen na sdílených serverech.
  2. Drž portálový hub malý. Portálový hub se čtyřiceti portály a zdí truhel je nejdražší místo na mapě. Dej sklady blízko místa, kde se používají, ne všechny vedle hubu.
  3. Zkrať interval ukládání, neprodlužuj ho. Je lákavé natáhnout -saveinterval, aby pauza při ukládání nastávala méně často. U velkého světa se tím jen pauza zřídí a ztráta po pádu zvětší. Rozumný rozsah je deset až dvacet minut.
  4. Restartuj podle plánu. Týdenní restart v hodině, kdy nikdo nehraje, brání plíživému růstu paměti. Restart schedules, které pomáhají popisuje, jak často a proč.
  5. Požádej hráče s nejhorším připojením, aby se pokud možno držel mimo nejvytíženější zónu. Není to fér, ale je to největší jednotlivé zlepšení v přeplněné základně, protože vlastnictví zóny přenáší simulaci na jeho počítač.

Pomáhají i módy, které zlepšují síť. Better Networking od CW_Jesse například komprimuje provoz a mění, kolik se pošle v jedné aktualizaci. Módy v této kategorii se obvykle instalují na server i na všechny klienty a jako každý mód je třeba je po patchích hry aktualizovat. Než cokoli předpokládáš, přečti si na stránce módu, na kterou stranu patří.

Alternativy ke zvedání stropu#

Než začneš server patchovat, zvaž, jestli parta opravdu potřebuje všechny v jednom světě najednou.

  • Dva světy, každý s vlastním plánem. Hlavní svět a druhý pro ty, kdo chtějí postupovat rychleji nebo hrát tvrdší preset. Postavy žijí na počítači hráče, takže kdokoli může mezi nimi přecházet se svou výbavou. Každý server je normální vanilla server s vlastními deseti sloty.
  • Rozvrh. Mnoho velkých part zjistí, že současně jsou online jen šest nebo sedm lidí. Než něco koupíš, vyplatí se čtrnáct dní sledovat, kdo je skutečně online; strop možná nikdy nenastane.
  • Nejdřív crossplay, potom módy. Pokud hraje byť jen jeden člověk z party na Xboxu, mód vyžadující instalaci na klientovi odpadá. Jedině čistě serverový limitní mód je kompatibilní s konzolovými hráči - a než někomu slíbíš slot, stojí za to ověřit, že mód je opravdu jen serverový.

Řešení problémů se zvednutým limitem#

Jedenáctý hráč pořád dostává „Server is full“. Mód se nenačetl nebo není zapnuté jeho nastavení. Ve startovním logu zkontroluj řádek o načtení pluginu a pak v konfiguraci přepínač enabled u dané sekce. Zejména ValheimPlus ignoruje všechny hodnoty v sekci, kde je enabled nastaveno na false.

Hráče po instalaci módu vyhazuje při připojení. Mód vynucuje kontrolu verze a klient ho nemá nebo má jinou verzi. Podrobně to rozebírá vyhození kvůli neshodě verzí módů.

Včera to fungovalo a po aktualizaci to přestalo. Vyšel patch hry a limitní mód se buď nenačítá, nebo se načítá proti metodě, která už neexistuje. V BepInEx/LogOutput.log hledej výjimku zmiňující mód. Dokud autor mód neaktualizuje, je server zpátky na deseti.

Server ukazuje 12 hráčů, ale všichni laggují. Podívej se, kde stojí. Velké skupiny laggují tam, kde se shromažďují, a oprava je obvykle vzdálenost mezi základnami, ne větší tarif.

Paměť dosahuje limitu při rušných večerech. Svět vyrostl. Za týden porovnej graf paměti s počtem hráčů; pokud je to svět, pomůže vyšší tarif, a pokud paměť stoupá plynule i bez hráčů online, udělá víc naplánovaný restart.

FAQ#

Dá se limit hráčů ve Valheimu zvednout bez módů?

Ne. Kontrola je v kódu hry a žádný startovní argument, konfigurační soubor ani nastavení hostingu ji nezmění. Každý hosting, který inzeruje víc než deset hráčů na Valheimu, používá mód.

Musí mít hráči mód nainstalovaný, aby se připojili na server se zvednutým limitem?

Jen pokud ho mód vyžaduje. Samotná kontrola počtu hráčů probíhá na serveru, takže čistě serverový limitní mód nepotřebuje na klientech nic. ValheimPlus, běžná volba, kontroluje verzi mezi serverem a klientem, takže s ním musí mít všichni nainstalovanou stejnou verzi.

Počítají se do limitu hráčů i admini?

Ano. Vanilla Valheim nemá rezervovaný adminský slot. Pokud je online deset lidí, admin je odmítnut jako kdokoli jiný.

Je 20 hráčů na jednom Valheim serveru realistických?

Funguje to pro skupiny, které se rozprostřou a hrají v různých časech. Je to utrpení pro skupiny, které hrají všechny najednou u jedné základny. Server to zvládne s 8 GB a třemi jádry; zápasí s tím síť mezi hráči shromážděnými na jednom místě.

Mění crossplay limit hráčů?

Ne. Hráči z Xboxu, Game Passu i Steamu sdílejí stejných deset slotů a konzoloví hráči nemohou instalovat módy, takže limitní mód vyžadující instalaci na klientovi udělá ze serveru čistě PC server.