Jacquard ir tipizuoti pasauliai AI kuriamiems žaidimams

AI-built games look easy in a demo. The hard part is typed constraints, editor affordances, physics, NPC behaviour, replay, and safe generation that a human...

Jacquard ir tipizuoti pasauliai AI kuriamiems žaidimams

Demonstracinė versija yra lengviausia dalis

Pirmoji Jacquard demonstracinė versija sąmoningai viliojanti. Agentas atidaro naršyklėje veikiantį variklį, iškviečia tipizuotą įrankį, sukuria sceną, formuoja reljefą, išdėsto objektus, sujungia elgseną, išsaugo paketą ir perduoda pasaulį žmogui, kuris gali paspausti paleidimo mygtuką. Jokio kelių gigabaitų redaktoriaus. Jokios darbalaukio variklio ceremonijos. Jokio vietinės įrankių grandinės diegimo ritualo, kol pirmoji idėja dar negali pajudėti.

Jei tai būtų visa istorija, Jacquard būtų lengva paaiškinti: greitesni prototipai, pigesnės mokymo simuliacijos ir maži interaktyvūs pasauliai, sukurti iš paprastos kalbos. Šaltinio medžiaga iš dalies patvirtina tokią formą: Jacquard yra Dweve tyrimų projektas, parašytas griežtu TypeScript ir sukurtas veikti naršyklės skirtuke. Maršruto metaduomenys apibūdina žiniatinklio žaidimų variklį, kuriame dirbtinio intelekto agentai kuria pilnaverčius žaidimus per tipizuotą API, įskaitant vizualųjį redaktorių, fiziką ir NPC elgseną.

Tačiau gera demonstracinė versija gali paslėpti tikrąją problemą. Priversti agentą sukurti įtikinamą žaidimo sceną nebėra sunkiausia dalis. Sunkiausia dalis yra padaryti sugeneruotą pasaulį pakankamai apribotą, kad jį būtų galima patikrinti, pakankamai redaguojamą dizaineriui, pakankamai fizinį žaidimui, pakankamai elgsenišką, kad jis būtų reikšmingas, ir pakankamai saugų, kad generavimas netaptų nauju būdu kurti neperžiūrimą būseną.

Tai įdomus klausimas: ar žaidimų variklis gali pateikti kiekvieną reikšmingą operaciją kaip tipizuotą paviršių, bendrą agentams ir žmonėms, išsaugodamas atkūrimą, autorystę, saugumą ir dizaino tekstūrą?

Kodėl klausimas vis dar atviras

Įprastas supakuotas įrankis bando užšaldyti savo pažadą. Štai ką jis daro. Štai palaikymo modelis. Štai riba. Štai gedimo režimas. Jacquard yra įdomesnis, kol šie sakiniai dar netampa pernelyg glotnūs, nes sunkūs klausimai vis dar susiję vienas su kitu.

Dabartinis šaltinis apibūdina į agentą orientuotą variklį, MCP paviršių, deterministinį atkūrimą, Rapier3D WASM, WebGPU su WebGL2 atsargine parinktimi, glTF 2.0 išteklius ir tik naršyklėje veikiantį kelią. Tai konkretūs inžineriniai sprendimai. Jie taip pat yra tik socialinės sutarties dėl dirbtinio intelekto sukurtų žaidimų pradžia.

Žaidimai nėra dokumentai su susidūrimo dėžėmis. Žaidimų pasaulis yra gyvas geometrijos, laiko, fizikos, įvesties, būsenos perėjimų, žaidėjo lūkesčių ir autoriaus siurprizų išdėstymas. Jei dirbtinio intelekto sistema sugeneruoja ataskaitą, skaitytojas gali pažymėti pastraipą kaip klaidingą. Jei dirbtinio intelekto sistema sugeneruoja žaidimų pasaulį, klaida gali pasireikšti kaip nepasiekiamos durys, ne žaidėjo veikėjas, meluojantis apie užduoties būseną, fizinis impulsas, sugadinantis atkūrimą, arba redaktoriaus operacija, kurią agentas atliko, bet dizaineris vėliau negali suprasti.

