Informes

ZORK

Por: Pedro Fernández

Permítanme comenzar con un breve glosario para ayudar al contexto de todo lo que viene a continuación:

Arpanet: el germen de Internet. Fue un sistema de comunicación entre centros estatales (mayormente militares) y universitarios desarrollado entre finales de los 60 y la década de los 70 por el Departamento de Defensa de los EE. UU. para situar al país en una situación de ventaja frente la URSS o, resumiendo, un invento del Pentágono para «ganar la guerra fría» que, inesperadamente, también sirvió para la difusión del concepto de videojuego en la época inmediatamente anterior a la informática doméstica.

Hacker: en contra del uso popularizado hoy en día del término como sinónimo de pirata informático que se dedica a invadir sistemas ajenos, los hackers en los años 60 eran los pioneros de la programación, entusiastas de la investigación en nuevos usos de los ordenadores, que por entonces eran grandes servidores en las universidades, y entusias-tas también de compartir esos descubri-mientos a través de la red Arpanet.

Zork: Zork es una muletilla. Una palabra sin sentido que en la jerga de los hackers del Instituto de Tecnología de Massachusetts (MIT) se usaba como comodín con el que denominar cualquier asunto que uno se trajera entre manos para el que no tuviera aún un nombre mejor. Como tal, empezó siendo el nombre aleatorio del fichero donde se guardaba el progreso del proyecto aún no muy definido en el que cuatro programadores del Dynamic Modeling Group (DMG), una división del Laboratory of Computer Science (LCS) del centro educativo, dedicaban sus ratos libres con la intención de crear su propia réplica al Colossal Cave de Crowther/Woods que había llegado hasta ellos a través de la red Arpanet desde la universidad de Stanford de la lejana California, en la costa opuesta de los EE. UU.

Y como tal, terminó siendo el nombre propio del juego que redefinió los conceptos básicos de un género que estaba dando literalmente sus primeros pasos, marcando estándares que aún hoy se consideran como referencia esencial y baremos de calidad en el terreno de las aventuras de texto e incluso en el más amplio terreno de los juegos de «aventura» en general.

En Zork se establecieron pautas sobre buenas prácticas de diseño (e incidentalmente se incluyeron algunas de las que, definitivamente, no se recomiendan desde entonces) que permanecen vigentes en los decálogos sobre cómo aproximarse a la creación de un juego narrativo, a pesar de partir de la no precisamente muy narrativa premisa del modelo que seguía: pasas casualmente al lado de una cueva y te pones a recolectar tesoros para ganar puntos.

Brice Daniels
Brice Daniels
Dave Lebling
Dave Lebling
Marc Blank
Marc Blank
Tim Anderson
Tim Anderson

En cómo una cosa llevó a la otra tiene que ver bastante el contexto. Stanford, MIT, son universidades privadas estadounidenses consideradas de las mejores del mundo. Centros de élite, orgullosos de admitir entre sus estudiantes sólo a lo más selecto. Muy en la cultura «liberal» (en nuestro sentido europeo del término) propia de su nación, presumen de que entre las actividades empresariales creadas por sus estudiantes se juntaría dinero suficiente para desarrollar una potencia económica mundial. Así que, paradójicamente, en sus secciones de infor-mática de los años 70 coexistían la conocida como «ética del hacker» (basada, entre otros muchos aspectos sociales, en la libre disponibilidad de la información) con el hecho de que lo más natural que se espera de quienes obtienen una titulación de grado o posgrado en ellas es que monten un negocio y, por supuesto, triunfen.

Zork es el hijo de la intersección de ambas culturas, sin las cuales no se entiende la influencia que tuvo de un modo inmediato en la incipiente industria del videojuego de primeros de los 80, así como la ejercida a largo plazo en el terreno de los estudios teóricos sobre la narración en el formato electrónico. Pero vayamos con los detalles pequeños de una gran historia…

