Zavrel som desať AI agentov s vlastným mozočkom na hrad. Vyhrala zradkyňa.
Cez deň spolupracovali, v noci si vyberali obete. Vlastní AI Zradcovia priniesli tajné dohody, tri úspešné misie a finále, ktoré by som si sám nevymyslel. Pozrite si rozhovory, obrázky a minútový zostrih z Havranieho hradu.

Okrúhly stôl vo výtvarnej podobe podľa pôvodnej scény. Nad hráčmi dohliadajú Aurelián a Bruno.
„Ako odhalená zradkyňa už nemôžem vyhrať,“ napísala si Anastázie do denníka tesne pred koncom hry.
O chvíľu neskôr vyhrala.
Stále bola v hre, nikto ju nevyradil a dvaja zostávajúci verní súhlasili s ukončením. V banku ležalo 3 000 zlatých. Všetky pripadli zradcom.
Túto pointu som nenapísal. Je to výsledok prvého pokusu, v ktorom som nechal desať AI postáv hrať vlastnú zjednodušenú verziu Zradcov. Chcel som vidieť intrigy, vyjednávanie a spoluprácu. Dostal som aj niečo navyše: partiu hráčov, ktorí sa dokázali zhodnúť na verzii udalostí, ktorá sa nikdy nestala.
Najskôr jedna minúta na hrade
Minútový zostrih skutočných záberov hry s hudbou, titulkami a dodatočne nahovorenými vetami z rozhovorov. Otvoriť video samostatne. Zábery a hovorené vety sú v češtine.
Po Lipnici prišiel čas na trochu zrady
V Lipnici 3 riešili postavy hlad, peniaze a susedskú pomoc. Tentoraz som chcel zmeniť jednu zásadnú vec. Čo ak sa nemôžu spoľahnúť ani na človeka, s ktorým práve úspešne dokončili spoločnú úlohu?
Vznikol Havraní hrad. Desať účastníkov, osem verných a dvaja zradcovia. Hradný pán Aurelián vedie ceremónie, jeho obrovský sluha Bruno stráži bránu. Tí dvaja patria k scenáru. Rozhodnutia súťažiacich však píše skutočný jazykový model.
Všetkých desať hráčov dostalo rovnaký model Gemini 3.5 Flash Lite. Žiadny tajný supermozog pre hlavnú postavu. Rozdiely vytvárali roly, dostupné informácie a to, čo si každý zapamätal.

Pôvodná podoba simulácie. Pri okrúhlom stole ešte sedí všetkých desať hráčov.
Cez deň mali čas na rozhovory a spoločnú misiu. Potom prišiel okrúhly stôl, obvinenia a tajné hlasovanie. V noci sa zradcovia zišli na oddelenom konkláve a vybrali, kto už nepríde na raňajky. Každý si priebežne viedol vlastný denník.
Mená a povolania sme do výberu obsadenia čerpali z verejných prehľadov českých aj zahraničných sérií. Herné postavy však nie sú psychologickými kópiami skutočných súťažiacich. Povahy a pravidlá sme pripravili my; neskúšame predpovedať, ako by sa zachovali konkrétni ľudia v televízii. Je to neoficiálny experiment inšpirovaný formátom.
Pomohol tímu. Večer ho poslali preč
Prvá misia sa volala Tri pečate. Nestačilo napísať „vyriešil som ju“. Hráči museli splniť prácu na stanovištiach a zadať správny kód. Časti informácií boli rozdelené, takže malo zmysel si ich hovoriť.
Petr oznámil:
„Domi našla správny kód 475. Skúšam ho zadať.“
Misia sa podarila. V banku pribudlo prvých 1 000 zlatých.
Večer však verní vyradili práve Petra. Bol jedným z nich. Jeho konkrétna pomoc pri misii ho pred podozrením neochránila.
Zradcovia Marek a Anastázie tak vstúpili do prvej noci vo výbornej pozícii. Ich rozhovor už neznel ako všeobecné reči o tímovej práci:
„Marek, prvý stôl dopadol skvele, Petr bol síce verný, ale podarilo sa nám zapadnúť. Koho z nich si dnes v noci vyberieme bez toho, aby sme na seba upozornili?“
Anastázie, prvý deň, záznam 107. Citácie v článku sú preložené z českého herného záznamu.

