Game maker pro 8

Page 1

Dise帽ando juegos con el Game Maker Versi贸n 8.0 Pro (Enero, 2014)

Escrito por: Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 2

Game Maker Pro 8.0 El Game Maker es un programa semi profesional de creación de juegos, que nos permite y da las herramientas necesarias para crear sus propios juegos con la única limitación de la creatividad y la capacidad de manejo de los comandos y combinaciones entre ellos. Interface Gráfica

Carpetas de navegación Íconos de trabajo Conocimientos básicos. Cada juego debe tener ciertos componentes necesarios e imprescindibles, como ser, por orden de importancia: 1.- Personajes – Sprites – Acá definimos todos los elementos que tendrá nuestro juego. 2.- Objetos – Objects – Acá colocamos todos los elementos que tiene alguna programación, por lo general son los mismos que los Sprites. 3.- Escenarios o niveles – Rooms – Acá definimos los niveles de cada juego. 4.- Fondos – Backgrounds – Acá definimos los fondos de cada nivel. 5.- Sonidos – Sounds – Insertamos los sonidos. Primer juego Ahora crearemos nuestro primer juego y aprenderemos los elementos básicos para crear otros juegos más complejos. Nuevo

Guarda r

Abrir

Crear ejecutable

Ejecutar el programa

Sound

Sprites

Backgrounds

Objects

Rooms

Inserción de personajes. Primero insertamos los personajes (Sprites) de nuestro juego, en este caso insertaremos 3 personajes. Para esto vamos al ícono de sprite y damos click sobre este y cargamos el personaje (Load Sprite) de nuestra librería.

Cargar personajes Aplicar Abrir Aplicamos todos los cambios y en las carpetas de navegación veremos nuestro personaje debajo de la carpeta de sprite. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 3

Transformación de sprites a objetos. Luego de insertar nuestros personajes (Sprites), los debemos transformar a objetos (Objects), donde realizaremos la programación de sus acciones. Para esto damos un click sobre el ícono de Objects y elegimos nuestro personaje. Por el momento solo daremos ok, para posteriormente dar la programación

Elegir sprite

Aplicar Creación del nivel o room donde se realizara el juego. Ya tenemos el personaje y el objeto donde aplicaremos el programa, ahora debemos insertar el escenario (Rooms) donde insertaremos nuestros personajes para poder jugar. Para esto simplemente damos un click sobre el ícono de romos, elegimos los personajes que estarán en nuestro nivel y aplicamos.

Objeto insertado

Nota: Para borra un objeto insertado, sólo damos un click con el mouse y el botón derecho sobre el objeto

Elegir object

Ya tenemos insertados nuestros primeros elementos, ahora estamos listos para crear nuestra primera programación, mucho cuidado y debemos recordar que en las carpetas de navegación deben estar todos nuestro elementos en la carpeta correspondiente y no debe haber elementos sobrantes o vacíos. En el ejemplo de la izquierda veremos que tenemos 4 Sprites, 4 Objects y 1 Rooms. No hay ningún elemento vació o extra. Si tenemos 4 personajes y objetos es porque nuestro primer juego será un laberinto donde nuestro personaje (sprite0) tendrá que escapar de los enemigos (sprite2 y sprite3), sorteando las paredes (sprite1). Cabe recordar que no insertamos ni fondos (Background), ni sonidos (Sounds) y sólo tenemos un nivel de juego.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 4

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 5

Programación del personaje principal. Ahora debemos dar el programa a nuestro personaje (sprite0) que será el de caminar mediante el teclado de dirección. Para esto debemos abrir nuestro personaje, pero en la carpeta de objetos, en este caso nuestro personaje es el object0, simplemente damos doble click sobre el objeto0 e iniciamos la programación. Para esto debemos crear un evento (Add Event) y en el caso de movimiento con teclado, deberemos dar Key Press y elegir una de las teclas de dirección, en este caso elegiremos arriba (Up). Teclas de dirección

Crear evento

Aplicar

Key Press

Ya tenemos el evento, ahora nos toca dar la programación para ese evento, que en este caso será mover hacia arriba con cierta velocidad. Para eso insertarnos la acción de movimiento (roja) a la ventana de acciones, simplemente jalando la acción a la ventana. Al colocar la acción de mover (roja) se abrirá una ventana de opción, donde daremos la velocidad y la dirección elegida, en este caso arriba.

Evento aplicado

Acción de movimiento

Direcciones, usadas según el evento

Velocidad Aplicar Una vez terminado esto aplicamos el programa y repetimos el paso 4 para todas las direcciónes. (Up - Arriba), (Down – Abajo), (Left – Izquierda), (Right – Derecha). Terminado esto Damos click en el ícono de ejecutar el programa (verde) y probamos nuestro Acción juego. En caso de haber fallado en velocidad o dirección, simplemente elegimos el evento y damos doble click sobre la acción y corregimos el error. Creación del room. Ya tenemos a nuestro personaje que se mueve en las 4 direcciones ahora debemos crear nuesto room, ya que por el momento sólo tenemos el personaje en un espacio vacio, para esto abrimos, de las carpetas de navegación, el room e insertamos los muros y creamos un laberinto. Terminado esto aplicamos los cambios. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 6

Aplicar cambios

Room terminado Elección de objetos a trabajar en el rooms Ya tenemos nuestro primer nivel y podemos mover nuestro personaje, pero el personaje pasa atraves de los muros, lo que no es correcto, ahora nos toca programa que cuando el personaje toque un muro, rebote en este. Definir colisiones en personajes. Para esto volvemos a abrir el objeto que se chocara contra los muros, de la carpeta de navegación, en este caso el object0 o nuestro personaje e insertamos un nuevo evento, Collision y elegimos el objeto con el cual se chocara y debe rebotar. Personaje que choca

Objeto con el cual choca

Colisión Crear evento

Ya tenemos el evento, pero aun no damos la acción, para esto aplicamos la acción, bounce (rebote) y aplicamos a todos los objetos (all objects)

Todos los objetos Evento de choque

Acción rebote Aplicar

Ahora ejecutamos el programa para ver si realizamos todas las acciones de manera correcta. Ya tenemos nuestro escenario y nuestro personaje, ahora nos toca poner enemigos que se muevan solos y nos dificulten el movimiento de nuestro personaje U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 7

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 8

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 9

Insertar personajes que se mueven solos. Ya tenemos insertados nuestros enemigos (sprites y objects), en este caso una araña y una calavera, en nuestro room, ahora nos toca programa para que se muevan solos y aleatoriamente. Para esto, en la carpeta de navegación abrimos uno de los enemigos y creamos el evento crear (créate) y damos la acción de movimiento (rojo), aplicando las flechas en todas las direcciones y con una velocidad de 5 o más. Movimiento

Crear

Aplicar en todas las direcciones menos el centro Velocidad

Insertamos varios enemigos a nuestro room y probamos el juego. Seguramente veremos que nuestros enemigos se mueven pero se van fuera de la pantalla, para evitar eso simplemente debemos aplicar colisión de personajes, como en el paso 6. Para finalizar realizaremos lo mismo para los distintos enemigos. Ya casi tenemos tenemos terminado nuestro primer juego, sólo nos resta hacer que cuando nuestro personajes enemigos se choquen con nuestro personaje heroe, termine el juego y poner premios que nos permitan sumar un puntaje (score) 8 Inserción de premios que suman un puntaje. Para esto debemos insertar un nuevo sprite que sean los premios y transformarlo a objeto donde programaremos sus acciones. Ademas de insertar varios premios en nuestro room, estos son estáticos o con movimiento, eso ya es depende del programador. Iremos directamente a la programación debido a que ya aprendimos a dar movimiento, colisión, insertar sprites, objects y rooms, además de prograr de manera simple. El objetovo de la programación depende del programador, en este caso pondremos manzanas que estaran estáticas y que cuando el personaje toque una de estas desparezca, sume 1 punto y aparesca en otro lugar, para poder sumer varios puntos, ojo que no debe aparecer dentro de un muro. Primero programamos la colisión de personaje con la manzana, donde esta debe salatar a otro lugar y sumar un punto. Creamos un evento de colisión con nuestro personaje y aplicamos salto aleatorio.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 10

Evento colisión

Aplicar Salto aleatorio

Realizamos la misma acción de colisión con el muro, para evitar que la mazana quede atrapada en una pared y no se pueda sumar puntos. En el ejemplo de arriba ya aplicamos las acciones para el personaje y el muro. Ahora nos toca aplicar la acción de puntaje a nuestro personaje para que cada que toque una manzana nos sume un punto. Para esto vamos a la pestaña score y aplicamos la acción Set score a nuestro personaje. Al aplicar esta acción se nos abrira una ventana donde podremos dar cada cuanto se sumaran puntos, lo ideal es de a uno y para esto marcamos la opcion relative. Ojo, marcado Set Score Para que el personaje Puntaje sume de a uno (relative) Pestaña score Hasta este punto tenemos nuestro personaje que se mueve con teclado, enemigos que se mueven solos, todos rebotan de las paredes. Además de premios que cada que se tocan desaparecen y suman un puntaje. Puntaje Paredes

Personaje Enemigos

Premios

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 11

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 12

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 13

Crear o editar sprites Nivel de complejidad: Básico Modo: Game Maker Ya podemos programar de manera básica nuestros objetos, ahora pondremos atención a la creación y edición de sprites. Para esto debemos tener una librería de sprites (se puede descargar del internet) o simplemente dibujarlos. En este capítulo aprenderemos a crear sprites de una librería o de un archivo fotográfico. Para esto primero insertamos un sprite blanco y damos la opción Edit Sprite.

Edit sprite Luego de dar crear sprite elegir la opción crear sprite nos sale la siguiente ventana, donde en el menú file aplicaremos Create from Strip y con el navegador de Windows buscamos nuestro archivo de sprites:

Menú file

Create from Strip

Tendremos una ventana similar a la siguiente, donde buscaremos lo que queremos que sea nuestro nuevo sprite animado:

Navegador de la imagen

