Mostrando entradas con la etiqueta game. Mostrar todas las entradas
Mostrando entradas con la etiqueta game. Mostrar todas las entradas

miércoles, 21 de enero de 2015

Publicado “Ant” para plataformas android, minijuego basado en el framework cocos2d-x.

Ant es un pequeño juego que se acaba de publicar para plataformas android >= 2.3, la idea es bastante sencilla, tienes un grupo de hormigas moviéndose en la pantalla que debes matarlas, tienes dos modos de hacerlo, el primero es por tiempo, ver en 60 segundos cuantas hormigas puedes matar y el segundo modo es ver en que tiempo puedes matar una determinada cantidad de hormigas. La aplicación puede ser descargada desde la tienda de google, aquí te dejo unas capturas de la misma:

Es tan sencillo de jugar como de implementar(y es aquí donde entra la información relevante para ti si eres desarrollador de software), de hecho el único punto que quiero comentar es la manera en que se mueven las hormigas, se ha hecho usando algo de inteligencia artificial muy básico, se conoce como Agentes Autónomos, específicamente comportamientos guiados o Steering Behavior ya que no estoy seguro como es la traducción, pero independiente del término en español tendrás una idea bien clara de a que se refiere cuando acabes de leer este post.
Hay varias definiciones de Agentes Autónomos, yo te comparto la que mejor acepto:
Un agente autónomo es un sistema situado dentro de un entorno (del cual forma parte) al cual puede percibir  y sobre el cual puede actuar, durante el tiempo, en búsqueda de sus propios objetivos y sospechar como serán los efectos que percibirá en el futuro.

Por ejemplo podrías diseñar un agente autónomo que se comporte como un conejo y otro como un zorro, en este caso el conejo podría “percibir” el zorro y de forma autónoma comportarse para evadirlo, mientras que si el zorro “percibe” el conejo se comportaría de forma autónoma para perseguirlo, y este comportamiento autónomo debería suceder sin que el programador tenga que intervenir posteriormente en alguna forma.
El movimiento de un agente autónomo puede ser descompuesto hasta en tres capas:
  1. Selección de la Acción: Este es el punto en el que el agente selecciona sus objetivos y un plan a seguir para lograrlos, es como ...ir aquí... y hacer A ,B y por último C.
  2. Guiado: Este punto es donde se calculan las trayectorias deseadas para cumplir los objetivos y siguiendo el plan en la etapa anterior. El comportamiento guiado es la implementación de esto que se enuncia. Este produce una “fuerza guía” que dice la dirección en que debe moverse y que tan rápido debe estar en el lugar de destino.
  3. Locomoción: La capa inferior, Locomoción, los aspectos mecánicos del movimiento de un agente. Es la definición exacta de como viajar de A hasta B. Por ejemplo si usted implementa la mecánica para mover un camello, un tanque y un goldfish y les da un comando para hacer un mismo viaje, ellos podrían(y muy probablemente lo hagan) usar diferentes procedimientos mecánicos para alcanzar su objetivo aún cuando este es el mismo, …hacer el viaje indicado con el comando... La separación de esta capa de la anterior(guiado) es lo que hace posible, con pequeñas modificaciones tener un mismo guiado con locomoción totalmente diferente.
El algoritmo seleccionado para representar el movimiento de las hormigas es un Wander(vagabundear), el cual está diseñado para dar la impresión de que el agente se mueve de forma aleatoria alrededor de su entorno. La solución de Craig Reynold consiste proyectar un circulo frente al vehículo (libro al final) y avanzar hacia un punto contenido en el perímetro (circunferencia) creado un movimiento variable sin movimientos bruscos (temblor). Este método puede ser utilizado para producir un amplio rango de movimientos aleatorios, desde cambios ondulados y suaves hasta alocados movimientos típicos de un salón de baile un tanto remolinado y lleno de piruetas, solo dependiendo de el tamaño del círculo, la distancia hasta el vehículo y la velocidad con que te mueves hacia ese punto. La siguiente imagen puede ser de ayuda para entender la idea.


NOTA: Estas ideas se han tomado del libro Programming Game AI by Example by Mat Buckland, a las cuales les he hecho pequeñas modificaciones, o sea, cualquier error introducido es mi único “aporte”.

La aplicación la puedes decargar para android >= 2.3 desde Google Play


Saving Las Vegas: videojuego basado en el framework cocos2d-x para plataformas Android >= 2.3.




Breve descripción:
Las Vegas está siendo atacada por una lluvia de meteoritos. El objetivo  principal del juego es proteger la ciudad de la destrucción. Deberás evitar la caída de los asteroides detonando bombas en el cielo para destruirlos.
La puntuación final será determinada por:
-el numero de asteroides destruidos.
-la precisión en el uso de las bombas.
-el tiempo de supervivencia, medido en días.

¿Cómo jugar?
Las primeras veces que juegues, se mostrarán algunas indicaciones que te  ayudarán a entender cómo obtener más armas y cómo usarlas. El juego se irá poniendo más difícil al pasar el tiempo pero tendrás mejores armas que te ayudarán a sobrevivir.

Este videojuego ha sido desarrollado por un pequeño equipo del que formo parte. Se usó c++11, el framework cocos2d-x(3.2), inkscape para la imágenes, y lmms para el audio. La idea original proviene del libro Cocos2d-x by Example Beginner's Guide de RogerEngelbert, procedimiento totalmente legal(http://www.copyright.gov/fls/fl108.html)

Categoría: Arcade → Aventura.

La aplicación para Android(>=2.3) podrás descargarla desde Google Play.