Zajímá Vás jak funguje multiplayerové P2P spojení a to nejen v Destiny a proč je multiplayer s tímto spojením nefunkční? V následujícím článku se pokusíme objasnit jak to celé (NE)funguje a proč jsou dedikované servery lepší.

V Destiny 1 existují tři typy serverů: mise servery, zónové servery a servery fyziky. První dva běží v serverovém cloudu Bungie, ale fyzikální server běží na konzoli hráče. Fyzikální servery běží na konzolích hráčů, aby šetřily peníze, protože fyzické servery dělají hodně práce (ve skutečnosti mnohem víc, než jen fyziku) a pro Bungie by bylo drahé zaplatit za ně stovky tisíc. (Nebo jejich ekvivalent ve více samostatných serverech.)

V Destiny 2 bude síťové spojení stejné, s výjimkou, že všechny servery, včetně serveru pro fyziku, budou spouštěny v cloudu serverů společnosti Bungie. To se rozhodlo utratit velké peníze na Destiny 2, aby mělo stovky tisíc virtuálních konzolí běžících ve svém serverovém cloudu. Tzn. žádné servery nebo “hostitelé” v Destiny 2 nebudou rovnocenné.
Navzdory skutečnosti, že všechny servery v Destiny 2 budou vyhrazeny, hráči PvP, kteří se dožadovali “dedikovaných serverů”, budou stále zklamáni. V jazyce PvP má výraz “dedikovaný server” specializovaný význam, který znamená víc než pouze server. Servery , které jsou v Destiny 2 vyhrazené, se v PvP jazyce nemohou nazývat jako “dedikované”.

Upozornění:

Pokaždé, když dojde k použití slova “konzole” v tomto článku, vyvoďte, že to znamená “konzole nebo PC”.

Bungie v Destiny 2 dokumentuje pouze komunikaci mezi konzolemi a servery. To znamená, že dle jejich dokumentace neexistuje přímá komunikace mezi konzolemi. Má se jednat o jinou komunikaci a to mezi konzolemi v zóně(herní relaci) a Fyzikálním hostitelem pro tuto zónu(relaci), než která byla v Destiny 1 běží pouze na konzolích v zóně. Existují však lidé, kteří tvrdí, že sledovali síťovou komunikaci do a ze své konzole, zatímco hráli Destiny 2 a říkají, že vidí provoz mezi všemi konzolemi v zóně(herní relaci) a ne jen mezi konzolemi a servery Bungie. Tzn. tvrdí, že proti implicitnímu tvrzení Bungie, existuje jakási komunikace P2P mezi všemi konzolemi v dané zóně(herní relaci).

Co je to Activity Hosts?

V Destiny 1 existují servery, které jsou zaměřeny na úkoly ve hře a které nejsou P2P – tzn., Že jsou hostovány přímo Bungie, ale sledují jen malé množství velmi důležitých informací nazvaných “Mission Critical State”. Ty také provozují “Activity Scripts”, které mají na starosti věci, jako jsou otevírání dveří atd. Tyto servery, které se nacházejí v cloudu serverů společnosti Bungie, se nazývají “Activity Hosts” a dělí se na další dva poddruhy hostitelů aktivit: “Bubble Activity Hosts” a “Mission Activity Hosts”. “Bubble” je výraz Bungie pro to co hráči obvykle nazývají zónou. Bubble Activity Host sleduje některé důležité informace o stavu zóny. Například zda jsou v zóně místa kde mají hráči stát aby spustili určitou aktivitu, sleduje postup v misi, aby ve správný okamžik spadla z nebe družice atd. Často se stává, že vaše konzole bude komunikovat s Bubble Activity Hostem a Mission Activity Hostem v jeden okamžik, tak tomu je například na začátku raidu Vault of Glass, kdy začínáte na veřejném prostranství Venuše a kolem se nacházející hráči, kteří vám mohou pomoci s úvodem do raidu avšak bez nároku na další postup.

Co je to Fyzikální Host?