Por lo general los sprites descargados de internet tienen varios dibujos, acá deberemos buscar la secuencia que más nos sea útil, no todo es de utilidad o deberemos utilizar varios dibujos de un solo archivo, esto depende de nuestra necesidad, en este caso buscaremos una secuencia donde Brian este caminando, puede ser de varias imágenes, en nuestro ejemplo es de 5 imágenes. Por el momento no le daremos importancia a las opciones de la izquierda de nuestra ventana. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 14

Una vez que decidimos que secuencia utilizar debemos marcarla en recuadros, para eso utilizamos las opciones a la izquierda de nuestra ventana. Previamente damos un clik cerca de los dibujos que queremos utilizar y aparecerá un cuadradito pequeño, lo aconsejable es poner este cuadradito al inicio de nuestra secuencia.

Cuadro inicial

Ahora definiremos la cantidad de cuadros a utilizar esto lo realizaremos en las opciones number of images (numero de imágenes) y images per row (imágenes por fila). En este caso utilizaremos 5x5. Herramienta de definición de cuadros

Ya tenemos definidos la cantidad de cuadros, donde se puede aumentar otros cuadros posteriormente, ahora nos toca definir el tamaño. Image width: En esta opción damos el ancho de nuestro dibujo, esto lo debemos hacer al tanteo, en nuestro caso es de 64. Image height: Acá damos la altura, en nuestro caso es de 100, puede ser más o menos. Horizontal pixel offset: Esta opción no es necesaria darle un valor ya que simplemente acomodamos los cuadros con el mouse y esto se llenara automáticamente. Vertical pixel offset: Esta opción no es necesaria darle un valor ya que simplemente acomodamos los cuadros con el mouse y esto se llenara automáticamente. Nos debería quedar como en el ejemplo. Aún no está bien ya que los cuadros están muy pegados entre sí, y cada cuadro debería tener una imagen de nuestra secuencia y no deben estar cortados, como pasa en la última imagen que tiene a Brian cortado. Para que nos salga bien debemos darle una separación entre cuadros, para eso aplicamos un valor, en este caso 8, a horizontal seperation. El valor depende de la imagen. Vertical seperation se usara cuando sea necesario hacer la separación de manera horizontal. Nos debería quedar como en el ejemplo, se puede acomodar con el mouse. Damos Ok. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 Deberíamos tener esta ventana como resultado del trabajo, marcamos (si no está marcado) la opción Show Preview, para ver como quedara nuestro sprite animado. El programa separara cada imagen independientemente, pero los animara automáticamente. Puede que sea una animación muy rápida, ya que 5 imágenes es muy poco para que se vea bien, para esto podemos duplicar o estirar nuestra animación a más cuadros, para esto vamos al menú Animation y damos Stretch, se nos

15

abrirá una ventana para poder hacerlo un poco más lento, se aconseja duplicar la cantidad, más se vería muy forzado y cortado. En nuestro caso cambiamos el valor de 5 a 10 y damos Ok. Podremos ver que ahora tenemos 10 imágenes en nuestra animación, si aún lo ven muy rápido no importa ya que en la programación se puede dar velocidad. Ya podemos aplicar los cambios o guardar, si no guardamos el sprite funcionara para nuestro juego, pero no lo podremos utilizar en otros programas, lo aconsejable es guardarlo en nuestra librería.

Aplicar cambios

Guardar para usar en otros programas

Ya tenemos nuestro sprite creado de una imagen de varias secuencias. Pero aún no lo tenemos terminado, si vemos bien la animación está pero el fondo es de un color, y para nuestro programa no necesitamos una animación encuadrada con un color diferente a nuestro fondo, para esto debemos borrar este fondo y darle transparencia. Para esto damos doble click sobre nuestra primera imagen y se abrirá el editor de sprites, donde también podemos dibujar, borrar, cambiar de color, etc. Su uso es muy parecido al paint de Windows. Para poder borrar el fondo marcamos la herramienta Selecting using a magic wand y marcamos el fondo, si lo hicimos bien se seleccionara todo menos el personaje, como podemos ver en el gráfico a la izquierda. Ahora simplemente lo borramos con la tecla suprimir. Para ir a las otras imágenes (no olvidemos que ahora son 10) y borrar los fondos damos un click sobre la flecha que indica siguiente y realizamos la misma operación de borrado. Damos ok y ya tenemos listo nuestro sprite para usar en lo que deseemos.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 16

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 17

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 18

Personajes que se mueven con el mouse Nivel de complejidad: Básico Modo: Game Maker Pro Para este capítulo debemos ingresar en el modo Game Maker Pro, no interesa que los programas los hayamos realizado en modo Lite, basta con abrir el modo profesional y abrir el programa y tendremos las opciones profesionales activadas. Para este juego ya no se explicara algunas opciones de programación que ya llevamos anteriormente como la colisión.

Primero definiremos los sprites, que no seran los que tenemos en el ejemplo ya que en este capítulo solamente veremos el movimiento del personaje con mouse, luego definiremos el juego como en el ejemplo anterior. Sprites y objets: Solamente incluiremos los muros y el personaje, aun no daremos ninguna programación. Podemos poner alternativamente enemigos, premios y otros objetos que pueden hacer nuestro juego más atractivo, como veremos en el ejemplo siguiente.

Programación: La programación que realizaremos es exclusivamente para nuestro personaje que moveremos con el mouse, y no así para los otros objetos que en anteriores o posteriores capítulos ya realizamos o realizaremos. Step: La programación es bastante simple, primero abrimos el objeto que queremos que se mueva con el mouse, en este caso el objeto mover, en los eventos insertamos Step – Step. Este evento no permitirá definir que pase algo en una secuencia determinada, o que se realice una acción hasta que se termine una condición.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 19

Step Avoiding: Ahora vamos a la pestaña move y aplicamos la acción Step Avoiding, se encuentra en la parte inferior, en el apartado Steps, y en sus opciones damos lo siguiente: x: mouse_x – y: mouse_y – speed: 4 (la velocidad la define el programador) – avoid: solid only. Como vemos en la imagen inferior.

Y listo ya podremos mover nuestro objeto con el mouse, bueno el objeto se moverá solo y seguirá donde apunte o se mueva el puntero del mouse. La velocidad es la define si va junto al puntero (mayor velocidad) o retrasado (menor velocidad). Ahora si queremos que nuestro objeto este quieto y sólo funcione cuando se presione un botón del mouse, deberemos incluir un objeto más, (puede ser el mismo repetido) y le damos otro nombre.

Mouse: Insertamos el evento mouse y aplicamos la opción Left pressed. En las acciones aplicamos en cambio de instancia o de objeto (change instance) en la pestaña main 1, como se ve en la imagen anterior. Una vez aplicado el evento en la acción damos el siguiente parámetro. change into: Acá damos el objeto que tiene el programa de movimiento con el mouse, en este caso el objeto mover. Sí podemos ver en la imagen de la izquierda, veremos que tenemos el mismo personaje con diferente nombre, uno que dice parado, que es donde se dará el cambio de instancia y el mover que es donde se dará el programa de movimiento con el mouse. Esto hará, hasta este momento, que el personaje este parado y sólo cuando se presione sobre él U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 20

empiece el movimiento. Lo malo es que el movimiento no se detendrá una vez iniciado, para que eso pase debemos incluir una acción más en el objeto mover, o el que tiene la acción de movimiento de mouse. Check Mouse: Esta acción verificará si el botón del mouse está presionado y en caso de ser así recién se moverá, en caso contrario se quedara quieto. Para eso debemos incluir la acción Check Mouse, que se encuentra en la pestaña control y en la opción button aplicar left. Como podemos ver en el gráfico de la izquierda. Ahora podemos probar el movimiento, claro está que para que sea un juego debemos poner más elementos y definir un objetivo.

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 21

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ _________________________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 22

Manejo de vidas. Para esto debemos determinar cuántas vidas tendrá nuestro juego y que pasara cuando se pierda una vida. Para este cometido insertaremos el evento Other en nuestro personaje y en Other aplicaremos Game Start Other

Game Start

Ahora ya tenemos designado el evento de inicio de juego, nos toca determinar las acciones que pasaran cuando se inicie el juego, esto equivale a decir poner la vidas, para esto vamos a la pestaña Score y aplicamos la acción Set Lives y damos las vidas que queremos que tenga el juego. Set Lives aplicado

Todo es en nuestro personaje

Set Lives

Número de vidas

Score

Aplicar Luego insertamos la acción Set Score y damos el valor de 0, ya que perder una vida no equivale a ganar puntos, salvo que tu juego lo requiera. Set Score

Todo es en nuestro personaje

Set Score aplicado Numero de score

Aplicar

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 23

Para finalizar debemos poner las vidas en la barra de la ventana de Windows, donde también esta los puntos ganados, para esto aplicamos la acción Score Caption y determinamos el nombre de las vidas y si aparecerá o no, automáticamente esta opción ya está, en este caso solo deberemos cambiar el nombre de las vidas, de Lifes a Vidas.

Todo es en nuestro personaje

Score Caption Aplicado

Score Caption

Cambio de nombre Aplicar Ahora aplicamos todas las ventanas y ya podremos ver las vidas en nuestra barra de la ventana del juego. Vidas

Resta de vidas hasta terminar el juego. Ya tenemos las vidas, ahora nos toca hacer que estas se resten cada que nos choquemos con nuestros enemigos. Para esto debemos (todo en nuestro personaje) insertar el evento colisión contra uno de nuestro enemigos y aplicar las acciones que pasaran en este caso, primero debemos indicar que cuando muera, retorne a la posición inicial del juego, para esto aplicamos la acción Jump to Start.

Todo es en nuestro personaje

Colisión a nuestro enemigo

Jump To Star Aplicado

Jump To Start

Luego en la pestaña Score, aplicamos la acción Set Lives y en su valor colocamos -1 y marcamos Relative para que cada vida perdida se reste del total.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 24

Todo es en nuestro personaje Set Lives

Vidas - 1

Relative

Aplicar