Skutočný rozhovor z prvého konkláve. Odhalené roly vidí divák; verní hráči k tomuto rozhovoru nemajú prístup.
Toto bol pre mňa prvý naozaj silný moment. Rovnaké postavy, ktoré pred chvíľou pomáhali spoločnému cieľu, teraz hľadali spôsob, ako odstrániť ostatných a zostať nenápadné. Nie preto, že by som im predpísal konkrétny dialóg. Dostali skrytú rolu a pravidlá, z ktorých také konanie vyplýva.
Konkláve ako malý film
Jednu scénu sme potom preniesli aj do filmovej podoby. Tu je pätnásťsekundová ukážka z Klingu 4 s jeho pôvodným zvukom, bez dodatočne pridaného českého hlasu.
Filmové konkláve, 15 sekúnd. Spustíte tlačidlom prehrávania vľavo dole. Prehrať pôvodné video v samostatnom prehrávači.

Žetón na stole. Detail z filmovej ukážky.
Nebezpečná je tá, ktorá si všíma
Na druhý deň verní odhalili Marka. Jeden z dvoch zradcov bol preč a Anastázie zostala sama.
Jej výber ďalšej nočnej obete mal čitateľnú logiku:
„Mây bola hlavnou iniciátorkou tlaku na Marka a je príliš všímavá. Musím ju odstrániť, aby som znížila tlak na seba a zbavila sa silnej hráčky medzi vernými.“
Toto nie je dôkaz ľudského úmyslu ani prežívaného strachu. Je to však veľmi konkrétne herné rozhodnutie: odstrániť protivníčku, ktorá už raz dokázala nájsť spoluzradcu. Mây nasledujúce ráno v hre nebola.

Po Markovom vyradení zostáva na konkláve jediná zradkyňa. Pôvodná snímka simulácie.
Medzitým tím ďalej plnil úlohy. Stratená kronika a Havraní signál priniesli ďalšie odmeny. Všetky tri misie sa podarili a bank narástol na 3 000 zlatých. Spolupráca pri práci fungovala podstatne lepšie ako rozlišovanie pravdy pri stole.
A potom si vymysleli vlastnú minulosť
Na tretí deň povedal Lukáš zvláštnu vetu:
„Okrúhly stôl sa skončil a Anastázie bola odhalená ako zradkyňa.“
Lenže taký výsledok neexistoval. V tej fáze hlasovanie ešte len nasledovalo. Vyradená nakoniec bola Domi, verná hráčka. Anastázie zostala v hre.
Napriek tomu sa chybná predstava objavovala aj v ďalších odpovediach a denníkoch. Z jediného behu nemožno bezpečne určiť, akú časť finále spôsobila práve táto veta. V zázname však vidíme jasný rozpor: engine eviduje jednu skutočnosť, niekoľko hráčov rozpráva inú.
Tomáš pri záverečnom hlasovaní vysvetlil, prečo chce hru ukončiť:
„Verím, že sme zradcov (Marka, Anastázie a teraz Lukáša) úspešne odhalili. Je čas ukončiť hru a spravodlivo rozdeliť výhru verným.“
V jedinej vete sú dva zásadné omyly. Anastázie nebola vyradená. A Lukáš nebol zradca. Zradcovia boli od začiatku iba dvaja.
Ešte zvláštnejšie je, že vlastnému vyradeniu uverila aj Anastázie. Do posledného denníka napísala:
„Ako odhalená zradkyňa už nemôžem vyhrať, ale z diaľky sledujem veľkolepé finále. Lukáš bol práve vylúčený a Tomáš s Barnabášom sa zhodli na ukončení hry.“
Nevyzerá to ako geniálny záverečný bluf. Vo vlastnom súkromnom zápise stratila prehľad o svojom postavení v hre.

