Přejít k navigační liště

Zdroják » Různé » Vždyť je to jen hra!

Vždyť je to jen hra!

Články Různé

Napadlo vás někdy, jak jsou hry (a protože jsme na Zdrojáku, tak ty počítačové a internetové) podceňované a místy i odsuzované jako původ neřestí a zlořádů? Zkusme se na ně podívat jinýma očima, očima webařů, očima programátorů a tvůrců různých aplikací, a uvidíme spoustu možné inspirace.

Takové to ostentativní pohrdání je v lidech, co nejsou „od počítačů“, nenápadně zakořeněné. Snad každý, kdo kdy pomáhal svému známému vybírat či stavět počítač, někdy v životě slyšel: „nepotřebuju žádný dělo, chci něco úplně obyčejnýho, klidně nic moc – stejně to bude jen na hry pro děti…“ Je trochu s podivem, že lidé, kteří často podle svého vyjádření „vůbec počítačům nerozumí“, jsou z nějakého důvodu přesvědčení, že hry jsou nenáročné aplikace, třeba proti takovému účetnictví. Pravděpodobně je mají ve škatulce „nenáročná zábava“, takže ty „opravdové, seriózní aplikace na důležitou práci“ považují logicky za náročnější.

My, lidé od počítačů, tušíme, že se to s hrami má trochu jinak, že hlavně takzvané „AAA“ tituly jsou často množstvím práce a náročností tvorby (a třeba i tržbami) plně srovnatelné s filmovými blockbustery, ale i takzvané „indie hry“, tituly tvořené partami nadšenců a malými studii, jsou vlastně z hlediska vývoje a návrhu malá šperkařská díla.

Vlastně mě docela zaráží, že v diskusích na Zdrojáku se lidé občas pokoušejí dodat svým názorům váhu prohlášeními jako „vyvíjím bankovní aplikace“ (a v pozadí je nevyřčené: „takže jsem odborník stran škálovatelnosti, paralelních výpočtů, náročných aplikací, databází, Javy, …“) a nikdo zatím nezkusil použít „vyvíjím hry…“ Vždyť vývojář her zase bude pravděpodobně hacker, znalý technik optimalizace, hardwaru do detailů, psaní výkonných aplikací a spousty dalších věcí…

Napsat dobrou hru totiž není vůbec hračka.

Je spousta věcí, na které musí herní vývojář myslet (především v malých studiích a nezávislých týmech; velká studia jsou stejná jako jiné „softwarové továrny“). Velká část z nich se bude podezřele překrývat s problémy, co by měl řešit i tým pro vývoj webů. Nevěříte? Tak schválně…

Ruku na srdce – hrajete počítačové hry?

Dobrá hra nesmí, stejně jako dobrý web, uživatele rozčilovat, otravovat, iritovat. Nesmí počítat s tím, že uživatel chce číst nějaké složité návody dřív, než začne. V dobré hře je ideální postup takový, že si hráč vybere ovládání, spustí hru, vybere si obtížnost – a hraje.

Hra by měla být intuitivní a dávat hráči v pravou chvíli stručné a jasné pokyny. Samozřejmě, u komplexních logických her typu šachy těžko zjistíte, jak je hrát, pouze metodou pokus-omyl, ale šachy nejsou typická počítačová hra. U takového Tetrisu ale lze odhalit herní princip po dvou, třech pokusech. U stříleček či hopsaček je to podobné – stačí jedna zkušební hra a člověk pochopí, do čeho se střílí a kam se skáče.

Dokonce i složitější hry typu strategií mají zabudované „výcvikové mise“, nebo zpočátku alespoň říkají, co má člověk postavit a proč. Dobře napsaná počítačová hra hráče vede a obeznámí ho s herními principy naprosto nenásilnou a zábavnou formou.

Určitě vás už napadá souvislost s webem. Ne, nebojte, nehodlám vytahovat děsivý buzzword „gamifikace“ a hlásat, že by weby, a pokud možno i životy, měly být hrou, že by měly implementovat herní prvky a principy (levelování, odměny apod.) a pak nastane ráj po celých internetech. Ona je to sice myšlenka v podstatě rozumná a když bude provozována s mírou, tak rozhodně prospěje; problém je, že na vrcholu hype křivky není nikdy nic provozováno s mírou. Myslím, že nám bude z „gamifikací“ ještě hodně nevolno, až nám začnou weby mechanicky cpát odznáčky a vylepšení pro avatary jen proto, že to je IN…