Aproximadamente a finales de mayo de 1977 los cuatro estudiantes del DMG Marc Blank, Dave Lebling, Tim Anderson y Bruce Daniels acababan de jugarse por completo el Colossal Cave, al igual que todo el mundo en la red durante dos semanas en las que la leyenda cuenta que prácticamente nadie hizo otra cosa. Y, como buenos hackers, pensaron que podrían dedicar el vacío que éso dejaba en sus horas libres a realizar su propia versión mejorada, autoconcediéndose en el proceso el llamativo apelativo de los implementors (implementadores). Los aspectos en los que esa mejora se haría visible son los rasgos en los que Zork comenzó a marcar diferencias y sentar precedentes aunque fuera a niveles aún muy básicos y rudimentarios. Podemos resumirlos en el parser, el lenguaje de programación, el «lore», el feedback de los usuarios, y los puzles infames. Como veremos, entre todos ellos formaron una inesperada conjunción astral en la que se difuminan las fronteras entre causa y efecto. Todo sucedió porque todos esos elementos estaban ahí a la vez.

El parser

Por «parser» no hablamos ahora del programa especializado en la creación de aventuras de texto (un uso del término que se popularizó mucho después entre un sector del fandom de la era de los 8 bits con herramientas como el PAWS y similares) sino de su acepción original (y aún vigente): las rutinas de un programa que se encargan expresamente del análisis de una entrada de texto por parte del usuario y de su separa-ción en distintos elementos a los que se dará un significado. El parser de Zork es, en gran medida, la criatura de Marc Blank.

Desde el principio se planteó que debía superar a su equivalente de la Colossal Cave, cuya capacidad de comprensión se limitaba a órdenes compuestas estrictamente por una o dos palabras que debían referirse, forzosamente, a un tándem acción-objeto. En Zork el input del usuario puede tener una cantidad indeterminada de palabras y el parser será capaz de discriminar cuáles de ellas se referirán a un verbo, a un objeto directo, a otro indirecto, y podrá distinguir artículos, preposiciones y hasta conjunciones.

DEC SYSTEMMientras que aún hoy día existe una corriente de opinión que ve en ello una complicación gratuita e innecesaria para disfrutar de una buena aventura, lo cierto es que este avance abrió la puerta a nuevas formas de entender la mecánica de juego que van más allá de encontrar la afortunada correlación entre una acción y un objeto que resolviese un puzle sencillo. Ahora el jugador podía tomar un papel más activo a la hora de investigar cómo funciona un objeto en combinación con otros.

Esta mayor libertad para experimentar y descubrir, central en escenas de Zork como la máquina de la mina de carbón o la presa subterránea, no sólo facilitó el, ahora tópico, puzle que «te hace sentir más listo» al resolverlo, sino que a la larga también hizo posible que la aventura de texto tuviese una dinámica claramente diferenciada de la de las futuras aventuras gráficas basadas en apuntar y pulsar sobre parejas de, también, acción-objeto. Un «lenguaje propio» sin el que probablemente no habrían sobrevivido a éstas, hasta el punto de que muchos de los que piensan que las aventuras de texto fueron «superadas» por las gráficas son, sencillamente, gente que ha jugado poco a las aventuras de lo que sería la futura Infocom.

Y todo esto simplemente por haber dado un pequeño paso adelante sofisticando un poquito la parte del programa que analiza la entrada del usuario.

El lenguaje de programación

Zork TerminalEn el momento en que Zork estaba creándose, el mundo hacker se estaba dividiendo entre los usuarios del sistema operativo UNIX y el lenguaje C y la rama más clásica de usuarios de servidores PDP de la empresa DEC (Digital Equipment Corporation) con su sistema operativo ITS (Incompatible Timesharing System). Este último, realizado expresamente para su uso en el entorno de Arpanet, fue creado con el lenguaje LISP, con el que se hicieron bastantes de los programas clásicos de inteligencia artificial en los 60 en los que se trataba de «conversar» con el ordenador, como SHRDLU o ELIZA.

En la década siguiente, la evolución de la informática se decantaría por el primer grupo al ir quedando obsoleta la tecnología en que se basaba el otro, pero a finales de los 70 los PDP y el ITS seguían reinando en el MIT. Ya un puñado de años antes de que Zork fuese ideado en el seno del DMG, uno de sus «implementadores», Bruce Daniels, estuvo implicado en la creación de un lenguaje de programación destinado a ser el sucesor natural de LISP al ampliar el repertorio de tipos de datos que podía manejar éste. Su nombre: Model Development Language o MDL.

