jueves, 3 de noviembre de 2016

Abandonada

...¡y por fin he publicado "Abandonada"!
Ficha en la web del CAAD
Esta aventura se me resistía, la verdad. La escribí desde el principio como ejercicio para el uso de iconos en fi.js, y finalmente publiqué antes Cafax, la aventura basada en el Enigma de Aceps, que esta. Pero es que no sabía como acabar esta aventura, no se me ocurría un buen giro que funcionase. Ahora sí, creo que dí con ello, pienso que ahora es creíble e interesante.
Bueno, la aventura no es muy larga precisamente, se trata de una breve-pequeña que creo que se completa bastante rápidamente. Solo encontrarás un pero, y es que necesitarás esconderte en cierto sitio seguro... ¡guarda la aventura cuando llegues al embarcadero! :-D

lunes, 20 de junio de 2016

BARES Zx Spectrum by Baltasar el Arquero

Review en Youtube de "Bares"

¡Una review en Youtube de "Bares"!

Y a además, muy documentada, todo hay que decirlo.

¡No te lo pierdas!


viernes, 13 de mayo de 2016

Bares

Pues por aquí sigo, aunque es verdad que he bajado muchísimo el ritmo, pero bueno, sigo dando guerra, que es lo importante.

En esta ocasión os quería hablar de Bares, que es una aventura que comienza mientras estás buceando tranquilamente en la costa bajo la Estaca de Bares (de ahí su nombre, que parece que alude a tomarse unas copas, o algo).

Se trata de una aventura peculiar. Todos conocéis mi pasión por el ZX Spectrum, mi primer ordenador, que no he sido capaz de olvidar ;-). Pues resulta que existe un z88dk, que te permite programar para el ZX Spectrum no ya en BASIC con sus limitaciones, como hice con Asalto y Castigo, sino en el lenguaje de programación C. Es más, permite un modo de pantalla a todo color de 60 columnas que aproveché para hacer que la aventura fuese más interesante.

Todo esto en cuanto al apartado técnico, pero... ¿qué depara al jugador la aventura en sí? La respuesta solo puede ser una, y muy clara: misterio e intriga. Recuerda que buceando en las profundidades de la Estaca de Bares, estarás bajo la base militar estadounidense LORAM, de la que siempre se dijo que servía de tapadera para una... ¡base de submarinos!

Anímate a probarla. ¡Espero que te guste! Es fácil y corta, y entiende las convenciones que solemos utilizar hoy en día, como "ex" para examinar, "z" para esperar, etc.

Ha sido, desde luego, muy divertida de hacer.

lunes, 23 de marzo de 2015

Aventuras con iconos

Estoy modificando fi.js un poco más, de manera que permita un modo de juego mixto que a mi me parece muy interesante: mientras sigue siendo posible teclear las órdenes, en la parte inferior hay un menú de iconos para las acciones más importantes, a la vez que salen listados los objetos que lleva el jugador, y los que están al alcance en la localidad actual.

¿Que por qué lo he hecho? El prompt vacío es demasiado intimidante para la mayoría de la gente que no es aventurera. Sí, es cierto que si nos ponemos puristas es un paso atrás, pero téngase en cuenta que tanto los amantes de lo puro como los impedidos visuales siempre pueden ignorar la parte inferior de iconos, y utilizar el prompt como siempre.

Espero tener pronto la aventurilla hecha como para enseñar, a ver si gusta.

He subido una nueva aventura a mi web, la de la Isla de Montecristo, en la que Edmundo Dantés debe encontrar el tesoro del cuál el abate le hizo partícipe, para poder comenzar su venganza.

Esta aventura es en realidad bastante pequeña. sirviendo más bien de demostración para el parser fi.js, para el que se pueden crear aventuras en JavaScript, sin utilizar nada más allá que un editor de textos y un navegador.