Nepatogūs klausimai ir yra esmė. Ką agentui turėtų būti leista keisti tiesiogiai? Kurios redaktoriaus galimybės turi būti pirmos klasės tipizuotos operacijos? Kuriuos sugeneruotus išteklius saugu pakuoti? Kurios elgsenos turi būti patikrinamos prieš paleidžiant? Kuri pasaulio būsena turi priklausyti įvykių žurnalui, o ne paslėptai variklio krūvai? Tai ne kosmetiniai atsilikę darbai. Tai pats variklis.

Variklis yra argumentas apie pasiekiamumą

Dauguma žaidimų variklių yra puikūs įrankiai žmonėms prie darbo stalo. Tačiau tai nereiškia, kad jie yra geri pagrindai agentams. Jų galia dažnai slypi už meniu, skydelių, varikliui būdingų scenarijų kalbų, patentuotų išteklių grandinių ir sąsajos srautų, kurie daro prielaidą, kad žmogus gali vizualiai ieškoti kito valdiklio. Agentas gali išmokti spustelėti, bet spustelėjimas redaktoriuje nėra tas pats, kas turėti programinį susitarimą.

Jacquard tampa sudėtingas, nes problema yra pasiekiamumas: kiekvienam sugeneruotam pasaulio veiksmui reikia tipizuoto kelio.

Jacquard laikosi priešingos pozicijos. Jei redaktorius gali tai padaryti, įrankio iškvietimas taip pat turėtų galėti. Funkcija, kurios agentas negali pasiekti per kodą, šiam tyrimo klausimui iš tikrųjų neegzistuoja. Ši taisyklė skamba griežtai, kol nepamatai agento, bandančio sukurti pasaulį per variklį, valdomą tik grafine sąsaja. Agentas priverstas apytiksliai veikti: spėti meniu, tikėtis, kad pasirinktas skydelis aktyvus, nuskaityti klaidos eilutę, tada tęsti su būsena, kurios negali įrodyti.

Šaltinis aiškiai įvardija trintį: tik grafinės sąsajos funkcijos, sunkūs diegimo paketai, varikliui būdingos DSL kalbos, uždari procesai. Jacquard atsako naršyklės skirtuku, atvirais formatais, glTF ištekliais, serializuojamais pasauliais, schemos patvirtintais parametrais, tipizuotomis klaidomis ir vienu tipizuotu paviršiumi, kuriuo dalijasi vizualus redaktorius ir agentas. Štai kodėl variklis nėra tik variklis. Tai pasiekiamumo eksperimentas.

Pasiekiamumas nėra patogumas. Tai saugumas. Kai kiekviena operacija yra iškvietimas, kiekvieną operaciją galima pavadinti, apriboti, registruoti, atmesti, atkurti ir paaiškinti. Kai galimybė paslėpta už meniu, agentas turi įterpti ketinimą per paviršių, kuris tam niekada nebuvo sukurtas. Skirtumas yra tas pats, kaip tarp inžinieriaus, skaitančio API pėdsaką, ir žmogaus, bandančio prisiminti, kuris skydelis buvo atidarytas, kai scena pasikeitė.

Pasaulis nėra vaizdas

Dirbtinio intelekto vaizdų generavimas išmokė žmones priimti keistą sandorį: paprašyk paveikslėlio, gauk paveikslėlį, atleisk struktūrą, jei paviršius atrodo tinkamas. Žaidimai negali išgyventi tokio sandorio. Žaidimo lygis vertinamas ne tik pagal tai, į ką jis panašus iš vieno kameros kampo. Jis vertinamas pagal tai, ar žaidėjas gali juo judėti, ar fizika išlieka stabili, ar tikslai išsprendžiami, ar NPC elgesys gerbia pasaulį ir ar būsena gali būti atkurta, kai kas nors nepavyksta.

Pasaulis nėra paveikslėlis. Tai būsena, taisyklės, laikas ir atkuriamos pasekmės.

This is where typed constraints become central. A terrain tool cannot merely paint hills. It has to know where walkable surfaces are, how slopes interact with character controllers, how vegetation and lighting affect visibility, and how seeded generation will reproduce the same result later. A scene tool cannot merely place things. It has to create addressable entities, attach components, version the graph, and make the result diffable enough for review.

The Jacquard tool palette makes that visible. The page names fifteen categories: scene, entity, component, asset, material, physics, terrain, lighting, audio, UI, quest, NPC, build, debug, and playtest. It also names read-only resources such as project metadata, scene graph, asset catalog, performance metrics, and error log. That is not an arbitrary menu. It is a taxonomy of what a game world must expose before an agent can be more than a clever macro recorder.

