
Codex, l'agente di codice di OpenAI usato con un abbonamento ChatGPT, ha prodotto con GPT-6 Astra un RPG giocabile con mouse e controller, di cui sono stati generati scenari, sprite, ritratti, suoni e dodici musiche. Il progetto ha richiesto dieci turni, 3 h 05 min di lavoro dell'agente e l'equivalente di 65 $ a tariffa API. Quattro dei miei dieci messaggi segnalavano un difetto, dalla logica delle case alle collisioni.
Codex, l’agente di codice di OpenAI che uso con il mio abbonamento ChatGPT, scrive i file, lancia i comandi e genera le immagini senza il minimo copia-incolla. Il 13 settembre 2026 gli ho chiesto, con GPT-6 Astra, un RPG nello stile di EarthBound, il gioco di Ape e HAL Laboratory uscito su Super Nintendo nel 1994, in un unico prompt di 147 parole.
Per il clone di Dune 2000 avevo proceduto con piccole richieste per tre giorni. Questa volta il prompt imponeva fin dall’inizio un metodo per gli scenari, e il prototipo è uscito in una serata.
Clairbois si gioca qui sotto, con mouse, tastiera o controller. Il gioco aspetta il tuo clic per caricare i suoi 56,7 MB.
Clairbois : le RPG façon EarthBound de Codex et GPT-6 Astra
La version 04.3 de Clairbois, telle que Codex l'a laissée le 13 septembre 2026. Souris, clavier ou manette, le premier geste active le son. Dans cette version intégrée, la sauvegarde ne dure que le temps de la page.
Protocollo
Construit avec l'application Codex et le modèle gpt-6-astra en effort xhigh, le 13 septembre 2026 : 10 tours, 3 h 05 min de travail de l'agent. Fichiers du prototype servis tels quels, sans les pages d'audit ni les sources des images.