La mayor ventaja es que las aventuras se pueden ejecutar en local o colgar en internet, y se podrán ejecutar con cualquier navegador, como ese en el que estás viendo esta página, suponiendo que tenga soporte para JavaScript. Los hiperenlaces y todo aquello que en los sistemas de aventuras actuales es tan complejo de conseguir que funcione, lo hará sin problemas.

Como desventaja,... bueno, hay que programar en JavaScript... pero el trabajo más duro lo hace fi.js, y programar en JavaScript es muy sencillo... ¡anímate!

viernes, 5 de abril de 2013

Juego online, de nuevo en mi web

Las aventuras de mi web estaban preparadas para jugar online, una posibilidad que había dejado de funcionar recientemente, pues se apoyaba en un servicio para Superglús que ya no se suministra. He repasado mi web para utilizar el nuevo servicio del CAAD para jugar aventuras Glulx. Ahora está toda actualizada y se puede jugar sin problemas directamente desde el navegador. Espero que esto provoque que sea más sencillo para el visitante ocasional "engancharse" a una aventura. Y oye... pues si puede ser una de las mías... ¡mejor que mejor!

lunes, 11 de marzo de 2013

Sistemas de creación de aventuras

Ficción interactiva

Sistemas de creación de aventuras

Fecha de creación de este documento: Febrero de 2013
Baltasar García Perez-Schofield

Introducción

Sistemas de creación de aventuras hay muchos. Y muchos más si observamos la historia pasada en la forma de aplicaciones para plataformas obsoletas. En este documento se trata de hacer una revisión de los sistemas de escritura de ficción interactiva (o aventuras conversacionales) desde un punto de vista actual, es decir, herramientas que cualquier autor podría utilizar a día de hoy (al menos en el momento de escribir este documento) para crear juegos basados en literatura.

    Evidentemente, este documento no trata de ser un ensayo riguroso; es obvio que si existen muchos sistemas de creación de aventuras, será necesario escoger los más relevantes, y eso supone implicar la subjetividad del autor, lo cual es inevitable.

    Nótese que  las aventuras conversacionales, como se las llamaba entonces, eran los juegos predominantes en los años 70 y 80. El objetivo era sencillo: jugar con el ordenador. Sin embargo, en aquella época las interfaces con los ordenadores eran absolutamente textuales, sin posibilidades gráficas. Aunque las primeras aventuras fueron creadas con lenguajes de programación generalistas, como Fortran (Adventure, de Crowther & Woods), pronto se puso en práctica en varias compañías la idea de desarrollar una plataforma común para todos los sistemas existentes en la época. El uso en aventuras conversacionales, donde no se precisa de una velocidad especial, pudiéndose interpretar los programas, fue probablemente el primero, con éxito, de máquinas virtuales. La idea, descrita de una manera basta, consistía en crear un programa intérprete para cada sistema (por ejemplo, Spectrum, Amstrad, Commodore...), y posteriormente, escribir el juego en el código entendible por ese intérprete. Aunque la idea supone una inversión inicial importante en tiempo y esfuerzo, para crear el intérprete adaptado a cada máquina, es ainversión pronto se enjuga con la facilidad de escribir aventuras sin preocuparse de las características específicas de cada máquina. Los casos más famosos son el A-Code, de Level 9, que permitía comprimir una aventura como Adventure en 8K, o la máquina Z, de Infocom, que como se mostrará más adelante sobrevivió hasta nuestra época.

    Hoy en día es interesante el soporte de juego en línea, es decir, directamente desde el navegador, sin instalar nada ni ocasionar problemas extraños al usuario. En esta categoría, hay sistemas de autor que lo soportan, marcados con ,  sistemas que no lo soportan, marcados con No, y sistemas que lo soportan parcialmente, marcados como parcial. Estos últimos son los más comunes: en muchas ocasiones, permiten jugar en línea, pero recomiendan bajarse el intérprete para una experiencia más plena.

    En cuanto al juego en el escritorio, es decir, en la propia máquina, la existencia de tantos diferentes intérpretes ha supuesto la creación de multiintérpretes como Gargoyle. Este programa, primero identifica la aventura a ejecutar, y, a continuación, lanza el intérprete adecuado. Gargoyle aúna muchos intérpretes que muchas veces no son los oficiales, puesto que estos no existen en una versión multiplataforma (Gargoyle puede ejecutarse en Windows, Linux y Mac).