Ve hře je také fyzikální host pro každou zónu. Fyzikální hostitel udržuje většinu autoritativního stavu pro zónu. Nebo spíše udržuje většinu autoritativního stavu všech nesčetných detailů o zóně, které se nepovažují za dostatečně důležité, aby byly uloženy na Bubble Activity Hostu. (Bubble Activity Host je více autoritativní než hostitel fyziky pro informace, které sleduje.) Fyzikální Host není vskutku tak zvláštní. Konzole každého hráče dělá přesně ty stejné výpočty, které provádí Fyzikální Host. Jediným rozdílem je, že pokud vaše konzole není hostitelem fyziky, není její stav autoritativní. (Nebo vaše konzole není autoritativní o nic víc než jen k umístění vaší postavy na mapě ve hře + některé další drobné informace o vaší postavě.) Pokud vaše konzole nesouhlasí s hostitelem fyziky (to znamená s konzolí jiného hráče) o stavu zóny (s výše uvedeným upozorněním), hostitel fyziky vyhrává a vaše konzole je nucena se nakonec smířit s dohodnutou “realitou”. Pokud hráč, jehož konzole je hostitelem fyziky pro danou herní relaci a zónu, opouští hru, hostitel Bubble Activity Selector zvolí jinou konzoli v této zóně, aby se stala novým hostitelem fyziky. Když dojde k usmíření mezi novým hostem fyziky a jeho hostiteli aktivity, nemusí se na určitých věcech spolu zcela dohodnout. Nemusí dokonce souhlasit s tím, kolik mobek žije v zóně a kolik se tam zrovna pohybuje hráčů. Například pokud má nový fyzikální hostitel méně mobek či jiných hráčů, než je tomu u hostitelů aktivity, pak nový fyziologický hostitel najednou vytvoří nové přírůstky ve hře, nebo naopak. A tak každá další konzole v zóně bude nyní nucena sladit svůj stav s novým hostitelem fyziky. Tento proces migrace hostitele fyziky se obvykle stává hladce, aniž byste si vůbec něčeho všimli, a ve veřejných zónách se to stává velmi často. Tímto bych chtěl rozptýlit voodoo praktiky o změně leadera ve fireteamu. Když pochopíte model síťového spojení Destiny, tak zjistíte, že změna leadera ve fireteamu nemá žádný vliv na to, kdo je v dané době hostitelem celé relace. Změna leadera fireteamu je tak pouhé voodoo. Jiná situace vzniká, když jdete například z raidu na Orbit a následně zpět, máte tak velkou pravděpodobnost, že se do raidu vrátíte s jiným hostitelem mise a hra bude lépe fungovat. Někteří lidé tvrdí i to, že se to dá ovlivnit způsobem, že se do raidu na někoho připojíte. Ten kdo do raidu vstoupí jako první bude logicky hostitelem fyziky a mise. Lidé tvrdí, že po připojení na konkrétní osobu se stav hostování nezmění. Ale není zcela jisté, že se na toto tvrzení lze spolehnout.

Přečti si  Netflix uvede nový seriál ze světa League of Legends

Kde jsou dedikované servery?

Bungie uvedlo ve výše citovaném článku This Week At Bungie – 05/25/2017, že nemá “dedikované servery”. Ale jejich systém způsobuje zdání, že je mají! Pro každého hráče je Bubble Activity Host, Mission Activity Host a Fyzikální Host. To jistě zní, jako kdyby Bungie mělo dedikované servery. Dokonce to zní tak, jako kdyby měli tři servery pro každou aktivitu, do které se zapojujete! Proč tedy Bungie nepoužívá dedikované servery? Odpověď na tuto otázku je dána skutečností, že výraz “dedikovaný server” je používán v komunitě FPS PvP jargonním způsobem. V tomto žargonu termín “dedikovaný server” neznamená server, který se jako dedikovaný jen tváří. V pravém slova smyslu to znamená server, který je vyhrazen a který také udržuje veškerý autoritativní stav hry. Pokud existuje autoritativní stav hry, který je uložen na každé konzoli, a ne na serveru, pak se nemůže hovořit o dedikovaném serveru. Proč tedy Bungie nevyužilo této možnosti a riskovalo rozčilení všech Destiny PVP hráčů, kteří žádali o dedikované servery? Bungie odpovědělo na tuto otázku následovně: Server je autoritativní v tom, jak hra postupuje, a každý hráč má autoritu nad svým vlastním pohybem a schopnostmi. To dává hráčům pocit bezprostřednosti při jejich pohybu a střelbě, bez ohledu na to, kde bydlí a bez ohledu na koho se rozhodnou připojit a hrát. Důvodem proč Bungie nechává pozici každého hráče autoritativně na jeho konzoli, než na fyzickém hostiteli je, že nikdy neuspějete s tím co se nazývá “gumbanding (gumování)”. Rubberbanding je to co se stane, když je dostatečné zpoždění mezi vaší konzolí a dedikovaným serverem. Vaše konzole a server skončí nesouhlasem s místem, kde se nacházíte a pokud k tomu dojde, “dedikovaný server” bude pracovat tak, aby vaši pozici opravil za každou cenu. Z vašeho pohledu, v závislosti na tom, jak je hra implementována, se bude vaše postava teleportovat zpět tam, kde byla před chvílí, nebo vaši postavu upraví neviditelným gumovým lanem, což se projevuje například při běhu vpřed a přitom se stále o krok vracíte. Mnoho hardcore PvP hráčů poukáže na to, že gumování se děje pouze tehdy, když nemáte dobré spojení se serverem. Pokud máte dobré spojení se serverem, pak tuto věc zažijete zřídka kdy, pokud vůbec někdy. Bungie chce, abyste nikdy v Destiny gumování nezažili. Můžete ale zažít jiné další lagové artefakty: jako teleportaci ostatních hráčů, nesmyslné běhání do zdi, neubírající zdraví a jiné. Nikdy a toho si všimněte však nebudete pozorovat, že se tato věc děje přímo vám. Vy ostatním hráčům lagovat můžete, ale sami to nikdy nezpozorujete. Mám v Destiny něco k 2000 hodinám, a nikdy jsem se na mapě neteleportoval a ani necukal. Jak Bungie řeklo:”To nám umožňuje dát hráčům pocit bezprostřednosti při jejich pohybu a střelbě – bez ohledu na to, kde bydlí a bez ohledu na koho se rozhodnou připojit.”

Přečti si  Ubisoft oznámil nový Free-to-Play titul ze světa The Division

Přístup Bungie má v tomto směru klady i zápory. Pro je to, co jsem s Bungie právem řekl: Nebudete zažívat gumování, bez ohledu na to, kde žijete, bez ohledu na to, jak daleko jste od serverů společnosti Bungie a bez ohledu na to, s kým jste se rozhodli hrát. Nevýhodou Bungie přístupu je to, že hráči mohou podvádět s lag switchy a také, že když hrajete s hráči, kteří mají spojení s vysokou latencí na Fyzikálního Hosta, nebo pokud máte vysokou latenci vy uvidíte zcela jinou hru než se ve skutečnosti hraje.

Destiny 2 bude opět s P2P

Takže, co se mění mezi Destiny 1 a Destiny 2, pokud jde o síťové spojení? Opravdu velmi málo. Vše bude pracovat stejně jako předtím, kromě toho, že Fyzikální Host pro zónu už nebude náhodně vybranou konzolí v herní relaci. V Destiny 2 už nebude žádný migrující P2P “host”. Fyzikální hostitel bude vždy umístěn v cloudu serveru společnosti Bungie. V single-playerové části hry, bude každá konzole stále dělat všechny své vlastní fyzikální simulace pro celou zónu po celou dobu hraní, a každá konzole bude autoritativní v ohledu pozice a pohybu jeho hráče v zóně. Stejně jako u Destiny 1, se bude každá konzole pravidelně synchronizovat s fyzikálním hostitelem.

Jaký to má závěr?

Může to být velmi pravděpodobné, že implementace sítě v Destiny není poslední a že ještě nějaké drobné změny přijdou. Zvláště pro komplikovanou a bezproblémovou spolupráci s PvE je to bezkonkurenční zkušenost s poskytnutím skvělého herního zážitku, který soupeří s bezprostředností střílečky pro jednoho hráče. Ovšem to nemění nic na tom, že spoustě lidí zůstává v mysli nefunkční PVP a mnohdy lagy ve finálních částech raidů, kdy veškeré snažení končí nezdařeným pokusem.

A jaké jsou vaše zkušenosti s peer-to-peer spojením ve hrách? Dejte nám vědět v komentáři.

Speciální poděkování: Nessus42

3 KOMENTÁŘE

  1. Skvely clanek chvalim autora konecne nekdo z hernich webu neco udelal a napsal clanek o p2p a dedikovanych serverech doufam ze diky tomuto clanku ubyde stupidnich komentu typu ze destiny je nejlepsi pvp na svete atd protoze diky p2p neni a nikdy nebude

ZANECHAT ODPOVĚĎ

Zadejte svůj komentář!
Zde prosím zadejte své jméno