Ahora realizamos los mismos pasos para el otro enemigo y para todo lo que sea necesario. Probamos el juego. Terminar el juego cuando se terminen nuestras vidas. Ya insertamos el controlador de vidas, ahora nos toca programar que pasara si se llega a cero vidas, en este caso terminar el juego. Para esto insertamos el evento Other y aplicamos la opción No more lives. Other Todo es en nuestro personaje No more lives

En este evento aplicaremos Show Highscore, para que al terminar las vidas salga una ventana de cuantos puntos logramos y podamos poner nuestro nombre. Acá no debemos cambiar nada, todo es automático.

Todo es en nuestro personaje

Show HighScore

Aplicar Ahora debemos decidir si queremos que el juego se reinicie (Restart Game) o termine (End Game), para esto vamos a la pestaña Main2 e insertamos la acción de reinicio de juego o finalización. En este caso colocamos Restart Game

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 25 Restart Game Reiniciar el juego

End Game Finalizar el juego

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 26

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 27

Cambio de escenario, room o nivel. Ahora crearemos otro nivel con mayor dificultad para que al terminar el primero vaya al segundo, para esto debemos determinar porque ira al otro nivel, en este caso pondremos un cofre al final del nivel y si se llega a este automáticamente sumamos 500 puntos y pasamos de nivel. Primero debemos crear otro Room con sus paredes y enemigos correspondientes, podemos usar los mismo del primer nivel y para hacerlo más difícil insertar más.

Salida de emergencia. Se puede usar para pasar al otro nivel sin ganar puntos.

1er Nivel

2do Nivel

Ya tenemos el segundo nivel (room) definido, ahora nos toca programar los eventos y acciones, todo en nuestro personaje. Volvemos al room uno. A nuestro personaje aplicaremos el evento de colisión con el cofre del primer nivel y daremos la acción Set Score a 500 puntos. Aplicamos. Set Score

Todo es en nuestro personaje

Colisión al cofre

Puntos ganados si se llega al cofre

Aplicar En el mismo evento de colisión, aplicamos la acción Next Room, en la pestaña Main1 y damos el efecto de cambio de nivel que más nos guste. Aplicamos.

Main1 Todo es en nuestro personaje Next Room Efecto de transición Aplicar Listo ahora cuando nuestro personaje llegue al cobre automáticamente pasaremos al siguiente nivel. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 28

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 29

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 30

Disparar proyectiles que pueden matar a los enemigos (shooter) o destruir cosas. Para finalizar nuestro primer juego, incluiremos disparos que nos permitan matar a nuestros oponentes. Para esto debemos insertar un nuevo Sprite y transformarlo a Object (el proyectil). Ahora en el objeto de nuestro personaje, insertamos el evento de presionar tecla (Key Press) y elegimos la tecla que disparara nuestro proyectil, en este caso elegimos la barra espaciadora (Space) en este evento insertamos la acción de crear movimiento (Créate Moving), donde aplicaremos nuestro proyectil. Create Moving

Todo es en nuestro personaje

Elegir objeto proyectil

Proyectil

Relative, para que salgan varios proyectiles Ahora sólo nos queda dar movimiento a nuestro proyectil, para esto podemos hacer como con nuestros enemigos. Paso 7. Creamos evento de Create e insertamos la acción de mover (rojo) y damos la dirección hacia adelante y la velocidad que más nos guste o se adecue a nuestro juego. Objeto proyectil

Movimiento (rojo) Dirección hacia adelante

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 31

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 32

Cambio de sprites con una acción Ahora veremos el manejo de sprites, para cambiarlos cuando ocurra un evento o una acción, para esto iniciaremos un juego nuevo, simple pero con manejo de sprites y sus cambios.

1 Definición de Sprites y objetos. Primero definiremos todos los sprites que utilizaremos en nuestro juego, en este caso utilizaremos pared, una bolita, ladrillo completo, ladrillo animado roto y una barra. Luego transformaremos estos a objects, donde daremos la programación. 2 Definición de room o nivel. Para esto creamos un room e insertamos los elementos como en el ejemplo. Si nos damos cuenta el ladrillo roto animado no está en nuestro room y no debe estar ya que este se incluirá en la programación, cuando la bolita choque con un ladrillo, este se romperá y desaparecerá. 3 Inicio de la programación. Primero animamos la barra (Object0), en este objeto programamos 3 eventos simples. Debemos recordar que en capítulos anteriores ya explicamos cómo aplicar todos estos eventos y acciones. Barra. Aplicamos el evento de colisión contra la pared y como acción daremos el rebote. Luego aplicamos el evento Key Press con izquierda y derecha y como acción a cada uno le damos movimiento (rojo) que le corresponde (Left o Right) y una velocidad de 3, esto depende del programador. Una vez terminados estos 3 eventos aplicamos. Bolita. Ahora abrimos el objeto de la bolita y aplicamos los siguiente eventos: 1 Create, donde aplicaremos el movimiento (rojo) y marcamos las flechas en diagonal de abajo, las dos, y damos una velocidad de 3. 2 Collisióna la barra, aplicamos esto para la barra y la pared y para cada una como acción damos el rebote a todos los objetos (all Objetcs). 3 Collisión al ladrillo, acá aplicamos la acción Set Score y damos U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 33

un número y marcamos Relative, para que cada que choque con un ladrillo tenga un puntaje. Y luego damos rebote para que rebote al chocar con este. 4 Others - Outside Room, acá aplicamos la acción Set Lives (pestaña score) y damos -1 y marcamos relative, para que cada que la bolita salga del room nos quite una vida. Luego aplicamos Jump to Start, para que inmediatamente salda la bolita vuelva aparecer en el lugar inicial 5 Others – Room Start, aca definimos que pasara al iniciar el rooms, en este evento insertamos la acción Set Lives (Pestaña Score) e indicamos con cuantas vidas iniciaremos el juego, luego damos Score caption y damos la opción de Show en Show Lives, para que se vea en el juego el número de vidar que tenemos. 6 Others – No more Lives, acá definimos que pasara cuando se termine las vidas, para eso aplicamos la acción End Game (Pestaña Main 2) Ladrillo. En el objeto ladrillo, aplicamos el evento Collisión con la bolita y aplicamos la acción Change Instance (Pestaña Main1) donde haremos que el ladrillo cambie de sprite al ladrillo animado roto, esto para definir que cuando la bolita choque con el ladrillo, este paresca que se rompe. Ladrillo animado roto. Acá aplicaremos el evento Others – Animation End, que nos indica que pasara cuando la animación del

ladrillo roto termine, en este evento colocamos la acción Destroy Instance (Pestaña Main1), que indica que al terminar su animación el sprite debe destruirse o desaparecer. Con esta última programación ya estamos listos para probar el juego, podemos poner otras variantes, como que en vez de que el ladrillo se destruya y desaparesca cambie a otro ladrillo de diferente color y este recien se destruya, para hacer el juego más interesante. 4 Compilar el juego para ser ejecutable. Hasta acá tenemos la herramientas para crear juegos básicos, pero por el momento sólo los podemos ver con el programa editor (Game Maker Pro) que no tienen todos los computadores, para que el juego, terminado, pueda ser visto en cualquier computador, simplemente lo tenemos que compilar a autoejecutable, esto simplemnte se realiza dando un click en el ícono de crear ejecutable, de la barra superior de herramientas, esta al lado del ícono de guardar. Acá nos pregunta el nombre y donde guardaremos. Ya estamos listo para jugar sin el Game maker Pro. Con esto terminamos el primer cápitulo de nuestro tutorial y ya estamos listos para crear varios juegos, la creatividad es el único obstáculo para crear juegos, ya tenemos varias herramientas que nos permite crear infinidad de juegos. En el siguiente cápitulo definiremos el tamaño del room, de los sprites, dar energia y otras variantes para crear sus propios juegos

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 34

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 35

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ___________________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 36

Rotación de objetos con mouse y movimiento con teclado Nivel de complejidad: Avanzado En este capítulo veremos cómo hacer que un objeto se mueva con teclado y al mismo tiempo gire o rote con el mouse y dispare al dar click con el propio mouse. Para iniciar el programa debemos crear, como siempre, los sprites, object y el room, el room debe quedar de esta manera inicialmente sin la programación (izquierda) y con el programa completo (derecha):

Para el manejo de este capítulo debemos tener los siguientes sprites y objetos: Sprites: Iniciaremos con la creación de un sprite que es nuestro personaje, un proyectil y el respectivo muro, en este caso pusimos tres instancias de muro, (puede ser sólo uno, el primero) uno que es el muro intacto, otro con unas rajaduras y el tercero el muro destruido. Esto lo hacemos para que cuando el proyectil (sprite1) choque con el muro, inmediatamente este se raje y si vuelve a chocar con el muro rajado, este se destruya y quede sedimentos que ya no sean un obstáculo y se puedan traspasar. Una variación seria tener otro tipo de muros para el contorno, así tener el escenario alrededor intacto y sólo poder destruir los muros interiores y así poder pasar o ingresar a distintas habitaciones, esto depende del programador y del juego que se quiera crear. Objetos: Como en todos nuestro ejemplos una vez que se tienen los sprites, se deben transformar a objects. Una vez que tengamos los objetos iniciamos la programación del personaje que es la más larga y compleja. Programación del personaje (object1): Para dar la programación al personaje inicialmente daremos el parámetro que indique que este rote o gire con el mouse. Evento Step: Insertamos el evento Step y aplicamos la acción Transform Sprite, que se encuentra en la pestaña main1, apartado sprite. Al aplicar la acción Transform Sprite, tenemos los siguientes valores: Xscale: Donde pondremos 1, para que nuestro personaje mantenga su tamaño original. point_direction(x,y,mouse_x,mouse_y Yscale: Donde pondremos 1, para ) U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 37