The research problem is not whether all fifteen categories can exist. They already exist as a source claim. The problem is how expressive, safe, and composable each one must be before generated worlds stop being brittle artifacts and start behaving like authored systems. The answer will not be found by prompting harder. It will be found by making the representation harder to lie to.

The editor is not a decoration

A weak reading of agent-first tooling treats the editor as a viewer. The agent makes things; the human watches. That is the wrong model for Jacquard. The source text is careful: the visual editor uses the same API as agents. It is a non-privileged client of the same surface. That single fact prevents a deep split from forming inside the project.

If the agent has a private route into the world and the editor has another, the human eventually loses. The generated state becomes technically valid but practically uneditable. The designer can see the castle, but cannot discover why the quest flag is attached to that entity, why the terrain has an invisible blocker, or why the NPC schedule changes after the second night. The result looks like productivity and behaves like debt.

Shared API means the editor must have affordances for the same concepts the agent manipulates. It must show scene graph, components, behaviours, resources, errors, and performance in ways that a human can reason about. It must let the designer correct the world without stepping outside the contract that replay depends on. The editor is therefore part of the research instrument.

This is an uncomfortable requirement because it slows down fantasy. It is easier to let the agent generate hidden wiring and then hope the demo keeps working. Jacquard asks for the hidden wiring to become visible enough that a designer can take ownership. AI-built games only become serious when the human can inherit them without forensic archaeology.

Physics is where charm becomes accountability

Physics has a brutal way of turning vague generation into visible failure. A story can tolerate a little narrative handwaving. A 3D world with bodies, collisions, terrain, and player input cannot. If the step changes with frame rate, replay drifts. If character control depends on an unlogged impulse, a bug report becomes a rumour. If the same seed produces different body positions on another machine, the world is not reproducible evidence.

Fizika yra pirmoji vieta, kur sukuriamas žavesys turi atsakyti mechaninei sistemai.

„Jacquard“ tai įtvirtina naudodamas „Rapier3D“ WASM ir fiksuotą 60 Hz laiko žingsnį. Šaltinio medžiaga aprašo deterministinę fiziką, nustatytą atsitiktinumą, įrašytą įvestį ir mechaninį atkūrimą iš tipo žurnalo. Ta pati sėkla, tas pats žurnalas, tie patys kadrai. Klaidos ataskaita yra pridėtas žurnalas; atkurkite jį ir pamatysite tai, ką matė žaidėjas. Tai stipresnis teiginys nei ekrano įrašas, nes išsaugomos interaktyvios priežastys, o ne tik pikseliai.

Tyrimo klausimas yra tai, kas nutinka, kai generavimas įeina į tą ciklą. Agentas gali sukurti tiltą, bet tiltas turi paklusti masės, susidūrimo, pasiekiamumo ir žaidimo testavimo apribojimams. Jis gali sukurti NPC, bet NPC turi naršyti pasaulį, kurio geometrija gali keistis. Jis gali reguliuoti reljefą, bet susidarę šlaitai turi likti žaidžiami. Jis gali pridėti scenarijaus įvykį, bet tas įvykis turi būti užregistruotas taip, kad atkūrimas galėtų jį įtraukti.

Fizika todėl nėra posistemė, esanti krūvos apačioje. Ji yra viena iš generavimo teisėjų. Sukurtas žaidimų pasaulis nėra geras, nes atrodo tikėtinas. Jis yra geras, kai žaidėjas gali jame gyventi, kai taisyklės galioja ir kai vėliau peržiūrintis asmuo gali atkurti tą pačią nesėkmę, užuot klausęs modelio, ką jis turėjo omenyje.

NPC elgsena yra sluoksnis, kuriame kalba baigiasi

Ne žaidėjo veikėjai daro „Jacquard“ sudėtingesnį nei lygių redaktorius. Statišką kambarį galima apžiūrėti kaip geometriją. NPC yra būsena laikui bėgant: tvarkaraštis, tikslas, suvokimas, dialogas, socialinis grafas, užduočių santykis, kelio paieška, atmintis ir nesėkmė. Šaltinio medžiaga įvardija elgsenos medžius, tvarkaraščius, tikslus, pasakojimą kaip duomenis, sąlygų grafikus ir šakotą progresiją. Tie žodžiai yra vieta, kur AI sukurti žaidimai nustoja būti žaislu.

