akce
preview
Kingdom Come: Deliverance - O umělé inteligenci

Kingdom Come: Deliverance - O umělé inteligenci
Kingdom Come: Deliverance - O umělé inteligenci
17:24, 10.04.2014

Na bratislavskej výstave Game Expo sme navštívili prednášku Tomáša Plcha z Warhorse Studios, ktorý vedie tým vývoja umelej inteligencii pre hru Kingdom Come: Deliverance. Prednáška bola najmä pre laika veľmi zaujímavá a nápaditá. Zároveň sme boli svedkami unikátnych záberov hry, z tak trochu inej perspektívy. A to zameranej čisto na umelú inteligenciu. V hre bude AI vyzerať v skutku inteligentne. Ak napríklad budete oblečený v meste ako posledný chudák, nikto sa s vami nebude chcieť rozprávať. Naopak, keď budete v drahom brnení a s mečom v ruke, vtedy sa vás budú báť.

Tomáš Plch je doktorand Karlovej univerzity v Prahe na Matematicko Fyzikálne Fakulte, ktorá so štúdiom Warhorse priamo spolupracuje a do práce na projekte sú zapojený aj študenti z fakulty. Na výslednom produkte to určite bude vidieť. Kingdom Come: Deliverance je hra zameraná na kvalitnú umelú inteligenciu, aby všetko pre hráča vyzeralo rozumne. Systém umelej inteligencie s názvom Inception je unikátny a veľmi moderný, so zameraním na RPG hry s otvoreným svetom.

Klik pro zvětšení (Kingdom Come: Deliverance - O umělé inteligenci)

Umelá inteligencia na vysokej úrovni

V hre bude veľká vačšina vecí mať svoju AI. Napríklad taká stolička = Ak príde do miestnosti trojica postáv a stoličky budú hocijako rozhádzané po miestnosti, tak sa NPC postava najprv poobzerá a potom jej stolička "povie", tak si na ňu je možné sadnúť. Alebo vám plný pohár piva povie, že ho máte vypiť a prázdny pohár povie barmanovi, že ho má odniesť.

NPC postavy budú na prostredie tiež reagovať rôznorodo. Ak majú dlho objednané pivo a nikto nechodí, tak radšej idú do inej krčmy. Môžu zistiť, že krčmára niekto zavraždil a to potom uháňajú preč o to rýchlejšie. Veď kto by chcel sedieť v prázdnej krčme.

Klik pro zvětšení (Kingdom Come: Deliverance - O umělé inteligenci)

Jednoducho všetko reaguje so všetkým. Akcia vytvára reakciu a je to uzavretý kolobeh. NPC si vždy všetko dáva do súvisu, každú vec, ktorá sa udeje, alebo čo naruší kontinuitu. Postava si napríklad v pokoji doma spí a vy sa vlámete do domu a vypýtate si od nej úlohu, pričom ju zobudíte, tak skôr vás vyhodí a zavolá stráže, než by vás poverila nejakou úlohou.

Ak vás NPC pristihne ako ju okrádate, tak vám dá na hubu, alebo ak ste nebezpečne pôsobiaci, tak utečie, alebo zavolá stráže.

Ak vonku prší, tak nemôžete čakať, že vás bude na roli čakať nejaká NPC postava s úlohou, ale sedí pekne doma v teple. Jednoducho NPC reagujú s prostredím a naopak. Zároveň všetko beží kvázi na pozadí. Čiže keď je hráč v lokalite A, tak vie kde má čakať logicky postavu z lokality B a nebude na mieste na ktorom nemôže byť napríklad v noci.

Na prednáške sa spustil hlásič požiaru, ale našťastie to bol iba falošný poplach. Avšak stačilo to na to aby nám Tomáš na tom mohol ukázať príklad umelej inteligencie, na ktorej pracuje. Keď sa spustí požiarné hlásenie, tak jednoducho človek sediaci v prednáškovej sále neostane sedieť na zadku ale vypadne von a všetko nechá tak ako je. Podobné to je v hre Kingdom Come. Ak vás NPC pristihne ako ju okrádate, tak vám dá na hubu, alebo ak ste nebezpečne pôsobiaci, tak utečie, alebo zavolá stráže.

Klik pro zvětšení (Kingdom Come: Deliverance - O umělé inteligenci)

Ak je však postava zaujatá nejakým procesom, napríklad sa na námestí deje niečo zaujímavé, tak môžete kradnúť ľahšie, lebo sa jednoducho postava zaujíma o niečo napínavejšie a sústredí sa na danú činnosť. Jednoducho všetko pôsobí na všetko.

V hre má inteligenciu všetko. Dokonca aj ovce. A tie dokážu pekne zavariť! Kus ovčieho "mozgu" obsahuje aj pastierovu pasáž. Čiže keď budete naháňať ovce aby išli do ohrady, ovca to pochopí čo po nej chcete. Len musíte ísť na to správne. Inak ich nikdy nezaženiete všetky tam kam chcete. Pôsobí to reálne.