Mám na mysli jinou souvislost mezi hrami a webem. Vyjádřil bych ji otázkou: Co se mohou návrháři webů naučit od herních vývojářů?

Spoustu věcí.

Web by měl být svým přístupem k uživateli stejně intuitivní a snadno pochopitelný jako dobře napsaná hra. Analogii nelze hledat doslovnou (proto to je analogie) – nikdo nečeká, že web bude mít „výcvikovou misi“. Lidé jsou na webu ochotní do jisté míry (ale jen do jisté) fungovat metodou pokus-omyl. Tipoval bych, že tak do tří kliknutí; pak už půjdou jinam. Web by měl být spíš navržen jako „samonaváděcí“ – takový, že člověk v každou chvíli tuší, kde je (ne, „drobečková navigace“ sama nestačí), ví, že má na výběr ze dvou, tří možností dalšího postupu, je mu jasné, co kterým postupem získá, a přesně ví, co má udělat, pokud se pro daný postup rozhodne.

Hej, Proroku, dojdi do tábora u zátoky a zlikviduj tam protiletadlové baterie. Jo a kdybys potřeboval nějakou munici nebo zbraně, tak rozvědka hlásí, že ve vesnici na východ od tábora mají sklad zbraní. Když budeš mít cestu okolo, tak se tam porozhlédni, jestli tam nemají i nějaké dokumenty…

Hráč na mapě vidí oba cíle, vidí je i přes HUD a rozhodne se, jestli půjde do tábora nebo do vesnice, podle toho, jak se mu to zrovna hodí, kudy bude pro něj lepší cesta, jestli potřebuje munici a zbraně… Stejně tak by měl třeba návštěvník e-shopu mít jasnou představu, že po vybrání zboží ho má vložit do košíku, a po vložení do košíku se může ještě podívat na doplňky, jít do jiného oddělení, nebo jít ke kase.


Saboteur, autor Pandemic studios / EA

Víme, kam máme jet (navigace) a víme, kde jsme. Hráč může jet plnit úkol (na křižovatce doleva), nebo dělat něco jiného. Hráč nebloudí, a přitom nemá omezené možnosti pohybu. V této hře použili autoři i zajímavý prvek – některá místa (ta „neosvobozená“) vidí hráč černobíle. Vizuálně jednoduché, ale výmluvné za tisíc slov!

Další věc, která je u her většinou dotažená do téměř naprosté preciznosti (kromě některých legendárních titulů), je jejich stabilita. Hráč může dělat cokoli, a hra by neměla spadnout, zaseknout se, skončit v „mimoprostoru“ za polygony, mimo hrací pole, … Stejně tak uživatel, klikající na libovolné místo webu, by nikdy neměl dokázat web vykolejit. Hra, která spadne, když hráč jde někam, kam „přece nikdo nepůjde“, nebo která zkolabuje, když hráč postaví dvě základny přes sebe, má problém, který volá po okamžité nápravě – jinak bude dotyčný titul vláčen recenzemi jako ukázka mizerně odladěné hry, hráče to odradí, nebudou s ní spokojeni, lidé si ji budou míň kupovat… Na webu je to jednodušší – nemusíme záplatovat statisíce kopií, stačí jedna jediná záplata na server. Přesto je spousta webů, které takový problém mají a jejichž tvůrci to odmávnou se slovy: „No a co? Jejich problém, nemaj’ tam klikat!

A co třeba taková konzistentnost děje a prostředí? Třeba v Half Life 2 (a spoustě dalších her) jsou červené sudy naplněné hořlavinou. Je na nich i žlutý znak „hořlavina“. Hráč zjistí, že střelbou do červeného sudu způsobí výbuch, a bude takové chování očekávat v celé hře. A ono to tak v celé hře opravdu funguje: červené po zásahu vybuchují. Naproti tomu kupříkladu dřevěné bedny nevybuchují. Analogicky: uživatel webu zjistí, že lze klikat na podtržený text a na něco, co vypadá jako tlačítko. Pokud bude k dalšímu postupu potřeba kliknout na něco, co tak nevypadá, je pravděpodobné, že mu to nedojde. Pokud objeví „něco jako tlačítko“ nebo podtržený text, na který nepůjde kliknout, bude zase zmatený.