Kalba yra naudinga ketinimams. Ji yra prasta galutinė elgsenos reprezentacija. Užklausa gali pasakyti, kad sargybinis turėtų būti įtarus naktį, padėti kaimiečiams, būti priešiškas vagims ir atleisti po to, kai žaidėjas atlieka užduotį. Varikliui reikia kažko aštresnio: kuris jutiklis nuskaito pavojų, kuri sąlyga keičia požiūrį, kuri užduočių vėliavėlė panaikina įtarumą, kuris tvarkaraštis judina sargybinį ir kuri dialogo eilutė leidžiama po būsenos perėjimo.

Tas aštrumas yra priežastis, kodėl tipo NPC įrankiai yra svarbūs. Be jų agentas gamina nuotaikas. Su jais jis turi įrašyti elgseną į apžiūrimas struktūras. Dizaineris tada gali paklausti, ar sargybinis yra nesąžiningas, ar užduotis gali užstrigti, ar socialinis grafas sukuria neįmanomus įsipareigojimus, ar sukurta instrukcija priverstų kiekvieną NPC susilieti į tą pačią nuobodžią rutiną.

NPC elgesys taip pat daro saugą praktišką. Nesaugus generavimas yra ne tik įžeidžiantis tekstas ar draudžiamas turinys. Tai gali būti elgesio ciklas, įstrigdantis žaidėją, užduotis, kuri negali išsispręsti, sugeneruotas socialinis grafas, įkoduojantis priešišką stereotipą, arba tvarkaraštis, sukeliantis našumo žlugimą. Sauga generuojant turi veikti žaidimo sistemų lygmenyje, ne tik žodžių lygmenyje.

Sauga yra formos problema

Lengviausia saugos istorija teigia, kad agentas gali sugeneruoti arba nesugeneruoti turinio dalį. Jacquard reikia struktūriškesnės istorijos. Klausimas yra ne tik ar sugeneruotas objektas yra leidžiamas. Tai ar sugeneruotas pakeitimas atitinka pasaulio sutartį. Ar jis keičia tik tą apimtį, kuri jam buvo suteikta? Ar jis atskleidžia, ką pakeitė? Ar redaktorius gali jį patikrinti? Ar atkūrimas gali jį pakartoti? Ar kūrimo ir žaidimų testavimo įrankiai gali jį atmesti, kol žmogus nepalaiko naujovės užbaigtumu?

Sauga nėra įspėjamoji etiketė. Tai forma, kurią primeta biudžetai, tipai, atkūrimas ir apribojimai.

Šaltinis į tai nukreipia per tipizuotus iškvietimus, schemos patvirtinimą, tik skaitymui skirtus išteklius, derinimą, žaidimų testavimą, nešiojamus paketus ir atvirus failus. Tai nėra patrauklios saugos funkcijos, bet jos svarbesnės nei dramatiškas atsisakymo pranešimas. Apribotas iškvietimas gali būti atmestas. Tipizuota klaida gali būti ištaisyta. Tik skaitymui skirtas išteklius gali leisti agentui tikrinti be keitimo. Kūrimo žingsnis gali supakuoti tik tai, kas yra serializuojama. Deterministinis žaidimų testavimas gali atskleisti, kad sugeneruotos durys niekada neatsidaro.

Saugus generavimas taip pat reiškia atsispirti pagundai slėpti neapibrėžtumą. Jei agentas negali žinoti, ar galvosūkis yra išsprendžiamas, sistema neturėtų jo pateikti kaip išspręsto. Jei NPC elgesys priklauso nuo dviprasmiškos būsenos, redaktorius turėtų padaryti tą dviprasmiškumą matomą. Jei fizikos atkūrimas išsiskiria, teiginys turėtų žlugti. Nesėkmės žodynas vis dar kuriamas.

Jacquard turėtų padaryti neapibrėžtumą matomą, o ne nugludinti jį į melagingą pažadą. Kai sugeneruotas turinys nėra pakankamai apribotas, redaktorius, žurnalas, atkūrimo kelias ir tipizuotos klaidos turėtų atskleisti tą spragą, kol ji dar pakankamai maža, kad būtų ištaisyta. Tai nėra šiurkštumas dėl paties šiurkštumo. Taip sugeneruoti pasauliai išvengia tapimo turinio skola.

