V říjnu 2020 jsem postavil kostičkový server pro moje děti a děti kamarádů. O pět let později, v září 2026, svět běží dál na stejné mapě, má 138 modifikací a za sebou upgrade, kterého jsem se bál nejvíc: přechod z Minetestu 5.4.1 na Luanti 5.17.0 bez jediného unknown bloku. Rozdíl mezi érou 2020–2022 a zářím 2026 je v tom, kdo upgrade provedl. Poprvé člověk bez času, podruhé AI agent s plným přístupem na testovací server a sadou bran, které nedovolí nasadit nic, co by rozbilo starou mapu.
Proč kostičkový svět a proč ne Minecraft
Minecraft je placená hra s uzavřeným kódem, ke hraní je potřeba účet Microsoftu (podpora Minecraftu) a koupená licence (oficiální obchod). Pro komunitní server pro děti jsem chtěl opak: engine zdarma, otevřený kód, mapa a data plně pod mojí kontrolou, možnost provozovat server na vlastním železe v hostingovém prostředí, ke kterému mám přístup. Volba padla na Minetest, voxelový engine s otevřeným kódem, který se v říjnu 2024 přejmenoval na Luanti. Hra samotná je zdarma ke stažení, server běží na vlastním stroji a nikdo mi nemůže vypnout účet ani změnit licenční podmínky pod rukama.
Nejde o to, že by Luanti byl „lepší než Minecraft“ — takový výrok by byl marketing, ne fakt. Jde o jiný obchodní model: nulová cena za licence pro každé dítě, plná kontrola nad světem, ve kterém děti staví roky, a možnost do enginu i modifikací vidět a zasahovat. Právě ta třetí vlastnost se v září 2026 ukázala jako klíčová.
Pět let provozu „jakž takž“
První commit repozitáře minetest-mm je z 25. října 2020. Server jsem postavil, děti ho vzaly za svůj a mapa rostla. Na další správu, údržbu a opravy ale jednoduše nebyl čas. Server vykazoval občasné chyby, pády řešil restart přes systemd a všechno fungovalo — jakž takž.
Dva problémy se vracely. Při upgradu vznikaly na mapě takzvané unknown bloky: místa, kde engine přestal znát definici bloku, a místo stavby zbyl ošklivý zástupný symbol. A řada věcí nešla vyrobit, protože si recepty dvou modifikací nárokovaly stejný výrobní vzor — konflikt v receptech, který hráč pozná až ve chvíli, kdy mu z craftingu vypadne něco jiného, než čekal. Pády byly vzácné, hůř reprodukovatelné a ladění nudné. Klasická kombinace: nic nehoří dost na to, aby člověk sedl a přepsal to, a všechno hnije dost na to, aby se člověk bál sáhnout na upgrade.
Co agent dostal do ruky
Po pěti letech provozu jsem zkusil AI agenta: Muse Spark 1.3 ve variantě Contributor, běžícího v Hermes Agentovi. Agent dostal plný přístup na můj devel-testing server — věrnou kopii produkce, na které se dá cokoli rozbít bez následků. Zadání znělo: upgradovat celé repo na k září 2026 nejnovější verzi Luanti 5.17.0 a nejnovější verze modifikací a navrhnout brány celého projektu tak, aby se předešlo všemu, co jsem doteď řešil ručně nebo „až si někdo všimne“. Podmínka byla tvrdá: stoprocentní kompatibilita s pět let běžícími servery s velkými mapami.
Brány jsme navrhli společně — já jsem definoval, co mě za pět let bolelo, agent navrhl mechanismy, které tu bolest detekují automaticky. V září 2026 přibylo do repozitáře 53 commitů, tedy víc než za celé předchozí roky dohromady, a 25. září 2026 jsem vydal verzi 1.0.0. Celkem má master 238 commitů.
Dvě brány proti dvěma starým bolestem
První bolest — unknown bloky — řeší registr uzlů. Skript staticky vytáhne všechny registrace bloků z modifikací i hry, pomocný mod na běžícím serveru vypíše skutečně registrované uzly enginu a výsledek se porovná se zmrazeným seznamem z verze 5.4.1. Každý odstraněný nebo přejmenovaný uzel musí dostat alias v našem kompatibilním modu mm_compat, jinak brána upgrade neschválí. Runtime registr verze 5.17.0 čítá 32 825 řádků — to je autoritativní seznam všeho, co engine zná.
Druhou bolest — konflikty receptů — řeší craft-brána. Pomocný mod vypíše všechny recepty tak, jak je vidí běžící engine (sloučená tabulka hry a modů, vyřešené aliasy), analyzátor je klasifikuje na tvrdé konflikty, stínové kolize a vyřešené páry a brána pustí dál jen stav s nulou tvrdých konfliktů. Opravy žijí v souboru craft_recipes.lua uvnitř mm_compat: každý pár se řeší oboustranně — nejdřív se vyčistí kolidující vzor, pak se zaregistruje vítězná kopie a poraženému se dá nový recept. Jednou přidaný recept se už nikdy nemění.
Kolem toho stojí pre-push hook, který každý push zkontroluje za pár sekund: synchronizaci přibalených kopií, únik tajemství do veřejného repozitáře, regresní testy, duální kontrolu uzlů proti oběma výchozím seznamům, nesplněné závislosti modů a platnost verzových zámků. Pomalé kontroly (plná analýza receptů trvá minuty) patří do nočního běhu, ne do každého pushe — i tohle rozdělení je součástí návrhu.
Upgrade 5.4.1 → 5.17.0 bez ztráty bloku
Samotný upgrade proběhl na devel-testingu 23. září 2026. Engine povýšil z 5.4.1 na 5.17.0, vydané v srpnu 2026 (mimochodem verzi, která opravovala kritické bezpečnostní chyby (sandbox-escape u singleplayeru a her hostovaných z menu, který se serverů netýká, plus další zranitelnosti)), hra minetest_game na commit c42e4d0c a všech 138 modifikací na pinované upstream commity ze souborů mods-versions.lock a game-versions.lock. Porovnání runtime dumpů před a po: 31 650 → 32 825 registrací, tedy 1 175 nových, a nula ztracených. Žádný unknown blok, žádné mrtvé recepty.
Klíčové je slovo pinované. Každá modifikace je zamčená na konkrétní upstream commit, takže každá instalace i každý upgrade je opakovatelný. Příznak –fresh zámek ignoruje a stáhne nejnovější upstreamy — to je řízený experiment, ne ruleta. A adresář patches/ s devíti patchemi drží naše opravy nad upstreamy idempotentně: dají se aplikovat opakovaně bez vedlejších účinků.
Co je verze 1.0.0
Verze 1.0.0 z 25. září 2026 je sloučení vývojové větve, které uzavřelo čtyři sledované issues: opravy výšky sedu u koně a vozidel, rizikově řazenou kontrolu ochran, překlad dokumentace do angličtiny a konsolidaci mm_compat. Celé repo má 23 015 souborů, z toho 138 adresářů modifikací, přibalenou hru, vlastní kompatibilní mod, devět patchů, adresář bran compat/, git hooky a dokumentaci včetně plánů expanze. Všechno otevřené, všechno verzované, všechno opakovatelné jednou sadou skriptů.
Svět má k dispozici přes 14 tisíc použitelných předmětů — bloků, nástrojů, mobů, prostě všeho, s čím se dá hrát — a přitom má zůstat lehký. Lehkost tu neznamená málo modů, ale málo pohyblivých částí v cestě dat: jeden engine, jedna zamčená hra, deterministický deploy, žádné ruční zásahy na serveru. Těžká je nabídka, lehká je správa.
Co se dá hrát: hvězdné brány, auta, vlaky a vybavený byt
A teď to hlavní pro hráče: co se na serveru dá dělat, když zrovna neběží žádný upgrade. Světem vedou koleje advtrains (ContentDB) — od parních lokomotiv přes průmyslové soupravy až po metro — a kdo nechce čekat na vlak, vezme auto z vehicle_mash (v nabídce je i hot rod), loď či vznášedlo, případně horkovzdušný balón ze samostatného modu hot_air_balloons. A když je cíl opravdu daleko, poslouží hvězdná brána: portál, kterým se cestuje vytočením adresy — naše tematická náhrada za tuctové teleporty, které jsme z budoucích plánů vědomě škrtli.
Doma to žije taky. Balík homedecor s desítkami podmodulů (upstream) a ts_furniture vybaví byt komplet: kuchyň s ledničkou, koupelnu se záchodem, obývák s gaučem a velkou obrazovkou, pracovnu s počítačem. K tomu jukebox na hudbu, šachy a dalších šestnáct deskových her z balíku myboardgames, farmy s včelami, vinohrad, grilování, zvířata, příšery i vesničané, koně k osedlání — a nad tím vším ochrany pozemků, měna s obchody a pošta. Prostě zabydlený svět, ne technologické demo bran.
Tři servery: survival, creative a devel
Svět běží jako trojice: produkční survival server, creative server na stavění bez limitů a devel-testing server, kde agent ladil upgrade a kde se testuje každá novinka dřív, než sáhne na živou mapu. Právě tahle trojice je důvod, proč si upgrade mohl dovolit být odvážný — rozbít se dalo jen něco, co nikomu nechybělo. Adresy a porty najde hráč přímo v popisu repozitáře.
Proč zrovna contribution model: cena, výkon a data za slevu
Primárním důvodem volby Muse Spark 1.3 Contributor přes OpenRouter byl poměr cena/výkon. Model Contributor zlevňuje provoz řádově desetkrát výměnou za právo použít prompty a výstupy ke zlepšování produktu — podle ceníku OpenRouteru jde o 12,5násobek u vstupu a 21,25násobek u výstupu. U důvěrných dat bych takovou směnu nikdy neudělal. Ale tohle je kostičkový svět: repozitář je stejně open-source, prompty popisují recepty a aliasy bloků, žádné tajemství v nich není. Pro nedůvěrná data je tohle podle mě skvělý obchod — Metě data z promptů, mně obří sleva na výpočty.
Vyplatilo se to i jinak: agent pracoval v září 2026 tempem, které bych já vedle práce a rodiny nikdy nedal — desítky commitů s testy na devel-testingu, včetně nočních běhů bran. Nudný debug, který jsem pět let odkládal, je přesně ta práce, kde agent září: je trpělivý, systematický a nikdy ho neomrzí padesátý druhý běh dumpu.
Kolik tahle sranda stála? Z OpenRouter exportu jsem sečetl všech 5 773 placených generací vývojového klíče: 1,49 miliardy prompt tokenů (90,4 % obslouženo z cache) a 3,2 milionu completion tokenů. Na contribution ceníku (0,10 USD za 1M, 0,002 USD za cached, 0,20 USD za výstup) to dělá 17,63 USD. Stejný provoz na standardním tarifu (1,25 / 0,15 cached / 4,25 USD) by vyšel na 394,96 USD — tedy 22,4× dráž. Celý upgrade z 5.4.1 na 5.17.0 včetně 53 commitů a všech bran mě tak stál méně než večeři pro dva.
Co bude dál: víc hratelných věcí, ale nikdy na úkor mapy
Plány (docs/FUTURE_PLANS.md, brainstorm ze září 2026) míří k další expanzi: zhruba sedm desítek kandidátských modifikací v první vlně — nové dimenze nad a pod světem, nábytek, jídlo, logistika, klidní mobové. Každý kandidát prošel rozhodovací bránou a řada jich neprošla: nic, co generuje terén do existujících chunků produkční mapy, na ni nikdy nesmí. Ethereal, Everness, vesnice generované do mapy — to všechno by zanechalo nevratné artefakty, které naše brány nejsou stavěné chytit. Expanze ano, ale jen taková, která nemůže ublížit pětileté mapě.
Cesta od „jakž takž“ k 1.0.0 tak není příběh o tom, že AI nahradila správce. Je o tom, že správce konečně dostal kolegu, který má čas na nudnou práci — a brány, které hlídají, aby se nudná práce nikdy nemusela dělat dvakrát. Mapa, na které před pěti lety stavěly děti, přežila upgrade bez škrábnutí. Víc důkazů, že to celé dává smysl a že AI může být dobrý kolega, není potřeba.
Videoukázka z administrátorského/hráčského pohledu na závěr:
Zdroje
- Luanti blog: Luanti 5.17.0 released (2026)
- Luanti Documentation: Changelog 5.16.0 → 5.17.0 (2026)
- GHSA-5373-9cjp-qfmg: sandbox-escape oprava 5.17.0 (singleplayer/menu hosting, netýká se serverů)
- Luanti: Downloads (2026)
- luanti-org/luanti na GitHubu (engine, open source)
- luanti-org/minetest_game, commit c42e4d0c (vendored hra)
- Wikipedia: Minetest — přejmenování na Luanti (říjen 2024)
- OpenRouter: Muse Spark 1.3 Contributor — ceník (0,10/0,20 USD za 1M tokenů, 2026)
- OpenRouter: modely Meta (2026)
- Minecraft podpora: Microsoft účet pro Java Edition (2026)
- Minecraft: Java & Bedrock Edition pro PC — obchod (2026)
- minetest-mods/stargate — portálová modifikace (2026)
- minetest-mods/vehicle_mash — auta, lodě, vznášedla (2026)
- Eran/hot_air_balloons — horkovzdušné balóny (ContentDB, 2026)
- advtrains — vlaky a železnice (2026)
- ContentDB: advtrains (2026)
- mt-mods/homedecor_modpack — vybavení domácnosti (2026)
- DonBatman/myboardgames — 17 deskových her (2026)
- minetest-mods/ts_furniture — nábytek (2026)
- Hermes Agent — open-source AI agent (Nous Research, 2026)
- milan/minetest-mm — repozitář serveru, verze 1.0.0 (2026)
Transparentnost obsahu a AI-asistence
Jak tento článek vznikl:
Tento článek napsal Hermes Agent — open-source sebezdokonalující AI agent (Nous Research) — ve spolupráci s redakcí. Redakce stanovila téma, výzkumný směr a primární zdroje; Hermes připravil rešerši, strukturu a text. Každé klíčové tvrzení prošlo iterativním fact-checkingem se dvěma nezávislými zdroji a slepými kontrolními audity.
Redakční zpracování a ověřování:
- ✓ Text byl redakčně revidován
- ✓ Fact-checking: Všechna klíčová tvrzení a data byla ověřena ze dvou nezávislých zdrojů
- ✓ Korekce faktů a doplnění: Redakce opravila nepřesnosti a doplnila vlastní poznatky
- ✓ Vícekolový audit: Článek prošel opakovanými blind audity včetně finálního sdíleného kontrolního kola
Omezení AI modelů (důležité varování):
Jazykové modely mohou generovat přesvědčivě znějící, ale nepřesné nebo zavádějící informace (tzv. „halucinace“). Proto důrazně doporučujeme:
- Ověřit si kritická fakta v primárních zdrojích (oficiální dokumentace, vědecké články, autority v oboru)
- Nespoléhat se na AI obsah jako na jediný zdroj pro rozhodnutí
- Aplikovat kritické myšlení při čtení
Našli jste chybu?
Napište nám do komentářů pod článkem — každé upozornění prověříme.
Technické detaily:
- Agent: Hermes Agent (Nous Research, open-source)
- Model: Muse Spark 1.3 Contributor (Meta)
- Metoda: Sebezdokonalující redakční skill — rešerše, návrh, vícekolový blind audit, lidská revize
- Běh: Vlastní instance Hermes Agenta provozovaná redakcí, napojená na API poskytovatele modelu (nikoli lokální model)
Buďte první! Přidejte komentář