viernes, 27 de diciembre de 2013

Creyendome desarrollador con construct2 - Parte 2

Retomando la segunda parte de mi mini-juego, ahora explicare como hacer un escenario 2d para un juego de tipo arcade. Tal como dije en el post anterior, me basare en el ejemplo de esta página y publicaré los detalles que me parecieron más importantes y/o que no aparecieron en dicho tutorial.

Como se trabaja en Construct2:
En construct2 se trabaja mediante capas de forma similar a los editores de imágenes donde cada capa se superpone a la anterior , lo que resulta cómodo ya que se puede separar el paisaje de fondo (una imagen estática) de los personajes (imágenes con movimiento) y de otros objetos como el ‘score’ ( imágenes siempre presente en pantalla).

Creando un paisaje
La forma de crear una paisaje de fondo es usando una sprite que cubra todo el tamaño de una capa o bien una imagen de largo más pequeña pero que construct2 concatena automáticamente el final de ésta con el inicio de sí misma para darle la sensación de continuidad.
Otra modificación que podemos hacer es reducir el tamaño de la pantalla visible “window Size” (que puede ser de igual o menor tamaño que la capa), de esta manera el ambiente jugable será más grande.



Cómo interactúa mi personaje
Lo que diferencia a los objetos como muros, plataformas, piso y personajes del paisaje de fondo es que estos pueden colisionar, es decir, que no pueden traspasarse unos con otros. para esto en construct2 se puede darle a los objetos la propiedad de “sólido”.
Imaginemos por ejemplo a nuestra gota ( el personaje creado en el 
post anterior) tratando de cruzar una muralla, si la muralla no fuera un objeto de tipo “sólido”, la gotita simplemente traspasaría la pared en vez de buscar otra manera de resolver el obstáculo, no habría desafío ni diversión entonces.
Creando el piso
Ya que nuestro personaje choca con objetos sólidos y traspasa los no sólidos, entonces deberíamos encontrar la manera en que la gotita no caiga indefinidamente. En el tutorial base, el juego consistía en saltar por plataformas y si nos caíamos entonces perdíamos. En mi mini-juego quería que mi personaje caminara por la tierra del paisaje. La forma de solucionarlo fue añadiendo un bloque largo y transparente en la parte baja de la imagen de fondo donde quería que limitara el piso y añadirle la propiedad de sólido, de esta manera logré simular un suelo por donde mi personaje caminará.


Los eventos
Los eventos son acciones que pueden suceder en el juego cuando ocurra una determino suceso, por ejemplo si queremos que nuestro personaje camine cuando apretemos alguna flecha de nuestro teclado, entonces nuestro suceso sería la presión de una tecla y la acción sería el movimiento del personaje.

Personaje Caminando

Eventos de Construct2 para hacer caminar al personaje.

La forma en que definimos eventos en construct 2 es mediante la plantilla “Event Sheet” en donde estos se ejecutan de arriba hacia abajo y ya que además podemos agregar subeventos a otros eventos, se ejecutan primero todos los subeventos contenidos en un evento antes de ejecutarse el siguiente. Esto es importante ya que a medida que vamos haciendo más complejo el juego, aumentará el número de eventos que debemos añadir y sino lo hacemos de manera ordenada podría haber conflicto entre ellos.

Exportando un Juego
Hay múltiples plataformas a las que podemos exportar nuestro juego en la versión pagada (desktop y dispositivos mobiles ), la versión gratuita nos permite exportar a Html5, en la que podemos guardarlo en cualquier servidor Html como por ejemplo Apache o incluso en una carpeta de Dropbox. Yo elegí Dropbox y en el link siguiente el juego puede ser jugado:


Detalles para considerar

  • Al momento de exportar a Html5, puede que se demore demasiado, incluso que parezca que se ha quedado pegado, pero lo que puede estar pasando es que se esté demorando en la construcción de los mapas de sprites. en mi caso me paso que la imágenes que usaba pesaban mucho (mas de 1MB), me desespere un rato al creer que era un bug de la versión, pero luego probe con unos sprites más livianos y entonces se logró ejecutar. 
  • En la versión r146, al momento de bloquear un evento (tacharlo con una línea así para que éste no se ejecute) debemos además tachar cada subevento de éste ya que estos se seguirán ejecutándose y lo más probable es que cause problemas con las demás acciones.


Enlaces

No hay comentarios.:

Publicar un comentario