Je spousta dalších oblastí, ve kterých mohou vývojáři her sloužit za vzor. Pusťte si někdy třeba zmiňovaný Half Life 2 nebo Portal a zapněte si „komentáře vývojářů“. Zjistíte, že všechno to, co je ve hře „naprosto samozřejmé“, je vlastně výsledkem přemýšlení. Nad každým detailem někdo přemýšlel a každý detail má svou logiku a důvod.


Portal, autor: Valve Software

Může to vypadat jako „design by accident“, ve skutečnosti má ale každá věc dané místo a existuje důvod, proč je tam kde je a proč vypadá tak jak vypadá – včetně světel, stínů a vzorku dlaždiček na podlaze.

Komentáře vývojářů hry Portal (neváží se k místnosti na obrázku!)

[Lars Jensvold] Navrhli jsme tuto místnost tak, aby upoutala hráčovu pozornost na bednu. Světlo z ochozu vrhá vodorovné stíny, které ukazují na bednu, a ta je zároveň nasvícená přímým teplým světlem ze stropu. Teplé světlo pomáhá zvýraznit bednu proti chladnému světlu ve zbytku testovací místnosti. Dlaždice rozdílné velikosti na podlaze taky napomáhají nasměrování hráčovy pozornosti požadovaným směrem.

[Paul Graham] Někdy malý detail způsobí velkou změnu. Například v této místnosti jsme museli přidat levou stranu ke zdi, aby si hráč uvědomil její tloušťku. Bez tohoto detailu si testovací hráči často mysleli, že se hala neskutečně zúžila, zpanikařili a přestali dělat racionální rozhodnutí.

Weby by určitě zasloužily podobné důkladné přemýšlení o detailech a testování na reálných návštěvnících (ne na kolegovi z kanceláře). U obřích projektů je to věc UI designéra a odborníka na použitelnost, ale u menších webů, vytvářených malými týmy, musí tyto role často převzít grafik, kodér nebo vývojář. Pokud jste v takové roli, vezměte si ponaučení právě z her.

Chcete si na Zdrojáku přečíst články o vývoji her v HTML5/JS?

Vývojáři her totiž pochopili, že nepíšou pro kolegy vývojáře, ale pro lidi, kteří vůbec netuší, co jejich práce obnáší – a ani to tušit nemusí. Herní vývojář ví, že velká část lidí, co jeho aplikaci bude používat, je ráda, když zasune CD do mechaniky a klikne na START. Předpokládat, že si hráč předtím něco přečte, něco se naučí, že má nějaké zkušenosti, to moc dobře nejde. Hra ho všechno musí naučit sama, nebo ho alespoň navést na správnou cestu. Leckdy musí hráč ve hře zvládnout opravdu složité herní koncepty – a víte vy co? On je zvládne – pokud mu je dobře, tj. adekvátně jeho potřebám, vysvětlíte.

Zkuste udělat ovládání svého webu tak jednoduché, jako je hraní her. Snadno pochopitelné, samovysvětlující, návodné, efektivní… Pomůže to určitě víc než všechny možné triky se SEO.

Za sebe dodám, že kdyby nějaký herní vývojář trošku kecal do práce těm, co navrhují rozhraní mého elektronického bankovnictví, tak bych se vůbec nezlobil. To současné mi připomíná ze všeho nejvíc Dooma, protože pokaždé, když se přihlásím, mám touhu nahodit motorovou pilu a jít si popovídat s autorem…

Komentáře

Subscribe
Upozornit na
guest
32 Komentářů
Nejstarší
Nejnovější Most Voted
Inline Feedbacks
View all comments
NN

Dnes som si škaredo zanadával nad jednou bankovou aplikáciou.

