• No se han encontrado resultados

Diseño e implementación de un "Bomberman" mediante XNA 3.1 aplicando inteligencia artificial

N/A
N/A
Protected

Academic year: 2021

Share "Diseño e implementación de un "Bomberman" mediante XNA 3.1 aplicando inteligencia artificial"

Copied!
33
0
0

Texto completo

(1)

Universidad Carlos III de Madrid

Repositorio institucional e-Archivo http://e-archivo.uc3m.es

Trabajos académicos Proyectos Fin de Carrera

2010-04

Diseño e implementación de un

"Bomberman" mediante XNA 3.1

aplicando inteligencia artificial

Martínez Navarro, Juan Ramón

http://hdl.handle.net/10016/10504

(2)

Diseño e implementación de un

“Bomberman” mediante XNA 3.1

aplicando inteligencia artificial

Autor: Juan Ramón Martínez Navarro

Tutor: Juan Peralta Donate

Universidad Carlos III de Madrid Escuela Politécnica Superior

(3)

ÍNDICE

ƒ

Introducción

ƒ

Objetivos

ƒ

Bomberman

ƒ

XNA

ƒ

Requisitos y funcionalidades

ƒ

Diseño y clases

ƒ

Conclusiones

ƒ

Líneas futuras

Demo

(4)

INTRODUCCIÓN

ƒ Los videojuegos son un mercado emergente

• Desarrollo tecnológico • Beneficios

• Crecimiento de mercado • Evolución

ƒ El modelo de negocio evoluciona

• Evitando grandes crisis • Nuevo modelo

◊ Juegos arcade, casuales, indie, bajo demanda ◊ Plataformas de juego online

◊ Plataforma de entretenimiento: cine, música Nuevas posibilidades para desarrolladores amateur

(5)

OBJETIVOS

ƒ Principales

• Clon de “Bomberman”

• Visual Studio .NET y XNA 3.1 • Aplicar inteligencia artificial

• Inclusión de un generador de niveles ƒ Secundarios y personales

• Desarrollo de un videojuego completo • Aprendizaje

(6)

BOMBERMAN I

ƒ 1983 primera versión llamada “Eric and the Floaters” • Publicado por Hudson

• Muy sencillo en diseño y jugabilidad ƒ 1985 primera versión con el diseño actual

• Rediseño del personaje

• Inclusión de nuevos enemigos • Inclusión de Power Ups

• Mejora de jugabilidad • Modo Battle

ƒ Versiones hasta hoy día

(7)

BOMBERMAN II

ƒ Aspectos básicos del juego

• Laberinto cerrado de dimensiones 11x13 casillas • Formado por bloques rompibles e irrompibles • Los bloques irrompibles tienen posiciones fijas

• Los bloques rompibles tiene posiciones aleatorias • Bombas

• Power Ups • Enemigos

ƒ Mecánica del juego • Tiempo limitado • Eliminar enemigos • Buscar salida

(8)

XNA

ƒ Alternativas a XNA

• Potentes y avanzados • Limitaciones

• Sólo código VS Sólo interfaz • Dependencias

ƒ XNA

• Sobre .NET Framework 2.0 • Entorno y SDK’s gratuitos • Programación

• Múltiples funciones • Plataformas finales

(9)

REQUISITOS Y FUNCIONALIDADES

ƒ Mantener mecánica del juego original ƒ Aplicar IA

ƒ Generar niveles ƒ Incluir Power Ups

ƒ Configuración del juego

• Dificultad • Controles

• Música y efectos de sonido

(10)

DISEÑO Y CLASES I

ƒ Diseño y clases: cuatro elementos principales • Pantallas

◊ ScreenManager, InputState y GameScreen • Jugador

◊ Sprite, Peon y Jugador • Enemigos

◊ Sprite, Peon, Enemigo y Jefe • Niveles

(11)

DISEÑO Y CLASES II

ƒ Pantallas

• ScreenManager

• Varios tipos de pantalla según la funcionalidad ◊ MenuScreen

◊ LoadingScreen

◊ BackgroundScreen ◊ GameplayScreen

(12)

DISEÑO Y CLASES III

ƒ Jugador

• Respuesta a los controles

◊ Teclado, mando XBOX 360 y Zune • Animación de los desplazamientos

◊ Sprites 2D

• Control y detección de colisiones ◊ Básica y avanzada

(13)

DISEÑO Y CLASES IV

ƒ Detección de colisiones de jugador

• Aplicación de métodos lógico y físico ◊ Lógico

◊ Físico ◊ !!Errores¡¡

• Depuración del método

◊ Detección por píxel

◊ No refleja la mecánica de los “Bomberman” originales • Nueva implementación

◊ Colisión básica

(14)

DISEÑO Y CLASES V

ƒ Enemigo

• Inteligencia Artificial

◊ Diagramas de estados

◊ Tres tipos de enemigos básicos y un enemigo final • Estructura similar a la de jugador

◊ Animación ◊ Colisiones

• Comportamiento

(15)

DISEÑO Y CLASES VI

ƒ Niveles

• Agrupados en mapas

◊ Mismas características visuales • Generados de forma automática

◊ A partir de matrices de códigos

Posición de bloques rompibles

Posición de bloques irrompibles

Posición jugador

Posición aleatoria enemigos

(16)

DISEÑO Y CLASES VII

ƒ Elementos adicionales • Power Ups ◊ Bomb Up ◊ Remote Bomb ◊ Fire Up ◊ Heart • Cámara ◊ Camera2D • Nombre de usuario ◊ Teclado virtual

(17)

CONCLUSIONES

ƒ Acierto en la selección de XNA como base • Curva de aprendizaje

• Obtención de resultados • Comunidad de usuarios

ƒ Clon de “Bomberman” fiel al original ƒ Inclusión de IA

ƒ Generación de niveles

(18)

LÍNEAS FUTURAS

ƒ Inclusión del modo de juego Battle

ƒ Inclusión de modo de juego online ƒ Permitir guardar la partida

ƒ Desbloquear mapas y niveles con passwords ƒ Inclusión de un editor gráfico de niveles

(19)
(20)
(21)
(22)
(23)
(24)
(25)
(26)
(27)
(28)
(29)
(30)
(31)
(32)
(33)

Referencias

Documento similar

Las personas solicitantes deberán incluir en la solicitud a un investigador tutor, que deberá formar parte de un grupo de investigación. Se entiende por investigador tutor la

Para generar estas se˜ nales de envolvente, este m´ odulo necesita ´ unicamente la informa- ci´ on de los momentos en los que comienza la nota y termina, es decir, el contenido de

Lo más característico es la aparición de feldespatos alcalinos y alcalino térreos de tamaño centimétrico y cristales alotriomorfos de cuarzo, a menudo en agregados policristalinos,

El objetivo de este escenario, es configurar una sesión BGP entre dos routers de diferente sistema autónomo, es decir, diferente ASN, este tipo de sesiones se establecen entre

Como hemos visto la búsqueda de datos se ha basado tradicionalmente en la utiliza- ción de keywords que buscan en la descripción de los datos o se busca teniendo en cuen- ta los

Que en la reumon de la Comisión de Gestión Interna, Delegada del Consejo Social, celebrada el día 17 de marzo de 2011 , con quórum bastante para deliberar y

[r]

scheme with correction has been proven as accurate as the second order scheme, a double simulation with the standard anisotropic model with