Inteligencia v titule zachádza až tak ďaleko, že si NPC postava vie zobrať z domu aj predmet, ktorý vyžaduje danú činnosť. Čiže keď zavoláte NPC na lov rýb, zoberie si udicu, ale keď pôjde loviť zver, tak nepôjde s lopatou.

V hre by malo byť množstvo postáv s pokročilou inteligenciou a žijú na cca deväť kilometrov štvorcových sveta. Na prvý pohľad sa to nemusí zdať veľa, ale je to na vyššej úrovni ako všetky ostatné hry z hľadiska nielen umelej inteligencie. Jednoducho tu je všetko prepracované. Ak budete bežať medzi ľuďmi a do nich vrážať, neostanú len tak nehybne stáť, ale naštve ich to, pobúria sa. Osobne sa mi páči ako si dávajú záležať na práce na AI, pretože je to veľmi dôležité, nielen pre titul Kingdom Come. Ak to bude úspešné, budú v tom pravdepodobne pokračovať vývojári aj na ďalších hrách a hry sa zase niekam posunú. Hra nie je len o grafickej stránke a príbehu, ale aj o fungujúcom svete. A RPG žáner je taký malý fungujúci svet. Ak niečo nefunguje rozumne, hráča to rozhnevá.

Klik pro zvětšení (Kingdom Come: Deliverance - O umělé inteligenci)

Krátky rozhovor s Tomášom Plchom

Po prednáške som si odchytil Tomáša, ktorý mi pred približne piatimi prizerajúcimi ľuďmi na všetko odpovedal a rozprával oveľa viac než na čo som sa pýtal. Celý rozhovor vydal na šestnásť minút, ale video je bohužiaľ v nízkej kvalite, a tak sme ho na žiadosť autora nepripojili. Miesto neho aspoň krátky textový úryvok.

Predstavíš sa našim čitateľom?

Moje meno je Tomáš Plch, som absolventom pražského Matfyzu a som hlavný AI inžinier vo Warhorse na hre Kingdom Come: Deliverance.

Aká je tvoja náplň práce?

Začínali sme s tým, že sme vymysleli podstatu nášho systému umelej inteligencie od základu(in house vytvorený Inception AI Enigne pozn. redakcia) a teraz ho implementujeme a celé to riešime. Tvoríme celý ten systém , ktorý rieši všetky NPC postavy. Moja práca je dvanásť hodín denne, osem dní týždenne programovať , vymýšľať a riešiť veci tak aby to všetko nakoniec fungovalo rozumne. Je to v princípe dvojaká pozícia. Riešiť požiadavky ostatných ľudí v teame a programovať. Programujeme ten systém, ktorý sme si vymysleli a ktorý som koncepčne založil na tom, čo som kedysi vytvoril na diplomovú prácu. S ďalšími troma kolegami to programuje a vymýšľame čo k tomu dorobiť nového. Robíme okrem iného i inhouse editovacie a debugovacie nástroje . Je to všeho-chuť. Na jednej strane dohadovanie sa s ostatnými ľuďmi v tíme a na druhú stranu naplňovanie vlastnej vízie. AI systém je vlastne to čo poháňa ten svet a ty o tom potrebuješ jednať so všetkými ostatnými.

Predpokladám, že to zaberá najviac času...

No, zaberie to dosť času, ale u nás to nie je také hrozné, pretože sme všetci naladený na rovnakú vlnu a preberáme to proste kontinuálne. Najviac riešime "ambient" AI. Riešime napr s dizajnérmi ako sa to má chovať, pretože oni majú nejakú predstavu a my trošku inú. Napríklad, že keď vytiahneš sekeru na píle, tak to nie je taká hrozná vec ako keď tam vytiahneš luk a podobne, ako sa to má zachovať. Učíme skriptérov ako majú to AI tvoriť, a oni nám zas vysvetľujú ako by to robiť chceli. My im vlastne dávame LEGO kocky, učíme ich to skladať dohromady. Potom to ďalej používajú a vymýšľajú ako sa to dá ohnúť. Prvý spôsob na ktorý prídu naši skriptéri skoro vždy nejaké znásilnenie nášho systému, nejakým okrajovým prípadom. Ten náš systém sme si vymysleli, tak si ho musíme pred všetkými obhájiť, je to neustály boj. :)

Tak, do vydania to ale stihnete vyladiť...
Určite.
Radšej vydať dokončený titul, ako nedokončený...

O tom nerozhodujem ja, ale vymysleli sme si ten systém umelej inteligencie, budujeme ho od základu a môžeme si povedať, kde to chceme orezať, alebo, že toto bude pridané niekedy inokedy. Máme tam nejaké základné veci, ktoré tam mať musíme a veľa vecí funguje tak ako má a sme s tým veľmi spokojní.


CGwillWin