Jacquard in tipkani svetovi za igre, ki jih gradi umetna inteligenca
Predstavitev je lahka
Prva predstavitev Jacquarda je namerno zapeljiva. Agent odpre brskalniku domač pogon, pokliče tipizirano orodje, ustvari prizor, oblikuje teren, postavi predmete, poveže vedenje, shrani sveženj in vrne svet človeku, ki lahko pritisne predvajanje. Brez večgigabajtnega urejevalnika. Brez ceremonije namiznega pogona. Brez obreda nameščanja domačega orodja, preden se lahko premakne prva ideja.
Če bi bila to vsa zgodba, bi bilo Jacquard lahko razložiti: hitrejši prototipi, cenejše simulacije za usposabljanje in majhni interaktivni svetovi, ustvarjeni iz navadnega jezika. Izvorno gradivo podpira del te oblike: Jacquard je raziskovalni projekt Dweve, napisan v strogi TypeScript in zasnovan za delovanje v zavihku brskalnika. Metapodatki poti opisujejo spletni igralni pogon, kjer agenti z umetno inteligenco gradijo popolne igre prek tipiziranega vmesnika API, z vključenim vizualnim urejevalnikom, fiziko in vedenjem neigralskih likov.
Toda dobra predstavitev lahko skrije pravi problem. Narediti agenta, ki ustvari verjeten igralni prizor, ni več težki del. Težki del je narediti ustvarjeni svet dovolj omejen za pregled, dovolj urejevalen za oblikovalca, dovolj fizičen za igranje, dovolj vedenjski, da je pomemben, in dovolj varen, da generiranje ne postane nov način ustvarjanja nepregledanega stanja.
To je zanimivo vprašanje: ali lahko igralni pogon izpostavi vsako pomembno operacijo kot tipizirano površino, ki si jo delita agenta in ljudje, hkrati pa ohrani ponovljivost, avtorstvo, varnost in teksturo oblikovanja?
Zakaj je vprašanje še vedno odprto
Običajno pakirano orodje poskuša zamrzniti svojo obljubo. Evo, kaj počne. Evo, model podpore. Evo, meja. Evo, način odpovedi. Jacquard je bolj zanimiv, preden te povedi postanejo preveč gladke, ker so težka vprašanja še vedno povezana med seboj.
Trenutni vir opisuje pogon, ki je najprej namenjen agentom, površino MCP, deterministično ponovljivost, Rapier3D v WASM, WebGPU z nadomestkom WebGL2, sredstva glTF 2.0 in pot, ki deluje samo v brskalniku. To so konkretne inženirske odločitve. So pa tudi šele začetek družbene pogodbe okoli iger, ki jih ustvarja umetna inteligenca.
Igre niso dokumenti s polji za trke. Igralni svet je živa ureditev geometrije, časovnega okvira, fizike, vnosov, prehodov stanj, pričakovanj igralca in avtorskega presenečenja. Če sistem umetne inteligence ustvari poročilo, lahko bralec označi odstavek kot napačen. Če sistem umetne inteligence ustvari igralni svet, se lahko napaka pokaže kot vrata, do katerih ni mogoče priti, kot neigralski lik, ki laže o stanju naloge, kot fizični impulz, ki prekine ponovljivost, ali kot operacija urejevalnika, ki jo je agent izvedel, a je oblikovalec pozneje ne more razumeti.
Nelagodna vprašanja so bistvo. Kaj sme agent neposredno spreminjati? Katere funkcije urejevalnika morajo biti prvovrstne tipizirane operacije? Katera ustvarjena sredstva je varno pakirati? Katera vedenja morajo biti pregledna, preden se zaženejo? Katero stanje sveta sodi v dnevnik dogodkov namesto v skriti kup pogona? To niso kozmetične postavke v zaostanku. To je pogon.
Pogon je argument o dosegu
Večina igralnih pogonov je odlično orodje za ljudi za mizo. A to jih ne naredi dobrih podlag za agente. Njihova moč pogosto živi za meniji, ploščami, skriptnimi jeziki, značilnimi za pogon, lastniškimi cevovodi sredstev in tokovi uporabniškega vmesnika, ki predpostavljajo, da lahko oseba vizualno poišče naslednji upravljalni element. Agent se lahko nauči klikati, a klikanje po urejevalniku ni isto kot imeti programsko pogodbo.
Jacquard zavzame nasprotno stališče. Če to zmore urejevalnik, bi moral to zmoči tudi klic orodja. Funkcija, ki je agent ne doseže prek kode, za to raziskovalno vprašanje pravzaprav ne obstaja. To pravilo zveni strogo, dokler ne opazujete agenta, kako poskuša zgraditi svet skozi pogon samo z grafičnim vmesnikom. Agent je prisiljen v približevanje: sklepa o meniju, upa, da je izbrana plošča aktivna, izlušči niz napake, nato pa nadaljuje s stanjem, ki ga ne more dokazati.
Vir imenuje trenje jasno: funkcije samo z grafičnim vmesnikom, težki namestitveni programi, DSL-ji, značilni za pogon, zaprti cevovodi. Jacquard odgovarja z zavihkom brskalnika, odprtimi formati, glTF sredstvi, serializabilnimi svetovi, s shemo potrjenimi parametri, tipkanimi napakami in eno tipkano površino, ki si jo delita vizualni urejevalnik in agent. Zato pogon ni le pogon. Je eksperiment v dosegu.
Doseg ni udobje. Je varnost. Ko je vsaka operacija klic, je vsako operacijo mogoče poimenovati, omejiti, beležiti, zavrniti, ponoviti in pojasniti. Ko je zmožnost skrita za menijem, mora agent pretihotapiti namero skozi površino, ki nikoli ni bila zasnovana zanjo. Razlika je razlika med inženirjem, ki bere sled API-ja, in človekom, ki se poskuša spomniti, katera plošča je bila odprta, ko se je prizor spremenil.
Svet ni slika
Ustvarjanje slik z umetno inteligenco je ljudi naučilo sprejeti nenavadno pogodbo: prosite za sliko, prejmete sliko, odpustite strukturo, če površina izgleda prav. Igre te pogodbe ne morejo preživeti. Raven igre se ne ocenjuje le po tem, čemu je podobna iz enega zornega kota kamere. Ocenjuje se po tem, ali se igralec lahko premika skozi njo, ali fizika ostaja stabilna, ali se cilji razrešijo, ali vedenje NPC-jev spoštuje svet in ali je stanje mogoče ponoviti, ko gre kaj narobe.
Tu postanejo tipizirane omejitve osrednje. Orodje za teren ne more zgolj slikati hribov. Vedeti mora, kje so prehodne površine, kako pobočja vplivajo na krmilnike likov, kako vegetacija in osvetlitev vplivata na vidljivost ter kako bo generiranje s semenom pozneje reproduciralo enak rezultat. Orodje za prizore ne more zgolj postavljati stvari. Ustvariti mora naslovljive entitete, pripeti komponente, različiti graf in narediti rezultat dovolj primerljiv za pregled.
Paleta orodij Jacquard to naredi vidno. Stran imenuje petnajst kategorij: prizor, entiteta, komponenta, sredstvo, material, fizika, teren, osvetlitev, zvok, UI, naloga, NPC, gradnja, razhroščevanje in testiranje igranja. Prav tako imenuje bralne vire, kot so metapodatki projekta, graf prizora, katalog sredstev, meritve zmogljivosti in dnevnik napak. To ni poljuben meni. To je taksonomija tega, kaj mora razkriti svet igre, preden je agent lahko več kot pameten snemalnik makrov.
Raziskovalni problem ni, ali lahko obstaja vseh petnajst kategorij. Te že obstajajo kot trditev v viru. Problem je, kako izrazna, varna in sestavljiva mora biti vsaka od njih, preden generirani svetovi prenehajo biti krhki artefakti in začnejo delovati kot avtorirani sistemi. Odgovora ne bomo našli z močnejšim pozivanjem. Našli ga bomo tako, da bo predstavitev težje lagala.
Urejevalnik ni okras
Šibko branje orodij, ki dajejo prednost agentom, obravnava urejevalnik kot ogledovalnik. Agent ustvarja stvari; človek gleda. To je napačen model za Jacquard. Izvorno besedilo je natančno: vizualni urejevalnik uporablja isti API kot agenti. Je neprivilegiran odjemalec iste površine. To samo dejstvo preprečuje nastanek globoke ločnice znotraj projekta.
Če ima agent zasebno pot v svet in urejevalnik drugo, človek na koncu izgubi. Generirano stanje postane tehnično veljavno, a praktično neuredljivo. Oblikovalec vidi grad, vendar ne more odkriti, zakaj je zastavica naloge pripeta tej entiteti, zakaj ima teren nevidni blokator ali zakaj se urnik NPC-ja spremeni po drugi noči. Rezultat je videti kot produktivnost, obnaša pa se kot dolg.
Skupni API pomeni, da mora imeti urejevalnik možnosti za iste koncepte, s katerimi upravlja agent. Prikazati mora graf prizora, komponente, vedenja, vire, napake in zmogljivost na načine, o katerih lahko človek razmišlja. Oblikovalcu mora omogočiti popraviti svet, ne da bi zapustil pogodbo, od katere je odvisna ponovitev. Urejevalnik je zato del raziskovalnega instrumenta.
To je neprijetna zahteva, ker upočasni fantazijo. Lažje je pustiti agentu, da ustvari skrito ožičenje, nato pa upati, da bo predstavitev še naprej delovala. Jacquard zahteva, da skrito ožičenje postane dovolj vidno, da ga lahko oblikovalec prevzame v lastništvo. Igre, ki jih zgradi umetna inteligenca, postanejo resne šele, ko jih človek lahko podeduje brez forenzične arheologije.
Fizika je tam, kjer šarm postane odgovornost
Fizika ima brutalen način spreminjanja nejasne generacije v vidno napako. Zgodba lahko prenese malo pripovednega zamahovanja z roko. 3D svet s telesi, trki, terenom in vnosom igralca tega ne more. Če se korak spreminja s hitrostjo sličic, ponovitev odstopa. Če je krmiljenje lika odvisno od nezabeleženega impulza, postane poročilo o napaki govorica. Če isto seme na drugem računalniku ustvari različne položaje teles, svet ni ponovljiv dokaz.
Jacquard to utemeljuje z Rapier3D v WASM in fiksnim časovnim korakom 60 Hz. Izvorno gradivo opisuje deterministično fiziko, semensko naključnost, posnet vnos in mehansko ponovitev iz tipiziranega dnevnika dogodkov. Isto seme, isti dnevnik, isti okvirji. Poročilo o napaki je priloženi dnevnik; ponovite ga in videli boste, kaj je videl igralec. To je močnejša trditev kot posnetek zaslona, saj ohranja interaktivne vzroke, ne le slikovnih pik.
Raziskovalno vprašanje je, kaj se zgodi, ko generacija vstopi v to zanko. Agent lahko ustvari most, vendar mora most upoštevati maso, trke, dosegljivost in omejitve igranja. Lahko ustvari NPC, vendar mora NPC krmariti po svetu, katerega geometrija se lahko spreminja. Lahko prilagodi teren, vendar morajo biti nastali nakloni še vedno igralni. Lahko doda scenariziran dogodek, vendar mora biti ta dogodek zabeležen tako, da ga ponovitev lahko vključi.
Fizika zato ni podsistem na dnu sklada. Je eden od sodnikov generacije. Ustvarjeni igralni svet ni dober, ker je videti verjeten. Dober je, ko ga igralec lahko naseli, ko pravila držijo in ko lahko poznejši pregledovalec ponovi isto napako, namesto da bi model spraševal, kaj je mislil.
Vedenje NPC je plast, kjer zmanjka jezika
Neigralski liki naredijo Jacquard težjega od urejevalnika ravni. Statično sobo lahko pregledamo kot geometrijo. NPC je stanje skozi čas: urnik, cilj, zaznavanje, dialog, družbeni graf, povezave z nalogami, iskanje poti, spomin in neuspeh. Izvorno gradivo imenuje drevesa vedenja, urnike, cilje, pripoved kot podatke, grafe pogojev in razvejano napredovanje. Te besede so tisto, kjer igre, zgrajene z umetno inteligenco, prenehajo biti igrača.
Jezik je uporaben za namero. Je slaba končna predstavitev vedenja. Poziv lahko reče, da mora biti stražar ponoči sumničav, prijazen do vaščanov, sovražen do tatov in odpuščajoč, ko igralec opravi nalogo. Pogon potrebuje nekaj ostrejšega: kateri senzor zazna nevarnost, kateri pogoj spremeni odnos, katera zastavica naloge preglasi sumničavost, kateri urnik premakne stražarja in katera vrstica dialoga je dovoljena po prehodu stanja.
Ta ostrina je razlog, zakaj so tipizirana orodja za NPC pomembna. Brez njih agent proizvaja vtise. Z njimi mora vedenje zapisati v pregledne strukture. Oblikovalec lahko nato vpraša, ali je stražar nepravičen, ali se naloga lahko znajde v mrtvi točki, ali družbeni graf ustvarja nemogoče obveznosti ali ali bi generirano navodilo povzročilo, da bi se vsi NPC zlili v isto dolgočasno rutino.
Vedenje NPC-jev prav tako poskrbi, da je varnost praktična. Nevarno generiranje ni le žaljivo besedilo ali prepovedana vsebina. Lahko je zanka vedenja, ki ujame igralca, naloga, ki se ne more razrešiti, generiran družbeni graf, ki vključuje sovražni stereotip, ali urnik, ki povzroči sesutje zmogljivosti. Varnost pri generiranju mora delovati na ravni igralnih sistemov, ne le na ravni besed.
Varnost je problem oblike
Najpreprostejša zgodba o varnosti pravi, da agent morda generira ali ne generira del vsebine. Jacquard potrebuje bolj strukturno zgodbo. Vprašanje ni le, ali je generirano sredstvo dovoljeno. Vprašanje je, ali generirana sprememba ustreza svetovni pogodbi. Ali spreminja le obseg, ki ji je bil dodeljen? Ali razkrije, kaj je spremenila? Ali jo lahko urednik pregleda? Ali jo lahko predvajanje ponovno ustvari? Ali jo lahko orodja za gradnjo in testiranje igre zavrnejo, preden človek zamenja novost za dokončanost?
Vir se temu približa s tipiziranimi klici, preverjanjem sheme, viri samo za branje, razhroščevanjem, testiranjem igre, prenosljivimi paketi in odprtimi datotekami. To niso glamurozne varnostne funkcije, a so pomembnejše od dramatičnega sporočila o zavrnitvi. Omejen klic je mogoče zavrniti. Tipizirano napako je mogoče popraviti. Vir samo za branje lahko agentu omogoči pregled brez spreminjanja. Korak gradnje lahko zapakira le tisto, kar je mogoče serializirati. Deterministično testiranje igre lahko razkrije, da se generirana vrata nikoli ne odprejo.
Varno generiranje pomeni tudi upiranje skušnjavi, da bi skrili negotovost. Če agent ne more vedeti, ali je uganka rešljiva, je sistem ne bi smel zapakirati kot rešeno. Če je vedenje NPC-ja odvisno od dvoumnega stanja, bi moral urednik to dvoumnost narediti vidno. Če se predvajanje fizike razhaja, bi morala trditev propasti. Besednjak za neuspeh se še vedno gradi.
Jacquard bi moral negotovost narediti vidno, namesto da jo polira v lažno obljubo. Ko generirana vsebina ni dovolj omejena, bi morali urednik, dnevnik, pot predvajanja in tipizirane napake razkriti to vrzel, dokler je še dovolj majhna, da jo je mogoče popraviti. To ni hrapavost zaradi hrapavosti same. Tako se generirani svetovi izognejo temu, da postanejo vsebinski dolg.
Brskalnik spremeni ekonomiko ponavljanja
Jacquard, ki deluje v zavihku brskalnika, lahko zveni kot funkcija distribucije, in to tudi je. Ničelna namestitev zniža stroške preizkušanja sveta. WebGPU in WebGL2 dajeta pogonu praktično pot upodabljanja. Učilnica, raziskovalni partner ali oblikovalska seja se ni treba začeti s težko domačo namestitvijo. Toda brskalnik je pomemben iz globljega razloga.
Skrajša zanko ponavljanja. Agent lahko gradi, urednik lahko pregleduje, igralec lahko testira, dnevnik pa je mogoče predvajati brez premikanja sveta skozi verigo lastniških orodij. Isto okolje lahko prikaže graf scene, poganja fiziko, predvaja zvok, pregleduje zmogljivost in zapakira prenosljiv paket. To ne reši oblikovanja iger, a odstrani veliko naključnega obredja pri njegovem preučevanju.
Brskalnik tudi jasneje pokaže meje. Če se svet odpre kot spletna stran, je mogoče mejo med tem, kaj se je izvajalo, kaj se je naložilo, katero stanje se je spremenilo in kaj je bilo izvoženo, narediti izrecno. Če je pogon strog TypeScript, namenjen ES2022, z odprtimi glTF sredstvi in serializabilnimi svetovi, lahko artefakt prebere več ljudi kot le majhna duhovniška skupina enega namiznega pogona.
Ta odprtost je praktična prednost. Več oči lahko pregleda predstavitev. Več agentov je mogoče povezati prek MCP. Več napak je mogoče reproducirati kot dnevnike namesto pripovedovati kot anekdote. Brskalnik problema ne naredi lahkega. Naredi ga opaznega.
Pritisk prototipa bi ga zlomil
Obstaja znan programski refleks: ko se nekaj dobro predstavi, ga gladimo, dokler ga ni mogoče zapakirati. Jacquard je natanko tak sistem, ki kaznuje ta refleks. Če ga zgladimo prezgodaj, se mora ekipa pretvarjati, da je avtorski dogovor določen, preden so težka vprašanja razrešena. Kaj je stabilen avtorski dogovor? Katera ustvarjena vedenja so podprta? Katere fizikalne trditve veljajo v vseh brskalnikih? Kateri koncepti urejevalnika so zdaj stalni? Kateri varnostni pregledi so obvezni?
Prezgodnji paket bi se moral pretvarjati, da so odgovori že določeni. To bi zožilo raziskavo na tisto, kar je najlažje zapakirati. Rezultat bi bila zabavna igrača s polirano sprednjo stranjo in krhko zadnjo. Zanimiva obljuba Jacquarda je večja: igralni pogon, kjer si AI agenti in človeški oblikovalci delijo isto tipkano delovno površino, kjer je stanje sveta pregledno, kjer je ponovitev mehanska in kjer je generiranje omejeno s sistemi, ne z občutki.
Ta obljuba si zasluži potrpežljivost, ker se dotika več težkih področij hkrati. Oblikovanje programskih jezikov se pojavi v shemah orodij. Interakcija med človekom in računalnikom se pojavi v urejevalniku. Simulacija se pojavi v fiziki. AI za igre se pojavi v vedenju NPC. Varnost se pojavi v mejah okoli generiranja. Infrastruktura se pojavi v pakiranju, izvajanju v brskalniku in odprtih formatih. Ozka implementacija bi izbrala eno področje in ostala imenovala robne primere. Jacquard jih ohranja povezane.
Bistvo je ohraniti trditev natančno. Jacquard je raziskava v ustvarjanje iger, ki ga nadzorujejo agenti in deluje v brskalniku. Lahko je uporaben za poskuse in partnersko delo, ne da bi se pretvarjal, da je vsak avtorski dogovor dokončen. Ta poštenost je del inženirstva.
Zakaj je raziskava verodostojna
Znaki niso marketinški. So tehnični in izkustveni. Ustvarjen svet bi moral biti pregleden skozi urejevalnik brez skritega stanja. Klici orodij bi morali spodleteti z uporabnimi tipkanimi napakami. Ponovitev bi morala reproducirati pomembne napake. Vedenja NPC bi morala biti berljiva kot podatki in razhroščljiva kot sistemi. Testiranje igre bi moralo ujeti očitne nemogočnosti, preden postanejo človeško razočaranje.
Pogon bi moral tudi ohraniti avtorstvo. Igre, ki jih zgradi AI, še vedno potrebujejo človeški okus. Agent lahko osnutek sveta, vendar mora oblikovalec lahko oblikuje brez izgube sledi, kako je nastal. Če mora človek začeti znova, da ponovno pridobi nadzor, agent ni bil sodelavec. Bil je hiter vir tehničnega dolga.
Varnost bi morala postati manj teatralna in bolj mehanska. Ustvarjena sprememba bi morala nositi obseg, izvor in stanje pregleda. Pregled samo za branje bi moral biti ločen od spreminjanja. Gradnja bi morala zavrniti tisto, česar ni mogoče čisto zapakirati. Razhroščevanje bi moralo pokazati, od kod prihaja vedenje. Testiranje igre bi moralo biti dovolj skriptabilno, da so trditve ponovljive. To so dolgočasne besede, zato so pomembne.
Ko so te lastnosti običajne, lahko Jacquard podpira močnejše obljube. Do takrat je raziskava poštena oznaka. Ekipi in bralcu pove, da cilj ni le narediti AI, da proizvaja igre, ampak narediti svetove iger, ki jih ustvari AI, dovolj berljive, da jih je mogoče obvladati.
Uporabna trditev
Jacquard in tipkani svetovi za igre, ki jih gradi umetna inteligenca, ker v resnici ne gre za igre, ki nastanejo iz pozivov. Gre za stroje, ki so potrebni, preden igre iz pozivov postanejo resni umetniški izdelki: tipkane omejitve, skupna orodja urejevalnika, deterministična fizika, pregledno vedenje NPC-jev, odprta sredstva, prenosljivi paketi in varnost pri generiranju.
Uporabna podoba ni čarobni pogon. Je delavnica, kjer agent in oblikovalec uporabljata ista orodja. Agent nima skritih vrat. Urejevalnik nima šibkejšega zemljevida. Fizikalni sistem ne postane neobvezen, ko je prizor videti lep. Dnevnik dogodkov ne izgine po predstavitvi. Ustvarjeni svet ostaja svet, ki ga lahko nekdo pregleda, predvaja znova, spremeni in zagovarja.
To je dolg inženirski program, ne slogan. Če uspe, bodo vmesniki za uporabnike jasnejši, ker težka vprašanja niso bila prehitro rešena. Če ne uspe, bo neuspeh vseeno naučil nekaj o pogojih, pod katerimi lahko umetna inteligenca varno avtorizira interaktivne sisteme. Oba izida sta koristna.
Za zdaj je najbolj natančno reči tole: Jacquard je odprt raziskovalni pogon za svetove iger, ki jih gradi umetna inteligenca. Smelo je lahko vznemirljiv. Prav tako mora biti natančen. Prihodnosti iger, ki jih avtorizira umetna inteligenca, ne bo zmagal najlepši prvi prizor. Zmaga svet, ki je še vedno smiseln, ko se vanj vrnejo igralec, oblikovalec, agent in dnevnik predvajanja.