In english

ngpaws

ngPAWS (next generation Professional Adventure Writing System) es un sistema para crear aventuras de texto (también conocidas como ficción interactiva) que pueden jugarse en cualquier navegador actual (online u offline).

En este momento el proyecto está en estado beta, siendo la beta 9 la última distribuida considerada muy estable. El proyecto está alojado en github, por lo que la información más reciente está allí:

¿Quién es el autor de ngPAWS?

Uto es el mantenedor de ngPAWS,y autor del editor de código y las librerías, pero el paquete de ngpaws tambien incluye txtpaws (por Baltasarq), y el compilador de ngPAWS está basado en el compilador de Paguaglús (de Yokiyoki).

Sigue a Uto en twitter

¿De dónde viene ngPAWS?

ngPAWS está fuertemente basado en el Professional Adventure Writing System para el ordenador ZX Spectrum, un sistema muy expandido por Europa en la década de los 80 y 90 (y distribuido en América bajo la marca Timex). ngPAWS también se basa en Superglús, y es de hecho una reconstrucción de dicho sistema usando javascript en lugar de la máquina virtual Glulx.

¿Hay un versión en inglés?

ngPAWS está diseñado para ser usado tanto en inglés como en español. El compilador, preprocesador y el editor están todos en inglés, pero el parser está preparado par entender las caracaterísticas de ambos lenguajes (activas una opción y el parser se comporta diferente). Por otro lado, ngPAWS utiliza una base de datos de inicio que responde a las acciones más comunes de los jugadores, incluye un vocabulario básico, etc. Hay una versión de esta base de datos para inglés y otra para español.

¿Es ngPAWS portable?

Sí, puedes compilar tanto el preprocesador como el compilador en Windows, linux (x64 y arm) y OSX. El editor sin embargo es solo para Windows y Linux x64, por lo que no está disponible para OSX o Linux arm, si bien una versión para OSX es en teoría posible.

¿Puedo desarrollar mis juegos/historias en ngPAWS y aplicar la licencia que quiero?

Sí, te animamos a usar ngPAWS y no pedimos nada a cambio. La base de datos de inicio es de dominio público, para evitar que pueda aplicarsele cualquier licencia a un derivado de la misma, como sería cualquier juego, por lo que se puede aplicar cualquier licencia al juego que crees (incluso comercial). En cualquier caso, si crees que la licencia de alguna de las partes que conforman ngPAWS bloquea la aplicación de una licencia específica a tu juego, haznoslo saber.

¿Hay alguna demo?

Sí, hay una demo:
McArra's Quest Reloaded

SPOILER: Para completar el juego puedes teclear esto: E.S.EX CASCADA.ENTRAR.COGER HUESO.SALIR.N.DAR HUESO A PERRO.ENTRAR.COGER BIDON.SAL.O.N.PAGAR.LLENAR BIDON.S.ECHAR GASOLINA.

¿Y juegos?

Sí:

¿Y ejemplos de fuentes de aventuras?

Aquí tenéis el código fuente de dos aventuras hechas con ngPAWS.

  • McArra's Quest Reloaded: Ten en cuenta que se realizó con una versión alfa de ngPAWS, es posible que no sea del todo compatible.
  • Coldtiz: incluye algunos plugins utilizados para la aventura
Descargas
Windows (win32)
Linux (x64)
Linux (arm - Raspberry Pi)
OSX (Intel)
Lamentablemente en este momento no poseo un Mac, por lo que no he podido compilar el compilador de ngPAWS, algo necesario para la beta 9. He preferido no crear un paquete intermedio, con el resto de novedades excepto el compilador.
Plugins

Hay algunas librerias que aunque no forman parte del core de ngPAWS, pueden ayudaros a hacer mejores juegos:/p>

  • Extra attribute lib: Este plugin permite tener atributos con valor numérico para los objetos, para asignarles valores como puntos de vida, densidad, etc. que no sirve solo con un estado si/no de los atributos normales
  • Loc attributes lib: Este plugin permite que las localidades tengan atributos como los objetos.
  • Long description lib:Implementa un método simple de tener descripciones largas para los objetos que se pueden mosrtar cuando se los examine.
  • Sets lib: Facilita la gestión de conjuntos, donde números pueden ser incluidos,excluidos, o consultar a ver si están en el conjunto.
  • Stacks and queues lib: Facilita gestion de colas y pilas, donde los numeros pueden ser encolados, desencolados, apilados o desapilados.
  • Sequence condacts:Permite usar un tag de secuencia dentro de textos que ejecute a su vez condactos.
Agradecimientos

A las personas siguientes, que tomaron parte o cuyo trabajo fue necesario para crear ngPAWS:

  • Graeme Yeandle por crear PAWS.
  • Yokiyoki, por crear Paguaglus, ayudar con Superglus, y en el fondo estar en los orígenes de ngPAWS.
  • Baltasarq, por crear txtpaws, sin el cual ngPAWS sería difícil de usar.
  • Radin, por expandir... bueno... crear la base de datos de inicio en español.
  • Jay Salvat, por la librería de sonido javascript Buzz
  • La jQuery Foundation, por crear jQuery
  • dddddd, porque sugirió el nombre de esta herramienta
  • A otros que también sugirieron nombres que finalmente no fueron elegidos