El legendario juego continúa ejecutándose de maneras no triviales.
Recientemente, Adam Rice se preguntó: ¿se puede ejecutar DOOM usando DNS (sistema de nombres de dominio)?
El desarrollador almacenó los datos necesarios en registros TXT. Cada uno puede contener aproximadamente 2 mil caracteres:
La idea es cargar todo el motor del juego y sus assets desde los registros DNS TXT, colocar todo en la memoria y ejecutar el juego. Sin descargas, instaladores o archivos en el disco. Mi objetivo es cargar completamente el juego en la memoria solo con solicitudes DNS públicas.
Adam Rice llegó a la conclusión de que se necesitaba un port de DOOM en un lenguaje que pudiera cargarse en la memoria de Windows sin archivos:
C# se usa a menudo para esto por los ciberdelincuentes, pero no conozco C# y no iba a reescribir el código fuente de DOOM yo mismo, así que comencé la búsqueda precisamente con esto. Encontré managed-doom: un port puro de C# del motor original de DOOM. Los ensamblados .NET administrados se pueden cargar directamente desde bytes sin procesar, no se requieren archivos en el sistema de archivos. En teoría, esto permitía cargar el código compilado del juego desde DNS y ejecutarlo sin acceder al disco.
El plan funcionó y el desarrollador pudo ejecutar DOOM con éxito. De esta versión tuvo que eliminarse por completo el sonido para ahorrar espacio.
Puedes estudiar el proyecto en GitHub.