Crear un juego con ChatGPT: un RPG al estilo EarthBound en una tarde

Codex y GPT-6 Astra sacaron de un prompt de 147 palabras un RPG al estilo EarthBound, cuyo mapa entero se genera de una vez y luego se divide en capas y colisiones. En seis horas y media, Clairbois sumó 15 mapas, 12 habitaciones, 12 temas musicales y seis misiones.

Crear un juego con ChatGPT: un RPG al estilo EarthBound en una tarde
Respuesta rápida

Codex, el agente de código de OpenAI que se usa con una suscripción a ChatGPT, produjo con GPT-6 Astra un RPG jugable con ratón y mando, con decorados, sprites, retratos, sonidos y doce temas musicales generados. El proyecto necesitó diez turnos, 3 h 05 min de trabajo del agente y el equivalente a 65 $ a precio de API. Cuatro de mis diez mensajes señalaban un defecto, desde la lógica de las casas hasta las colisiones.

Codex, el agente de código de OpenAI que uso con mi suscripción a ChatGPT, escribe los archivos, ejecuta los comandos y genera las imágenes sin copiar y pegar nada. El 13 de septiembre de 2026 le pedí, con GPT-6 Astra, un RPG al estilo de EarthBound, el juego de Ape y HAL Laboratory lanzado en Super Nintendo en 1994, en un único prompt de 147 palabras.

Con el clon de Dune 2000, había avanzado a base de pequeñas peticiones durante tres días. Esta vez, el prompt imponía desde el principio un método para los decorados, y el prototipo salió en una tarde.

Clairbois se juega aquí debajo, con ratón, teclado o mando. El juego espera a tu clic para cargar sus 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.

Protocolo

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.

ACodex · GPT-6 Astragpt-6-astra (xhigh)

El proyecto se ejecuta en un sandbox aislado (iframe sandbox y CSP): sin acceso al sitio, a las cookies ni a tu sesión. Nada se carga antes de tu clic.

Abrir aparte
Editor
OpenAI
Modelo
gpt-6-astra (xhigh)
Herramienta
Codex, application de bureau
Fecha
2026-09-13
Duración
3 h 05 min de travail sur 10 tours
Tokens de entrada
35 405 000, dont 33 769 472 lus en cache
Tokens de salida
301 285, dont 114 284 de raisonnement
Coste
abonnement ChatGPT (≈ 65 $ au tarif API)
Tamaño del proyecto
56,7 Mo, 85 fichiers
Notas
Clic pour marcher et parler, flèches ou ZQSD, E pour interagir, X pour le menu, J pour le journal, M pour la carte, P pour la pause. Une manette standard est reconnue après un premier appui. 1 515 contrôles géométriques au 14 septembre 2026.

Un mapa generado de una vez y después recortado

Aquí está el prompt, traducido del francés y sin las erratas del original.

Genera un juego tipo EarthBound, en HTML, CSS y JavaScript, quiero que retomes la misma dirección de arte que el juego original con las mismas UI para un gameplay con ratón/mando. Además, quiero que generes los personajes, sus sprites y movimientos, así como los decorados y los SFX. Para los decorados y el mapa, quiero que generes todo el mapa de una vez, que lo analices, que generes con un sistema de capas otras imágenes para superponerlas, con la idea de que si un personaje pasa detrás de un árbol o de una valla, pueda estar visualmente detrás, pero el mapa entero se generará de una vez y usará ese sistema de capas. Así que detectarás las colisiones y harás un mapeado manual respecto al resultado generado para que el personaje no atraviese el decorado. Haz un prototipo rápido del juego.

Los juegos de 16 bits componen sus mapas con tiles. Aquí, el decorado es una única ilustración, y el motor tiene que saber qué pasa por delante del héroe y dónde choca. Astra eligió Phaser 3.90, se apoyó en el plugin Game Studio de OpenAI, en imagegen para las imágenes y en sound-effects para los sonidos, y luego anunció una pequeña aventura de barrio, con exploración por clic, diálogos y combate por turnos.

Los personajes, los decorados y los sonidos se crearon para el prototipo, bautizado Clairbois. El héroe, Nino, se cruza con Lila, Marcel, Iris y Rémi, y se enfrenta a una seta llamada Myco.

Veintiséis minutos para un primer prototipo

Astra generó el mapa del barrio, localizó los cuatro árboles, las vallas, los edificios y el estanque, y luego trazó las colisiones según sus posiciones reales. Los árboles bloquean a la altura del tronco, y el follaje pasa por delante o por detrás del héroe según su posición. La capa de primer plano llegó con un damero dibujado en lugar de la transparencia, un defecto que Astra detectó y corrigió solo.

