Creative Commons License
Crear un juego flash de tipo arcade. por Julio Laguna is licensed under a Creative Commons Reconocimiento-No comercial-Sin obras derivadas 2.5 España License.

Crear un juego flash de tipo arcade.
por Julio Laguna - redribera

1 Introduccion y descripción del problema.
    1.1 Introducción.
    1.2 A quien va dirigido este tutorial.
    1.3 Descripción de nuestro juego.
2 La escena en movimiento.
    2.1 El uso de sprites.
    2.2 Componer los movimientos y animaciones del protagonista en Flash
    2.2 Continuación...
    2.2 Continuación...
    2.3 Simular el movimiento sobre el fondo.
    2.4 Añadir un enemigo a nuestro juego.
    2.5 Enemigo en acción.
    2.6 Disparo y detección de colisiones.
    2.7 Comentarios finales.

1 Introduccion y descripción del problema.

1.1 Introducción.

En este tutorial, vamos a intentar explicar como crear un sencillo juego en Flash.
Se trata de un juego, al mas puro estilo arcade, en el que veremos como crear sencillas animaciones mediante el uso de sprites y funciones en Flash para sincronizar los movimientos mas habituales.
En concreto veremos como definir los movimientos de un personaje principal y de un único enemigo. También la forma en la que el escenario sobre el que se desenvuelve la trama, esta sincronizado con los movimientos tanto del personaje como de los enemigos.
No se trata de un juego completo, de hecho, no hemos tenido en cuenta un sistema de puntuacón, aunque en el desarrollo de nuestro juego sería muy fácil de implementar, y además solo veremos el movimiento de un enemigo y como este dispara un arma.
También trataremos el tema de las colisiones entre clips de película, que en este caso nos valdrán para detectar las colisiones entre los disparos de nuestro enemigo y el personaje principal. De todos modos el tema de las colisiones, va mas allá del uso que nosotros le vamos a dar y pude ser muy útil en el desarrollo de cualquier otro tipo de juego con Flash.
Bajo estas líneas, encontrareís el desarrollo finalizado del fichero Flash (para la versión de Flash 8 y superiores) con el juego que vamos a desarrollar. Tan solo es necesario pulsar el botón empezar y utilizar los cursores para manejar nuestro protagonista.
El juego en si carece de muchas opciones y por supuesto de mucho mas contenido, pero creemos que con los conceptos que vamos a explicar, el lector será capaz de desarrollar multitud de contenidos para crear sus propios juegos.
Por su puesto, el desarrollo de un juego, requiere de muchas horas de dedicación, así como una buena planificación del mismo, y sin olvidarnos de la creatividad que el mismo tenga. Es así que juegos con un desarrollo tanto gráfico como de programación importante, no consiguen llegar a una audiencia buena, incluso me permitiría decir, que ni siquiera a divertir. Por ello la creatividad y correcta planificación en el desarrollo, son dos factores que deben ir juntos de la mano en el proceso de desarrollo del juego.
En nuestro caso, hemos desarrollado este juego, con fines puramente educativos, y nuestra experiencia en el desarrollo profesional de juegos, es prácticamente nula. Aun así estimamos que las técnicas utilizadas por nosotros pueden ser de interés a una audiencia de lectores que pretendan iniciarse en este tipo de desarrollos.



Nota: Es necesario Flash Player 8 o superior para la correcta visualización de los ejemplos del tutorial. Desde esta misma página en la parte izquierda de navegación hay un enlace a la página de descargas de Flash Player de Adobe.

1.2 A quien va dirigido este tutorial.

Este tutorial está dirigido, a aquellas personas que tengan interés en el desarrollo de juegos en Flash, y que no tengan una noción avanzada en este tema. Los métodos utilizados (uso de sprites y otros), son de sobra conocidos por las personas que tienen una experiencia en el mundo del desarrollo de juegos.
Aún así este tutorial pretende centrarse en estos aspectos en conjunto con su aplicación utilizando Macromedia Flash 8, plataforma en la que el desarrollo de juegos se ha convertido en muy popular, sobre todo enfocado a juegos en Internet (online). El lector debiera estar familiarizado aunque solo fuera en el manejo básico de Flash, creación de películas y manejo básico.
Así mismo el tutorial asume que el lector tiene un conocimiento del lenguaje ActionScript (lenguaje de programación en Flash).
De todos modos el uso que haremos de ActionScript tampoco es excesivamente complejo, con lo que entendemos, que un lector sin experiencia puede usar este tutorial, cuanto menos como una guia de iniciación al mismo, ya que en el desarrollo del juego se utilizan las estructuras mas comunes del lenguaje, sin entrar en estructuras mas complejas como las clases que definen objetos.
El equipo de redribera, no tiene tampoco inconveniente en dar el soporte necesario dentro de nuestros foros o en los comentarios para este tutorial, a los cuales podeís acceder a traves del menú situado a la izquierda en esta misma página.
Esperamos que el tutorial sea del agrado del lector.

