TECNICAS DE PROGRAMACION

LOS PERSONAJES SEUDO INTELIGENTES (y VI)

Concluímos al fin la que ha venido siendo una larguísima serie dedicada al manejo y estudio de los PSIs. Hemos visto cómo se mueven a su antojo y libre albedrío, cómo son capaces de dialogar -o al menos, que muchos estáis con la idea de matizar en mente, responder a nuestros requerimientos-, recoger y manipular con total libertad de acción toda clase de objetos y cacharros, e incluso hemos planteado la forma de representarlos en el ordenador para conseguir una personalidad u otra, dependiendo del tipo de personaje que pensemos crear.

De todas estas cualidades, la más abstracta es sin duda la referida en último lugar. Se trata de una faceta de las personas que las hacen odiosas, divertidas, serias, controvertidas y etc, describiendo así un amplísimo y vasto espectro del que podemos sustraer, mediante el uso combinado de algunos elementos, PSIs tan prodigiosos como irrepetibles.

Es sin embargo bastante difícil determinar de qué modo podemos llevar esto a cabo. No hay ninguna rutina que defina el que un personaje cualquiera sea avaro, generoso o simplemente reticente a ceder sus pertenencias. Esto se consigue de un modo bien distinto, y es perfilando sutilmente los distintos módulos de creación de un PSI hasta conseguir que dé el efecto de ser de un modo u otro.

Por ejemplo, tenemos la rutina -ya presentada en anteriores entregas del CAADde tratamiento de objetos. Tal y como la expusimos, nuestro PSI siempre dejaría un objeto que se encontrase en su haber cuando así se lo pidiese el jugador. Un personaje desconfiado podría no querer abandonar algo que es legítimamente suyo sólo porque un extraño -presumiblemente- se lo indica de ese modo. Sería necesario alterar la rutina en cuestión y hacer que, en el caso de que determinados parámetros no fuesen válidos, el PSI se negara en redondo a dejar el útil con un mensaje parecido a: "¿Porqué debería yo dejar _?"

Esto puede parecer bastante lógico y, cuanto menos, obvio, pero desgraciadamente no sucede a menudo en las aventuras. Consideremos otro ejemplo. Esta vez, tomado de un juego popular aunque bastante novedoso -por lo que, quizá, algunos de vosotros pudiera no conocerlo-. Se trata de SCAPEGHOST, una sensacional producción británica donde la fuerza de los problemas está basada en la interacción con los muchos, muy sotisficados y muy creíbles personajes (¡a pesar del hecho de que sean fantasmas!)

Para empezar, podemos traer a escena a la figura del enterrador. Este personaje es en gran medida secundario, aunque su habilidad para aportar atmósfera al compendio de la aventura lo sitúan en los más altos papeles jamás interpretados por un PSI. Nos lo encontramos avanzando diligentemente hacia algún lugar específico del cementerio, hablando consigo mismo y portando una pala. Cuando llega allí donde se encuentra nuestra propia fosa, el individuo comienza a trabajar con toda naturalidad, musitando cierta clase de improperios hacia el tipo de obligaciones que posee, pero con un encanto tal que parece que estemos viendo una de esas películas americanas donde los borrachines mascan tabaco y hablan con la boca torcida.

Es tan grande el grado de realismo y detalle impreso en este personaje que, en algún momento, el sepulturero incluso decide descansar sobre su pala unos instantes, volviendo al trabajo algunos turnos después. Una vez que la fosa está debidamente cubierta, podemos asistir al prodigioso peregrinaje de este hombrecillo hacia su caseta de herramientas, lugar donde tiene lugar un desmesurado derroche de habilidades por parte de estos PSIs a los que no puedo, por menos, otorgarles todo tipo de calificativos favorables. El enterrador abre la puerta y se mete en la caseta. Allí, deja su pala dando a entender que su jornada ha acabado, y se reune con el supervisor del cementerio, con quien intercambia unas palabras del todo triviales. Luego, apagan la luz y salen juntos de la caseta, se montan en un vehículo y abandonan la acogedora tranquilidad del camposanto para dirigirse, tal y como pudimos captar de su conversación, a algún bar a tomarse unas copas: ¡y todo sucede en un puñado de turnos y no tiene la maldita relevancia!