que nuestro personaje mantenga su tamaño original. Angle: En esta opción definiremos que tenga un ángulo en relación a donde está el mouse, si giramos el mouse el personaje deberá girar donde está el puntero, para esto colocamos la siguiente instrucción, point_direction(x,y,mouse_x,mouse_y), con cuidado que este con el formato que debe ser, no debe faltar ni una coma ya que esto hará que el programa no funcione. Esta instrucción nos indica que el ángulo que tendrá nuestro personaje debe estar en la dirección X,Y en relación al mouse X,Y. Mirror: Acá mantenemos lo que tiene por defecto no mirroring. Si ya creamos el room, e insertamos nuestro personaje, este girara o apuntara donde vaya el puntero del mouse. Evento collisión: Insertamos el evento de colisión con el muro (el completo o el primero) y aplicamos la acción Bounce, no entraremos a explicar esto ya que en los anteriores capítulos lo explicamos de manera extensa. Lo que sí vale el termino explicar es la opción against, donde colocaremos solid objects, esto lo hacemos sólo si definimos el muro como sólido, que es la manera correcta de hacerlo, pero no necesaria, en este caso. Para aplicar a un objeto que es sólido simplemente marcamos la opción, Objeto en el caso del Sólido personaje no está marcada. Realizamos lo mismo para el muro que esta rajado, como podemos ver en el gráfico a la derecha. Esto lo realizaremos para todas las opciones necesarias, por ejemplo si hay enemigos, si hay objetivos de llegada, etc. Depende del juego y sus objetivos y del programador. También podemos hacer que cuando colisione con un enemigo el personaje muera o pierda vida. Ya tenemos la rotación del personaje, que pasara si choca con el muro intacto y con el muro rajado, ahora definiremos el manejo del teclado. Evento <no key>: El personaje no puede estar en constante movimiento sin que el usuario lo haga moverse, para esto definiremos el evento keyboard, <no key> y aplicaremos la acción Move Fixed, donde marcaremos en dirección (Directions) el cuadrado del centro y daremos como velocidad 0 (speed: 0). Esto hará que cuando no estemos presionando ninguna tecla nuestro personaje se quede quieto y simplemente pueda girar con el mouse, ya que esto no es una acción del teclado. Como podemos ver en el gráfico de ejemplo.

Para el movimiento del personaje con teclado, no daremos mucha explicación ya que lo tratamos en anteriores capítulos ampliamente, simplemente nos referiremos con el siguiente gráfico de ejemplo. Si tiene problemas para entender el movimiento de personajes con teclado puede revisar los anteriores capítulos.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 38

Dirección que se moverá en relación al evento tecla, en este caso <Left> o izquierda.

Definición de los eventos que hará cada tecla de dirección.

Velocidad de movimiento del personaje. Ahora debemos indicar que cuando se presiones un botón del mouse, en este caso el botón izquierdo, lance el proyectil, en este caso una bomba. Evento Mouse: Este evento nos indicara que acción debe realizar cuando se presione un botón del mouse.

Evento Mouse

Definición de botones del mouse presionado

Opción de manejo de botones del mouse

Aplicamos el evento Mouse, donde buscamos Global mouse y damos la opción Global left pressed, esto definirá que debe pasar si presionamos el botón izquierdo del mouse, le dimos esta opción por ser más general en todos los juegos, pero cada programador definirá con que botón realizar esta opción, ya que podemos elegir entre derecha (right) y medio (middle). Como podemos ver en el gráfico superior. Si podemos ver en el gráfico anterior, también tenemos opciones para el uso de 2 joysticks, y así crear juego multi jugador, posteriormente y en otro ejemplos veremos de una manera más ampliada el uso del mouse en diferentes instancias. Ya que definimos el evento del mouse, ahora nos toca aplicar la acción de este evento que es muy simple, ya que debe lanzar el proyectil. Esto ya lo explicamos en anteriores capítulos, de todas maneras refrescaremos la memoria, con la siguiente explicación y ejemplo.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 39

Aplicamos la acción Create Instance, (pestaña main1) y damos las siguientes opciones: Object: Acá elegimos el proyectil, en nuestro caso la bomba o el objeto 0. X: Acá mantenemos el parámetro 0 ya que no queremos que el proyectil se cree en otro lugar, al contrario salga del personaje. Y: Acá mantenemos el parámetro 0 ya que no queremos que el proyectil se cree en otro lugar, al contrario salga del personaje. Relative: Esta opción debe estar marcada, ya que indica que el proyectil salda del lugar que se encuentre el personaje, si no marcamos esta opción el proyectil saldrá en la parte superior de la pantalla y no de donde esta nuestro personaje. Debe quedar como en el ejemplo. Con esto terminamos la programación del personaje, ya debería poder mover con el teclado, rotar con el mouse y disparar los proyectiles, ojo los proyectiles no se moverán, simplemente aparecerán y se quedaran quietos, para que se muevan debemos realizar la programación en el proyectil, que haremos a continuación. Objeto proyectil (object0) Evento Create: Primero insertaremos el evento Create y aplicaremos la acción Move Towards, que se encuentra en la pestaña move y en sus parámetros colocaremos lo siguiente: X: En el parámetro x indicaremos que nuestro objeto (proyectil o bomba) se mueva donde apunte el mouse en coordenada x, para eso colocamos la instrucción mouse_x. Y: En el parámetro y indicaremos que nuestro objeto (proyectil o bomba) se mueva donde apunte el mouse en coordenada y, para eso colocamos la instrucción mouse_y. Speed: Acá la velocidad puede ser variable, para este caso le colocamos 15. Ahora pondremos un sonido de disparo, para que cuando el objeto salga disparado de nuestro personaje se escuche como si fuera un disparo. En la pestaña main1, Herramienta para insertar apartado Sounds, colocamos sonidos en la biblioteca la opción Play Sound y en sus opciones damos: Sound: Acá elegiremos el sonido del disparo, que previamente lo insertaremos en nuestra biblioteca. Sonido en Loop: Esta opción nos biblioteca permite indicar si queremos que el sonido se repita contantemente, como no es el caso le false, que indica que sólo sonada una vez. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 40

Ya tenemos la acción que nos hará disparar el proyectil en la dirección correcta, ahora nos toca crear que pasara cuando el proyectil choque con el muro o algo. Evento collision: Insertamos el evento colisión (aún estamos en el objeto proyectil) contra lo que queramos, en este caso el muro completo. Una vez creado el evento insertamos la acción Create Effects, que se encuentra en la pestaña draw, como vemos en el gráfico ejemplo. En esta acción pondremos los siguientes parámetros: Type: Esto nos permite elegir el tipo de efecto, como pueden ver hay diferentes, firework (fuegos artificiales), smoke (humo), star (estrellas), etc, en nuestro caso insertaremos explosión. X,Y: esto lo mantendremos con 0 Size: Esta opción nos permite dar tamaño al efecto, elegimos small (pequeño), ya que es suficiente para nuestro juego, el programador puede cambiar esta opción a su gusto. Color: El mismo enunciado indica que hace esta opción, da color al efecto, elegimos el que nos guste. Where: Esta opción nos permite indicar “donde” ira el efecto, para este caso indicamos below objects (debajo de los objetos), pero podemos poner above objects (encima de los objetos), la diferencia es que el efecto se verá cubriendo nuestros otros objetos o se lo vera por debajo, esto lo dejo a criterio del programador. Por último marcamos la opción Relative, que hará que podamos disparar varias veces. Para terminar con el objeto proyectil (object0) insertamos la acción destroy the instance, que hará que el efecto y el proyectil desaparezca después de aparecer en el juego. Para cuestiones de una programación correcta realizamos lo mismo para el muro que esta rajado. El juego está prácticamente terminado, simplemente nos queda dar la programación a los muros (completo y rajado) que en el cambio de sprites lo indicamos anteriormente. De todos modos realizamos un breve resumen.

El objeto muro intacto, cambiara con el muro rajado, cuando choque con la bomba Ojo el muro debe ser un objeto sólido

Colocamos el evento colisión con la bomba o el proyectil y aplicamos la acción Change Instance que está en la pestaña main1, en esta acción colocamos, en el parámetro change into, a que objeto cambiara cuando se realice la colisión (simple, cuando la bomba choque contra nuestro muro intacto, a que debe cambiar el muro, lógicamente a el muro rajado y posteriormente al muro destruido), en este caso al objeto3 o muro rajado, como podemos ver en nuestro gráfico superior. Listo el juego está terminado, ahora a probar nuestra programación. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 41

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 42

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ___________________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 43

Hacer que un objeto siga a otro objeto Nivel de complejidad: Fácil Este capítulo veremos cómo hacer que un objeto siga automáticamente a otro que este manejado por el usuario, realizaremos los pasos de manera simple, ya que hay otras maneras más complejas de hacer esto, eso lo veremos más adelante. Primero creamos los sprites, los objects y el room.

En el objeto personaje (object0) daremos la programación de movimiento con teclado y colisión con el muro (lo vimos en anteriores capítulos). No ahondaremos en esto ya que lo hicimos varias veces. El objeto muro no tiene ninguna programación. Donde realizaremos la programación más compleja es en el enemigo, que en este caso es la calavera. No debemos olvidar que este método de hacer que te siga un objeto es la más simple y tiene ciertas fallas, luego lo haremos de manera más compleja ya que se debe usar un código de programación que aún no vimos y es muy complicado explicarlo por el momento. Programación del objeto que te sigue: En el objeto que deberá seguirte (object1) insertamos el evento Step que nos indica que la acción que demos deberá pasar todo el tiempo. En este evento aplicamos la acción Move Towards, que está en la pestaña move, en esta acción aplicamos los siguientes parámetros: X: En la coordenada x escribiremos object0.x, que indica que el objeto 0 se moverá en x, ojo que debe tener el nombre que le pongamos, en este caso object0. Y: En la coordenada y escribiremos object0.y, que indica que el objeto 0 se moverá en y, ojo que debe tener el nombre que le pongamos, en este caso object0. Speed: La velocidad puede ser cambiante y dependerá del programado y del juego, en este caso pusimos 5. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 44

Con esta simple opción ya podemos probar nuestro juego y vera que el enemigo sigue e nuestro personaje por donde lo movamos. Ahora realizaremos algunos detalles que hará que nuestra práctica se vea un poco mejor. En el mismo objeto que nos sigue aplicaremos una colisión con el personaje y otra con el muro, la del muro no es problemas, simplemente chocara y no pasara sobre él, pero en el personaje haremos un par de acciones.

