Domov / Ako vznikol tento projekt
Rok 2026
Ako vznikol tento projekt
Hru z roku 1997 sme za dva kalendárne dni preniesli do prehliadača a ďalších päť dní sme ju ladili, preverovali a pripravovali na verejný web. Robil to tím programov umelej inteligencie, jeden architekt a jeden človek, ktorý rozhodoval. Poctivý záznam: čo sa kedy stalo, čím sme to robili a ako sme overovali, že hra funguje.
Next Space z roku 1997 bežala v DOSe a dnes ju bez zvláštnych trikov nespustíte. Tento projekt ju znovu postavil ako webovú aplikáciu. V prehliadači sa načítajú pôvodné súbory z CD (miestnosti, skripty, hlas, hudba, videá) a nový program robí to isté, čo robil ten pôvodný. Hádanky a dej sa neprepisovali ručne: idú z pôvodných dát, rovnako ako v roku 1997.
Čísla na tejto stránke nie sú z pamäte. Každé sme prepočítali v histórii zmien a v dokumentoch projektu. Kde sa niečo nedalo overiť, je to označené. Stránka vznikla 2. 10. 2026 a 8. 10. 2026 sme ju doplnili o všetko, čo sa odvtedy zmenilo.
Projekt v číslach
- Začiatok: ráno 1. 10. 2026. Prvé súbory na serveri vznikli o 10:01, prvý záznam v histórii zmien o 10:57. Nič sa nerobilo skôr: príprava (fáza 0) prebehla v tejto prvej hodine.
- Prvé dva dni: do 2. 10. 2026, 14:46 prešlo od prvých súborov takmer 29 hodín, s nočnou prestávkou od 22:08 do 11:19. Vzniklo 127 záznamov a hra sa už 1. 10. večer dala prejsť od začiatku po titulky v oboch jazykoch.
- Celý projekt: od prvého záznamu po posledné zlúčenie pred touto aktualizáciou (8. 10. 2026, 0:22) prešlo 6 dní a 13 hodín. Záznamy pribúdali každý deň od 1. do 7. 10.
- Záznamy: 358 (253 obyčajných a 105 zlúčení práce jednotlivých úloh). Po dňoch: 96, 73, 53, 37, 31, 33 a 30, plus 5 tesne po polnoci 8. 10.
- Kontrola: 79 zlúčení nesie poznámku, že ich skontroloval architekt. Zvyšných 26 je pomocných: len prenášajú novú hlavnú vetvu do rozpracovanej úlohy.
- Rozsah: vyše 24 700 riadkov programu hry (po prvých dvoch dňoch vyše 18 000), vyše 24 200 riadkov testov (takmer 12 000) a 30 hlavných dokumentov s vyše 124 000 slovami (21 dokumentov a vyše 70 000 slov).
- Testy: 1 284 automatických testov súčastí (2. 10. ich bolo 833) a stovky testov v skutočnom prehliadači, podrobnejšie nižšie.
Časová os
Práca išla vo vlnách: skupiny úloh bežali súčasne. Označenia T1 až T33, V1 a W1 až W7 sú čísla úloh, ktoré rozdelil architekt (pozri ďalej). Neskoršie úlohy často číslo nemajú, v tabuľke sú opísané slovami.
| Fáza | Kedy | Úlohy | Čo sa stalo |
|---|---|---|---|
| 0. Príprava | 1. 10., 10:01 – 10:57 | základ | Z CD sa vytiahli súbory, pôvodný program sa rozobral na čitateľný kód a rozlúštili sa formáty dát aj jazyk skriptov. |
| 1. Plán | 1. 10., 10:59 – 11:10 | architektúra | Architekt napísal plán enginu a rozdelil prácu. |
| 2. Základy | 1. 10., 11:05 – 11:42 | T1, T2, T3 | Kostra aplikácie, interpret skriptov (86 inštrukcií), prehrávače zvuku, hudby a videa. |
| 3. Postavy a hra | 1. 10., 11:54 – 15:00 | T4, T5, V1 | Frank chodí, klikanie funguje, bežia rozhovory a scény. Z videa vznikol návod s 345 krokmi. Hra bola hrateľná asi štyri hodiny po prvom zázname. |
| 4. Slepé uličky | 1. 10., 11:23 – 18:14 | T7a, T7b, T7c | Počítač prešiel pravidlá hry a hľadal miesta, kde sa hráč zasekne. Schválené opravy sa zapli. |
| 5. Dve CD, dva jazyky | 1. 10., 15:47 – 18:46 | T8, T12 | Hra číta aj slovenské CD z júna 1997, na stránke sa prepína slovenčina a čeština. |
| 6. Prechod celou hrou | 1. 10., do 19:26 | T6 | Automat prejde hru od začiatku po titulky v oboch jazykoch (asi 8,5 hodiny po prvom zázname). |
| 7. Pohodlie hráča | 1. 10., 18:15 – 22:03 | T9, T11, T13, T14, T16, T17 | Preskočenie úvodu, nápoveda, hlas bez ostrihov, čistejšie ovládanie, zväčšovanie obrazu, hudba bez prerušení, oprava vypadávania zvuku. |
| 8. Všetky konce | 1. 10., do 22:08 | T15 | Prehraté všetky smrti, zlý koniec, dobrý koniec a vetvy rozhovorov. |
| 9. Druhý deň: ladenie | 2. 10., 11:19 – 14:46 | T18 – T22 | Hlásenie chýb, výber kapitoly a miesta, hranie „ako človek“, zametanie robustnosti. |
| 10. Web | 2. 10., 12:49 – 13:56 | W1 – W3 | Médiá, texty a samotný web. |
| 11. Ukladanie, mobil, tri jazyky webu | 2. 10., 16:16 – 18:05 | T23, T24, W4 – W6 | Pri nahrávaní hra ponúka 61 pozícií z príbehu a pri ukladaní štyri voľné miesta. Hra sa dá ovládať dotykom na telefóne. Web je po slovensky, česky a anglicky, pribudla táto stránka a všetky postavy s obsadením podľa Petra. |
| 12. Anglická verzia | 3. 10., 20:37 – 21:14 | T26, T27 | Päť agentov preložilo do angličtiny 3 479 textov hry (asi 25 600 slov). Hlas ostáva pôvodný, anglické sú titulky a texty. |
| 13. Slabá sieť a dátový balík | 3. 10., 21:55 – 4. 10., 20:35 | T25, T28 – T32 | Hra zvláda pomalé pripojenie a dá sa stiahnuť do zariadenia. Obraz pri prechodoch nebliká. Hlas, hudba a videá sú v moderných, menších formátoch. Nápoveda vo všetkých 61 pozíciách prešla kontrolou. |
| 14. Chyby z hrania, bezpečnosť, brána | 5. 10., 10:45 – 18:49 | T33 a úlohy bez čísla | Opravy dvoch chýb, ktoré Peter našiel hraním, bezpečnostná kontrola a jeden príkaz, ktorý pred každou aktualizáciou hry všetko preverí. |
| 15. Revízie kódu | 6. 10., 10:50 – 20:25 | bez čísla | Dve nezávislé revízie kódu, Petrove rozhodnutia k ich nálezom, české rozhranie hry, aktualizované knižnice bez známych zraniteľností. |
| 16. Verejný web | 7. 10., 16:08 – 20:32 | bez čísla | Hra a web na jednej verejnej adrese, oprava zbytočného sťahovania na novom hostingu, poctivé počítanie snímok, ukladanie cez pôvodné obrazovky hry. |
| 17. Spresnenia | 7. 10., 23:16 – 8. 10., 0:22 | bez čísla | Stránka čísel len s tvrdými údajmi, pätička len s kontaktom, revízia všetkých prekladov webu, nové predvolené nastavenie hlasu a titulkov. |
Čo sa v týchto dňoch zmenilo, podrobnejšie opisuje kapitola Čo sa zmenilo po prvých dvoch dňoch.
Z čoho sme vychádzali
Dve CD. Slovenské z júna 1997 a české zo septembra 1997. Dátumy vychádzajú zo súborov: hlavný program hry je na slovenskom CD z 28. 6. 1997, na českom zo 17. 9. 1997. Medzi júnom a septembrom autori hru ešte opravovali: v štrnástich miestnostiach sa líši logika, napríklad opravili zamrznutie ovládania v izbe 37. Slovenskú verziu v našom engine preto hráme s týmito opravami autorov a pôvodný jún sa dá zapnúť prepínačom.
Herné súbory sú zdroj pravdy. Obrázky, texty, hlasy, hudba, videá aj logika miestností pochádzajú z CD.
Longplay na YouTube (Next Space (1997) – Longplay – Slovenský dabing, autor MiNHO Dotus, zverejnené v roku 2018, 3 hodiny 38 minút 38 sekúnd) sme použili len na to, čo súbory nepovedia: poradie, v akom hráč prechádza hrou, riešenie hádaniek a kontrolu, či náš výsledok vyzerá ako originál. Z videa sa urobil prepis reči, časová os miestností a návod s 345 krokmi. Pri skutočnom prehrávaní sa ukázalo, že v návode chýba 50 krokov a 25 je upravených. Doplnili sa podľa pravidiel zo skriptov hry, nie z videa.
Vedľajší nález. Na českom CD je v súbore VOICE/ROOM54.SAM ukrytých 16 minút a 10 sekúnd slovenského dabingu, na ktorý sa hra nikde neodvoláva. Hypotéza z dokumentácie: pri výrobe českej verzie sa omylom nechal v súbore zvyšok slovenských nahrávok.
Kto čo robil: modely umelej inteligencie
Projekt nepísal jeden program, ale tím agentov. Agent je tu inštancia jazykového modelu, ktorá dostane písomné zadanie (napríklad „napíš prehrávač zvuku a hudby a over ho testami“), pracuje samostatne vo vlastnej kópii projektu, spúšťa programy a testy a nakoniec napíše správu: čo urobila, ktoré testy prešli, čo ešte chýba. Žiaden agent nevidí celú hru naraz, preto treba architekta.
- Claude Opus 5.5: architekt. Navrhol riešenie, rozdelil prácu na úlohy (T1 až T33, V1, W1 až W7 a ďalšie bez čísla), určil, ktoré bežia súčasne, a skontroloval každý výsledok (kód aj snímky obrazovky), kým ho zlúčil do hlavnej vetvy.
- Claude Sonnet 5.5: všetci vykonávatelia. Každú úlohu robil samostatný agent v samostatnej pracovnej kópii (82 vetiev úloh, po prvých dvoch dňoch 34), aby sa agenti navzájom neprepisovali. Prvú hodinu plán určil štyri úlohy súčasne (T1, T2, T3, V1), čoskoro pribudla piata (T7a). Aj obe revízie kódu robili samostatní agenti Sonnet 5.5. Pod záznamami je podpis Sonnet 5.5 pri 216 záznamoch a Opus 5.5 pri 71 (po prvých dvoch dňoch 51 a 11).
- Claude Opus 5.5: revízia prekladov. Český a anglický text webu a rozhrania hry 7. a 8. 10. prečítal silnejší model: vedúci a osem recenzentov Opus 5.5 porovnali každý odsek so slovenčinou.
- faster-whisper large-v3: prepis reči. Previedol slovenský longplay a ukrytý dabing na text s časmi. Tak sme overili, že slovenský hlas z CD sedí na slovenské texty (18 z 18 vzoriek) a že video sa zhoduje so slovenskými textami (1 019 z 1 393 viet s podobnosťou aspoň 85 %, oproti 243 s českými).
- Modely na fal.ai: pokus s HD grafikou, pozri nižšie.
Pravidlá pre agentov boli písomné. Najdôležitejšie: každá funkcia prevzatá z originálu nesie odkaz na adresu v pôvodnom programe a overovanie je povinné (testy bez chýb, snímka z nášho enginu a porovnanie s originálom bežiacim v DOSBoxe).
Nástroje
- Ghidra: program, ktorý z hotovej hry (formát DOS4GW LE) skladá čitateľný kód v jazyku C. Dostali sme kód všetkých funkcií pôvodného programu, nie však pôvodné zdrojové súbory.
- Emulátor procesora Unicorn ako „veštec“: spúšťa nezmenený pôvodný strojový kód a porovnáva jeho výsledky s naším programom (hľadanie cesty, klikanie, pohyb postáv). Keď sa nezhodujú, chyba je v našom kóde.
- DOSBox-X bez obrazovky: pôvodná hra bežiaca na serveri, z ktorej robíme snímky na porovnanie.
- TypeScript a Vite: jazyk a nástroj, v ktorých je napísaný nový engine, aby bežal v prehliadači.
- Playwright: riadi skutočný prehliadač (bez okna) tak, ako by hral človek: klika, čaká, robí snímky.
- vitest: rýchle automatické testy jednotlivých súčastí.
- Astro: nástroj, ktorým je postavený tento web.
- Zvukový formát Opus a video AV1 (záloha VP9): moderné formáty, v ktorých hra od 4. 10. sťahuje hlas, hudbu a videá. Sú výrazne menšie než pôvodné súbory a overené voči originálu.
- Cloudflare Pages: bezplatný hosting statických súborov, na ktorom od 7. 10. beží verejný web aj hra.
Ako sme overovali, že hra funguje
Zásada: nehádať, merať. Každú vrstvu kontroluje iný druh skúšky.
Testy súčastí. 2. 10. 2026 ich prešlo 833 v 48 súboroch. Pri poslednom behu 8. 10. 2026 ich prešlo 1 284 v 83 súboroch, 1 je preskočený a celý beh trvá okolo 16 sekúnd. K tomu stovky testov v skutočnom prehliadači, ktoré klikajú ako hráč. Ako sa od 5. 10. spúšťajú pred každou aktualizáciou hry, opisuje časť Brána kvality a bezpečnosť.
Prechod celou hrou. Počítač v prehliadači prejde hru za asi 30 sekúnd (približne 43 800 snímok, čiže 36 minút hry) a vždy rovnako. Platí to pre slovenskú, českú aj (od 3. 10.) anglickú verziu. Jediná výnimka: slovenská verzia bez opráv sa zasekne v kroku 209, lebo sa tam prejaví chyba originálu. Prehrané sú aj všetky konce: sedem druhov smrti, zlý koniec (zabudnuté zrkadlo na WC v cele), dobrý koniec a všetky vetvy rozhovorov (16 stromov, 1 071 uzlov, 2 452 možností). Všetkých 115 akcií, ktoré vedú k smrti o jediný krok od správnej cesty, skončilo na úvodnej obrazovke.
Porovnanie s originálom. V 13 kapitolách sme uloženú pozíciu načítali v pôvodnej hre aj v našom engine. Obraz sa líši o 0 až 3,1 % bodov, zvyšok sú fázy animácií.
Model checker. Pustili sme pôvodné skripty z CD bez grafiky a zvuku a „virtuálny hráč“ sa v každom bode správnej cesty (500 akcií, oba konce) skúšal odchýliť všetkými spôsobmi, ktoré hra ponúka. Pravidlá českej verzie sú v počte 3 769 (slovenská má 3 772). Prehľadali sme 17 351 odchýlok a 3 271 nových stavov. V pôvodnej hre našiel 350 nálezov, z toho 210 zamrznutí ovládania a štyri nálezy „nevyhrateľná situácia“, ktoré majú jednu spoločnú príčinu: ostrov v izbe 21, z ktorého sa nedá vyjsť. Po zapnutí opráv zamrznutia zmizli. Zostali podozrenia, ktoré sme nevedeli ani potvrdiť, ani vyvrátiť: 108 pri pôvodnej hre a 71 pri hre s opravami. Model sa aj mýlil: dve „zamrznutia“ v izbách 44 a 49 sa v skutočnom engine ukázali ako chyba modelu.
Zametanie robustnosti. V skutočnom engine, so skutočnými klikmi, v oboch jazykoch: 348 situácií z reálnej hry krát 2 jazyky dalo 93 636 akcií, plus približne 120 000 akcií zo stavov modelu. Na reálnych stavoch nič nezamrzlo. Druhá skúška, súboj kliknutia a scény, klikala v každom okamihu, keď má hráč uprostred scény ovládanie: vyše 47 700 kliknutí v presne zvolenom okamihu. Tak sa našla trieda chýb originálu, ktorú nenašla žiadna iná metóda.
Náhodné ťukanie. 1 500 behov, spolu 101 000 akcií v reálnom čase: otváranie okna INFO všetkými spôsobmi, ukladanie, dvojklik, prepnutie karty, spomalená alebo prerušená sieť, zlyhanie zvuku. Z 27 hlásených zlyhaní pochádzalo 26 z testovacieho nástroja alebo prostredia. Jeden prípad (zamrznutie v izbe 32 pri extrémne zaťaženom serveri) sa nepodarilo zopakovať. Posledný veľký beh (500 behov) prešiel bez chyby.
Hranie „ako človek“. Agent hral cez prehliadač len podľa obrazu, myšou a klávesnicou, bez čítania skriptov. Do titulkov sa nedostal: v hangári uviazol asi na 35 minút, kým našiel takmer neviditeľné tlačidlo. Zapísal 10 chýb a 10 problémov s použiteľnosťou. Každý nález sa zaradil do jedného z troch košov: chyba nášho prepisu, pôvodné správanie z roku 1997 (bez súhlasu ho nemeníme) a naša vrstva (nápoveda, okno INFO). Mnohé sme opravili, napríklad opakované sťahovanie hudby a nastavenie titulkov (vtedy sa predvolené zmenilo na „hlas + titulky“; 7. 10. Peter rozhodol znova, pozri Spresnenia podľa Petra).
Chyby pôvodnej hry a naše opravy
Najprv to dôležité: hru sa dá dohrať aj bez opráv, správna cesta prejde oboma koncami. Chyby, ktoré sme našli, sú zamrznutia ovládania, jeden pád a jedna drobnosť so zvukom. Pri zamrznutí hrdina prestane počúvať a nepomôže ani ponuka. Takú chybu priznali už autori v roku 1997: súbor PROBLEMY.TXT na CD (bod 4) opisuje zamrznutie pri výťahu pred bytom androidiek a sľubuje záplatu.
Každú opravu sme zapli až po schválení majiteľa projektu a každá má test v tvare „bez opravy chyba nastane, s opravou nie“. Všetky sa dajú vypnúť prepínačom (?fixes=0) a hra sa vtedy správa presne ako v roku 1997. Je ich dvanásť: deväť v engine a tri v skriptoch.
| Oprava | V origináli sa mohlo stať… | Teraz… | Našla ju metóda |
|---|---|---|---|
actor_at_cell | Ak hráč stál 1 až 2 body od miesta, kam má postava po kliku dobehnúť (napríklad pri tlačidle výťahu), hra čakala na „presný bod“ a ovládanie zamrzlo navždy. Týka sa 184 miest v 43 izbách. | Postava, ktorá je už v tom istom štvorčeku mapy, sa považuje za dorazenú. | statická analýza pravidiel, model checker, emulátor originálneho kódu; schválené 1. 10. |
anim_hidden_done | Keď bol hrdina skrytý (sedí na lavičke, je v kabíne) a skript čakal na jeho animáciu, tá sa nespustila. 11 miest v izbách 21, 39, 40, vrátane jedinej skutočnej slepej uličky (izba 21). | Animácia skrytého hrdinu sa dokončí hneď. | model checker; 1. 10. |
actor_at_adjusted | Keď bol cieľ chôdze práve zablokovaný (zatvorený výťah, stena), postava došla na najbližšie voľné miesto, ale hra čakala na pôvodné. 10 miest v 7 izbách. | Príchod na náhradné miesto sa počíta ako príchod. | statická analýza, model checker; 1. 10. |
missing_room_stay | V izbe 4 by použitie tyče na prenasledovateľa skočilo do neexistujúcej izby 0 a hra by spadla. Reálne nedosiahnuteľné. | Hráč ostane v izbe. | statická analýza; 1. 10. |
| SL-04 (skript, izba 36) | Obrátená podmienka v chodbe pred výťahom: ak hráč vezme žuvačku a vráti sa pešo, kým je výťah preč, „Vezmi“ zamrzne. Oprava: 1 bajt. | Podmienka je správna. | statická analýza, simulátor; 1. 10. |
| SL-05 (skript, izba 24, práčovňa) | Po získaní ruky androidky bez použitia žuvačky na senzor poslal klik na kontajner či robota postavu na miesto, odkiaľ sa ovládanie nevrátilo. Oprava: 8 bajtov. | Ovládanie sa vráti. | statická analýza, simulátor; 1. 10. |
| SL-06 (skript, izba 37) | Pravidlo skopírované z izby 29: ak zostal nastavený príznak sedenia v pilotnom kresle, ovládanie sa zamklo. Oprava: 1 bajt. | Ovládanie sa nezamkne. | statická analýza; 1. 10. |
hidden_walk_done | Skrytý hrdina so skriptovanou chôdzou (rozhovor s barmanom v izbe 40) zostal bez ovládania navždy. | Skrytý hrdina dorazí na cieľ hneď. | model checker; 2. 10. |
subtitle_edge_clamp | Dlhé titulky pri pravom okraji sa orezali: hra počíta šírku textu ako zarovnaného vľavo, ale kreslí ho vycentrovaný. Týka sa 143 z 10 776 rozložení slovenských textov. | Titulky sa zmestia na obrazovku. | hranie „ako človek“; 2. 10. |
late_click_guard | Ak hráč klikol v jedinej snímke (1/20 sekundy), v ktorej scéna preberá ovládanie, hra zamrzla. Izby 39 (teleportér), 26 (cela), 34 (čerpadlo). | Takýto klik sa zahodí, akoby prišiel o snímku neskôr. | súboj kliknutia a scény; 2. 10. |
dialogue_room_change_reset | Ak sa izba zmenila počas rozhovoru, ostala prázdna ponuka a ovládanie vypnuté (izby 42 → 49). | Rozhovor sa čisto ukončí a ovládanie sa vráti. | súboj kliknutia a scény; 2. 10. |
load_restores_ambient | Po načítaní hry uloženej v miestnosti so zvukmi prostredia (stroje, kvapkanie) bolo ticho, kým hráč miestnosť neopustil. Originál si tieto zvuky zapisuje až pri odchode z miestnosti. | Zvuky prostredia po načítaní znova hrajú. | revízia kódu; 6. 10. |
(Posledný stĺpec: metóda, ktorá chybu našla, a dátum schválenia.)
Ako sa to overilo. Pri late_click_guard sme zamrznutie potvrdili emulátorom pôvodného strojového kódu. V DOSBoxe sa to nepodarilo, lebo okno je 1 snímka zo 14 až 34 a na 20 Hz sa nedá spoľahlivo trafiť. Istota je teda „veľmi vysoká“, nie „overené v DOSBoxe“. Bez opráv zametanie súboja kliknutia a scény našlo v českej verzii 340 zamrznutí, po všetkých opravách 0.
Stopy po výrobe, nie chyby. Päť predmetov sa v hre nikdy nezíska (vyrezaný obsah) a 33 pravidiel sa nikdy nespustí.
Chyby, ktoré sme urobili my. Pri písaní nového enginu vznikli aj naše chyby a testy ich odhalili: hra závisela od hodín počítača, takže ten istý postup viedol raz k jednému a raz k inému výsledku (opravené režimom s pevným časom), po načítaní uloženej hry sa zabudlo zvolené sloveso, hudba po čase prestala hrať a zvuk po zatvorení okna INFO ostal vypnutý. Ďalšie naše chyby neskôr našli revízie kódu a Peter pri hraní (pozri nižšie).
Čo sa zmenilo po prvých dvoch dňoch
Po dvoch dňoch sa hra dala prejsť od začiatku po koniec. Ďalších päť dní patrilo tomu, čo hráč na prvý pohľad nevidí: aby hra fungovala aj na slabom pripojení, na telefóne a po anglicky, aby ju pred každou zmenou preveril automat, aby ju skontrolovali nezávislé oči a aby sa dala bezpečne zverejniť.
Angličtina, slabé pripojenie a menšie dáta
Anglická verzia. 3. 10. pribudla angličtina: anglické titulky a texty k pôvodnému hlasu. Na anglickom webe tlačidlo „Hrať“ spúšťa anglickú verziu.
Slabé pripojenie. Peter hlásil, že na slabom pripojení niekedy nepočuť hlasy. Príčina: každá replika sa sťahovala až vo chvíli, keď mala zaznieť, a keď neprišla do 2,5 sekundy, odohrala sa potichu. Hra si teraz hlasy načíta dopredu, čaká trpezlivejšie a zaseknuté sťahovanie zopakuje. V desiatich simulovaných druhoch pripojenia kleslo replík bez hlasu zo 7 z 755 na 0 z 1 037.
Menšie dáta. Hlas a hudba sú vo formáte Opus, 28 videí v AV1 a kontrola voči originálu potvrdila, že sedia snímka po snímke. Stiahnutie jedného jazyka do zariadenia kleslo z 532 MB na 173,5 MB. Ak niečo z nového balíka chýba alebo nesedí, hra sa sama vráti k pôvodným súborom.
Chyby, ktoré našlo hranie
Najcennejšie nálezy neprišli z automatov, ale z Petrovho hrania:
- Za silovým poľom (2. 10.). Po spustení hry z kapitoly v príbehu stál Frank za silovým poľom a nápoveda ho posielala inam. Uložené pozície nemali celú históriu nápovedy. Všetkých 61 pozícií sa vytvorilo nanovo a každú sme preverili.
- Blikajúce farby (3. 10.). Keď Franka zastrelili androidky, počas načítania animácie smrti sa zmenili farby celej obrazovky a obraz blikal aj pri prechodoch medzi miestnosťami. Každá miestnosť má vlastnú paletu 256 farieb a nová paleta sa zapísala skôr, než sa dokreslil nový obraz. Teraz sa obraz a farby menia naraz.
- Starý zoznam po smrti (5. 10.). Po načítaní pozície a smrti ostal na titulnej obrazovke nakreslený starý zoznam pozícií. Oprava bola hotová do hodiny a pri nej sa ukázalo, že hra uložená v slovenčine sa zle načítala v češtine. Aj to je opravené.
- Zaseknutý úvod (5. 10.). Pri opakovanej návšteve sa hra zastavila v prvej scéne a Frank spal navždy. Skript tejto scény spúšťa časovač, ktorý v origináli rátal s pol minútou úvodných videí. Náš engine ich pri opakovanej návšteve nemal za sebou, a časovač sa preto nikdy nespustil. Hodiny hry sa teraz pred touto scénou nastavia ako v origináli.
Obe chyby z 5. 10. prešli vtedajšími testami. Z toho vzniklo pravidlo: ku každej zmene test a žiadna aktualizácia hry bez zelenej brány kvality.
Brána kvality a bezpečnosť
Od 5. 10. platí: žiadna aktualizácia hry bez testov. Jeden príkaz preverí hru aj web tak, ako by to robil hráč: otvorí stránku, spustí hru, preskočí úvod, chodí, otvorí INFO, skočí do kapitoly, uloží, „zomrie“, nahrá uloženú hru a skontroluje, že je všetko presne ako pred uložením. Robí to v slovenčine, češtine, angličtine aj na telefóne s dotykom a trvá asi dve minúty. Skript, ktorý hru aktualizuje, sa bez zeleného výsledku pre presne tú istú verziu odmietne spustiť. Prvá aktualizácia cez bránu prebehla 5. 10. o 18:49.
Dlhšie úrovne preveria každé tlačidlo, všetkých 61 pozícií v troch jazykoch, vzhľad kľúčových obrazoviek, výkon a pamäť a celý web na počítači aj telefóne. Cez noc prejdú celú hru až po titulky v slovenčine, češtine a angličtine. Spolu je to 1 284 testov súčastí a stovky testov v prehliadači: samotná brána ich má 404, z toho 272 pre pozície.
Bezpečnosť. 5. 10. prebehla bezpečnostná kontrola hry aj webu s vlastnou sadou testov. Našla 17 nálezov, najvážnejšie mali strednú závažnosť. Napríklad upravený súbor s uloženou hrou mohol hru zaseknúť (teraz sa každý súbor pred nahraním preverí) a bežný postup zostavenia by do balíka pribalil celé dáta z CD (verejný balík teraz zostavuje samostatný, otestovaný postup). Opravených je 15, jeden nález je zmiernený a jeden ostáva ako upozornenie: hra stiahnutá do zariadenia v ňom ostane, kým ju hráč v okne INFO nezmaže. 6. 10. sa aktualizovali všetky knižnice a odvtedy nemajú žiadnu známu zraniteľnosť. Verejná verzia nemá testovacie skratky a hlásenie chyby nikam neposiela, len ho ponúkne na stiahnutie ako súbor.
Dve nezávislé revízie kódu
- a 6. 10. prečítali kód dvaja samostatní agenti: jeden jadro enginu (interpret skriptov, ukladanie, hodiny hry, postavy), druhý video, zvuk, sieť, offline režim, mobil, web a nástroje. Interpret skriptov porovnali s pôvodným programom inštrukciu po inštrukcii a rozdiel nenašli. Chyby boli takmer vždy na švoch medzi starou hrou a novým prostredím, nie v prenesenej logike hry. Napríklad:
- každé video sa v hodinách hry počítalo dvakrát, takže časovače skriptov, ktoré prekrývali video, bežali dvojnásobne dlho;
- po spustení hry z pozície mohla prerušená replika ostať na obrazovke asi 13 minút, kým hráč neklikol;
- pôvodné uloženie zo slovenského CD z júna 1997 sa nahrávalo z nesprávnych miest súboru;
- keď sa hlas nedal stiahnuť, hra ho skúšala znova asi dvadsaťkrát za sekundu a replika sa nikdy neukončila, takže hra vyzerala zamrznutá (jediný nález vysokej závažnosti);
- výpadok spojenia pri prepnutí siete v telefóne skončil chybovou obrazovkou;
- keď bolo úložisko prehliadača plné, hra hlásila „uložené“, hoci uloženie po obnovení stránky zmizlo.
Všetky nálezy vysokej a strednej závažnosti sú opravené. Zostalo niekoľko drobností s nízkou závažnosťou, napríklad kontrast farieb v zozname uložených hier. O nálezoch, ktoré menia správanie hry, rozhodol Peter 6. 10. (pozri nižšie).
Verejný web
-
- Peter rozhodol zverejniť hru aj tento web na jednej adrese. Web je na hlavnej adrese (česky pod
/cs/, anglicky pod/en/), hra pod/hra/, a každé tlačidlo „Hrať“ otvorí hru v jazyku stránky, prípadne rovno v zvolenej kapitole. Všetko sú statické súbory na bezplatnom hostingu Cloudflare Pages: bez servera, bez účtov a bez merania návštevníkov. Uložené hry ostávajú len v prehliadači hráča.
- Peter rozhodol zverejniť hru aj tento web na jednej adrese. Web je na hlavnej adrese (česky pod
Pred zverejnením sa celý balík otestuje ako návštevník: tri jazyky, počítač aj telefón, celá hra od začiatku po titulky, všetkých 28 videí, stiahnutie hry do zariadenia a odkazy z webu do hry.
Problém, ktorý testy nevideli. Hneď po prvom zverejnení sa ukázalo, že Cloudflare Pages nevie poslať len časť súboru: na žiadosť o kúsok vráti celý súbor. Hlasy jednej miestnosti sú zbalené do jedného súboru, takže každá replika by sťahovala celý zväzok, až 6,5 MB. Testovací server časti posielať vedel, preto testy prešli. Hra teraz pozná oba druhy hostingu: každý súbor stiahne iba raz celý a ďalšie repliky číta z neho. Testovací server sa odvtedy správa ako Cloudflare.
Offline. V okne INFO si hru možno stiahnuť do zariadenia (jeden jazyk asi 174 MB) a potom hrať bez internetu. Na verejnom webe sú videá len v nových formátoch, takže prehliadač, ktorý nevie AV1 ani VP9 (napríklad starší iPhone), hrá hru bez videí. Nezasekne sa.
Poctivé počítanie snímok
Peter sa ako spoluautor hry spýtal, či sme pri počítaní snímok nezapočítali opakované animácie. Mal pravdu. Pôvodne sme počítali snímky tak, ako sa prehrávajú: 14 095 snímok 2D grafiky a animácií. Nový rozbor rozbalil každú snímku z oboch CD a porovnal ich obraz po obraze: rôznych obrázkov je 8 565, takže 39 % snímok sú presné opakovania. Pri 3D animáciách je opakovaní málo: z 10 099 snímok je 9 775 rôznych. Stránka V číslach teraz uvádza tieto čísla.
Spresnenia podľa Petra
- Úvodné logá len pri prvom spustení (5. 10.). Potom hra začína rovno titulnou obrazovkou, úvod sa dá znova pustiť v okne INFO.
- Po revíziách kódu (6. 10.). Anglický web spúšťa anglickú verziu hry. Nahratie uloženej hry ponechá hráčovi jeho nastavenia zvuku a titulkov. Zvuky prostredia po nahratí znova hrajú (dvanásta oprava originálu). Rozhranie hry je celé aj po česky.
- Ukladanie cez pôvodné obrazovky (7. 10.). Tlačidlá na nahratie a uloženie hry v okne INFO otvárajú pôvodné obrazovky LOAD a SAVE z Next Space namiesto vlastného zoznamu. Uloženie do súboru ostalo.
- Jednoduchšie stránky (7. 10.). Stránka V číslach uvádza len tvrdé čísla z dát hry, bez odhadov pracnosti a času. Pätička webu obsahuje len kontakt.
- Preklady (7. – 8. 10.). Český a anglický text celého webu a rozhrania hry prešiel revíziou silnejšieho modelu (pozri modely): každý odsek sa porovnal so slovenčinou a citáty s textami hry, spolu asi 1 100 úprav.
- Hlas a titulky (7. 10.). Slovenská a česká verzia začínajú len s hlasom, anglická s hlasom a titulkami. Repliky, ku ktorým na CD nie je nahrávka (napríklad barmanov vtip o medveďovi a zajacovi v bare), sa ukážu ako text aj v režime len s hlasom. Voľbu možno zmeniť v okne INFO aj v ponuke hry a hra si ju pamätá.
Pokus s HD grafikou
Pozadia hry majú 640 × 400 bodov. Chceli sme vedieť, či sa na veľkých monitoroch oplatí ponúknuť ostrejší obraz. Vznikol pilotný pokus na štyroch miestnostiach (bar u Malého Estóza, havarovaná loď v skleníku, jaskyne s teleportmi na planéte teleportov a veliteľský mostík G-HERNa; sú to izby 40, 12, 1 a 50) a troch postavách (Frank, barman a strážca). Pozadia sa zväčšili štvornásobne, na 2 560 × 1 600, modelmi na fal.ai:
- Topaz Upscale (Standard V2): najlepší na pozadia. Ostrý a verný, nič nové nepridal.
- Clarity Upscaler: „maliarsky“, no menil predmety na poličke a domaľoval štruktúry, ktoré tam neboli.
- SeedVR2: na pozadiach zosilnil bodkovanie, ale na postavách bol najlepší. Tvár si však domyslel: Frank dostal okuliare a bradku.
- GPT Image (úprava podľa originálu): najkrajší výsledok pri postavách, ale je to nové vyrenderovanie, nie zväčšenie. Tvár je „nová“, pózy sa mierne zmenili. Pri súčasne skúšanom Nano Banana dostal barman kravatu, čiže vymyslený obsah.
Neúspechy: všetky modely vymysleli „písmená“ na displejoch v izbe 50 a opravný model tvárí (CodeFormer) nič nezmenil, lebo tváre majú pôvodne len asi 10 bodov. Odporúčanie z pilota: pozadia cez Topaz a postavy verne cez SeedVR2, nie „prefotené“. HD režim zatiaľ nie je súčasťou hry.
Čo to ukazuje a čo nie
Čo to ukazuje. Tím agentov umelej inteligencie s jedným architektom a jedným majiteľom prepísal za dva dni hru z roku 1997 do prehliadača tak, že prejde od začiatku po záverečné titulky v dvoch jazykoch. Za ďalších päť dní pribudla angličtina, hra na telefóne a bez internetu, brána testov, bezpečnostná kontrola, dve revízie kódu a verejný web. Tím sa nespoliehal na dôveru. Každú vrstvu sme overovali iným spôsobom (testy, originálny kód v emulátore, originálna hra v DOSBoxe, automatické prechody, náhodné ťukanie, hranie agentom, revízie kódu) a výsledky sú zapísané aj s tým, čo sa nepodarilo.
Čo to neznamená.
- Nie je to záruka bez chýb. Model checker nechal stovku podozrení nerozhodnutých a bežal len nad českými dátami. Jún slovenskej verzie bez opráv autorov na slepé uličky neskúmal. Jeden prípad zamrznutia z náhodného ťukania sme nevedeli zopakovať.
- Návod z videa mal diery. Chýbalo v ňom 50 krokov a 25 bolo upravených.
- Agenti nehrajú ako človek. Hranie cez snímky obrazovky našlo veci, ktoré automaty nevideli (neviditeľné tlačidlo, hra bez titulkov), no samotný agent v hre uviazol. Posúdenie, ako sa hra cíti, zostalo na človeku.
- Testy nenájdu všetko. Dve chyby z 5. 10. aj problém s hostingom zo 7. 10. prešli testami a objavili sa až pri skutočnom hraní a po zverejnení. Skutočný iPhone, telefón s Androidom a prehliadač Firefox sa automaticky netestujú, testy bežia v Chromiu a vo WebKite, na ktorom stojí Safari.
- Rozhodoval majiteľ. Agenti opravy navrhovali, schvaľoval ich Peter Hegyi: 1. 10. 2026 prvú skupinu, 2. 10. 2026 ďalšie: rozhodol opraviť všetky chyby, ktoré hru zasekli. 6. 10. schválil dvanástu opravu. Rovnako rozhodol o predvolenom zobrazení titulkov, o zverejnení a o podobe webu.
- Autori originálu zostávajú autormi. Nič z toho nebolo vymyslené od základov. Je to prenos hotového diela, ktoré postavili ľudia. Peter Hegyi je jedným z nich: v titulkoch hry je pri návrhu hry, 2D animáciách, strihu a príbehu.
Poďakovanie
Next Space vymysleli, nakreslili, naprogramovali, nahrali a zložili ľudia zo štúdia Magic Systems. V titulkoch hry sú uvedení: Roman Macko, Peter Hegyi a Michal Hegyi (návrh hry); Michal Hegyi, Michal Horka a Michal Weis (programovanie); Roman Macko a Kornel Kabele (3D animácie); Ján Šicko, Kornel Kabele a Viktor Číčaj (pozadia); Martin Čorej (hudba); Miroslav Teker (zvukové efekty); Michal Lučenič (príbeh); Ján Valent (videoprodukcia). Hlasy slovenského dabingu: Vlado Zetek, Ivan Gontko, Agáta Solčianská, Jaro Strunga, Rado Skaličan a Juraj Hegyi. V hre hrajú aj Pavel Ondrejka, Katarína Horňáčková, Zuzana Horňáčková a Viktor Buzinkay. Hru vyvinul MAGIC SYSTEMS (© 1997), produkcia MAXTECH s.r.o. Osobitná vďaka patrí studiu L-TEAM, firmám European Peripherals s.r.o., HELDIS a Interline s.r.o., studiu SYZ a Erichovi Pápayovi, Martinovi Grečnerovi, Ing. Martinickému a Petrovi Velčovskému.
Tento web a nový engine sú poctou ich práci.
Ďakujeme aj autorovi longplay videa so slovenským dabingom na YouTube, ktorý vystupuje pod menom MiNHO Dotus. Podľa jeho videa sme skladali poradie scén a riešenia hádaniek.