Naršyklė keičia iteracijos ekonomiką

Jacquard, veikiantis naršyklės skirtuke, gali skambėti kaip platinimo funkcija, ir taip yra. Nulinis diegimas sumažina pasaulio išbandymo kainą. WebGPU ir WebGL2 suteikia varikliui praktinį atvaizdavimo kelią. Klasė, tyrimų partneris ar dizaino sesija neturi prasidėti nuo sunkaus vietinio diegimo. Tačiau naršyklė svarbi dėl gilesnės priežasties.

Ji sutrumpina iteracijos ciklą. Agentas gali kurti, redaktorius gali tikrinti, žaidėjas gali testuoti, o žurnalas gali būti atkurtas neperkeliant pasaulio per nuosavybinių įrankių grandinę. Ta pati aplinka gali atskleisti scenos grafą, paleisti fiziką, groti garsą, tikrinti našumą ir supakuoti nešiojamą paketą. Tai neišsprendžia žaidimų dizaino, bet pašalina daug atsitiktinės ceremonijos jį studijuojant.

Naršyklė taip pat padeda aiškiau matyti ribas. Jei pasaulis atsiveria kaip tinklalapis, ribą tarp to, kas buvo paleista, kas įkelta, kokia būsena pasikeitė ir kas buvo eksportuota, galima padaryti aiškią. Jei variklis yra griežtas TypeScript, nukreiptas į ES2022, su atvirais glTF ištekliais ir serializuojamais pasauliais, artefaktą gali perskaityti daugiau žmonių nei maža vieno darbalaukio variklio kunigų bendruomenė.

Tas atvirumas yra praktinis pranašumas. Daugiau akių gali apžiūrėti reprezentaciją. Daugiau agentų gali būti prijungta per MCP. Daugiau gedimų galima atkurti kaip žurnalus, o ne pasakoti kaip anekdotus. Naršyklė problemos nepalengvina. Ji problemą padaro stebimą.

Prototipo spaudimas ją sulaužytų

Yra pažįstamas programinės įrangos refleksas: kai kas nors gerai demonstruojasi, lygink, kol galima supakuoti. Jacquard yra būtent tokia sistema, kuri baudžia už šį refleksą. Išlygink per anksti, ir komanda turės apsimesti, kad autorinė sutartis yra nusistovėjusi, kol sunkūs klausimai dar neišspręsti. Kokia yra stabili autorinė sutartis? Kurie generuoti elgesiai yra palaikomi? Kurie fizikos teiginiai galioja visose naršyklėse? Kurios redaktoriaus koncepcijos dabar yra nuolatinės? Kurie saugumo patikrinimai yra privalomi?

Per ankstyvas paketas turėtų apsimesti, kad atsakymai jau nusistovėję. Tai susiaurintų tyrimą iki to, ką lengviausia supakuoti. Rezultatas būtų žaisliukas su blizgančiu priekiu ir trapiu užpakaliu. Įdomus Jacquard pažadas yra didesnis: žaidimų variklis, kuriame AI agentai ir žmonės dizaineriai dalijasi ta pačia tipizuota darbo sąsaja, kur pasaulio būsena yra apžiūrima, kur atkūrimas yra mechaninis, o generavimą riboja sistemos, o ne nuotaikos.

Tas pažadas nusipelno kantrybės, nes jis liečia kelias sunkias sritis vienu metu. Programavimo kalbos dizainas atsiranda įrankių schemose. Žmogaus ir kompiuterio sąveika atsiranda redaktoriuje. Simuliacija atsiranda fizikoje. Žaidimų AI atsiranda NPC elgesyje. Saugumas atsiranda ribose aplink generavimą. Infrastruktūra atsiranda pakavime, naršyklės vykdyme ir atviruose formatuose. Siauras įgyvendinimas pasirinktų vieną ir vadintų kitus kraštiniais atvejais. Jacquard laiko juos sujungtus.