Il progetto gira in una sandbox isolata (iframe sandbox e CSP): nessun accesso al sito, ai cookie o alla tua sessione. Nulla viene caricato prima del tuo clic.
Una mappa generata in un colpo solo, poi scomposta
Ecco il prompt, tradotto dal francese e ripulito dagli errori di battitura.
Genera un gioco tipo EarthBound, in HTML, CSS e JavaScript, voglio che tu riprenda la stessa direzione artistica del gioco originale con le stesse UI per un gameplay mouse/controller. Inoltre voglio che tu generi i personaggi, i loro sprite e movimenti, oltre agli scenari e agli SFX. Per gli scenari e la mappa, voglio che tu generi tutta la mappa in un colpo solo, che la analizzi, che generi tramite un sistema di layer altre immagini da sovrapporre, con l’idea che se un personaggio passa dietro un albero o una staccionata, possa visivamente trovarsi dietro, ma l’intera mappa sarà generata in un colpo solo e userà questo sistema di layer. Rileverai quindi le collisioni ed effettuerai una mappatura manuale rispetto al risultato generato, così che il personaggio non attraversi lo scenario. Fai un prototipo rapido del gioco.
I giochi a 16 bit compongono le mappe con i tile. Qui lo scenario è un’unica illustrazione, e il motore deve sapere cosa passa davanti all’eroe e dove si blocca. Astra ha scelto Phaser 3.90, si è appoggiato al plugin Game Studio di OpenAI, a imagegen per le immagini e a sound-effects per i suoni, poi ha annunciato una piccola avventura di quartiere, con esplorazione a clic, dialoghi e combattimenti a turni.
Personaggi, scenari e suoni sono stati creati per il prototipo, battezzato Clairbois. L’eroe, Nino, incontra Lila, Marcel, Iris e Rémi, e affronta un fungo di nome Myco.
Ventisei minuti per un primo prototipo
Astra ha generato la mappa del quartiere, rilevato i quattro alberi, le staccionate, gli edifici e lo stagno, poi ha tracciato le collisioni in base alle loro posizioni reali. Gli alberi bloccano all’altezza del tronco, e il fogliame passa davanti o dietro l’eroe a seconda della sua posizione. Il layer in primo piano è arrivato con una scacchiera disegnata al posto della trasparenza, un difetto che Astra ha individuato e corretto da solo.
Per i suoni, all’inizio mancava la chiave ElevenLabs e Astra stava preparando effetti sintetizzati. Gliel’ho incollata nella conversazione due minuti e mezzo dopo, e sette effetti ElevenLabs hanno sostituito la sintesi. Il turno si è chiuso dopo 26 min 6 s con 24 pose dei personaggi, un percorso completo fino al combattimento e 35 verifiche riuscite, tra cui un controller simulato tramite l’API Gamepad. L’archivio consegnato non contiene nessuna chiave.
Case senza logica, poi una pianta da architetto
La mia seconda richiesta aggiungeva gli interni delle tre case, con diverse stanze, letti in cui l’eroe si infila sotto le coperte come in Alundra o Zelda, più missioni e nuove zone. L’ho interrotta dopo quattro minuti e mezzo. Il mio messaggio successivo fissava una regola. Ogni stanza avrebbe avuto la sua immagine, e le piante avrebbero seguito una logica strutturale, con una scala presa a sinistra che arriva in cima da sinistra e una porta nello stesso punto sui due lati del muro.
Astra ha prima scritto la pianta delle tre case, due stanze al piano terra e due al piano superiore, poi ha generato le dodici stanze separatamente. Il generatore di immagini ha spostato alcune aperture. Astra ha riallineato ogni immagine sulle coordinate della pianta comune, una superficie logica di 512 × 512 per stanza, e ha applicato la stessa trasformazione alle collisioni e ai layer. I 28 passaggi tra le stanze hanno ciascuno il proprio collegamento di ritorno, testato in entrambe le direzioni.
Poi ho chiesto un audit delle case. Astra ha rilevato piante quasi identiche da una casa all’altra, stanze troppo vuote e scale al piano superiore che davano l’impressione di salire. Ha ridisegnato una casa di famiglia, un negozio di alimentari con magazzino e abitazione al piano superiore, e la casa di un’orologiaia organizzata intorno a un laboratorio, con una scala a chiocciola. Il generatore ha di nuovo aggiunto porte assenti dalla pianta, corrette prima di fissare le collisioni, e sono stati esportati 158 layer. L’audit, distribuito su due turni, è costato 14,95 $ a tariffa API.
Restava un difetto di scala visibile a occhio nudo. L’eroe manteneva le dimensioni dell’esterno davanti a mobili molto più grandi. Ora nelle case è alto circa 62 pixel, il doppio della sua altezza all’aperto, come gli abitanti.
Layer e collisioni, i due bug che ho segnalato
Al turno 9, uno screenshot mostrava l’eroe con le gambe tagliate su un terreno libero, nel bosco. Astra ha riprodotto il taglio con precisione al pixel. Il layer dell’albero usava un contorno approssimativo che includeva un triangolo d’erba. Nella posizione segnalata, il vecchio layer copriva 89 pixel del personaggio, il nuovo nessuno. Gli otto alberi del bosco e del frutteto hanno ricevuto maschere dettagliate, salvate come strisce di pixel in js/occlusion-data.js.
Al turno 10 potevo fermarmi sopra alcuni elementi dello scenario. Il cartello mostrato nel mio screenshot non aveva nessuna collisione dichiarata, e Astra ha trovato altre dimenticanze tra rocce, cespugli, radici e margini della foresta. Ha anche corretto il pathfinding, che al clic poteva proporre un tragitto che tagliava l’angolo di un ostacolo. Un salvataggio fatto in un punto diventato solido ora riporta l’eroe sul terreno libero più vicino.
I controlli geometrici del progetto si lanciano con npm test, senza dipendenze da installare. Ecco il loro output, rilanciato il 14 settembre:
{
"maps": 15,
"rooms": 12,
"portalDirections": 28,
"reachableInteractions": 55,
"boundaryMovementSamples": 22023,
"passed": true,
"failures": [],
"checks": 1515
}I 1.515 controlli passano in 2,9 secondi, con 17 sonde di terreno e fogliame e 54 controlli dello scenario. Il README scritto da Astra precisa che questi campioni geometrici non dimostrano che ogni pixel dello scenario sia corretto.
Dodici musiche e sette ritratti
Al turno 7 ho chiesto musiche che cambiassero secondo la situazione e l’ambiente. Astra ha scritto dodici prompt e generato dodici brani con l’API musicale di ElevenLabs e il modello music_v2, per il villaggio, le tre case, il bosco, il frutteto, due combattimenti, il riposo in un letto, il sogno, la vittoria e la sconfitta. I dieci temi di sottofondo vanno in loop con una dissolvenza di 350 ms, i cambi di luogo passano per una dissolvenza di 850 ms, e la musica si abbassa durante i dialoghi.
Quaranta controlli audio sono passati in Chrome. Verificano il segnale, i loop e le transizioni, e il README precisa che non sostituiscono un ascolto per giudicare la musica in sé.
I ritratti sono arrivati al turno 8. Astra ha fatto generare a imagegen sette ritratti in pixel art a partire dagli sprite esistenti, mantenendo acconciature, vestiti e colori. Compaiono accanto alle battute di ogni personaggio, e quello dell’eroe appare nei menu con il suo livello e i suoi punti vita e punti potere. Le finestre reggono fino a 320 pixel di larghezza.
Tempo, token e costo
| Misura | Clairbois |
|---|---|
| Periodo | 13 settembre, dalle 16:53 alle 23:23 (ora di Parigi) |
| Lavoro dell’agente | 3 h 05 min su 10 turni, di cui 2 interrotti |
| Messaggi inviati | 10, di cui 2 con uno screenshot |
| Risposte del modello | 269 |
| Chiamate agli strumenti | 257 |
| Compattazioni del contesto | 4 |
| Token in ingresso | 35.405.000, di cui 33.769.472 letti dalla cache (95,4%) |
| Token in uscita | 301.285, di cui 114.284 di ragionamento |
| Costo a tariffa API | 65,19 $ |
Alla tariffa rilevata su OpenRouter il 14 settembre 2026, la stessa del clone di Dune 2000, il totale si divide in 16,36 $ di ingresso non in cache, 33,77 $ di cache e 15,06 $ di uscita. Il mio abbonamento ChatGPT conteggia questo uso in quota, e l’importo serve da riferimento. Lo stesso modello affronta Claude Fable 5.1 su una scena three.js nel nostro confronto tra i due agenti.
Due progetti, due modi di guidare l’agente
| Misura | Clone di Dune 2000 | Clairbois |
|---|---|---|
| Genere | strategia in tempo reale | RPG di esplorazione |
| Primo prompt | 66 parole e un repository di riferimento | 147 parole e un metodo imposto |
| Turni | 46 | 10 |
| Messaggi | 54 | 10 |
| Lavoro dell’agente | 11 h 16 min | 3 h 05 min |
| Costo a tariffa API | 196,00 $ | 65,19 $ |
| Costo per ora di lavoro | 17,40 $ | 21,12 $ |
| Controlli automatici | 122 test Node, 24 percorsi nel browser | 1.515 controlli geometrici |
Il prompt lungo ha richiesto un quinto dei messaggi, per un costo più alto per ora di lavoro. Il modello ha risposto più spesso, 1,45 volte al minuto contro 1,27, con un po’ meno cache, 95,4% contro 96,8%. I due giochi non hanno né lo stesso genere né le stesse dimensioni, quindi queste differenze non indicano un metodo migliore dell’altro.
Cosa ricordare
- Generare un’intera mappa in un’unica immagine funziona, a patto di far tracciare poi ogni collisione e ogni layer, e di testarli.
- Per gli interni, la pianta si scrive prima di ogni immagine. Porte e scale allineate, 28 passaggi verificati.
- Il generatore di immagini sposta aperture, disegna scacchiere e aggiunge porte. Ogni immagine va controllata prima di entrare nel gioco.
- Quattro dei miei dieci messaggi segnalavano un difetto visibile che i test automatici non avevano rilevato.
- Dodici musiche e sette ritratti sono costati due turni e 10,81 $ a tariffa API.
Errori frequenti
architecture.json qui.F2 qui, e un test dei tragitti.