MDL se convirtió en el lenguaje de uso común entre los hackers del MIT y consecuentemente fue con el que se comenzó a programar Zork.

Colossal Cave acababa de arrasar en la red con la novedad de presentar un juego con lo que se acabaría llamando un «modelo de mundo», que atrapaba al jugador al crear la sensación de «inmersión», de estar en
un entorno en el que sus acciones podían dejar una huella aunque fuera al simple nivel de poder trasladar un objeto de una localidad a otra. Pero el lenguaje en que se creó, FORTRAN, distaba de ser el más óptimo para ello. Almacenar en la memoria del programa todo lo referente al «estado» de este mundo (los objetos, su ubicación en cada momento, sus otras propiedades, las localidades, sus conexiones entre sí, otras variables…) requería el uso de un sinfín de listas o matrices que debían estar cuidadosamente coordinadas entre sí por el autor (como bien sabemos los que nos hemos metido alguna vez a hacer aventuras de texto en BASIC o similares).

En MDL, una misma sección de código podía ser en sí misma un tipo de dato que podía tener agrupada o «encapsulada» toda la información referente a un objeto o localidad, sus propiedades, situación, conexiones, etc…). Esto permitía cambiar y/o añadir elementos al juego con una agilidad mucho mayor, ya que las modificaciones necesarias se hacían en una misma zona del programa en lugar de tener que modificar datos en listas dispersas o, peor aún, trastear con el motor del juego. La idea permanece vigente hoy día en herramientas de creación moder-nas como Inform 6 o TADS.

Esta facilidad de adaptación hizo que Zork pudiese aprovechar con gran agilidad el feedback de los usuarios y evolucionar a un ritmo mucho mayor del que hubiera tenido con otro paradigma de programación más tradicional. Si Colossal Cave nos trajo el «modelo de mundo» MDL sería el primer lenguaje en sacarle el mayor partido posible, y en el proceso, sentaría los precedentes de la «programación orientada a objetos» años antes de que incluso se acuñase el término.

El «lore»

Ciertamente, en 1977 el término «lore» no formaba parte de la jerga «gamer» como forma de aludir a la intra-historia de las localidades de un juego, mayormente porque aún no existía un mundillo gamer propiamente dicho. Pero desde luego, Zork fue una de las primeras obras en hacer uso del concepto. Como siempre, de un modo primitivo y tosco, sobre todo por lo improvisado. Se cuenta que al poco de iniciar Zork, cuando éste contaba apenas con cuatro localidades de contenido ideado sobre la marcha para probar el sistema (en una de ellas una banda de música se dedicaba a tocar el Hail to the Chief, pieza que se dedica tradicionalmente al Presidente de los EE. UU. en desfiles públicos), Dave Lebling se tomó un par de semanas de vacaciones.

A su retorno, Zork tenía ya unos cuantos de los elementos por los que lo conocemos hoy en día. Tomaba de Adventure una casa de un bosque en la que depositar tesoros que encontraríamos recorriendo una cueva subterránea, un ladrón que te los quitaba, un troll, un laberinto… y ya iba añadiendo, un poco caprichosamente, cosas de su propia cosecha, como un cíclope o una presa subterránea con los que se iban ensayando nuevos modelos de puzles. Lo interesante era que en las descripciones de todo ello no se limitaba a reproducir físicamente un entorno natural determinado y reconocible, como la cueva de Colossal Cave. En Zork, muchos de los elementos ya contaban con una historia asociada, aunque fuera algo simplemente ornamental, como para dar algo de «vidilla» al conjunto. Aún no hablamos de elementos de un argumento propiamente dicho o de una historia del juego en la que hubiese que avanzar, a eso llegaremos más tarde…

Por el momento eran retales no muy conectados entre sí (y que podrían haber sido sustituidos por otros cualquiera sin afectar al objetivo recolector del juego) en los que se mezclaban sin mucho orden ni concierto el humor, la tecnología, la fanta-sía… y los chistes privados sobre el MIT. Y aunque no tuviesen la función de contar una historia, ya servían para dar una sensación de «entorno».