Primero insertamos la acción Display message, que se encuentra en la pestaña main2 y escribimos que dura cuando los dos objetos choques, pueden poner “Estas atrapado”. Luego colocamos la acción Sleep, que está en la pestaña main2, acá cambiamos la opción milleseconds a 500, esto hará que después de salir el mensaje “Estas atrapado” y dar ok, tendremos un tiempo (reducido) antes de que termine el juego. Seguimos con la acción Destroy instance, que está en la pestaña main1, esto hará que se destruya nuestro personaje. Para terminar colocamos End Game, que está en la pestaña main2, esto hará que el juego termine.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 45

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 46

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ___________________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 47

Desarrollo de un juego con un escenario grande Nivel de complejidad: Básico Muchos juegos tienen escenarios grandes (Mario bros, bomber man, zombie shooter, etc) ya sea en forma horizontal o vertical que no, necesariamente, entran en una pantalla, por lo general los juegos que son tipo laberinto. El game maker nos da la posibilidad de hacer escenarios grandes y que para motivos del juego sólo se vean una parte y mientras vamos avanzando se puede ver lo demás del escenario. En este capítulo veremos cómo hacer este tipo de juegos. Room completo del juego:

Room que se ve en el juego:

Primero que nada insertamos los sprites y los objetos de nuestro juego. Insertaremos un sprite de personaje, que será el que se mueva en el laberinto, los muros que harán el laberinto y por último una puerta de salida, esto es opcional y se relaciona con qué tipo de juego haremos, en este caso no interesa ya que nos centraremos en el room y no en los personajes ni otro sprite u objeto. Luego de insertar los sprites los transformamos a objetos y abrimos un room, acá es donde realizaremos la práctica, no hablaremos de otra cosa que no sea el room. Es lógico que la programación del personaje, debe tener un evento de colisión contra las paredes y se debe mover con el teclado o con el mouse, pero eso ya lo vimos en anteriores capítulos; la puerta puede ser para ir a otro nivel o para finalizar el juego y opcionalmente podemos poner enemigos, bombas que destruyen muros, premios, etc., esto está libre a la creatividad del programador del juego. Ahora nos centraremos en la creación del room. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 48

Tamaño del room: Ya sabemos crear un room, pero nunca le dimos un tamaño siempre trabajamos con el tamaño por defecto, en este caso debemos cambiar el tamaño: Para esto debemos ingresar al room y en las pestañas settings (propiedades) cambiamos la opción Width (ancho), podemos dar el valor que más nos guste o se requiera, en este caso daremos 2000, para que nuestro room sea largo, si deseamos hacerlo ancho, cambiamos el valor a Height, para nuestro ejemplo mantendremos el valor por defecto, 480, que es el que siempre tiene. La velocidad la mantendremos en 30. Una vez que demos este valor veremos que nuestro escenario es bastante largo.

Ahora debemos crear nuestro laberinto con los muros y poner todos nuestros objetos, como se vea conveniente, según el diseño que queremos crear.

Ahora si damos play para probar nuestro juego veremos que se ve sólo una parte y cuando nuestro personaje sale de este el escenario sigue siendo el mismo, en otras palabras no podemos ver todo lo que creamos, para esto vamos a la pestaña Views.

En esta pestaña marcamos los siguientes parámetros Enable the use of views: Al marcar esta opción estamos indicando que se debe ver sólo un sector de nuestro escenario. Visible when room starts: Esta opción nos indica que se puede ver lo demás del escenario si nuestro personaje se mueve por otro sector. View in room: Esta opción nos delimita cuanto del total del escenario veremos, W es para ver el ancho de nuestro room, si ponemos más de 640 empezaremos el juego con escenario más largo que ancho, H si cambiamos el valor de 480 será para ver el escenario más ancho, en este caso mantendremos el valor ya que nuestro ejemplo es para verlo más largo. Aplicamos los cambios y ya podemos probar nuestro juego. No olvidemos que debemos dar el programa al personaje para que se mueva con el teclado, caso contrario no veremos más que una parte del room. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 49

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 50

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ___________________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 Desarrollo de un juego donde el enemigo dispara Manejo de Bloques de programación Nivel de complejidad: Avanzado

51

Tenemos todas las herramientas para la creación de un juego de manera simple y avanzada, ahora veremos la programación de los oponentes o enemigos te siguen y te disparan. Primero como siempre definimos sprites, objects y room, en este caso dibujamos dos sprites el enemigo y la bala o el proyectil, como en el gráfico superior. Programación del personaje. Ya no explicaremos al detalle todos los pasos ya que todos esto lo vimos en anteriores capítulos. En el personaje pondremos los eventos de colisión con el muro y la acción de rebote. Luego insertaremos los eventos de movimiento con teclado, para que nuestro personaje se pueda mover con las flechas del teclado. Además insertaremos el evento de teclado No Key y aplicaremos la acción de movimiento, marcando el cuadrado del centro y con una velocidad de 0 para que cuando no estemos presionando ninguna tecla nuestro personaje se quede quieto. Programación del proyectil o la bala. No debemos olvidar poner nombre a todos nuestro objects para poder identificarlos y que nuestra programación sea más simple y mejor. Aplicamos el evento Create y dentro de este damos la acción Move Towars donde aplicaremos los siguientes parámetros: X: Acá aplicaremos el nombre de nuestro personaje seguido de un punto y x, en nuestro ejemplo personaje.x, el nombre es el mismo que tiene el objects. Y: Acá aplicaremos el nombre de nuestro personaje seguido de un punto y x, en nuestro ejemplo personaje.y, el nombre es el mismo que tiene el objects. Speed: La velocidad depende de cuan veloz queremos que la bala salga disparada, en este caso pusimos 10, damos OK. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 Luego crearemos el evento colisión con nuestro personaje y aplicaremos la acción Destroy the instance, esto hacemos para que cuando la bala choque con nuestro personaje esta desaparezca (la bala) y no continúe el camino. Lo mismo hacemos para el evento colisión con el muro, tal como podemos ver en nuestros ejemplos.

52

Programación del enemigo. Esta es la programación más compleja pero no por ello dificil.

Como podemos ver en nuestro gráfico estamos manejando algunas acciones que nunca las habiamos utilizado, que ahora pasaremos a explicar. Insertamos el evento Step, esto indica al programa que las acciones que tenga este evento deben realizarse paso a paso según las programemos. La primera acción que pondremos es Test Variable, donde aplicaremos los siguientes parámetros. Variable: Distance_to_Object( personaje). Esto indica que pasara cuando la distancia del objeto (enemigo) este en relación al personaje a 200. Value: En el valor ponemos cuando se va cumplir la variable, más o menos que cuando el personaje este a la distancia de 200 del objeto pase lo siguiente de nuestro bloque de programación. Operation: Acá ponemos smaller than, que nos indica que cuando la distancia sea menor a 200 continúe la programación. El valor de 200 es referencial, se puede cambiar a gusto del programador, pero es el valor que estamos usando en nuestro ejemplo, posteriormente pueden cambiar este valor. Damos OK U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 53

El definir una variable es como su nombre indica “VARIABLE” es un valor que puede variar y no es el mismo siempre, en nuestro caso la distancia de nuestro enemigo y nuestro personaje nunca será la misma y nuestro bloque de programación solo continuara en caso de cumplirse con la condición, en nuestro ejemplo una distancia mínima de 200 con respecto al personaje. Inicio de bloque de programación. Ya insertamos la variable, ahora debemos realizar la programación que pasara si se cumple el test de variable, para esto empezamos un bloque de programación insertando Start of a block, que se encuentra en la pestaña control. No tiene parámetros. Ahora a continuación insertamos la acción Transform Sprite, que está en la pestaña main1, en esta acción colocamos los siguientes parámetros. Xscale: Ponemos 1 ya que no queremos que crezca ni se achique, sino se mantenga del mismo tamaño en el eje X. Yscale: Colocamos el mismo valor de X por las mismas razones. Angle: En el ángulo colocamos: point_direction(x,y,personaje.x,personaje.y) Donde indica que el punto de dirección debe ser x o y en relación a la posición del personaje en x o y. Si pondríamos un número nuestro enemigo siempre estaría apuntando a una sola dirección. Mirror: Acá colocamos no mirroring ya que no queremos que nuestro objects enemigo se nos voltee. Damos Ok Continuamos con la programación del enemigo. Ahora aplicamos la acción Step Avoiding que nos sirve para hacer que nuestro object esquive o busque maneras de llegar a X o Y dirección. Colocaremos los siguientes parámetros: X: Para nuestra dirección x colocaremos el valor personaje.x (personaje es el nombre que le pusimos a nuestro personaje que podemos mover con el teclado) que indica que apuntará a nuestro objeto personaje. Y: Lo mismo que en x pero cambiando el eje de coordenadas, personaje.y Speed: La velocidad colocamos según nos convenga, en nuestro caso pusimos 2 Avoid: Acá colocamos solid only, que indica que se esquivara sólo los objetos sólidos. Y como nuestro muro es un objeto sólido nuestro personaje intentará bordearlo. Damos Ok. Hasta el momento ya tenemos la variable, la acción que hará que se rote nuestro enemigo y siempre apunte a nuestro personaje y además que trate de esquivar los muros buscando a nuestro personaje en los ejes x, y. Lo que nos toca programar es cuando disparara la bala o en que condición, ya que el disparo debe ser automático. Para eso aplicamos la acción Test Change que está en la pestaña control. En sus parámetros colocamos 20 y Ok. Esta acción nos indica que antes de continuar se elegirá en un dado de 20 caras el número 1 y cada que salga ese número continuara la programación, esto puede ser bastante rápido, si queremos que las balas salgan con cierta pausa o lento simplemente colocamos un valor mayor, como ser 100 y luego podrán ver el resultado. El ejemplo parece complejo pero es simple, imaginemos que tenemos un dado de 20 caras y lo lanzamos tantas veces que en algún momento saldrá el uno y cuando eso pase continuara las demás acciones, eso sucederá de manera relativamente rápida pero si usamos un dado de 100 lados es menos probable que salga el uno, pero de todas maneras saldrá.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 54