1.3 Descripción de nuestro juego.

Vamos a incluir este apartado en este capítulo de introducción, para tener una visión global de los objetivos o acciones que va a implementar nuestro juego. Esto es así para que el lector tenga una visión de los objetivos que pretendemos, antes de iniciarse en el desarrollo técnico del mismo.
Por supuesto, para nosotros estos objetivos están claros, una vez hemos finalizado nuestro desarrollo, pero esto no será tan obvio cuando estemos empezando con un desarrollo nuevo, y lo normal es que a lo largo del tiempo del desarrollo, estos objetivos vayan cambiando. Aún así creemos que hará mas comprensible la lectura.

Nuestro juego, inicialmente va a consistir en un personaje:

protagonista
protagonista

Este personaje, será el protagonista principal, cuyo control lo decidiremos los jugadores mediante las teclas de cursor. Flecha arriba, abajo, izquierda y derecha.
Con estas teclas podremos realizar las siguientes acciones:

  • Movernos hacia la izquierda - flecha izquierda.
  • Movernos hacia la derecha - flecha derecha.
  • Saltar hacia arriba (en dirección) - flecha arriba.
  • Detener a nuestro personaje - flecha abajo.

Por otro lado, nuestro personaje va a tener que lidiar contra un típico enemigo al mas puro estilo arcade. Su enemigo será este personaje:


enemigo que disparará sin cuartel contra nuestro protagonista, y este, deberá esquivar sus disparos utilizando su potente salto.
Nuestro enemigo, vendrá a por nosotros montado en su flamante camión:


Por otro lado, tendremos la escena (o vulgarmente conocido como nivel en los arcade.), donde transcurrirá esta persecución entre nuestros personajes.
Por simplicidad (que luego veremos) y porque es un sistema de de niveles bastante habitual, nuestro nivel, deberá ser infinito, es decir que nunca se acabe, ni cuando andamos hacia la izquierda, ni cuando andamos hacia la derecha. En realidad es algo similar a los dibujos animados antiguos, con un fondo reversible, podemos generar una escena continua en la que se repite el fondo por el que pasamos, sin que sea demasiado perceptible para el usuario (ni importante en el juego).
Aquí voy a dejar un enlace hacia el fondo que utilizaremos como nivel de la escena.

Fondo para utilizar en el nivel de la escena de nuestro juego.

El objetivo de nuestro juego, va a ser muy sencillo, esquivar las rafagas de metralla que nuestro enemigo nos disparará montado en su camión.
El enemigo, aparecerá en la escena de vez en cuando y nos disparará metralla, que solamente podremos esquivar saltandola.
Si la metralla nos alcanza, nuestro personaje, perderá una vida, y se verá como muere en la escena.

Observareís que es un juego muy sencillo, de hecho no hemos implementado ni siquiera un sistema de puntuación, ni un número de vidas al personaje, para que el juego finalice. Por otro lado, se trata de un único enemigo muy fácil de esquivar, que apenas aporta complejidad al juego. Es cierto, es un juego soso y aburrido, no lo vamos a negar, pero nuestra diversión va a ser otra, que es la de montar estas sencillas acciones, que van a hacer complejo nuestro trabajo.
Una vez vistos estos conceptos, entenderemos que mejorar nuestro juego será cuestión de repetir muchos de estos procesos, de una forma mas o menos creativa.
No es nuestra intención desarrollar un complejo juego, para el que haría falta mucho mas tiempo del que nosotros le podemos dedicar en estos momentos. Nuestra intención es que el lector aprenda algunos trucos y que comience a familiarizarse con Flash para resolver este tipo de aplicaciones. Luego será Usted mismo, quien decida hasta donde quiere llegar en este apasionante mundo de los videojuegos Flash.
Seguidamente, en el siguiente capitulo, comenzaremos con el desarrollo de nuestra aplicación desde cero.

   
Siguiente »