Jedinú výhradu k článku mám k popisku: „Komentáře vývojářů hry Portal – neváží se k místnosti na obrázku!“ – mohol byť pred komentármi. ;-D

nikdo

Souhlas, já furt hleděl, o jakou bednu že jde…

Maritn Hruška

Autor tady píše o tom, jak musí být všechno promyšlené do detailu a pak dá obrázek a pod něj komentář vývojářů a ty se, světe div se, k obrázku nevztahují!

A já na to pět minut zírám, hledám bednu, hledám teplé světlo a stále bezúspěšně.

Pan_Filuta

Autor si jde zahrát Portal, to je rozdíl :-)

asdasd

Tak u bankovních aplikací je inspirace hrami jasná, autoři mají určitě rádi hlavolamy :-D.

balki

Zasa clanok, co robi z citatelov debilov. Skor by som cakal clanok, ktory poodhali nieco z kuchyne vyrobcov pocitacovych hier, alebo aspon napise nieco prinosne.

Uz na clanky zo zdrojaku radsej klikat nebudem, zostane mi viacej casu na bleskovky.

et

Mozno si len potrebujes uvedomit, ze piatocne clanky su vzdy na odlahcenie a podstatne sa odlisuju od zvysku tyzdna.

dedo

Trafil si to presne – to je aktualny svet – bleskovky , klik-klik a je to hotove. Na rozmyslanie nie je cas – alebo chuť , alebo to tak chcu menezery a co by som pre stastneho sefa nespravil ved od neho zavysi moj zivot!?

Čelo

S článkem se nedá než nesouhlasit a mám dojem, že jsem podobnou úvahu již četl. Nicméně co se týče „gamifikace“, tak bych nebyl tak skeptický, protože většina firem spíše skončí u pointification či badgification. To jsou ti, co si mysleli, že komentáře z jejich webu udělají web 2.0
V podstatě správné nasazení gamification by mělo vycházet z osvědčených principů herního designu (nejen mechanik) a do produktu by mělo sednout nenásilně. Pracovat by mělo především s motivací a rozhodně by se mělo bránit „zhernění“, cílem není udělat z produktu hru.
Já v tom vidím myšlenky rozváděné v článku.
Osobně mám obavy, že u nás ale dopadne jako SEO.

Nox

Nemělo tam být „souhlasit“?
Každopádně souhlasím, že gamifikace se dá dobře použít k motivování, v tomto pohledu jde v podstatě o jiný název pro systematické odměňování, což je už dost obecný princip aby se toho lidé nemuseli tolik štítit.

Čelo

Samozřejmě mělo :) Děkuji

Čelo

Úplně si nejsem jist, co je myšleno tím „s mírou“. Nasadit pořádně nebo vůbec. Právěže mi často přijde, že špatné nasazení je právě takovéto lehké prdnutí jedné mechaniky.

Čelo

Sakra, nemám svůj den. Už chápu, že jste zřejmě myslel kde všude ji nasadit, nikoliv jak široce.

Čelo

Což se dá říct v podstatě o každém aspektu tvorby čehokoliv :)

karf

Koukám, že patřím k minoritě čtenářů, která hry vůbec nehraje (ne kvůli nějakému světonázoru, prostě mě to někdy v dobách Wolfensteina na 386 přestalo bavit). Když mě někdo dneska posadí k nějaké hře, vůbec netuším, co s tím mám dělat, obvykle to ani nejsem schopen spustit, je to pro mě naprosto neintuitivní. Mám pocit, Martine, že jste hráč a píšete to ze svého pohledu. Nejsem úplně přesvědčený, že je tento pohled správný, že je intuitivnost uživatelského rozhraní her opravdu tak dobrá. Pravidelní hráči jsou už asi zvyklí a nepřijde jim to, zrovna tak jako programátorům „bankovních aplikací“ nepřijde divné jejich zběsilé GUI.

Nox

Vidíte, zrovna takový pohled je cenný pro lidi, co se zabývají UI (ať už ve hrách nebo jinde) … máte třeba nějaké konkrétní postřehy co nebylo jasné, co by se mohlo zlepšit?

karf