Superglús

Superglús (2003) se basa en un proyecto anterior, llamado Paguaglús. El objetivo era aprovechar la nueva máquina virtual que acababa de ser creada, Glulx, para Inform 6, con soporte de imágenes y sonido, para ejecutar aventuras en PAWS, bien fueran nuevas o antiguas (previa conversión mediante la recompilación del código fuente).

    La creación de aventuras en este sistema se basa en crear entradas en tablas de vocabulario, objetos, localidades y procesos. Los mensajes han sido relegados a tareas de sistema, pudiendo visualizarse directamente mediante Write. Los comandos Beep y Picture han sido extendidos para poder reproducir música e imágenes. Finalmente, con la extensión txtpaws, que se distribuye y se utiliza de serie en Superglús, es posible utilizar identificadores en lugar de números para objetos, localidades y flags.

Licencia: Libre.
Plataformas: Windows, Linux, Mac.
Plataformas de juego: innumerables, incluso smartphones (a través de Git o Gargoyle).
IDE: Sí.
Soporte de juego en línea: Parcial.
Wiki: http://wiki.caad.es/Supergl%C3%BAs

Inform 6 Sp

Inform 6 es un compilador creado por Graham Nelson, mediante la inspección e ingeniería inversa de los relatos interactivos de Infocom. Así, programó la máquina Z (la máquina virtual de Infocom) en base a sus descubrimientos, y después desarrolló un lenguaje de programación (tipo C) para poder crear nuevos juegos. La versión Sp sustituye a la antigua InformATE! (Inform ahora totalmente español!), en la que se traducían todo al español (incluso los nombres de las acciones (Ir en lugar de Go), o de los atributos disponibles Comestible en lugar de Edible), debido a la petición popular de aquel momento de hacerlo más próximo a los desarrolladores. Desafortunadamente, esto hacía que fuese muy difícil portar librerías hechas por ingleses  de Inform 6 a InformATE!, así como aplicar los parches de las nuevas versiones.

    Así, Inform 6 Sp es la versión en español con las traducciones mínimas, de tal forma que todas las librerías son válidas, y las traducciones/variaciones son mínimas (se puede utilizar el manual de Graham Nelson para programar, por ejemplo). El parser de inform es probablemente, el mejor en este momento, con diferencia, permitiendo distinguir objetos fácilmente unos de otros (desambiguación, pregunta si te refieres a la llave pequeña o la grande, la roja o la azul), apilarlos, acumularlos, tener varios objetos iguales (canicas, por ejemplo). Permite la comprensión de cuestiones que van más allá de lo que entienden los parser "normales" hoy en día.

    Inform 6 soporta dos máquinas virtuales, la "tradicional" máquina Z, sólo texto, y la máquina Glulx, diseñada para soportar gráficos y sonido. El soporte para máquina Z es absolutamente fantástico, mientras que para Glulx el soporte es mucho más escaso. Hoy en día, no hay un buen sistema de juego en web para aventuras Glulx, siendo lo más recomendable Zag, que es capaz de bajarse la aventura antes de jugar. Sin embargo, Zag está muy desactualizado en este momento y no es fiel a colores y estilos utilizados.

    La forma de programar en Inform 6 consiste en crear una serie de objetos (en el sentido de Programación Orientada a Objetos), de tal forma que unos representan las localidades, los objetos en ellas, etc. Requiere un cierto esfuerzo hacerse con este sistema de programación, ya que aunque es bastante sencillo, la curva de acceso para el que tan solo quiere escribir una aventura es un tanto empinada. El compilador tampoco ayuda demasiado, si bien ha mejorado muchísimo en los últimos años. Eso sí, una vez comprendido el modelo, es probablemente el sistema más potente.

Licencia: Libre.
Plataformas
: Windows, Linux, Mac.
Plataformas de juego: innumerables, incluso smartphones.
IDE: Varios (no existe uno oficial).
Soporte de juego en línea: Sí para máquina Z, parcial para Glulx.
Wiki: http://wiki.caad.es/Inform

Adrift

Adrift revisita la idea de que los escritores de aventuras no tiene por qué ser programadores, y crea un entorno sencillo para crear aventuras sin programar (si bien para realizar ciertas tareas complehas soporta un lenguaje de script). Está programado en Visual Basic, y de hecho el creador de aventuras sólo puede ser utilizado en Windows. En el pasado, la última versión (hasta la 4.0) era shareware, y las anteriores eran gratis. Nótese que digo gratis y no libre, pues el código fuente no está disponible.

    La gran desventaja de Adrift es que no soporta directamente el idioma español. Es necesario traducir una serie de vocabularios y tablas de respuestas. Si bien esto es posible, sólo un autor español se animó a empezar el trabajo para presentar sus propias aventuras en Adrift, y el trabajo sólo se llevó a cabo parcialmente.

    La creación de aventuras se basa en crear nodos en un mapa, que al hacer doble-click sobre ellos permiten cambiar sus características, o añadir nuevas entidades (objetos, por ejemplo). Es muy cómodo para cualquiera, pues no es necesario saber programar en nada.

Licencia: Gratis (a partir de la versión 5).
Plataformas: Windows (ADRIFT Developer).
Plataformas de juego: Windows (ADRIFT Runner), Linux (Adrift Runner), Mac (con Scare o Gargoyle).
IDE: Sí.
Soporte de juego en línea: Parcial.
Wiki: http://wiki.caad.es/Adrift

Aetheria Game Engine

AGE es un sistema complejísimo (fue diseñado para crear juegos de ROL, soporta partidas cooperativas...) creado meritoriamente por un español, por lo que soporta directamente la creación de aventuras en esta lengua. Desgraciadamente, su parser no es demasiado complejo, y probablemente no sea excesivamente complicado traducir el sistema para crear una aventura en inglés. Por decisión personal del autor, no soporta las características medianamente complejas en un sistema de autor de este tipo, como por ejemplo, contenedores.

    AGE está programado en Java, lo que le da varios enteros en cuanto a soporte multiplataforma. Sin embargo, no incorpora ninguna forma de juego en línea, sin tener que descargar nada. AGE, pese a todos los años que tiene a sus espaldas, aún no ha alcanzado completamente estable, y es muchas veces necesario tener que descargar el sistema de ejecución junto con la aventura a jugar (muchas veces los cambios han creado cambios incompatibles entre sí).

   AGE soporta para programar un lenguaje de script llamado BSH, que es muy parecido a Java. Así, la curva de entrada es bastante pronunciada, pues requiere que el escritor de aventuras sea también programador, como en Inform 6 Sp, por ejemplo. Es necesario tener instalado Java en el ordenador, y bajarse los paquetes que se desee según se quiera sólo jugar o desarrollar también. Finalmente, es de resaltar la existencia de Puck, un IDE visual que hace menos necesario conocer la programación, pues reduce la necesidad de crear scripts.

Licencia: Libre.
Plataformas: Windows, Mac y Linux.
Plataformas de juego: Windows, Mac y Linux.
IDE: Sí (Puck).
Soporte de juego en línea: No.
Wiki: http://wiki.caad.es/Aetheria_Game_Engine

Quest

Quest es un sistema como Adrift, programado en C#, por lo que, como Adrift, es soportado por la máquina virtual .NET. Sin embargo, tiene versiones web tanto para el creador de aventuras como para el jugador, lo cual lo hace virtualmente multiplataforma. Además, un miembro de la comunidad lo tradujo en su momento al español.

    Así, no es necesario tener ningún conocimiento de programación para crear juegos en Quest, puesto que es tan sencillo como manipular nodos en pantalla, como en Adrift. Finalmente, su sistema de juego en web lo hace muy accesible a todo el mundo.

Licencia: Gratis (excepto si se comercializa como App para Smartphones).
Plataformas: Windows, multiplataforma (en web).
Plataformas de juego: Windows, multiplataforma (en web).
IDE: Sí.
Soporte de juego en línea: Sí.
Wiki: http://wiki.caad.es/Quest

Inform 7

Inform 7 es la evolución de Inform 6. Sin embargo, en este caso se trata de una revolución respecto al tradicional uso de un compilador y un lenguaje de programación medianamente complejo: Graham Nelson reclama que es posible programar en lenguaje natural (inglés). Además, un entorno integrado especialmente diseñado hace la edición y depuración de la aventura de una forma mucho más sencilla. Por ejemplo, mientras se trabaja en un puzzle en una localidad, el sistema con cada compilación, rejuega hasta esa localidad para poder centrarse en ella. Los mensajes de error también son mucho más elaborados, lo cual ayuda mucho al escritor de aventuras.

    En el lado negativo, no es cierto que se pueda crear una aventura escribiendo en lenguaje natural. La realidad es que el lenguaje de programación se parece muchísimo a la lengua inglesa, pero desde luego, el formato para describir localidades u objetos no es ni mucho menos libre. En el momento en el que se hace necesario programar, estructuras como bucles o decisiones están simplemente un tanto camuflados, pero son fácilmente reconocibles.

    El hecho de utilizar una sintaxis tan parecida a la inglesa hace que la traducción del sistema al español resulte en un resultado macarrónico (Salón is a room. Its description is "Estás en el salón"), aunque evidentemente tolerable si al escritor de aventuras le resulta cómodo. Inform 7 genera sus juegos en máquina Z (con lo cual son altamente multiplataforma, y jugables a través de Web) o en Glulx (todavía bastante multiplataforma pero sin soporte claro para jugar a través de internet). Evidentemente, en el caso de escoger la máquina Z, no será posible utilizar gráficos.

Licencia: Libre.
Plataformas: Windows, Mac y Linux (parcialmente).
Plataformas de juego: Windows, Mac y Linux e innumerables (máquina Z y Glulx).
IDE: Sí.
Soporte de juego en línea: Parcial.
Wiki: http://wiki.caad.es/Inform7_Doc

Kenshira

Kenshira es un sistema de creación de aventuras basado totalmente en web. Así, soporta hiperenlaces de forma totalmente natural (es decir, sin requerir ningún tipo de librería o artificio), por poner un ejemplo. La web de Kenshira incluye el IDE creador/editor (para el escritor del juego) y el jugador (para el resto de visitantes a la web).

    Por supuesto, para todo esto es necesario emplear un navegador relativamente moderno, Chrome o Firefox son totalmente compatibles, IExplorer es lo bastante compatible para jugar.

    Para crear aventuras se utiliza un lenguaje de script bastante parecido al de Inform, pero con sintaxis del tipo de Visual Basic. Para utilizar este sistema el escritor de aventuras debe ser también programador, pero al utilizar scripts basados en Basic, la curva de acceso no es excesiva. Está creado por un español, así que la lengua a utilizar es exclusivamente el español. El parser es casi tan completo como el de Inform.

    En el lado negativo, no tiene demasiada documentación, ya que todavía no goza de gran aceptación o uso.

Licencia: Libre.
Plataformas: Multiplataforma (web).
Plataformas de juego: Multiplataforma (web).
IDE: Sí.
Soporte de juego en línea: Sí.
Wiki: http://wiki.caad.es/Kenshira