Así, a través de las descripciones, el jugador podría saber de la existencia de un antiguo «Gran Imperio Subterráneo» en cuyas ruinas se encontraban referencias al tirano Lord Dimwit Flathead, miembro de una larga dinastía de gobernantes, a su sistema bancario y a su moneda, el Zorkmid, a la empresa Frobozz y a su catálogo de hechizos de magia… todo ello mezclado un poco al tuntún con auto-bromas como la localidad llamada «la tumba del implementador desconocido» donde las cabezas de los cuatro autores aparecían ensartadas en cuatro picas (ahora sabemos de dónde pudo sacar la idea el equipo de ID Software para sorprender a John Romero, que, como todos los que hemos visto el documental Get Lamp sabemos, era un entusiasta de las aventuras de texto en ésta época de los ser-vidores universitarios, poniendo su cabeza pinchada en un palo como huevo de pascua en Doom II).

Lo cierto es que entre el batiburrillo de referencias se dejaba entrever sutilmente también la idea de evocar un sentimiento. Una suerte de nostalgia por lo que fue una sociedad ya desaparecida. Todo ello simplemente con elementos pensados para adornar el escenario a veces a golpe de retórica de relleno. Aún antes de que se estableciese la idea de que este tipo de juegos tenía una parte intrínsecamente narrativa, es decir, tenía como objetivo relatar una historia, Zork estaba aportando el componente literario al género de las aventuras de texto.

El feedback de los de los usuarios

Durante todo su proceso de gestación, Zork estuvo ejecutable para cualquier usuario de Arpanet que hiciese un «telnet» con los ordenadores del MIT y, recorriendo el sistema de archivos del sistema operativo ITS, accediese al directorio adecuado, cuya ubicación ya se había difundido a través del boca a boca. Ésto hizo que los «implementadores» pudiesen recibir impresiones de primera mano de los jugadores, así como incluso monitorizar sus avances en el juego en tiempo real. Toda esa información repercutió en su desarrollo, haciendo de él un juego que crecía y se iba mejorando a medida que más gente lo jugaba. Una suerte de «control de calidad» espontáneo que le convirtió en una de las obras más y mejor cuidadas de su momento, y puso de manifiesto el muy singular modelo de testeo que requiere una aventura de texto, enteramente distinto del de otros tipos de juegos. Algunas aventuras comerciales contemporáneas de Zork, como las primeras de Adventure International o Sierra On Line también tenían un departa-mento de testeo, pero, honestamente, nunca estuvieron a la altura.

A medida que el juego se iba haciendo más grande, las novedades que incorporaba se iban anotando en un objeto del propio juego. Un boletín disponible en la sala de estar de la casa donde se inicia la aventura llamado el «US News & Dungeon Report», que se actualizaba periódicamente con los cambios más recientes. Uno de los cambios más populares vino por lo inadecuado de uno de los elementos tomados de Adventure. Como en ésta, originalmente en Zork adentrarte en localidades oscuras te llevaba a caer en un pozo sin fin dentro de la cueva.

Pero a diferencia de ésta, en Zork había habitaciones oscuras en la casa del exterior en las que el código común en MDL de las zonas oscuras también te hacía caer en el mismo pozo. Cuando los jugadores señalaron que eso no tenía mucho sentido en la casa, los implementadores decidieron que lo mejor era cambiar la penalización por entrar en la oscuridad por algo totalmente distinto: ser devorado por el monstruo «grue», una espantosa criatura nunca vista a la luz del día cuya razón de ser era acabar con los incautos aventureros que atravesaban la oscuridad sin una linterna, que pronto se convirtió en un icono de las obras de Infocom e incluso de las aventuras de texto en general. Se dice que el término viene del vocablo inglés «gruesome» (horrible), pero lo cierto es que Dave Lebling también tenía en mente los híbridos de humano y murciélago del mismo nombre de las novelas de la serie La Tierra Moribunda del autor de ciencia-ficción Jack Vance.

Infocom ad

