Etiquetas

miércoles, 29 de agosto de 2012

Pacman!

En esta entrada explicare como "funciona" el juego Pacman... para esto utilizare un diagrama de arbol. Antes de comenzar a explicar, pondre una pequenia definicion de lo que es el PACMAN.

Pacman es un videojuego que aparecio aproximadamente en los anios 80's, fue un videojuego muy exitoso, ya que combinaba un formato humoristico y poco violento,
pero.. en que consiste el pacman?

Pues bien el pacman, como se puede apreciar en la imagen de arriba es un circulo amarillo, este aparece en distintos laberintos y debe comer todos los puntos que en el aparecen, este es el objetivo, dejar el laberinto limpio, para poder subir de nivel y poder aparecer en un nuevo laberinto. Aunque aqui no termina el juego ya que,  en cada nivel aparecen 4 fantasmas que recorren todo el laberinto para intentar comerse al pacman.

Bien esto es solo una breve explicacion para aquellos que no conocen el juego, para mas informacion vallan aqui.

Ahora si esta es mi explicacion:




1.Para comenzar me ubicare con imagenes, en este caso al inicio del juego, se debe tomar la decicion de a  donde ir, como vamos comenzando no hay peligro de perder, y tenemos dos opciones de movimiento.

Asi sera como nos ubicariamos en el diagrama, teniendo un nodo padre que es el inicio y nos muestra las dos posibles respuestas del juego, que se pueden tomar, las ramificaciones de este arbol se iran formando conforme se valla avanzando al objetivo, en este caso, devorar cada bolita y huir, para no perder ninguna vida.



2. Suponiendo que tomamos  el camiono a la derecha, en este siguiente paso se nos vuelven a presentar nuevamente las mismas opciones y una adicional que nos permitira regresar:

en el juego se veria masomenos asi:

3. Luego de seleccionar la direccion siguiente, se debe ir verificando que sea una solucion y que no me lleve a perder una vida, en este caso si mi siguiente movimiento es hacia arriba y nos topamos con lo siguiente:
nuestro algoritmo debera buscar un movimiento que me de una solucion y me permita seguir jugando y no morirme.

obtendriamos algo asi, en este caso el movimiento marcado con amarillo seria el que nos indica que hacia alla no debemos ir e iriamos acotando el camino, y el nodo marcado con rojo es el que se decidio tomar y que de nueva cuenta nos permite realizar mas movimientos.

Para cada movimiento se van realizando mas ramificaciones, pero cada vez que se valla a tomar una decicion debe verificarse primero si a donde se dirige no me llevara a la muerte, y se lograra conseguir la victoria, de no ser asi, estas ramificaciones deberan irse acotando.



Por ultimo les dejo el Link del juego :P por si les apetece jugar un rato xD 




Trabajo Grupal

En cuanto al trabjo grupal de elaborar un diagrama en donde se muestran todos los modulos que se tomaran en cuenta para la elaboracion del videojuego, mi aportacion fue crear el modelo del diagrama ademas de aniadir uno de los modulos en los que trabajare junto con algunos companieros de la clase.

Aqui anexo el link al diagrama:

Diagrama

Y tambien el link de la wiki, en donde se encuentran los equipos de trabajo:

jueves, 23 de agosto de 2012

Temas Selectos de IA- 2 Semana

Para esta semana mostrare una idea que tengo de como quedarian organizadas las tareas de cada uno de los equipos de trabajo, que se elaboraron anteriormente y su relacion entre ellos..

Mi diagrama seria el siguiente:


Desde mi punto de vista, en lo que refiere a las caracteristicas de los personajes y el diseno visual van de la mano ya que, dependiendo de lo que se quiera ver seran las caracteristicas.

En cuanto a equipamento se refiere, dependera de las caracteristicas de los personajes, ya que habra que ver como se manejaran las armaduras que use determinado personaje y si estas iran cambiando conforme el nivel del juego valla avanzando.

Un ejemplo de donde me gustaria basarme para la elaboracion del equipamento es el juego league of legends, en donde te va sugiriendo las armas que puedes ir utilizando en el transcurso del juego.


Lo mismo es aplicable para la musica, ya que habra que definir si esta ira cambiando conforme al nivel o dependiendo si se utilizaran distintos escenarios..





miércoles, 15 de agosto de 2012

Crear un videojuego?


En esta entrada pondre algunas posibles herramientas que nos pueden servir para el diseño y creación de videojuegos.

Empece por investigar en que lenguaje era posible esto y algunos de ellos son:
  • Python 
  • C++
entre otros, a estos podemos añadirles algunas API's para darle algunas mejoras a estos juegos.

Existen tambien las siguientes herramientas:

Unity

Unity es un ambiente de desarrollo integrado (IDE) para la creación de juegos 3D, video y otros contenidos interactivos tales como visualizaciones arquitectónicas en tiempo real. Los juegos producidos por Unity se pueden ejecutar en gran variedad de consolas y sistemas operativos tales como Windows, Mac, Xbox 360, PlayStation 3, Wii, iPhone/iPad, Android, Chrome, Flash y próximamente Linux.
Se puede decir que Unity es un ambiente de desarrollo de juegos que destaca por soportar múltiples plataformas para ejecutar los juegos creados, así como por la facilidad de uso y productividad de su editor.

Cocos2D

Cocos2d es un framework open source para crear juegos 2D. La versión original de cocos2d fue programada en Python, pero existen diversos ports a otros lenguajes y plataformas.


Entre las ventajas de cocos2d destacan las siguientes:
  • Fácil de usar. Su API es sencillo e incluye una gran variedad de ejemplos. Provee abstracciones de alto nivel para las tareas mas comunes.
  • Rápido. Cocos2d utiliza las mejores prácticas de OpenGL ES y estructuras de datos optimizadas.
  • Es software libre. Cocos2d está bajo licencia MIT, una licencia muy flexible que permite utilizarlo tanto para hacer juegos de código abierto como cerrado. Además puedes extenderlo e integrarlo con bibliotecas de terceros.
  • Comunidad activa. La comunidad de cocos2d es grande y activa, en los foros típicamente puedes obtener respuestas rápidamente.
Cocos2d para iOS utiliza las herramientas y lenguajes de esta plataforma (Objective-C, XCode), lo cual puede ser una ventaja si ya estás familiarizado con ellos o una desventaja si no te son familiares. Otra desventaja de Cocos2d es que a diferencia de las herramientas comerciales como Unity o Unreal, no posee un editor gráfico para animaciones o escenas.




Ref: