Herní klient - Game client

A diagram počítačové sítě označující, co se stane se serverem a klienty poté, co jednotlivý klient odešle informace na server

A Herní klient je síť klient který spojuje jednotlivého uživatele s hlavní hrou serveru, používaný hlavně v hry pro více hráčů. Shromažďuje data, jako je skóre, stav hráče, pozice a pohyb jednoho hráče, a odesílá je na herní server, což serveru umožňuje shromažďovat data každého jednotlivce a ukázat každému hráči ve hře,[1] ať už se jedná o arénovou hru v menším měřítku, nebo o masivní hru s tisíci hráči najednou mapa. I když herní server zobrazuje informace každého hráče pro každého hráče ve hře, hráči mají stále svůj vlastní jedinečný pohled z informací shromážděných herním klientem, takže perspektiva hry každého hráče je odlišná, i když svět pro každého hráče je stejný. Herní klient také umožňuje sdílení informací mezi uživateli. Příkladem může být výměna zboží v mnoha MMORPG hry, kde si hráč vyměňuje předmět, který nechce, za předmět, který chce, se herní klienti navzájem propojují a umožňují sdílení informací v této výměně předmětů. Protože mnoho her vyžaduje centralizovaný prostor pro shromažďování hráčů a způsob, jak si uživatelé mohou vyměňovat informace, mnoho herních klientů je hybridem klient-server a peer-to-peer aplikační struktury.

Dějiny

World Wide Web se zrodil na NeXTCube s procesorem 256 MHz, 2 GB disku a monitorem šedé stupnice s operačním systémem NeXTSTEP. Sir Tim Berners-Lee uvedl první webovou stránku online 6. srpna 1991, když pracoval pro CERN v Ženevě ve Švýcarsku.[2] Online hraní začalo na začátku sedmdesátých let. Toho času Telefonické vývěsky poskytl hráčům způsob hraní her přes internet. V 90. letech umožnily nové technologie vyskakování herních stránek po celém internetu.[3] The systém klient-server poskytuje online hraní způsob, jak fungovat ve velkém měřítku.

Funkce

Herní klient má 4 hlavní funkce: přijímat vstupy, analyzovat data, poskytovat zpětnou vazbu, upravovat systém

Přijímá vstup

Herní klient přijímá vstupy od jednotlivých uživatelů. Ve hře FPS například hráč provádí mnoho různých akcí, jako je pohyb, střílení a komunikace. Každý z nich bude vyžadovat, aby hráč ovládal vstupní zařízení. Po obdržení těchto vstupů jej herní klient odešle zpět na server.[4]

Analyzuje data

Klient hry dekóduje a zobrazí informace, které tvoří herní svět, včetně objektů uložených v počítači a výsledků akcí provedených hráči, a poté tyto informace přeložit do uživatelského rozhraní a výstupních zařízení.

Poskytuje zpětnou vazbu

Server zpracovává informace a odesílá je zpět klientovi. Klient zobrazí zpracované informace hráči podle úhlu pohledu hráče, takže každý hráč bude mít kvůli svým soukromým klientům jinou perspektivu obrazovky.

Upravte systém

Klient také detekuje jakékoli změny provedené podle hráčů během herní relace, včetně rozvržení a nastavení. Protože hra probíhá v reálném čase a hráči neustále odesílají akce, klient neustále zpracovává informace a podle toho upravuje systém.

Příklad aplikace

Zde je příklad fungování herního klienta při používání hry League of Legends. V tomto příkladu hráč s názvem 7Turtle7 používá postavu Kha'Zix k útoku na neutrální postavu známou jako „Red Brambleback“. Z pohledu klienta se děje více věcí.

1. Klient načte data uložená v archivech počítače. To zahrnuje statistiky hráče, mapové objekty, moby, umělecká díla, chování postav a další statická data k vytvoření okolí hráče.

2. 7Turtle7 se pokouší zaútočit na Red Brambleback. Klient odesílá data o datech 7Turtle7 a Red Brambleback statistika jako je pozice, zdraví, mana, poškození, obrana a mnoho dalších dat na serveru a umožňuje serveru vypočítat nový světový stát po zásahu 7Turtle7 Red Brambleback.3. Server zpracovává data a odesílá je zpět všem klientům ostatních hráčů, přičemž informuje, co právě udělal 7Turtle7 a jak by měl klient na to poskytnout zpětnou vazbu. Poté, co klient 7Turtle7 obdrží tyto informace, vytvoří výstup a odešle jej zpět do 7Turtle7. V tomto příkladu vidíme, že se na panelu schopností objevilo červené číslo označující poškození způsobené na Red Brambleback a na panelu schopností se objevila 3 označující dobu ochlazení právě použité schopnosti 7Turtle7. Chování postav, v tomto případě Red Brambleback, se také změní v důsledku útoku. Nyní se stává nepřátelským stvořením, které podle herního programování zaútočí na 7Turtle7, protože 7Turtle7 zaútočil jako první na Red Brambleback. Změní se také výstupy kresby, jako je animace útoku, stavová lišta a manová lišta.

4. Ostatní herní klienti jsou si také vědomi útoku 7Turtle7, ale v závislosti na jejich perspektivě jejich klienti určují, zda se jim tyto informace zobrazí nebo ne. Hráčův hráč v soupeřově týmu si je například vědom útoku, ale nezobrazí se u něj změny, protože hra to nastaví tak, že je třeba objevit 7Turtle7, který takový tah provede, pouze pak se zobrazí na jejich výstupech.

5. Přestože klient odesílá a přijímá data z pohledu jednotlivce, existují data, která jsou sdílena s každým ve hře nebo nejsou sdílena vůbec. Vezměte si pravý horní roh perspektivy 7Turtle7, například je zde indikátor času a ten čas je pro všechny ve hře stejný. K dispozici je také FPS a Ping indikátor, který je exkluzivní pro 7Turtle7 a není sdílen prostřednictvím klienta.

Používání

Přijetí technologie

Pro mnoho vývojářů her je přijetí technologie klíčem k jejich konstrukci. Standardizované platformy jako HTML 5 a JavaScript umožňují integraci médií a hlubší vývoj. Herní klient poskytuje možnost tak učinit.[5]

Uživatelská zkušenost

Vyvážení hry je velkým problémem pro vývojáře. Velký počet uživatelů na svém klientovi připojených k serveru by mohl způsobit vysoké využití zdrojů, ale zároveň musí uživatelé zůstat připojeni ke hře. Herní klienti poskytnou tento typ informací centralizovanému serveru.

Spolupráce zaměstnanců

Jak se hra vyvíjí, bude přidána nová funkce. Místo malého, soudržného týmu, který na začátku hry nevyžaduje příliš mnoho spolupráce, má rozvinutá hra obvykle několik oddělení, která společně pracují na nalezení řešení, a to vyžaduje, aby všechna oddělení fungovala v harmonii.

Aktualizace

Někdy tým pro vývoj her vytváří nový obsah nebo opravuje předchozí chyby, což znamená, že je nutné nechat klienty každého hráče synchronizovat se serverem. Jedním ze způsobů, jak může vývojář her opravit chyby nebo přidat nový obsah do hry, je použití oprav. The digitální distribuční platforma upozorní uživatele, že je k dispozici aktualizace, a klient automaticky použije tyto aktualizace pro uživatele, aby zajistil, že každý uživatel bude mít po provedení změn stejnou perspektivu obsahu hry.[6] Mezi příklady digitálních distribučních platforem patří pára, původ a battle.net, které poskytují stejné služby, pokud jde o klienty her.

Viz také

Reference

  1. ^ „Space Crack: Oprava tahové strategie žánru“. www.lostgarden.com. Citováno 2016-10-30.
  2. ^ "Historie serverů v obrazech, od roku 1981 do současnosti | iWeb Blog". blog.iweb.com. Citováno 2016-10-31.
  3. ^ „Historie online her - DigiSecrets“. DigiSecrets. 2013-03-11. Citováno 2016-10-31.
  4. ^ „Jak funguje World of Warcraft“. Jak věci fungují. 2007-11-16. Citováno 2016-10-30.
  5. ^ „Architektura aktualizace klienta League“. engineering.riotgames.com. Citováno 2016-10-31.
  6. ^ „Jak funguje World of Warcraft“. Jak věci fungují. 2007-11-16. Citováno 2016-10-31.