El creador de un juego de 1993 lo llevó a un motor moderno con Claude Code leyendo el código original
Rabah Shihab usó Claude Code para leer más de 72.000 líneas de código antiguo de su juego para Amiga, reconstruir sus niveles al píxel y publicarlo en Steam junto con la versión original.
Qué hizo
Rabah Shihab creó en 1993 el juego Babylonian Twins para el computador Amiga. Más de 30 años después quiso llevarlo a Godot, un motor de videojuegos moderno y gratuito. El código original eran 72.758 líneas en lenguaje ensamblador, muy difícil de leer incluso para su autor.
Con Claude Code trabajó por etapas. Primero llevó a Godot una versión del juego que había hecho en 2010 para iPhone: tuvo un personaje jugable en unos 21 minutos. Después, el agente volvió a compilar el código de 1993 hasta que el resultado fue idéntico, byte a byte, al juego publicado. A partir de ahí descifró cómo estaban guardados los mapas, los objetos, las puertas y los gráficos, y redibujó los cinco niveles comparándolos píxel a píxel con capturas del juego original, hasta llegar a cero diferencias.
El agente también ayudó con el lanzamiento: generó capturas para la tienda en varios tamaños e idiomas, operó el panel de Steam y ordenó las reseñas de jugadores para separar errores reales. Una reseña de una estrella reveló un error en las puertas que 15 años de pruebas no habían detectado.
El autor es honesto con los problemas: la IA introdujo errores que pasaron semanas sin notarse, y algunos detalles de cómo se sentía el juego no estaban en el código y hubo que ajustarlos jugando. Su conclusión: comparar bytes y píxeles convierte las afirmaciones de la IA en algo que se puede comprobar.
El prompt
Prompt reconstruido por Copia y Crea a partir del método que describe el autor (no publicó sus prompts).
Tengo el código fuente de un programa antiguo en [LENGUAJE] y quiero llevarlo a [TECNOLOGÍA NUEVA] sin cambiar su comportamiento.
Trabaja así:
1. Antes de traducir nada, consigue que el código original se compile y que el resultado sea idéntico al programa publicado. Muéstrame cómo lo comprobaste.
2. Descifra los formatos de datos (archivos, mapas, tablas) y documenta cada uno en un archivo aparte.
3. Traduce por partes pequeñas. Después de cada parte, compara el resultado con el original (salida, capturas o datos) y muéstrame las diferencias.
4. No reemplaces lógica original por funciones "equivalentes" del nuevo entorno sin preguntarme.
5. Si algo es ambiguo, pregúntame en lugar de suponer.
Cómo replicarlo
- Reúne el código original y una forma de comprobar el resultado (el programa funcionando, capturas, datos de salida).
- Define con el agente una prueba objetiva de “idéntico al original” antes de empezar.
- Avanza por partes pequeñas y verifica cada una contra el original.
- Prueba tú mismo el resultado y pide a otras personas que lo usen: encontrarán lo que las pruebas no ven.
- Guarda cada versión con Git para poder volver atrás.
Ideas para adaptarlo
- Empresas con sistemas antiguos: migrar programas internos viejos a tecnologías actuales, verificando que den los mismos resultados.
- Desarrolladores independientes: recuperar proyectos propios abandonados y relanzarlos.
- Planillas complejas: convertir una planilla con macros antiguas en una aplicación web, comparando los cálculos fila por fila.