TECNICAS AVANZADAS DE PROGRAMACION DE AVENTURAS

Por... Javier San José

Se inicia una nueva sección encaminada a presentar ciertas técnicas, trucos, rutinas, ideas, etc... para la programación de vuestras aventuras. Esta sección tratará de llevar los parsers existentes más allá de sus posibilidades. En principio los listados que se incluirán serán para el PAW, el parser, quizá, más conocido por todos vosotros, aunque además de los listados se incluirá la correspondiente descripción del funcionamiento de las rutinas, con lo que su adaptación a otros sistemas o lenguajes de programación no debería ser muy compleja. Espero que esta sección sea de vuestro interés; aún así desearía que me comuniquéis vuestras dudas, sugerencias, etc... y de esta forma adecuar la sección a vuestros gustos. Para ello podéis escribir a:

Javier San José
Ronda del Ferrocarril 75, 7º A
Miranda de Ebro
09200 BURGOS

Vamos a empezar esta sección con un pequeño truco de programación para el PAW. Yo siempre he considerado que una aventura conversacional debería facilitar un poco el considerable trabajo de tecleo por parte del jugador. En este aspecto es útil el uso de abreviaturas para los más comunes verbos de movimiento y de acción.

Así es muy común usar N para NORTE, I para INVENTARIO, M para MIRAR, etc... Pero además en las aventuras de AD es común usar una forma abreviada para hablar con los PSIs que encontremos. Se trata de sustituir el típico: DECIR NOMBRE "texto", por una forma más cómoda: NOMBRE "texto", con lo que nos ahorramos el consiguiente tecleo. En PAW es fácil conseguir esto con una simple entrada en la Tabla de Respuestas:

*        *       GT  34 30
                 LT  34 50
                 EQ  33 255
                 LET 33 24
		 

Explicaré lo más brevemente posible el funcionamiento de esta entrada que, por cierto, debe ser la que aparezca en último lugar si hay más entradas * *. La bandera 34 es la que contiene el nombre de la frase tecleada. Lo primero es ver si es un nombre propio de personaje (podemos tener otros tipos de nombres propios como ciudades, ríos,...). En el caso que nos ocupa estarían situados entre los números 30 (GT 34 30) y 50 (LT 34 50) no inclusives. Por supuesto que estos números pueden variar de acuerdo con vuestra aventura.

Lo siguiente es comprobar si en la frase no aparece ningún verbo (bandera 33 igual a 255, EQ 53 255) con lo que podemos asegurar que se tecleó sólo el nombre de algún PSI, posiblemente seguido de un diálogo, pero eso ya lo veremos en la rutina de diálogo de es PSI. Si no aparece ningún verbo en la frase, colocaremos el verbo DECIR (LET 33 24) que en este caso tiene número 24 en el vocabulario. Como antes, este número puede variar de aventura en aventura así que debéis colocar el que se adecúe a la vuestra.

Y ya está. En algún lugar de la Tabla de Respuestas tendríamos las entrada para diálogos con los PSIs (DECIR NOMBRE ...) de la forma típica. No explicaré como crear estas entradas ya que en el manual del PAW, o de cualquier otro parser que uséis, está bastante bien explicado.