Crea tu propio Wherigo (6) TASK Y VARIABLES… Vamos avanzando

Esta entrada forma parte del curso “Crea tu propio Wherigo”: Pincha en los siguientes enlaces para ver las entregas anteriores del mismo:

1: EL RETO

2: COMENZANDO NUESTRO CARTUCHO

3: GRÁFICOS Y AUDIO: LOS MEDIA

4: DE ZONA EN ZONA y tiro porque me toca

5:PERSONAJES Y OBJETOS… dialogando con unos y cogiendo a los otros

……………………..

Wherigo es una marca registrada.

Antes de nada recomiendo encarecidamente leer las guidelines oficiales, así como la sección de preguntas frecuentes para tener claro que podemos y que no podemos hacer a la hora de crear y publicar un caché Wherigo.

………………………

En la entrega de hoy del tutorial vamos a seguir analizando los distintos objetos que podemos crear en nuestro Wherigo. No debemos perder de vista que estos “objetos” hacen referencia a los Objects, y no a los Items que vimos que la entrega anterior. Hasta ahora, los Objects que hemos estudiado son “Cartridge“, “Zones“, “Characters” e “Items” y hoy veremos las “Tasks” (tareas  del jugador) y las “Variables“.

TASKS

Una característica interesante que podemos incluir en nuestros cartuchos más complejos es la de que el jugador pueda acudir al MenúTasks” para comprobar que tareas tiene todavía pendientes en el desarrollo del juego. Estas “tareas” pueden ir desapareciendo del menú a medida que se van completando, o bien ser marcadas como “completadas” para que el jugador pueda comprobar en todo momento la evolución de la partida.

El efecto que el jugador obtendrá al reproducir el Wherigo es el siguiente:

TASKSEn este caso el jugador ya habría completado dos de sus tareas (Ir al inicio de la aventura y conseguir un arma), mientras que aún tendría pendiente de completar “Vencer al Caballero Negro”.

La creación de las distintas “TASKS” y trabajar con ellas es muy sencillo, pues seguiremos un proceso muy similar al de la creación de los Objects que ya conocemos. De esta manera, accederemos a la pestaña “Task”  abriendo el Menú “View” de la barra de Menús de Urwigo y seleccionando Tasks. La estructura de esta pestaña es la misma a la que ya estamos acostumbrados, con una columna central en la que se irán listando las “tasks” que hayamos creado y una columna a la derecha con las propiedades de las mismas.

Pestaña tasksPara crear nuestra primera task seguiremos los siguientes pasos:

1) Pulsaremos el botón “New Item” de la columna central y rellenaremos los distintos campos de la columna de la derecha tal y como viene siendo habitual:

a) Name: es el nombre de la tarea tal y como la verá el jugador. Quizá fuera una buena idea utilizar imperativos como “Ve al Castillo”, “Busca dinero”…

b) Description: Al hacer click en la tarea, el jugador leera una descripción de la misma, los motivos para completarla y todo lo que el programador considere oportuno incluir en este campo.

c) Identifier: No lo utilizaremos.

d) Display: Como siempre, si queremos que esta tarea aparezca en el menú “TASKS” del jugador desde el inicio de la partida dejaremos activada la casilla. Si queremos que aparezca en un momento posterior la dejaremos desactivada para hacerla visible mediante un SET task.display=true cuando sea el momento adecuado.

set taske) Image e Icon: Colocaremos la imagen y el icono que hayamos preparado previamente siguiendo nuestra filosofía de no dejar ni un sólo elemento del cartucho sin representación gráfica.

f) Active: Como ocurría con las Zones, para que el jugador pueda acceder a una task, esta no sólo debe ser visible (Display=true), sino que debe estar activa (Active=true). De esta manera, si queremos que la tarea sea activa desde el principio del cartucho, dejaremos la casilla activada, mientras que si la vamos a activar más adelante, podemos dejarla desactivada y en el momento que sea oportuno hacer un “SET task.active=true“.

g) Complete: Las task activas tienen dos posibles estados: completada y pendiente de completar por el jugador. Esta casilla, de dejarse activada, haría que la tarea estuviese completada por el jugador desde el principio de la aventura, a lo cual no consigo encontrarle ninguna aplicación práctica interesante, por lo que lo habitual será dejarla desactivada y, una vez el jugador haya realizado esa misión, pasarla a “completada” mediante un “SET task.complete=true“.

h) Correctness: Sirve para establecer si la tarea se ha completado de forma correcta o incorrecta por el jugador. Esto podría ser utilizado, por ejemplo, para establecer dos finales diferentes según se haya realizado una tarea de forma correcta o no. En cualquier caso, existen distintas alternativas a esta opción, por lo que no es especialmente importante en mi opinión.

i) Events: Podremos crear eventos relacionados con las task para los casos en que sus propiedades “Active“, “Complete” y “Correctness” cambien  su estado, así como para cuando se haga click sobre ella en cualquier momento.

Una vez creada nuestra task, procederemos a trabajar con ella como estimemos oportuno. Por ejemplo, si hemos creado una tarea inicial denominada “Ve al punto de inicio“, deberemos marcarla como completada cuando el jugador llegue a este punto:

Imagen2La misma estructura deberíamos seguir para cualquier otro cambio que queramos realizar en la task (desactivarla, hacerla invisible, cambiar su imagen, icono, nombre o descripción, marcarla como completada correcta o incorrectamente, etc…

…………………………………..

VARIABLES

Las variables son un Object un poco más avanzado que el resto de los que hemos visto hasta ahora. Se trata de un valor que puede consistir en un texto, un número, o bien en un valor Verdadero o Falso. Su principal utilidad es que, tal y como indica su nombre, el valor otorgado en un comienzo a la variable puede ser modificado  tantas veces como queramos durante el desarrollo del Wherigo. Las aplicaciones que se le pueden dar a las variables son muchas:

1) Una variable numérica puede indicar al cartucho cuantas monedas tiene en su poder el jugador. Podemos otorgarle un valor inicial de 0 y que este se vea incrementado según vaya consiguiendo monedas. Así cuando el jugador seleccione su Item “monedas” podriamos crear un “Dialog” que le dijera “Tienes X monedas” en función del valor que tenga la variable en ese momento.

2) Una variable texto podría contener el nombre de un “Character” (personaje no jugable). En un principio podría ser “Desconocido” y, una vez el jugador haya hablado con el, podríamos cambiarlo a “Fulanito“.

3) Una variable Verdadero/Falso (al igual que una numérica) podría usarse para crear situaciones más complejas. Por ejemplo, si al llegar a una zona su valor es verdadero ocurra una cosa, mientras que si es falso ocurra otra.

La creación de las variables es mucho más sencilla que la del resto de Objects que hemos visto hasta ahora, ya que hay muchos menos campos que completar en su columna de propiedades. Para crearlas seguiremos los siguientes pasos:

1) Accederemos a la pestaña “Variables” a través del menú View de la barra de menús de Urwigo y seleccionaremos Variables. Se abrirá una pestaña como a las que estamos acostumbrados con una columna central en la que se listarán las variables que hayamos creado y una columna a la derecha con las propiedades de las mismas.

Variables2) Pulsaremos el botón “New Item” de la columna central y rellenaremos los siguientes campos de la columna de propiedades:

a) Name: Es el nombre de la variable. Un cartucho complejo puede llegar a tener muchas variables y muy similares entre si, por lo que debemos ponerle un nombre lo suficientemente representativo como para no equivocarnos al utilizarla en lugar de otra.

b) Descriptión: Usaremos este campo para escribir algún tipo de descripción que nos ayude en el trabajo posterior. Por ejemplo identificando lo que significa cada valor numérico en una variable de este tipo: “0=sin espada 1=con espada”, por ejemplo.

c) Identifier: Como viene siendo habitual no utilizaremos este campo.

d) Value: Aquí seleccionaremos el tipo de variable que vamos a utilizar (numérica, de texto o Verdadero/Falso), así como el valor que tendrá al comienzo del cartucho., que escribiremos en el cuadro correspondiente en cada caso.

Y ya tenemos nuestra primera Variable creada.

El trabajo con las variables es extremadamente sencillo. Utilizaremos SET para ir cambiando el valor de la misma a nuestra conveniencia. Por ejemplo, con la siguiente instrucción, cuando el jugador llegara a la zona “punto de inicio”, la variable correspondiente a las monedas pasaría a tener un valor numérico de “3“.

Imagen2Más adelante, cuando sepamos utilizar Expressions como “Compare” o Actions como “If/Else“, será cuando el trabajo con ellas adquiera todo su potencial. Por ahora nos conformaremos con saber crearlas y modificarlas.

………………………………………

Y hasta aquí llega la entrega de hoy del tutorial. Para aquellos de vosotros que esteis siguiedo EL RETO tendreis que modificar ligeramente el cartucho que habeis creado hasta ahora. Recordemos que hasta este momento, el jugador llegaba a una zona donde tenía una pequeña conversación con otro personaje, se le hacía entrega un objeto que debía transportado hasta otro personaje en una segunda zona. Pues bien, las pequeñas variantes que introduciremos hoy serán las siguientes:

1) Crear una TASK invisible desde el comienzo que se llame “ENTREGA EL OBJETO“. Haremos visible y activa esta task en el momento en que el primer personaje nos haga entrega del item y, por último, le cambiaremos el estado a “COMPLETADA” cuando en efecto se haya completado.

2) Crearemos una variable numérica llamada “OBJETOS EN EL INVENTARIO” con un valor inicial de “0″, que se convertirá en “1” cuando nos hagan entrega del Item y volverá a valer “0” cuando cumplamos el encargo de dárselo al otro personaje.

Compilad un cartucho con extensión GWC utilizando las técnicas que hemos visto hasta ahora y enviádmelas a manupor3@gmail.com

Todas las dudas que pudieran surgir de la explicación, agradecería que no se me plantearan por privado, sino como comentario a esta entrada, para que todo el mundo pueda consultarla, así como la respuesta que, si tengo, daré a la misma.

FELIZ GEOCACHING Y FELICES WHERIGOS A TODOS!!!