El modelo de crecimiento de Zork fue también sustancialmente distinto al de Adventure. En Colossal Cave el código fuente en FORTRAN estaba públicamente disponible, así que quienes quisieran podían modificarlo para hacer su propia versión, normalmente añadiendo nuevos tesoros y puzles aumentando así el total de puntos
a conseguir. Zork, sin embargo, era, como dijimos, hijo de dos culturas. Mientras que el juego podía jugarse en línea, el código fuente nunca estuvo disponible. Incluso antes de que se planteasen hacer un lanzamiento comercial, los implementadores decidieron no hacerlo público. Zork creció gracias a sus jugadores, pero siempre estuvo en manos de sus creadores.

Bueno, casi siempre…

Las carpetas de ficheros del sistema operativo ITS, como buena obra de hackers, siempre estuvieron diseñadas para ser accesibles a cualquiera sin poner barreras a la libre difusión de la información. Para mantener oculto el código fuente de Zork, sus autores tuvieron que hackear la carpeta que lo contenía para impedir este acceso. Por supuesto, lo que un hacker puede hackear, otro hacker lo puede deshackear. Coincidiendo con el breve lapso de tiempo en que Zork abandonó su nombre genérico y sin sentido por el más común y ordinario Dungeon (lo que duró hasta que TSR, la empresa editora de Dungeons & Dragons, amenazó con acciones legales por infringir su marca registrada) un tal «Ted» rompió la protección y se hizo con el código fuente en MDL que a su vez llegó a manos de Bob Supnik, ingeniero de la empresa DEC, fabricante de los orde-nadores PDP en los que todo ésto estaba ocurriendo.

Para asombro (y orgullo hacker) de los implementadores, éste consiguió traducirlo al FORTRAN, un lenguaje, como hemos vis-to, muy poco indicado para Zork, pero que podía compilarse para otros sistemas aparte de los PDP. Bajo esta forma y con el título de Dungeon, Zork alcanzó todavía mayores cotas de difusión y popularidad. Este código fuente en FORTRAN sí ha permanecido disponible y fue traducido posteriormente a lenguaje C y compilado para muchos mo-delos de ordenadores de 16 bits en los 80, siendo una forma alternativa en la que muchos han conocido la obra, aunque el Zork de código cerrado en MDL todavía seguiría evolucionando y cambiando por un tiempo.

En 2003, el propio Supnik puso en su página web el código MDL que recibió. Y a su vez, el Zork en MDL en su versión final saldría a la luz al hacerse público el contenido del famoso «disco duro de Infocom» con
un material inagotable que incluía todos los códigos fuente de la compañía habidos y por haber. Con todo ello, en el año 2008 Dean Menezes hizo un port a Inform 7. El dato es relevante porque a partir de este port se
hizo una traducción al español en 2014 por Mauricio Díaz (a.k.a. Iam Curio) sobre la que él mismo hizo un artículo (ahora lo llamaríamos «post-mortem») en el nº 14 del e-zine SPAC 2.0 (en el que celebrábamos además
el 25 aniversario del CAAD) siendo el único juego de Infocom hasta la fecha que se puede jugar en español.

Los puzles infames

(pequeños spoilers a continuación)

Se cuenta que, incluso con el código fuente disponible, para conseguir el último y esquivo punto de los 350 con que contaba Adventure, los cuatro implementadores tuvieron que examinar el programa con un depurador de  código máquina, lo que explica que, en su afán por ir más allá en lo que respecta a experimentar con nuevos modelos de puzles, no renunciasen a ciertos niveles de crueldad. Ahora algunos de ellos nos parecerán ingenuos, pero en su día dieron mucho que hablar.

CPM Attr Silent700Para conseguir la máxima puntuación había que recoger todos los  tesoros, pero para conseguir uno en concreto hay que manipular previamente otro (es decir, de un tesoro salen dos). El personaje jugador resulta ser un manazas y si lo intenta lo rompe, perdiendo toda oportunidad de conseguir ese punto. La única solución es poner el primer tesoro en manos de alguien con la habilidad suficiente y ese alguien resulta ser… el ladrón. Para abarcar toda la puntuación tienes que dejarte robar: bienvenidos al «pensamiento lateral» en el mundo de la aventura.

