Translations of this page:

This is an old revision of the document!
—-

3. Primera visita al mundo real de WME

Ya hemos conocido las herramientas de wme y hemos estudiado lo básico sobre la programación(scripting). Ahora es momento de ver como se aplica todo esto al diseño del juego. Antes de empezar vamos a explicar un poco los tipos de ficheros que utiliza wme(es estrictamente necesario usar este tipo de nomenclatura para los ficheros).

*.script → Son ficheros que contienen el código del programa.

*.inc → Son ficheros que se podrán incluir en los ficheros .script con la clausula #include.

Normalmente estos ficheros tienen cientos de lineas de código, que de otra forma tendríamos que escribir cada vez que las necesitáramos. El primer ejemplo de esto, es el fichero “data\scripts\base.inc”. Este fichero se incluye prácticamente en todos los scripts. El contenido de estos ficheros es el mismo que los .script, con la particularidad que podremos incluirlos en otros ficheros.

*.scene → Son ficheros que incluyen la información de las escenas definidas en el editor de escenas. Es posible crear este fichero a mano, pero es mas recomendable usar el editor de escenas, te facilitarás el trabajo.

*.sprite → son ficheros donde se almacena la información de los sprites, como vimos en el primer capitulo, los sprites eran por decirlo de algún modo, una especie de animaciones, que se creaban con el editor de sprites. También es posible crear estos ficheros a mano pero es más engorroso.

*.actor → Son ficheros donde se definen los actores, y las animaciones de estos.

*.entity → En estos ficheros se definen las entidades.

*.font → Son ficheros donde se definen las fuentes que vamos a usar en el juego, admite de dos tipos, tipo mapas de bits y tipos true type.

*.windows → Son ficheros donde se definen las interfaces del juego, por ejemplo: menús, paneles, etc.

*.image → Son ficheros que almacenan imágenes, con la capacidad de crear repetición(mosaicos), estos ficheros son muy útiles para inventarios.

*.button → Son ficheros que definen como son los botones, por ejemplo los botones de los menús.

Recomendación: Lo mejor es coger cada uno de estos archivos de la demo incluida en wme, e investigarlos, y exprimirlos, para aprender a conocerlos. Quizá cuando acabe con la traducción, haga unos tutoriales explicando mas a fondo estos ficheros.

Aparte de estos tipos de ficheros, wme presenta unos archivos especiales, a los que es posible cambiar sus nombres, pero estos son los nombres que se crean por defecto:

default.game y startup.setting → Son creados por el administrador de proyectos y almacenados en la carpeta principal del proyecto, en ellos se almacenan las características del juego, y las opciones iniciales.

String.tab → Se almacena también en la carpeta principal del proyecto, y contiene las tablas de cadenas de caracteres para los distintos idiomas. Por si queremos tener un juego en varios idiomas.

items.items → Contiene la declaración de los objetos del inventario que se usarán a lo largo del juego. Se almacena en la carpeta “data\items”.

responses.def → En este fichero se almacena como se ve la ventana de dialogo en las conversaciones de los personajes. Se almacena en “data\interface”.

inventory.def → En este fichero se define el aspecto de la caja del inventario de nuestros personajes. Se guarda en “data\interface”.

Como comente antes, os recomiendo que vayáis explorando estos ficheros, y os familiaricéis con ellos.

Pero dejemos esto de lado, y empecemos con la cosa mas simple – el ajuste de la escena. Si exploramos el contenido de alguna escena ya creada en el explorador del administrador de proyectos, veremos que todas las escenas contienen un fichero .scene, y una carpeta llamada scr que contiene un fichero llamado scene_init.script

Nota: en los ejemplos que vienen con wintermute hay mas ficheros, pero en esencia, una escena con lo mas básico tiene esos dos ficheros.

Bien pues internamente, wme lee el fichero de escena (.scene), y prepara todo tal y como esta definido en el fichero de escena, posteriormente carga todos los ficheros .scripts que participan en la escena, y automáticamente ejecuta el fichero llamado scene_init.script. Este fichero lo que hacer es ejecutar todas las acciones necesarias cuando se carga la escena, por ejemplo:

Si quieres que tu personaje al entrar a una escena que es muy oscura diga “oju! Que oscuro esta esto!”, pues esto deberemos definirlo en este fichero, así pues vamos a analizar y a comentar este fichero( scene_init.script ).

#include “scriptsbase.inc” 
 
//Ahora definimos las opciones iniciales de la escena 
 
actor.SkipTo(733,562); // Posicionamos al actor en un punto de la escena 
actor.Direction=DI_DOWN;// Hacemos que el actor mire hacia una direccion 
actor.Active=true;// Hacemos el actor visible dentro de la escena 
 
//Ahora definimos el estado de la escena 
 
global StateWarehouse;//Creamos esta variable para almacenar el estado actual de la escena 
 
//Comprobamos el estado de la variable que hemos creado, si no tiene valor, se lo agregamos 
if(StateWarehouse==null) 
{ 
	StateWarehouse.Visited=false; /* Creamos un atributo para la variable de estado 							                                                                                                                                                                             
                                        llamada Visited y le damos el valor falso, ya que  
                                        aun no hemos visitado la escena */ 
} 
 
if(!stateWarehouse.Visited) // Si no hemos visitado la escena 
{ 
	StateWarehouse.Visited=true; /* Le damos el valor true a escena, si entramos en ella 
                                         y nunca antes la habíamos visitado*/ 
//Esta es la primera entrada en la escena 
} 
//Aquí acaba el fichero scene_init.script


 
es/wmebook/ch3.1365519441.txt.gz · Last modified: 2013/04/09 16:57 by dongo
Recent changes RSS feed Creative Commons License Driven by DokuWiki