No sé si resultaré excesivamente insistente, o por decirlo de otro modo, pesado, pero creo que sería muy bonito que un día decidiese comprar una de las aventuras que por correo se distribuyen en creciente oferta, y encontrase unos PSIs si no parecidos, mejores, destinados por ahora únicamente a las grandes producciones del software. Si vuestra excusa era el poco dominio del PAW, ahora tenéis finalmente los medios. El buen gusto es vuestro. Ojalá os haya ayudado un poco a hacer esto realidad.

¡ESE GRAFICO ESTA VIVO!

Tan importante, quizá, como los PSIs, son esos bonitos dibujitos que aparecen en el mejor de los casos sobre lo que a nosotros nos interesa de verdad: la información del texto descriptivo y los mensajes con los que el ordenador se comunica con nosotros. Es patente el enorme revuelo que las discusiones sobre este aspecto han levantado en las páginas de los mejores fanzines del mundo, ¿nos sirven, nos gustan, o son obsoletos?

No es tarea mía, por supuesto, arrojar alguna opinión (que las tengo) sobre este tema, sino el pensar en todas aquellas personas que consideran agradable para el jugador el tener en un recuadro más o menos vistoso las mejores representaciones gráficas alusivas a las grandes proezas que éste se ve obligado a hacer, y tratar de ayudarles en la medida de lo posible con nuevas y frescas ideas sobre el uso del editor gráfico que el PAW incorpora.

Así, podemos empezar considerando un concepto que se ve innegablemente ligado al aspecto gráfico: el movimiento. Aparentemente, es virtualmente imposible conseguir que nuestras creaciones artísticas se vean elevadas a otros estadios de belleza mediante el vehículo movimiento, como no sea metiendo las narices en el código máquina (o el BASIC, si somos lo suficientemente hábiles como para paliar la lentitud de éste) y luego incorporar este trabajo a la aventura via comandos EXTERN. En realidad, no es necesaria tamaña complicación porque, como todos vosotros sabéis, el PAW es tan maravillosamente versátil que siempre podemos manipularlo para que obedezca nuestros caprichos (¡sé de uno que lo usa como base de datos!)

El desarrollo del proceso que nos llevará a hacer realidad nuestros deseos es bastante más ingenioso que técnico, por así decirlo. Básicamente, todo se reduce a superponer una imágen sobre otra regulando constantemente el tiempo que cada secuencia va a estar en pantalla, y cuidando siempre, antes de dibujar el nuevo "fotograma", borrar el anterior con exquisita delicadeza para que "nadie note nada".

Esto de borrar la secuencia anterior se consigue no insertando espacios en blanco con el condacto PRINTAT y MESSAGE, como he visto hacer por ahí, porque el resultado es brusco, la zona a limpiar sufre un "blanqueo" descarado que el jugador aprecia con cierto deje de desagrado y el resultado es negativo. Es preferible "encriptar" la zona a re-dibujar como parte integrante del dibujo completo, e incluir, ya en la segunda secuencia, el grupo de órdenes que van a borrar esta zona, utilizando el caracter ASCII número 32 (el espacio) para las zonas con una estructura de pixels muy compleja y las opciones OVER e INVERSE para perfilar esas otras lineas y puntos que quedan siempre sobrantes.

Ofreceremos, por supuesto, un ejemplo completo de esta técnica, pero habrá de ser necesariamente en el próximo número porque en éste se nos acaba el espacio. Hasta entonces, os sugiero que practiquéis lo expuesto porque ningún aprendizaje es tan fructífero como el que os proporcionará la propia experiencia. ¡Hasta la vista!

Carlos Sisí