@ agnasg

agnasg


El baúl de los zombies

24-01-2008 11:08 AM

Tengo un par de días regularmente libres esta semana y en vez de continuar trabajando en mi interminable MMO he decidido revisar mi baúl de zombies para ver que puedo rescatar de interesante.

En este momento el baúl de los zombies tiene:

  • Un motor gráfico llamado TSC en el que trabajé durante 5 años con la idea de hacer una aventura gráfica. Puesto que ahora estoy utilizando Irrlicht como motor gráfico, aquello quedó como un montón de chatarra inservible que ni siquiera se puede reciclar. Tiene imbuído 3000 líneas de código del juego pero es tan difícil separarlos (debido a mala programación) que sería como tratar de separar a dos hermanos siameses que comparten un cerebro. Uno de los dos va a morir, pero lo más probable es que sean los dos.
  • Memorybreaker. Un juego de memoria programado con SDL. La última vez que lo ví descubrí con asombro que le falta una madrugada de trabajo para publicarlo. Pero no será por ahora. Es un excelente ejemplo de programación avanzada con SDL, seguramente publique también el código fuente.
  • nun. Es una aventura conversacional programada con un parser que programé especialmente para ella (sic). Sí, estoy de acuerdo, estoy completamente loco de remate, aunque los amigos del Caad tienen la idea de que los que programan un parser es porque en realidad no quieren o no pueden programar una aventura. El código fuente de la aventura escrito en el lenguaje que diseñé para ella tiene ¡¡4000 líneas!!. Hay disponibles al menos 4 excelentes parsers para programar aventuras conversacionales: Inform, Tads, Hugo y Adrift.
  • saeta. Es un roguelike. He escrito antes sobre el tema
    (1, 2, los post anteriores a 2003 no están en línea) pero baste decir que Diablo y todos los juegos similares descienden de Rogue, el juego que dió el nombre al género. Comencé a revisar el código, y de verdad sentí compasión: le faltan los brazos, un ojo, y camina en forma deplorable. Sin embargo, es un roguelike escrito muy cuidadosamente desde la primera línea de código. Es decir, no utilicé en lo absoluto las codebase de ninguno de los juegos que hay en la red. Como no encontré argumento en contra, y dado que es el zombie más zarrapastroso en mi baul de zombies, lo escogí a él (fanfarria).
  • khpx, una saga espacial con satélites asesinos. Está en su versión 5, ha pasado por múltiples migraciones incluyendo una version en assembler 386, una con SDL, una con irrlicht y ahora una con DirectX puro.

Los roguelike tienen muchos más fanáticos de los que se podría suponer. No se trata de pasión por lo anacrónico en una época donde Halo, Call of Duty y World of Warcraft dominan la preferencia de los jugadores. Se trata de ir a la esencia del juego: los roguelike resumen en una interfase de caracteres la inmersividad, el entretenimiento y la búsqueda de aventuras en su máxima expresión.

John Harris tiene una completa descripción de estos juegos en su columna @Play, lectura que recomiendo al lector. También recomiendo echarle un vistazo a las páginas de NetHack, Angband (wiki) y Rogue que son los principales juegos roguelike. Hay una página dedicada al zoológico de enemigos que Ud. encontrará en NetHack, y una página dedicada a los otros roguelike con menos éxito y que están en distintos estados de desarrollo (finalizados, sobrevivientes, zombies y muertos en la cripta). Hay varios grupos activos (con más de 20 mensajes al día) que se dedican al tema: rec.games.roguelike.development, uno dedicado a NetHack, y otro dedicado a Angband.
El problema que se me estaba presentando es cómo hacer para que mi roguelike pase a fase de finalizado, y que no sea una simple transformación de zombie a mutante (son dos estados de desarrollo distintos pero para los efectos visuales y de utilidad práctica resultan lo mismo). Y entonces recordé esta página: 7DRL. Es una técnica, si se quiere, que implica el desarrollo de un juego roguelike en 7 días. Esto significa que a la madrugada del séptimo día, el desarrollador debe dejar de programar. La idea atrás de esta metodología es garantizar un diseño y un desarrollo acotado. Es, para los desarrolladores de juegos roguelike, lo que es el NaNoWriMo para los autores de novelas (el NaNoWriMo es un reto para escritores novatos que consiste en escribir una novela de 50 mil palabras en 30 días. Un interesantísimo concepto para el que quiere dilucidar de una vez y por todas si puede o no ser un escritor serio).
Así que mi meta es tener listo y publicado en 7 días mi juego roguelike llamado saeta. Lo cual incluye e
scribir una página describiendo su complicado, extenso, alucinante y dramático argumento. Claro que puedo escribir aquí una sinopsis: has sido asignado a llevar un mensaje secreto (una especie de mensaje a García) al último grupo de resistencia que se encuentra al otro lado del mundo. Si el mensaje no es entregado, las fuerzas del mal, los innombrables, dominarán al universo para siempre. Pero para ello deberás abandonar tu castillo, atravesar patios y murallas, jardines y pozos infectados de cocodrilos, pirañas y tiburones. Deberás cruzar pantanos, selvas, desiertos, evadir hordas de salvajes que pululan por las estepas, zombies sedientos de sangre, mutantes, vampiros chupasangre, bestias de indescriptible ferocidad, fieras salvajes de terrible poder. En fin, para resumir, incontables enemigos. Y quizás, sin embargo, luego de sortear todo tipo de peligros y aventuras, lo más inquietante que desgarrará tu corazón será: ¿cuál es el mensaje?. Peor aun: ¿quién es y dónde está el destinatario?

Actualizado: 11-11-2017