Otras situaciones célebres para unos e injustas para otros incluían que para escapar de un cíclope, el jugador tuviese que decir el nombre de «Odiseo» (o «Ulises») para asustarlo. Que no se diga que no se fomenta el conocimiento de los clásicos… En una escena muy discutida, recoger un tesoro activa una trampa en la que al jugador le cae del techo una jaula de cristal que se llena en segundos de un gas mortal. No hay modo de escapar de ella pero, si el jugador se ha hecho acompañar por un robot que hay en una localidad cercana, basta con decirle a éste que levante el cristal.

La combinación de un parser un poco más avanzado y el diseño modular en MDL permiten resolver este tipo de situaciones en las que la solución va algo más allá de utilizar los verbos o acciones más comunes (coger, dejar, examinar…) con objetos manifiestamente a la vista del jugador, pero se corre el riesgo de meter a los jugadores, sobre todo los más noveles, en atascos potencialmente frustrantes. No tanto por el temido «síndrome de la palabra exacta» (que en Infocom nunca, nunca fue un problema) sino porque la solución requiere usar una
lógica distinta de la habitual. Aquí de nuevo el feedback de los usuarios sirvió para equilibrar el conjunto. A todos estos puzles se les añadieron pistas oportunas y se les facilitó vías de resolución alternativas.

Con todo, la palma al puzle más infame se la lleva un laberinto de conexiones aleatorias en el que no valía el «viejo» (aunque por entonces era todavía bastante reciente) truco de andar dejando objetos para mapear. Más de 40 años después, miles de dedos acusadores siguen señalando a Dave Lebling por ello. Para resolver con éxito el laberinto hay que encontrar una localidad «base» y seguir desde ella el recorrido en las diagonales que tendría una pista de béisbol porque… bueno, todo el mundo conoce el béisbol ¿no?

Incluso años más tarde, Graham Nelson, el creador de Inform, tomaría este puzle como referencia al añadir en su «carta de derechos del jugador» una entrada que cita específicamente «no necesitar ser americano » aunque, de hecho, muchos aficionados americanos han declarado que ni por ser americanos se les iba a ocurrir jamás lo de la pista de béisbol.

Logo Zork

Todos estos elementos en combinación hicieron de Zork, en esta encarnación original universitaria, la obra fundamental que es en la historia de la aventura de texto. En años venideros estos componentes en estado básico evolucionarían a pasos agigantados. El ladrón, el cíclope, el robot… se convertirían en inolvidables PNJs (personajes no jugadores) sofisticados y queridos como el Floyd de Planetfall. Los chistes privados sobre el MIT se convertirían en una precisa reproducción de éste en la obra de terror The Lurking Horror, el componente literario de las aventuras llegaría a cotas inesperadas en obras como Trinity o A Mind Forever Voyaging
pero el desarrollo de Zork parecía haber llegado inexorablemente a su final a principios del año 79 por una cuestión ineludible: el juego había crecido hasta ocupar el megabyte de memoria que el lenguaje MDL podía manejar en los ordenadores PDP.

Y, sin embargo, aún le quedaban unos cuantos precedentes que sentar…

Nota del director:

Juanjoy con un poco de suerte, los veremos en una próxima entrega, si a Pedro le da la vida.

Tranquilino Rodriguez

Nació viejo hace ya más de medio siglo. Desde entonces solo ha podido ir cuesta abajo y sin frenos. Prueba de ello es que dedica parte de su tiempo a dirigir y presentar un pódcast en Twitch llamado Increíble Pero Incierto. Como es un animal sediento de éxito y fortuna, está tratando de ofrecer a las masas su visión del clásico de Aventuras AD #LaAventuraCasiOriginal, una aventura de texto que, sin duda, le reportará pingues beneficios. Mastodon

Publicaciones relacionadas

5 1 voto
Valoración del artículo
Subscribirse
Notificame

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

0 Comentarios
Viejos
Nuevos Más votados
Comentarios en línea
Ver todos los comentarios
Mira también
Cerrar
Botón volver arriba