Ahora como antes indicamos si sale el uno deberá seguir una acción, en este caso abrimos otro bloque de programación ya que es una acción independiente y que no debe repetirse todo el tiempo sólo cuando se cumpla la condición. Abrimos otro bloque de programación (Star of a block) y luego insertamos Create Instance, en esta acción ponemos los siguientes parámetros: Object: En objeto indicamos que se creará, en nuestro ejemplo el objeto bala (que es el nombre que le pusimos a nuestro proyectil). X,Y: Acá no colocamos nada y mantenemos el valor en 0 Marcamos Relative para que salga de nuestro personaje enemigo Cerramos nuestro bloque de programación con la acción End of a block, como en nuestro ejemplo. Pero que es lo que hicimos en este bloque, paso a explicar: Cuando nuestra acción Test Change (la del dado) cumple con el valor uno, empieza el nuevo bloque de programación que tiene como fin crear una instancia u objeto, en este caso una bala (ojo es el nombre del objeto proyectil, eso cambia depende del nombre que lo pongamos a nuestro objeto), y no damos la dirección porque siempre será donde este apuntando nuestro enemigo, por eso marcamos relative. Para finalizar cerramos el bloque de programación general, no olvidemos que todo bloque debe tener un inicio y un cierre. Ya estamos listos para probar el juego.

Después de probar el podemos cambiar algunos parámetros para ver la diferencia entre valores menores y mayores.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 55

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 56

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ____________________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 57

Desarrollo de un juego con variables Saltos de objetos Nivel de complejidad: Avanzado Ahora veremos el manejo de saltos del personaje, con gravedad, en otras palabras podremos saltar con el personaje entre objetos. Para empezar el programa debemos inicialmente crear los sprites, objects y el room, para luego empezar con la programación. No ahondaremos en la creación de sprites, objects y room, ya que eso lo vimos en los anteriores capítulos y es bastante simple. El juego debe quedar de esta manera:

Los sprites y objetos deben quedar de esta manera: Sprites: Debemos insertar un muro, y los personajes, uno mirando de frente, uno mirando a la izquierda y otro mirando a la derecha. Objects: En objetos solo podemos poner el muro y el personaje mirando de frente. Rooms: Aca diseñamos el room como más nos guste, siempre pensado que el salto no será muy grande, como en el ejemplo que tenemos más arriba. No debemos olvidar que esto es la base para la creación de juegos más complejos y las explicaciones a continuación, las haremos en grado de dificultad. Las primeras programaciones siempre deben realizarse las más simples, luego las más complejas. En este capítulo utilizaremos el manejo de bloques de decisión, lo que quiere decir que podremos hacer que haga algo cuando pase algo, y haga otra cosa cuando no se cumpla la condición que pongamos, en este caso el salto, para que no salte eternamente y caiga cuando se cumpla una condición. Programación de juego: El muro no tiene ninguna programación, lo único que tiene programación es el personaje. Lo primero que haremos es hacer que el personaje empiece el juego parado y mirando de frente. Para esto insertaremos el evento créate y aplicaremos la acción movimiento marcando el centro y sin velocidad, luego insertaremos el cambio de sprite al que está mirando de frente. Este paso se puede omitir. (Ver imagen de la derecha) Luego crearemos el evento collision y aplicaremos movimiento marcando el centro y sin velocidad, luego aplicaremos la acción Bounce en objetos sólidos, como siempre hacemos para que el personaje no traspase el muro y se quede quieto al estar sobre el U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 58

muro. Como veremos en la imagen de arriba. No prestar atención a otro evento (step) Luego damos el movimiento a la izquierda (left) y derecha (right) y aplicamos el cambio de sprite a la dirección que debe tener. Como veremos en la siguiente imagen. No extenderemos más la explicación ya que todo eso lo vimos anteriormente. Cambio de sprite Teclado izquierda

Sprite mirando en la dirección del teclado Creación de los saltos: Acá es donde complicaremos la programación y veremos cosas nuevas y la explicación será más detallada. Primero insertamos el evento step, que es donde estará toda la programación y es lo que hará que nuestro personaje salte entre objetos. Toda la programación se realizara en las pestanas Control y Move Comment: Inicialmente debemos insertar un comentario, que es el que verificara que pasara cuando nuestro personaje este en el aire. Insertamos la acción Comment, y escribimos CHECK WHETHER IN THE AIR, es muy importante escribir sin errores la palabra ya que esto hará que se aplique la condición de estar en el aire del salto. Step Comment