Esmė išlaikyti teiginį tikslų. Jacquard yra tyrimas, skirtas agentų valdomai, naršyklėje veikiančiai žaidimų kūrimui. Jis gali būti naudingas eksperimentams ir partnerių darbui, neapsimetant, kad kiekviena autorinė sutartis yra galutinė. Tas sąžiningumas yra inžinerijos dalis.

Kas daro tyrimą patikimą

Ženklai nėra rinkodaros ženklai. Jie yra techniniai ir patirtiniai ženklai. Sugeneruotas pasaulis turėtų būti apžiūrimas per redaktorių be slaptos būsenos. Įrankių iškvietimai turėtų žlugti su naudingomis tipizuotomis klaidomis. Atkūrimas turėtų atkurti prasmingus gedimus. NPC elgesys turėtų būti skaitomas kaip duomenys ir derinamas kaip sistemos. Žaidimo testavimas turėtų pagauti akivaizdžias neįmanomybes, kol jos nevirsta žmonių nusivylimu.

Variklis taip pat turėtų išsaugoti autorystę. AI sukurtiems žaidimams vis tiek reikia žmogaus skonio. Agentas gali parengti pasaulio juodraštį, bet dizaineris turi galėti jį formuoti neprarasdamas pėdsako, kaip jis buvo sukurtas. Jei žmogus turi pradėti iš naujo, kad atgautų kontrolę, agentas nebuvo bendradarbis. Jis buvo greitas techninės skolos šaltinis.

Saugumas turėtų tapti mažiau teatrališkas ir labiau mechaninis. Sugeneruotas pakeitimas turėtų turėti apimtį, kilmę ir peržiūros būseną. Tik skaitymo apžiūra turėtų skirtis nuo keitimo. Kūrimas turėtų atsisakyti to, ko negalima švariai supakuoti. Derinimas turėtų parodyti, iš kur elgesys atsirado. Žaidimo testavimas turėtų būti pakankamai scenarijų valdomas, kad teiginiai būtų pakartojami. Tai nuobodūs žodžiai, todėl jie ir svarbūs.

Kai šios savybės tampa įprastos, Jacquard gali paremti stipresnius pažadus. Iki tol tyrimas yra sąžininga etiketė. Ji sako komandai ir skaitytojui, kad tikslas yra ne tik priversti AI kurti žaidimus, bet ir padaryti AI sukurtus žaidimų pasaulius pakankamai įskaitomus, kad juos būtų galima valdyti.

Naudingas teiginys

Jacquard ir tipizuoti pasauliniai žaidimų pasauliai, kuriuos kuria dirbtinis intelektas, nes čia iš tikrųjų ne apie žaidimus, atsirandančius iš užklausų. Čia apie mechanizmus, kurių reikia, kad užklausomis sukurti žaidimai taptų rimtais artefaktais: tipizuoti apribojimai, bendros redaktoriaus priemonės, deterministinė fizika, tikrinamas NPC elgesys, atviri ištekliai, perkeliami paketai ir saugumas generavimo metu.

Naudingas vaizdinys yra ne stebuklingas variklis. Tai dirbtuvės, kuriose agentas ir dizaineris naudojasi tais pačiais įrankiais. Agentas negauna slaptų durų. Redaktorius negauna silpnesnio žemėlapio. Fizikos sistema netampa neprivaloma, kai scena atrodo gražiai. Įvykių žurnalas neišnyksta po demonstracijos. Sukurtas pasaulis lieka pasauliu, kurį galima apžiūrėti, atkurti, keisti ir apginti.

Tai ilga inžinerijos programa, o ne šūkis. Jei ji pavyks, vartotojui matomi paviršiai bus aiškesni, nes sunkūs klausimai nebuvo skubinti. Jei nepavyks, nesėkmė vis tiek pamokys apie sąlygas, kuriomis dirbtinis intelektas gali saugiai kurti interaktyvias sistemas. Abi baigtys yra naudingos.

Kol kas tiksliausia pasakyti štai ką: Jacquard yra atviras tyrimų variklis dirbtiniu intelektu kuriamiems žaidimų pasauliams. Jam leista būti įdomiam. Jam taip pat privalu būti tiksliam. Dirbtinio intelekto kuriamų žaidimų ateitis nebus laimėta gražiausia pirmąja scena. Ją laimės pasaulis, kuris vis dar turi prasmės, kai į jį sugrįžta žaidėjas, dizaineris, agentas ir atkūrimo žurnalas.