Para los sonidos, al principio faltaba la clave de ElevenLabs y Astra estaba preparando efectos por síntesis. Se la pegué en la conversación dos minutos y medio después, y siete efectos de ElevenLabs sustituyeron a la síntesis. El turno terminó a los 26 min 6 s con 24 poses de personajes, un recorrido completo hasta el combate y 35 comprobaciones superadas, entre ellas un mando simulado con la API Gamepad. El archivo comprimido entregado no contiene ninguna clave.

Casas sin lógica, y después un plano de arquitecto

Mi segunda petición añadía el interior de las tres casas con varias habitaciones, camas en las que el héroe se mete bajo la manta como en Alundra o Zelda, más misiones y nuevas zonas. La interrumpí a los cuatro minutos y medio. Mi mensaje siguiente fijaba una regla. Cada habitación tendría su propia imagen, y los planos seguirían una lógica estructural, con una escalera tomada por la izquierda que llega arriba por la izquierda y una puerta en el mismo sitio a ambos lados de la pared.

Astra escribió primero el plano de las tres casas, dos habitaciones en la planta baja y dos en el piso de arriba, y luego generó las doce habitaciones por separado. El generador de imágenes desplazó algunas aberturas. Astra reajustó cada imagen a las coordenadas del plano común, una superficie lógica de 512 × 512 por habitación, y aplicó la misma transformación a las colisiones y a las capas. Los 28 pasos entre habitaciones tienen cada uno su enlace de vuelta, probado en los dos sentidos.

Después pedí una auditoría de las casas. Astra encontró planos casi idénticos de una casa a otra, habitaciones demasiado vacías y escaleras del piso de arriba que parecían subir. Rediseñó una casa familiar, una tienda de comestibles con almacén y vivienda arriba, y una casa de relojera organizada en torno a un taller, con una escalera de caracol. El generador volvió a añadir puertas que no estaban en el plano, corregidas antes de fijar las colisiones, y se exportaron 158 capas. La auditoría, repartida en dos turnos, costó 14,95 $ a precio de API.

Quedaba un defecto de escala visible a simple vista. El héroe conservaba su tamaño de exterior frente a muebles mucho más grandes. Ahora mide unos 62 píxeles de alto dentro de las casas, el doble que fuera, como los habitantes.

Capas y colisiones, los dos bugs que detecté

En el turno 9, una captura mostraba al héroe con las piernas cortadas sobre suelo libre, en el bosque. Astra reprodujo el corte al píxel. La capa del árbol usaba un contorno aproximado que englobaba un triángulo de hierba. En la posición señalada, la capa antigua tapaba 89 píxeles del personaje, y la nueva no tapa ninguno. Los ocho árboles del bosque y del huerto frutal recibieron máscaras detalladas, guardadas como franjas de píxeles en js/occlusion-data.js.

En el turno 10, podía quedarme encima de algunos elementos del decorado. El cartel que se veía en mi captura no tenía ninguna colisión declarada, y Astra encontró otros olvidos entre las rocas, los arbustos, las raíces y los bordes del bosque. También corrigió la búsqueda de caminos, que al hacer clic podía proponer un trayecto que cortaba la esquina de un obstáculo. Una partida guardada en un punto que se ha vuelto sólido recoloca ahora al héroe en el suelo libre más cercano.

Las comprobaciones geométricas del proyecto se lanzan con npm test, sin ninguna dependencia que instalar. Esta es su salida, ejecutada de nuevo el 14 de septiembre:

json
{
  "maps": 15,
  "rooms": 12,
  "portalDirections": 28,
  "reachableInteractions": 55,
  "boundaryMovementSamples": 22023,
  "passed": true,
  "failures": [],
  "checks": 1515
}

Las 1.515 comprobaciones pasan en 2,9 segundos, con 17 sondas de suelo y follaje y 54 comprobaciones de decorado. El README que redactó Astra precisa que estas muestras geométricas no demuestran que cada píxel del decorado sea correcto.

Doce temas musicales y siete retratos

En el turno 7, pedí música que cambiara según la situación y el entorno. Astra escribió doce prompts y generó doce temas con la API de música de ElevenLabs y el modelo music_v2, para el pueblo, las tres casas, el bosque, el huerto frutal, dos combates, el descanso en una cama, el sueño, la victoria y la derrota. Los diez temas de ambiente se repiten en bucle con un fundido de 350 ms, los cambios de lugar pasan por un fundido de 850 ms, y la música baja durante los diálogos.