CHECK WHETHER IN THE AIR Check Empty: Luego colocamos la acción Check Empty y colocamos el parametro 1 en Y y marcamos relative, que hara que se pueda saltar en el vector y que es de arriba abajo, en objects elegimos la opción Only solid, que indica que solo funcionara en objetos solidos (previamente debemso marcar en el muro como objeto solido, como esta en las siguientes imagenes. Check Empty

Valores a cambiar

Es muy importante no saltarse ningún paso, si no el programa no funcionara correctamente. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 59

Set Gravity: Ahora debemos insertar gravedad a nuestro programa ya que en un salto debe volver a caer o en caso de no haber nada debajo del personaje deberá caer hasta encontrar algo sólido. Para esto insertamos Set Gravity, y en direction, damos 270 y en gravity 0.5, como vemos en la imagen al lado izquierdo. Esto lo hacemos para que la gravedad sea hacia abajo (simple manejo de trasportador) Y al dar 0.5 de gravedad es para que no tenga mucha gravedad, en caso de querer que nuestro personaje sea más pesado, simplemente subimos la gravedad.

Else: Ahora insertamos else, que nos permitirá hacer otra opción en caso de no cumplirse lo anterior que es crear el salto. Esta acción no tiene opciones simplemente no indica que algo pasara si no paso lo anteriormente programado, que en este caso es que pasara cuando nuestro personaje este en el aire, que deberá ser caer sobre algo sólido. Para esto insertamos nuevamente gravedad, pero en los valores solo ponemos 270 en direction que indica que caerá sobre algo sólido, ojo no marcamos relative ni damos gravedad, ya que cuando cae sobre algo sólido simplemente seguirá caminado. Test Variable: Ahora debemos evaluar la variable de velocidad para que nuestro salto no sea gigante. Para esto insertamos test variable y aplicamos los siguientes parámetros, en variable escribimos VSPEED, en value 12 y en operation LARGE THAN. Esto hará que la velocidad vertical tenga un valor de 12 y el salto sea tan largo como el valor que pusimos en nuestra velocidad vertical. Set Variable: Ahora insertamos Set variable y damos lo siguientes parámetros: en variable insertamos VSPEED y en value 12, como veos en nuestra imagen de la izquierda. Esto lo realizamos para indicar que la variable vspeed tiene un valor de 12, con esto ya tenemos parte de la programación más complicada. Ahora nos toca dar con qué tecla saltara nuestro personaje. Keyboard: Para indicar con que tecla debemos saltar, vamos al evento keyboard y elegimos Up, y en acciones insertamos Check Collision e insertar en Y el valor 1 y en objects Only solid (sólo solidos) y marcamos relative. Esto lo hacemos para que cuando presionemos el salto se verifique la colisión en objetos sólidos. Ahora aplicamos Speed Vertical y damos el valor de 10, que nos indicara que debe caer después de saltar. Ahora probemos el programa y ya podemos empezar a realizar un mejor diseño de juegos e intentar cambiar los parámetros y ver que cambia en el programa. U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 60

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 61

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ __________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ____________________________________________________________________________________ Juego de disparos U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 62

Nivel de complejidad: Avanzado En este capítulo realizaremos un juego desde el planteamiento inicial hasta el terminado y exportación del juego en archivo ejecutable. 1 Planteamiento del juego. Inicialmente debemos plantearnos que hará nuestro juego, esta es la parte más complicada ya que debemos plantearnos los objetivos en base a nuestras capacidades y conocimientos de programación, de nada sirve imaginar un mega juego, cuando sólo sabemos hacer caminar un objeto. Para este juego mis planteamientos son los siguientes: 1.- Escenario: de noche (con estrellas) que se mueven, en la parte inferior montañas que también se mueven. 2.- Personajes: Un platillo volador, asteroides y planetas 3.- Personajes secundarios: Láser (disparo de la nave) y explosiones 4.- Controles: mediante teclado 5.- Variables: Puntaje, vidas 6.- Objetivos: Ganar mayor cantidad de puntos. El platillo volador dispara un láser (proyectil) a planetas (enemigos) que vienen hacia nosotros y asteroides (enemigos) que caen del cielo. Si nos chocamos contra un asteroide o un planeta perdemos una vida.

Ya tenemos la idea básica del juego, esta tendrá algunos cambios mientras avancemos en el juego, mejoras, cambios, modificaciones, etc., lo que se nos ocurra para mejorar nuestro programa final. 2 Creación de sprites. Ahora nos toca elegir los sprites que tendrá nuestro juego, inicialmente buscaremos o crearemos los que necesitamos (ejemplo lado izquierdo). Si queremos podemos darle un nombre 3 Creación de objetos. Ya tenemos los sprites, nos toca volverlos objects (ejemplo lado derecho). Se recomienda dar nombre a los objetos para saber que son y en base a esto saber que hacen. 4 Creación de fondos (BackGrounds). Ahora debemos crear los fondos de nuestro juego, un cielo estrellado y unas montañas. Las montañas las encontraremos en nuestra librería, el cielo lo debemos dibujar, (lo explicare más adelante). 5 Creación del Room. Crearemos nuestro escenario con todos nuestros objetos insertados (menos la explosión y el láser, ya que estos aparecerán en determinado momento), de momento las montañas nos saldrán por todo lado y no se verá el cielo o viceversa y todo estará estático (sin movimiento), más adelante explicare que hacer para que nuestro escenario quede de manera ideal. El orden de los que colocaremos es importante ya que el cielo no puede estar sobre las montañas, para esto insertamos en el siguiente orden el cielo estrellado, las montañas en la pestaña Backgrounds.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 En la pestaña objects insertaremos nuestros personajes como en el ejemplo.

63

Pestaña Backgrounds

Objetos planetas, asteroides, nave

Pestaña Objects

6 Dibujo de backgrounds. Esto es muy simple (manejo básico de paint de Windows), Inicialmente creamos un Background. Y damos la opción de Edit Background, donde dibujaremos nuestro fondo. Nos saldrá una opción como la de abajo. Esta ventana es muy simple la herramientas son deductivas para dibujar, pero el espacio de nuestro fondo es muy pequeño y debemos cambiar su tamaño antes de dibujar nuestro fondo, para esto vamos al menú Transform y damos Resize Cambas y ahí damos el tamaño en porcentaje o pixels que más nos guste, esto lo podemos hacer varias veces hasta tener el tamaño que necesitamos.

Dibujamos lo que queramos (explicación simple, de las herramientas, gráfico de abajo) y aplicamos. Dibujo a mano alzada Línea

Goma Dibujo de objetos definidos

Balde o relleno

Texto

Tamaño del lápiz o goma

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 64

7 Animación y modificación de backgrounds. Para esto entramos al room e insertamos los fondos (creados o cargado) en orden correcto, primero el fondo del cielo estrellado y luego las montañas. Los fondos nos saldrán repetidos varias veces, para definir si los queremos repetido de manera horizontal o vertical, sólo marcamos o desmarcamos las opciones Tile Hor o Tile Vert. (Tile Significa azulejo, interpretado es repetir algo varias veces, en un espacio determinado) Ahora los debemos colocar donde queremos, para eso nos vamos las coordenadas X, Y, damos valores numéricos hasta que este donde queremos. Nos toca dar animación a nuestros fondos, lo único que podemos dar es que se muevan de manera horizontal o vertical, para eso tenemos la opción Hor. Speed (Velocidad Horizontal) y Ver. Speed (Velocidad Vertical), donde ponemos algún valor numérico y aplicamos, ya tendremos nuestros fondos con movimiento y donde deben estar. En el gráfico izquierdo podemos ver todas las opciones. Para terminar con los Backgrounds, en la pestaña settings, podemos cambiar el tamaño de nuestro room, Width (Ancho) y Height (Alto) 8 Dibujo o modificación de Sprites. La modificación de un Sprite o la creación de uno nuevo es exactamente lo mismo que los Backgrouns. 9 Programación de objetos. Ya estamos listos para iniciar nuestra programación, empezaremos por los más simples para terminar en los más complicados. Para esto debemos analizar que hará cada uno de nuestros objetos después de estar en el room. Explosión. La explosión, después de ejecutar su animación, debe destruirse o desaparecer, ya que una explosión no se puede mantener en el espacio constantemente. Para eso damos el evento Other y aplicamos la opción Animation End y damos la acción Destroy the instance.

Láser. Para este objeto, primero damos que se mueva automáticamente con una velocidad determinada, podemos dar el movimiento (rojo), pero para una mejor programación aplicaremos el evento Create y la acción Speed Horizontal con una velocidad de 8 o como más nos guste.

Lo que debemos dar ahora es que el láser no salga constantemente, si no en un intervalo o espacio de tiempo. Para esto aplicamos el evento Step, que indicara al programa que siga una serie de pasos constantemente. Acá es donde complicamos el programa, las acciones que debemos dar es una variable (pestaña Control) que si esta cambia realice una acción, las variables se definen con 0 y 1 (donde 0 es NO y 1 es SI).

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 65

Previamente (luego lo entenderan) graficare los ejes de coordendas y definire un par de terminos: Y Y = Height = Altura X = Widht = Ancho X Ahora pasaremos a explicar la opción de variable (Test Variable): Esta es la ventana de Test Variable (Analisis de variable), acá tenemos 3 opciones, Variable, Value, Operation y debemos manejar las 3 para un resultado óptimo. Variable: Acá damos la variable que nos es útil, daremos X, porque quiero que se maneje en el eje de coordenadas X. Value: Acá aplicamos el valor de nuestra variable, al dar 0 le decimos que si esto cambia a otro valor siga la siguiente acción. Operation: En esta opción definimos la operación que realizara, para esto aplicamos Smaller than, que indica que si la variable cambia aun valor menor a 0 realice la siguiente acción que será destruir nuestro objeto, en este caso el láser. Debemos recordar que una vez terminada esta acción todo el programa del láser se repite cuando lo volvamos a activar, eso quiere decir que la variable 0 volverá a tener el valor de 0. En otras palabras se destruye y vuelve a crearse, lo que debemos dar ahora es el tiempo que pasara entre esas dos acciones, dicho programa lo realizaremos cuando el láser se active, en otras cuando presionemos la tecla barra espaciadora, pero eso lo daremos en nuestro platillo volador. Meteoros. Ahora empezaremos a programar los meteoros, para el caso explicare uno y para los demás es la misma programación. Primero debemos crear una velocidad de caída, ya que estos caen constantemente del cielo. Aplicamos el evento Create y la acción Speed Vertical con una velocidad de 2 o más.

Esto hará que el meteoro caiga del cielo, ahora debemos hacer que una vez que caiga y salga del room, este aparezca en otro lugar del cielo y vuelva a caer constantemente, pero en diferentes lugares. Aplicamos el evento Step, que indicara que se repita constantemente y damos las acciones Test Variable y luego Jump To Position.

Debemos recordar que el manejo de las variables es un poco confuso al principio, pero con la práctica estas seran más simples de manejar, recomiendo que cambien los valores para ver los resultados y sus cambios, sólo de desta manera aprenderan a manejar variables e distintos juegos y objetivos. No olvidemos que el Game Maker Pro, es un programador de juegos por consiguiente lo que estamos realizando es un programa, con interfase gráfica pero un programa y siempre debemos preguntarnos, mentalmente, lo que hara una variable y sus implicaciones. Continuemos con nuestro programa.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 66

Y = Height = Altura X = Widht = Ancho

Y = Height = Altura X = Widht = Ancho

Ahora pasare a explicar las opciones de Test Variable. En esta ventana tenemos 3 opciones, Variable, Value y Operation. Variable: Manejaremos el eje de coordenadas Y, que es que nos ya la altura. Value: Acá aplicaremos el comando room_height (se debe escribir exactamente igual) que nos indica que el valor es la altura del room. Operation: Acá le damos large than, que indica el largo del valor. Para explicar mejor esto: Test variable, nos realiza un examen de sus opciones antes de aplicar la siguiente acción (que será salta a la posición que nosotros determinemos). Si la variable Y (altura) en su operación (operation) large than (el largo de) tiene un valor (value) de room_height (altura del room) que continúe la acción siguiente. En otras si el largo de la altura de nuestro room Y se cumple, que continúe el programa y sus acciones, en este caso que salte a un lugar. Ahora explicaremos la ventana de la acción Jump to Position. Acá tenemos las coordenadas X, Y donde nos pide que pongamos un valor, si ponemos algún número, después de analizar la variable nuestro meteoro saltara a esa posición siempre, mientras lo que queremos es que salte a diferentes posiciones. Para esto en el eje X (Altura) colocaremos random(room_width) esto indica que en el ancho de nuestro room salga un número aleatorio, randomico (random) que lo determinara el computador. Ahora en el eje Y (Ancho) daremos -65 que es un valor fuera de nuestro room que significa que en el eje Y aparecerá nuestro meteoro fuera de nuestra visión para que luego ingrese en la coordenada X que será en algún lugar aleatorio. Aplicamos y vemos el resultado. Debería salir nuestro meteoro y al desaparecer de la pantalla, por debajo, volver aparecer por arriba en diferente lugar, puede que no sea inmediatamente, pero no tardara

más de 2 0 3 segundos. Ya tenemos nuestros meteoros que caen constantemente por todo lado, ahora debemos hacer que cuando el láser lo choque este se destruya y vuelva aparecer en otro lugar.

Primero aplicamos el evento de colisión con el láser y empezamos con sus acciones, primero debemos hacer que nuestro meteoro se destruya, para eso aplicamos la acción Destroy Instance, y marcamos la opción Other que nos indica que no será destruido para siempre, ya que debe volver a aparecer, si mantenemos marcada la opción Self, destruirá nuestro meteoro a la primera vez y no volverá a aparecer. Luego aplicamos la acción Create Instance, donde crearemos la explosión (object: Explosión) y marcamos relative que hará que cada que pase esto se repita la explosión.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 67

Ahora aplicamos el salto de nuestro meteoro después de que se destruya y aparezca la explosión, para esto volvemos a ver las coordenadas X, Y. En la coordenada X (ancho) colocamos el comando random(room_width) que nos indica que salte en el ancho de nuestro room de manera aleatoria y en el eje Y damos 65 donde indicamos que el alto sea fuera de nuestra visión. En otras palabras que al chocar con el láser se destruya nuestro meteoro y aparezca la explosión para luego volver aparecer (el meteoro) en un lugar aleatorio. Para finalizar la programación del evento colisión del láser con nuestro meteoro, aplicaremos Set Score y damos el valor de 1 y marcamos relative, que indicara que cada que destruyamos el meteoro sumara un punto a nuestro puntaje. (El ejemplo esta 3 gráficos más arriba) Planetas. La programación de los planetas es muy similar a los meteoros, con la diferencia de que en vez de ser vertical (height = Altura) es horizontal (widht = Ancho). En los gráficos siguientes se verá los cambios de vertical a horizontal. Simplemente recordemos el uso de ejes de coordenadas X, Y. Y Y = Height = Altura X = Widht = Ancho X Ventanas de programación por evento y sus acciones:

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 68

Si nos damos cuenta es la casi la misma programación que la de los meteoros, con ligeras diferencias, si no podemos realizarlo, simplemente vuelvan a apartado meteoros y realicen la misma programación y luego con las ventanas superiores cambien las diferencias. Platillo Volador. Este objeto es el más largo de programar ya que tiene muchas funciones en el juego, por algo es el personaje principal, ahora veremos todos los eventos que debe tener nuestro platillo volador.

Antes de iniciar el programa, debemos tener muy clara la idea de que debe hacer nuestro objeto, para no causar conflictos con nuestros otros programas. Bueno empecemos con la programación. Inicialmente insertaremos el evento Create y aplicamos la acción Set Variable, donde definiremos el nombre de la variable y su valor. Esto con el objetivo de usarlo más adelante. No olvidemos que en el objeto láser tiene un valor de 0, posteriormente explicaremos este comentario. El nombre puede ser lo que sea, pero debemos recordarlo ya que lo usaremos posteriormente en otras opciones. Ya tenemos definida la variable y su valor, ojo sin esta acción muchas cosas no funcionaran o saldrán error.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 69

Ahora creamos el evento Alarm, (Pestaña main2 – el relojito) en este evento insertamos la acción Set Variable, donde tenemos dos opciones, variable y value. Variable: En esta ventana indicaremos el nombre que definimos anteriormente (evento create) en este caso disparo, y como valor indicamos 1, no olvidemos que en valores 1 significa SI y 0 significa No. Value: colocamos el valor 1 (indicamos SI el valor de la variable disparo se cumple) Posteriormente explicaremos el porqué colocamos este valor y el nombre de la variable y el uso que le daremos, por el momento en el programa no hará nada Por un momento dejamos de lado el manejo de variables, ya que iremos en el orden de eventos que tenemos en nuestra ventana, esto es por defecto no podemos ordenarlos nosotros. Ahora insertamos el evento Step, si recordamos esto hará que las acciones que tenga se repitan infinitamente. Para esto debemos abrir un bloque de acciones que tenga inicio y final y la acción al medio. Esto con el afán que se repita constantemente y no una vez cada cierto tiempo. Crear un bloque de acciones es simple, vamos a la pestaña control y tenemos dos flechas (triángulos) en ambas direcciones (arriba y abajo), insertamos la flecha que apunta hacia arriba (Start Block) y luego la acción que realizara (en este caso pondremos un efecto de lluvia (pestaña draw) create effects) luego cerraremos el bloque de acciones con la flecha hacia abajo (End Block) y listo ya tenemos nuestro bloque de repetición. En la ventana de create effect, en type daremos el efecto de lluvia (rain), tamaño (size) médium (mediano) y si deseamos un color. Aplicamos y probamos el room. Sólo para práctica inserten el efecto sin las flechas de bloque o control y vean la diferencia. Ahora empezaremos con las acciones de colisión que puede tener el platillo volador. Primero daremos la colisión con el meteoro mediano, en acciones inicialmente colocaremos Jump to star (saltar al principio), que indicara que si nos choca el meteoro la nave retorna la inicio. Luego colocamos Set Lives y quitamos una vida (-1, relative), para finalizar con la creación de la instancia explosión, objeto que ya definimos que hará. Realizamos lo mismo para los otros meteoros y los planetas y cualquier enemigo que tengamos. Ahora nos planteamos que pasara si mi nave sale de la pantalla o del room, para esto insertamos el evento Other – Outside Room y aplicamos la acción Jump To Start, que indicara que al salir de la pantalla volverá al principio, también podemos indicar que pierda una vida, pero eso ya es decisión del programador del juego.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 70

Nos toca colocar las vidas y el puntaje en nuestra ventana superior. Para esto insertamos el evento Other – Room Star y como acciones Set Lives y colocamos el número de vidas que deseemos, luego Set Score y colocamos el valor de 0 y relative, para que empiece el juego en 0 y relative para que vaya sumando los puntajes. Para finalizar insertamos Score Caption y activamos las opciones que necesitemos ver. Todo esto ya lo realizamos en un anterior capítulo. La pregunta es que pasara cuando se terminen las vidas, para eso insertamos el evento other – No more lives y aplicamos las siguientes acciones, Show Highscore que mostrara una lista de las personas que jugaron y sus puntajes. Luego insertamos la acción End Game, que nos terminara el juego, posteriormente a poner el nombre en nuestra tabla de puntajes Nuestro juego está casi terminado, lo que nos falta es determinar con que tecla dispararemos (space) los láser y su programación, para hacer que los proyectiles salga con un intervalo de tiempo uno después de otro. Para esto crearemos el evento Key Press y elegiremos la tecla espacio (Space). Antes de empezar la programación debemos recordar que al principio definimos una variable, que llamamos disparo con un valor de 1 (recordemos que 0 es no y 1 es sí) al definir esta variable indicamos que disparo es igual a 1. Ahora nos toca evaluar este valor para que se realice una acción, en este caso un bloque de acciones, que nos permitirá realizar el disparo con un intervalo de tiempo, uno después de otro. Ya podemos ver en nuestro gráfico el programa de acciones terminado, ahora nos toca explicar cada una de las acciones que tiene el evento key press – space. Inicialmente definimos la acción Test variable, que nos permitirá evaluar la valides de nuestra variable (disparo). Aplicamos la acción test variable, y en sus opciones damos las siguientes instrucciones: Variable: Colocamos el mismo nombre que pusimos al principio del programa (disparo). Value: Acá colocaremos el valor 1, el mismo que en la definición de variable, al inicio del programa de acciones. Operation: Acá le indicamos la operación que valida nuestro valor, para continuar nuestro bloque de acciones. Para eso le damos Equal To, que nos pregunta si la variable es igual al valor que pusimos, en este caso es igual. Por consiguiente continuara con el bloque de acciones. Ahora debemos iniciar un bloque de acciones (Start Block), luego colocamos las acciones que tendrá nuestro bloque, en este caso Create Instance, que nos indicara que cree el objeto láser y colocamos la posición de nuestro laser, inicialmente este creara el láser o al medio de nuestro platillo volador o más arriba y lo correcto es que el láser salga del medio y de un borde, en el caso de mi ejemplo (esto cambia en relación a donde colocaron el platillo volador en el room) X: está en la posición 50 y Y: en la posición 20 y marcamos relative, para que cada vez que se presione la tecla espacio salga un proyectil (láser) Para ustedes deben ir cambiando los valores hasta que esté en el lugar correcto.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 A continuación insertamos Set variable donde tendremos dos valores: Variable: Donde colocaremos el nombre de nuestra variable antes definida, en mi caso la variable es disparo. Value: En valor le indicamos 0 que dirá a nuestro programa que el valor, antes definido como 1, cambie a 0, para que continúe nuestro bloque de acciones. Esto lo realizamos para colocar algo entre disparo y disparo, que en este caso será un tiempo de espacio entre cada proyectil. Así que aunque presionemos la tecla espacio varias veces los disparos saldrán con una pausa entre cada uno. Que es lo que haremos a continuación.

71

Insertamos la acción Set Alarm, recordemos que antes definimos el evento Alarm0, indicando en esta que su variable es disparo y su valor 0. En set Alarm tenemos 2 opciones: Number of steps: Acá nos pide un valor numérico, que indicara cuantos pasos debe haber en caso de no cumplirse la condición, para nuestro ejemplo colocaremos 15. In alarm no: En esta ventana buscaremos el mismo nombre de la alarma que colocamos en el evento Alarm, en nuestro caso Alarm 0. Que indicamos con esto, si la alarma no es 0 que de 15 pasos (steps) y como anteriormente en el evento Alarm 0 definimos la variable con un valor de 1, todo disparo saldrá después de 15 pasos, dando con esto un espacio entre cada disparo. Para terminar cerramos el bloque de programación (End block). Para finalizar el juego insertamos los eventos de Key press (para las cuatro direcciones Up=Arriba, Down=Abajo, Left=izquierda y Right=derecha, con una velocidad de 2 o más) y la acción de movimiento (rojo). Ahora podemos disfrutar de nuestro juego.

No debemos olvidar que el manejo de variables, sólo lo aprenderemos practicando y realizando cambios con el pensamiento de prueba y falla.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 72

Apuntes Toma nota de las aclaraciones o de lo que no entiendas. ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 73

Pr谩ctica en clase __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ _________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ ___________________________________________________________________________________________ Firmas ___________________________________________________________________________________________ _______________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________

Pr谩ctica para la casa __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ __________________________________________________________________________________________ ___________________________________________________________________________________________ Fecha: _________________________________________________________________________________________ ___________________________________________________________________________________________ Detalle: ___________________________________________________________________________________________ ________________________________________________________________________________________

U.E. Saint Germain

M贸dulo Programaci贸n de Juegos

Prof. Jorge N. Lazarte L.


Manual de Trabajo - Game Maker Pro 8.0 74 Índice por temas

Cambio de escenario, room o nivel ........................................26

Inserción de personajes. ........................................................... 1

Cambio de sprites con una acción ..........................................31

Inserción de premios que suman un puntaje .......................... 8

Compilar el juego para ser ejecutable ....................................32

Insertar personajes que se mueven solos. ............................... 8

Conocimientos básicos. ............................................................1

Juego de disparos ................................................................... 61

Creación de los saltos..............................................................57

Manejo de vidas ..................................................................... 21

Creación del room .....................................................................4

Personajes que se mueven con el mouse .............................. 17

Crear o editar sprites ..............................................................12

Programación del objeto que te sigue ................................... 42

Definir colisiones en personajes ...............................................5

Programación del personaje principal ..................................... 4

Desarrollo de un juego con un escenario grande ...................46

Resta de vidas hasta terminar el juego .................................. 22

Desarrollo de un juego con variables .....................................56

Rotación de objetos con mouse y movimiento con teclado.. 35

Desarrollo de un juego donde el enemigo dispara ................50

Tamaño del room ................................................................... 47

Disparar proyectiles que pueden matar a los enemigos ........29

Terminar el juego cuando se terminen nuestras vidas .......... 23

Hacer que un objeto siga a otro objeto ..................................42

Transformación de sprites a objetos ........................................ 2

Nota del autor: El presente manual es de uso y creación exclusiva para la Unidad Educativa Saint Germain – Colesol, queda terminantemente prohibido el uso o reproducción parcial o total sin la autorización del autor y de la Unidad Educativa Saint Germain – Colesol.

U.E. Saint Germain

Módulo Programación de Juegos

Prof. Jorge N. Lazarte L.


Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.