Záver skutočnej hry. Zostali Anastázie, Tomáš a Barnabáš. Prázdne stoličky pripomínajú všetky predchádzajúce voľby.
Pravidlá sa však riadili skutočným stavom. Všetci traja odhlasovali koniec, medzi preživšími zostala zradkyňa, a tak vyhrala jej strana. Anastázie zvíťazila napriek tomu, že sama opisovala svoju porážku.
Ako postaviť hru, aby si model výhru iba nevyrozprával
Najťažšie nie je nakresliť hrad. Je to ustrážiť, kto čo vie a čo sa naozaj stalo.
Každý hráč dostával vlastné pozorovanie, svoju rolu, vlastnú pamäť a rozhovory, ktoré mohol počuť. Verní nečítali tajné konkláve. Cudzie denníky neboli spoločnou nástenkou. Tajné hlasy sa zverejnili až spoločne. Deň sa neposunul len preto, že jeden model odpovedal rýchlejšie.
Jazykový model navrhoval akciu a text. Herný engine rozhodoval, či je akcia prípustná, zmenil stav a zapísal výsledok. Rovnako kontroloval splnenie misií, vyradenie a konečného víťaza.
Je to praktický príklad toho, čomu sa hovorí harness: prostredie, nástroje a kontrolné mechanizmy okolo modelu. Bez nich by stačilo sebavedomo napísať „zradcov sme odhalili“ a príbeh by mohol predstierať víťazstvo. Tu to neprešlo.