En Chrome se superaron cuarenta comprobaciones de audio. Verifican la señal, los bucles y las transiciones, y el README precisa que no sustituyen a una escucha para juzgar la música en sí.

Los retratos llegaron en el turno 8. Astra hizo que imagegen generara siete retratos en pixel art a partir de los sprites existentes, conservando peinados, ropa y colores. Se muestran junto a las frases de cada personaje, y el del héroe aparece en los menús con su nivel y sus puntos de vida y de poder. Las ventanas se adaptan hasta 320 píxeles de ancho.

Tiempo, tokens y coste

Medida Clairbois
Periodo 13 de septiembre, de 16:53 a 23:23 (hora de París)
Trabajo del agente 3 h 05 min en 10 turnos, 2 de ellos interrumpidos
Mensajes enviados 10, 2 de ellos con una captura de pantalla
Respuestas del modelo 269
Llamadas a herramientas 257
Compactaciones del contexto 4
Tokens de entrada 35.405.000, de los cuales 33.769.472 leídos en caché (95,4 %)
Tokens de salida 301.285, de los cuales 114.284 de razonamiento
Coste a precio de API 65,19 $

Con la tarifa consultada en OpenRouter el 14 de septiembre de 2026, la misma que para el clon de Dune 2000, el total se reparte en 16,36 $ de entrada sin caché, 33,77 $ de caché y 15,06 $ de salida. Mi suscripción a ChatGPT descuenta este uso de una cuota, así que el importe sirve de referencia. El mismo modelo se enfrenta a Claude Fable 5.1 en una escena three.js en nuestro comparativo de los dos agentes.

Dos proyectos, dos formas de dirigir al agente

Medida Clon de Dune 2000 Clairbois
Género estrategia en tiempo real RPG de exploración
Primer prompt 66 palabras y un repositorio de referencia 147 palabras y un método impuesto
Turnos 46 10
Mensajes 54 10
Trabajo del agente 11 h 16 min 3 h 05 min
Coste a precio de API 196,00 $ 65,19 $
Coste por hora de trabajo 17,40 $ 21,12 $
Comprobaciones automatizadas 122 tests de Node, 24 escenarios de navegador 1.515 comprobaciones geométricas

El prompt largo necesitó cinco veces menos mensajes, con un coste más alto por hora de trabajo. El modelo respondió más a menudo, 1,45 veces por minuto frente a 1,27, con algo menos de caché, 95,4 % frente a 96,8 %. Los dos juegos no son del mismo género ni del mismo tamaño, así que estas diferencias no señalan un método mejor que el otro.

Lo que hay que recordar

  • Generar un mapa entero en una sola imagen funciona, siempre que luego el agente trace cada colisión y cada capa, y las pruebe.
  • Para interiores, el plano se escribe antes de la primera imagen. Puertas y escaleras alineadas, 28 pasos comprobados.
  • El generador de imágenes desplaza aberturas, dibuja dameros y añade puertas. Cada imagen se revisa antes de entrar en el juego.
  • Cuatro de mis diez mensajes señalaban un defecto visible que los tests automáticos no habían detectado.
  • Doce temas musicales y siete retratos cupieron en dos turnos y 10,81 $ a precio de API.

Errores frecuentes

Generar todas las habitaciones sin un plano común Las primeras habitaciones no tenían ninguna lógica de plantas. Pide el plano, con puertas, escaleras y lados de llegada, antes de la primera imagen, como architecture.json aquí.
Fiarse de la transparencia de una imagen generada La capa de primer plano llegó con un damero dibujado en lugar del canal alfa. Comprueba la transparencia antes de recortar las capas.
Trazar las capas con polígonos aproximados El contorno de un árbol incluía hierba y tapaba 89 píxeles de las piernas del héroe. Usa máscaras al píxel que excluyan el suelo y las sombras.
Declarar las colisiones sin un inventario completo Un cartel dibujado en el mapa no tenía ninguna colisión. Revisa cada objeto visible con la vista de depuración, F2 aquí, y un test de trayectos.
Juzgar una música generada por sus comprobaciones Las 40 comprobaciones de audio verifican la señal, los bucles y los fundidos, no la calidad musical. Escucha las pistas antes de quedártelas.

CodexGPT-6 AstraJavaScriptJeu vidéoPhaser

Damien Flandrin Desarrollador web desde 2010, creador de Gekkode y de Email Impact. Cada artículo se prueba en un proyecto real antes de publicarse. Contacto
Newsletter

Las nuevas pruebas, tutoriales y proyectos, por correo.

Pruebas reproducibles, código versionado, resultados fechados. Nunca spam.