Nic konkrétního nemám. Pro vývojáře her je důležité, když UI funguje pro hráče. Já nejsem cílovka, čili pro mě to nemusí fungovat. To je v pořádku. Naopak UI webů nebo aplikací musí obvykle fungovat pro širší skupinu uživatelů.

NoName

Zajímavé… já jsem tedy přestal hry hrát pravidelně až poslední 3 roky, nicméně nové tituly mi přijdou po stránce ovládání mnohem intuitivnější, než ty starší. Obzvláště intuitivní ovládání mají podle mě tituly z indie scény. Třeba takový Braid, Trine, Penumbra, Amnesia. Pustíte, skočíte do hry a nějaké ovládání vůbec neřešíte. Hra vám postupně ukazuje jaká tlačítka stisknout nebo na co kterým tlačítkem kliknout. Pokud se ale rozhodnete nejdříve zamířit do nastavení a prohlédnout/pře­nastavit ovládání, nic Vám v tom nebrání.

Nox

Hezký úvodní článek, těším se jestli budou nějaká trochu specifičtější pokračování

V reakci na anketu – pokud by se někdo zajímal o vývoj webových her ((persistent) browser-based games, pbbg), pak může navštívit komunitu vývojářů community.bbga­mezone.net a spřízněné IRC irc.freenode.net #bbg, mnoho lidí se tam zabývá právě HTML5 a JS, vyskytují se tam i autoři knihoven jako CraftyJS, Steppe renderer, Thorny engine…

X

Nenechte se zmást tím, že by herní vývojáři byli kdovíjak skvělí … posuzujete podle nejlepších her! Existuje spousta sraček, kde vývojáři právě v ovladatelnosti a použitelnosti selhávají, stejně jako se to děje u mnoha webů.

Nox

To je mimo jiné fascinující, že hry v sobě zahrnují obrovské množství prvků – herní design a mechanismy, psychologie, interaktivita a UI, grafika a třeba ilustrace, hudba, zvuky a voice acting, scénář a příběh, programování jako takové atd. V porovnání třeba s kancelářskými aplikacemi to může pro mnohé být o dost přitažlivější

Špatně placený vývojář (ani banky ani hry)

No asi se proto v bankách programátorům tolik platí, aby jim to tam do toho šíleného světa ty nudné aplikace šel někdo dělat. :-)
A proto údajně berou herní vývojáři méně (údajně – mám to vyčteno a osobně žádného herního vývojáře neznám) než je průměr pro programátory, protože zájemců vyvíjet hry je dost.

Ještě jsem zapomněl třeba umělou inteligenci a fyziku

Ano, asi ano… pak je otázka jestli radši člověk dostane trochu míň že bude dělat něco co ho baví víc. Prý je to ale taky dost mazec na deadliny ve firmách…

Zopper

Řekl bych, že je to studio od studia… Tam, kde se na termíny moc nehledí (až si budeme myslet, že je to ok, tak to vydáme) to rozhodně není tak tvrdé, jako když se musí deadline stihnout i za cenu vydání hry, která spadna při půlce spuštění. No a pak jsou (prý) studia, jako rockstar, kde slabší povahy po vydání hry urychleně odchází… :D

Trident

Vyvijet Duke Nukem Forever muselo byt lazo plazo;)

chleba

Bezva napad hazet sem takovydle clanky. Moc moc se tesim na nejakej dalsi specifictejsi.
Sam se snazim venovat tvoreni her v canvas API pro browsery. Navrhoval jsem poradateli prvni konference Indie Games ktera se bude konat todle utery v prazskem HUBu, aby nejake takove tema na pristi konferenci zahrnul. Tak doufejme ze se tak stane :]

Enum a statická analýza kódu

Mám jednu univerzální radu pro začínající programátorty. V učení sice neexistují rychlé zkratky, ovšem tuhle radu můžete snadno začít používat a zrychlit tak tempo učení. Tou tajemnou ingrediencí je statická analýza kódu. Ukážeme si to na příkladu enum.

Pocta C64

Za prvopočátek své programátorské kariéry vděčím počítači Commodore 64. Tehdy jsem genialitu návrhu nemohl docenit. Dnes dokážu lehce nahlédnout pod pokličku. Chtěl bych se o to s vámi podělit a vzdát mu hold.