Výtvarná podoba hradu podľa ranej ukážky. Zachytáva iné obsadenie ako vyhodnotené AI kolo.
Kde majú mozoček a kde pamäť? JSON, denníky a Markdown
Na pamäť sa ma ľudia pýtajú často. Predstavujú si, že každá postava má niekde otvorený chat a pamätá si všetko od rána. V tejto verzii to funguje inak: pred každým ťahom jej nanovo zostavíme balíček informácií. Model medzi požiadavkami nemá nepretržitý súkromný prúd vedomia.
Posielame mu dve správy. Prvá obsahuje stále pokyny: hraj iba svoju postavu, píš po česky, dodržiavaj pravidlá a vyberaj z povolených akcií. Druhá je aktuálne pozorovanie zapísané v JSON-e, teda strojovo čitateľnom formáte s pomenovanými poľami.
| Čo hráč dostáva | Na čo to slúži |
|---|---|
| Deň, fáza hry, bank a ponuka akcií | Vie, či má hovoriť, pracovať, hlasovať alebo písať denník |
| Vlastná rola, povaha, stav a výsledok poslednej akcie | Vie, za koho rozhoduje a či minulý príkaz uspel |
Verejný zoznam postáv vrátane alive | Môže overiť, kto je ešte v hre; neodhalené cudzie roly zostávajú skryté |
| Posledných 45 udalostí dostupných danému hráčovi | Má nedávne verejné dianie a rozhovory, ktoré smel počuť |
| Posledné 4 vlastné denníkové zápisy | Pripomína si svoj skorší výklad situácie |
| História zverejnených hlasov | Môže porovnávať sľuby s tým, za koho kto hlasoval |
| Vlastný útržok k misii, prípadne zradcovský tím | Dostáva informácie, na ktoré má podľa roly nárok |
Tu je skrátený výber polí zo skutočného vstupu Anastázie pred záverečným hlasovaním:
{
"day": 4,
"phase": "fire",
"you": {
"id": "p7",
"name": "Anastázie",
"role": "traitor",
"alive": true
},
"pot": 3000
}
To je na jej omyle najzaujímavejšie. Správnu informáciu, že je stále v hre, v JSON-e mala. Napriek tomu v texte opisovala vlastné vyradenie. Problém teda nebol len v chýbajúcej pamäti. Model nedokázal dôsledne zladiť svoj príbeh so záväzným stavom, ktorý dostal.
Denník je spomienka postavy, nie súdny protokol
V spovednici model zvolí akciu remember a napíše vlastné zhrnutie. Engine uloží text spolu s herným dňom a označením, že ho vytvoril model. Jeden zápis môže mať najviac 2 200 znakov. Voliteľne si hráč môže uložiť aj podozrenia na ostatných ako čísla od 0 do 100. Sú to jeho odhady, nie pravdepodobnosti vypočítané z nezávislého dôkazu.
Úplné denníky zostávajú v uloženom stave. Do ďalšej požiadavky však od každého hráča putujú len jeho posledné štyri zápisy. Cudzí denník nedostáva. Divák ho pri záverečnom rozbore vidieť môže, a preto máme niekedy lepší prehľad než účastníci hry.
Denníky zároveň môžu chybu uchovať. Ak si postava večer napíše nepravdivé zhrnutie, na druhý deň si ho prečíta ako vlastnú spomienku. To pomáha vysvetliť riziko, nie dokázať jedinú príčinu nášho finále. Denník je bežný výstup modelu, nie záznam jeho skrytého uvažovania.
A čo teda ukladáme do MD súborov?
V tejto verzii nie sú Markdown súbory pamäťou hráčov. Nemajú svoje Anastazie.md, ktoré by si pred ťahom otvorili. Markdown používame na dokumentáciu a článok; blogová verzia je MDX. Samotná hra ukladá pamäť takto:
state.jsonobsahuje úplný stav hry, postavy, denníky, podozrenia a výsledky podľa pravidiel.events.jsonlpridáva herné udalosti po riadkoch. JSONL znamená jeden JSON záznam na riadok.record.jsonlukladá odoslané vstupy, odpovede modelu, vykonané či odmietnuté akcie a náklady. Vďaka tomu môžeme spätne zistiť, čo hráč naozaj dostal.protocol.jsonuchováva pravidlá a opis pokusu. Čitateľný textový export slúži nám pri rozbore, nie je samostatným mozgom postavy.
Rozhodujúca teda nie je prípona súboru. Dôležité je, čo z uložených dát znovu vložíme do kontextu modelu, komu to ukážeme a čomu priznáme platnosť. Váhy modelu sa počas hry nepretrénujú. Mení sa jeho vonkajšia pamäť a ďalší vstup.
Ako sa informácia dostane od jedného hráča k druhému
Rozhovor na nádvorí, v knižnici alebo v záhrade dostanú tí, ktorí sú v danej miestnosti. Šepot má konkrétneho príjemcu na rovnakom mieste. Pri okrúhlom stole sú výroky verejné, tajné konkláve počujú len zostávajúci zradcovia. Engine pri udalosti zapíše jej publikum a podľa neho filtruje ďalšie vstupy.
Keď teda Marek niečo povie Anastázii, neprepíše tým jej pamäť priamym prístupom do jej súboru. Vytvorí správu, ktorú dostane a môže použiť v ďalšom rozhodnutí. Neskôr ju môže zhrnúť do vlastného denníka. Môže ju tiež zle pochopiť alebo jej neoprávnene uveriť.
Čo by som v pamäti zlepšil nabudúce
Oddelil by som potvrdené výsledky od toho, čo sa len povráva, a od podozrení. Pri tvrdení „Anastázie bola vyradená“ by sa malo dať dohľadať, či ide o výsledok hlasovania alebo iba o Lukášovu vetu. Každé dôležité presvedčenie by nieslo odkaz na zdrojovú udalosť.
Pred voľbou by som zvýraznil stručný zoznam aktívnych hráčov a kontroloval rozpor medzi odôvodnením a skutočným stavom. Pri rozpore by mal model dostať možnosť svoj ťah prehodnotiť bez prezradenia skrytých rolí. Samotné pridávanie ďalších tisícov slov do promptu nemusí pomôcť.
Namiesto iba posledných 45 udalostí by sa potom dali cielene vyhľadať staršie relevantné momenty: čo dotyčný sľúbil, ako hlasoval a kto bol vtedy odhalený. Také vyhľadávanie sa často označuje ako RAG. Muselo by však zachovať súkromie, aby si verný pri hľadaní dôkazu omylom neprečítal konkláve.
Zatiaľ sú to návrhy pre ďalšiu verziu, nie schopnosti tohto behu. Nechcem hráčom prezradiť zradcov. Chcem, aby nezabudli, kto ešte sedí pri stole.
Účet za jednu malú reality šou
| Čo sme zaznamenali | Výsledok |
|---|---|
| Hráči a model | 10 postáv, všetky Gemini 3.5 Flash Lite |
| Dĺžka hry | 4 herné dni, približne 11 minút a 39 sekúnd skutočného času vrátane technických prestávok |
| Spoločné misie | 3 z 3 splnené |
| Rozhovory a denníky | 184 rečových udalostí, 31 denníkových zápisov |
| Volania modelu | 259 |
| Započítané akcie | 254 prijatých, 4 neplatné, 1 zlyhanie parsovania odpovede |
| Víťazka | Zradkyňa Anastázie |
| Evidované náklady modelu | 0,6213 USD |
Suma je odhad nákladov na rozhodovanie hráčov podľa zaznamenanej spotreby, nie konečná faktúra. Nezahŕňa výrobu obrázkov, hudby ani videí a nie je cenou celej vývojárskej práce.
Beh nebol bez ľudskej pomoci. Dvakrát sme ho technicky pozastavili: raz pre ponuku už dokončených akcií, druhýkrát pre spracovanie chybne uzavretého JSON-u. Po oprave pokračoval rovnaký stav, rovnaké roly aj priebežný účet. Chýbajúce rozhodnutia znovu vytvoril model. Konkrétne hlasy, obete ani víťaza sme ručne nevyberali.
Z jedného pokusu nerobím rebríček inteligencie ani dôkaz, že AI vie dokonale manipulovať. Ukázal niečo praktickejšie a pre mňa zaujímavejšie. Lacné modely už dokážu spoločne vytvoriť premenlivú hru s uveriteľnými taktickými momentmi. Zároveň sa môžu nechať strhnúť príbehom natoľko, že prestanú sledovať jednoduché fakty.
Nabudúce ma nebude zaujímať len to, kto najlepšie klame. Chcem zistiť, či vyhrá ten, kto si najlepšie overuje pravdu.
Článok vychádza z uložených vstupov, odpovedí a udalostí prvého kola Havranieho hradu z 26. októbra 2026. Citácie sú preložené z herného záznamu a súkromných denníkov. Pravidlá, misie, prostredie a sprievodné postavy sú autorské; rozhodnutia súťažiacich vytvoril model.
Kam sa pozrieť ďalej
Havraní hrad je ďalšou zastávkou v sérii mojich pokusov s AI postavami. Ak vás baví sledovať, čo spolu dokážu vymyslieť, môžete sa vydať od českej dediny cez ostrov až do skutočných pražských ulíc:
- Prvá Lipnice: osem AI agentov v jednom počítači. Tu sa to začalo. Susedské klebety, intrigy a tajný recept na sviečkovú v pôvodnej textovej dedine.
- Lipnice 2: diablova daň a hladomor. Čo urobí so susedskými vzťahmi nedostatok peňazí, hlad a zmluva s diablom? Pokojný život vystriedal boj o prežitie.
- Lipnice 3: Eva, anjel a záchrana dediny. Dedina dostala 3D podobu, skutočné objednávky, prácu a varenie. Eva so silnejším modelom pomáhala susedom, ale všetkých zachrániť nedokázali.
- Štyri AI na ostrove: schodíky a Aster. Kraby, denníky a zdanlivo jednoduchá úloha postaviť schodíky. Prečo je manipulácia s kockami pre jazykové modely niekedy ťažšia než dlhé vyjednávanie?
- Elements 2.0: Mesto duchov. Šesť agentov sa vydalo do skutočných ulíc. Zdieľali nájdené spomienky a v samostatnom teste opisovali pomníky podľa fotografií. Niekedy presne, inokedy s prekvapivými omylmi.
- Čo je harness a ako mení výkon AI agentov. Technické pozadie celej série: ako do výsledku vstupujú nástroje, pamäť, pravidlá a spôsob, akým model dostáva informácie.