Introducción
Debido al poco tiempo que tenemos cada uno de los componentes, me gustaría tratar el tema de Tai-Kai, para lo que he redactado el siguiente informe, que representa una idea global y a la vez detallada, de cada una de las partes del juego.
Además, sera una especie de Brain Storm que tratara la forma en la que sera el juego. No es el oficial y por eso se puede tratar cualquier punto por separado. Según crean los miembros del grupo. La idea principal es hacer algo visible, y a partir de ello retocarlo, así que si tenéis alguna idea, procurad que sea simple, atractiva y que no implique un gran trabajo su incorporacion. Ya tendremos tiempo después de terminar esta parte de hacer modificaciones sobre el prototipo, e incorporar ideas.
De momento envío esto, aunque ya estoy realizando un documento que en cuanto este terminado os enviare. He previsto una etapa de pre-inicio, para dejar todas las cosas claras, y para que la gente que no sepa programar en Visual C++ y DirectX, aprenda.
La idea de este documento es dejar algo escrito, que se debata todo y que cuando llegue el día de ponerse a trabajar, cada uno sepa al dedillo lo que tiene que hacer sin necesidad de estar continuamente parando por problemas de que si esto no me gusta, o esto no me parece bien ... en otras palabras, este documento (una vez completado), sera la biblia de los programadores de Tai-Kai (y de diseñadores, aunque a estos les voy a dejar mas libertad, ya que es una parte a mi parecer creativa ... aunque se deberan adaptar en la parte del juego en sí a las exigencias de los programadores, no vaya a ser que se complique demasiado).
Si alguien quiere empezar a ver documentacion sobre Visual C++, DirectX y diferentes formatos de ficheros, puede consultar el apartado de Bibliografía, el cuál me interesaría que estuviese normalmente acutalizado tanto por referencias a libros, como a páginas de Internet, yo he puesto unas cuantas, si véis que falta alguna que puede ser de interés, decídmelo y lo añado.
Tipos de juego
[Version 1.0]
- Únicamente 1 jugador.
- Inicialmente, en esta versión, el objetivo sera conseguir llegar a hacer combatir dos luchadores entre si. O bien, el usuario contra el ordenador, o por otro lado, dos luchadores controlados ambos por ordenador (de esta forma
optimizaremos los luchadores manipulados por ordenador).
- Cada uno de los tipos de juegos podra desarrollarse en 3 resoluciones posibles, 320x480, 640x480 y 800x600.
[Versiones posteriores ... Brain Storm]
- Un luchador practicando contra otro manejado por ordenador.
- Un luchador practicando con el entrenamiento.
- Dos jugadores uno contra uno a un único combate.
- Dos o mas jugadores participando en el torneo.
- Poder elegir mas o menos de 7 luchadores controlados por ordenador y si se desea tambien se podra elegir los que queremos que participen entre los que existen definidos.
- Aumentar la resolucion del juego, 1024x768, etc ...
Tipos de luchadores
[Version 1.0]
- Los luchadores serán generados tridimensionalmente, y su cuerpo estará formado a base de puntos y caras triangulares.
- Existirán 4 tipos de luchadores. Todos distintos entre ellos. De ésta forma probaremos las rutinas que hagamos de mostrar personajes. Con cuatro iniciales nos aseguramos que el resto que generemos posteriormente se representarán correctamente en pantalla.
- Debido a que se deberá poder incorporar cualquier luchador únicamente con introducir sus datos, existirá una clase generar para representar a todos los luchadores (os mandaré todo el organigrama de clases en cuanto lo tenga terminado, comprended que es mas complejo que hacer este documento).
[Versiones posteriores ... Brain Storm]
- Generar nuevos personajes. Hacer una prueba individual con cada uno de ellos.
- Introducir nuevos atributos en la clase del luchador que haga que el cálculo de daños de golpes, recuperación, aprendizaje, etc ... en definita, que sea más real y humano.
Tipos de escenarios
[Version 1.0]
- El escenario donde se luchará siempre será igual, es decir, sólo habrá un fondo y una zona de combate en forma rectangular 3D, lo único que se modificará será el color o textura del fondo y el de la zona de lucha.
- El combate se verá desde una cámara que mostrará a ambos jugadores siempre de forma lateral, para lo que se tendrá que mover.
[Versiones posteriores ... Brain Storm]
- Una vez comprobado que la velocidad de cálculo es elevada, y que el escenario y el combate se lleva a cabo sin problemas (sin que se ralentice), se probará a añadir objetos propios de un gimnasio y se crearán varios tipos de escenarios distintos.
- Más vale no saturar el escenario en favor de una mayor rapidez en el cálculo de movimientos de luchadores.
- La cámara que muestra el combate podrá ser seleccionada desde un número de ellas por el luchador: lejos, media distancia, cerca, dinámica, estática, etc ..
Descripcion del combate
[Version 1.0]
- Lucharan dos guerreros, uno contra otro.
- Existirá un minuto como m&aactue;ximo por combate, es decir, mediante un contador de 60 segundos que aparecerá, inicialmente, como un display
en la parte superior central de la pantalla.
- Existirán dos indicadores de energía a la derecha e izquierda del contador de tiempo que representará las energías de ambos luchadores.
- Los indicadores bajaran en mayor o menor medida según el tipo de golpe recibido, el lugar al que se lanzó, la fuerza del contrincante, etc ...
Parámetros que formaran parte de los atributos del luchador.
- La batalla finalizará con alguna de las siguientes consecuencias: Que se agote el tiempo (victoria al que más energía le quede), que uno de los luchadores se quede sin energia, o que Se salga del tatami.
- En caso de que termine el tiempo y haya empate de energía, se volverá a disputar el combate.
[Versiones posteriores ... Brain Storm]
- Aumentar la energía de los luchadores, lentamente, si no han recibido ningún golpe por parte del contrincante. - Combates contra más de 1 luchador, con lo que se incorporaría el Tipo de juego de dos jugadores ambos contra dos luchadores de la máquina. Para este tipo de combate el código deberá estar muy optimizado, ya que se duplican los cálculos.
Descripcion de objetos 3D
[Version 1.0]
- Todos los objetos 3D deberán ser lo más simples posibles, a partir de formas planas triangulares.
- El único requisito inicial para los luchadores es que se les diferencie, piernas (con rodilla), brazos (con codo), cuerpo y cabeza.
- El formato de los objetos sera 3DS. Los colores deberán ser planos, es decir, rojo, verde, azul, etc ... Posteriormente se defenirá los posibles, ya que no se puede contemplar toda la gama de colores al entrar la posibilidad de sombras, claros, etc ...
[Versiones posteriores ... Brain Storm]
- Probar el aumentar el número de planos triangulares para definir los objetos. Siempre que se haya conseguido mostrar y mover la figura humana descrita anteriormente, se ampliará el número de triángulos de esta. Fijarse en la velocidad de cálculo.
- Generar un formato propio que evite información adicional de 3DS.
- Añadir la posibilidad de insertar cualquier tipo de gama de color en el escenario.
Descripcion de movimientos 3D
[Version 1.0]
- Se programara para teclado y joystick.
- A cada luchador le correspondera un tipo de movimientos.
- Se deberá generar un mapa de movimientos que se introducirá en un único fichero por jugador definido, es lógico que cada luchador tenga su conjunto de movimientos. Dicho mapa no podra modificarse en tiempo de juego.
[Versiones posteriores ... Brain Storm]
- Se incorporará en el modo torneo la capacidad de diseñar nuestros propios golpes. Este proceso puede hacerse de dos formas: primera, dejando al jugador que elija entre unos ya predefinidos (cuanto más nivel tenga el luchador, mayor n&uacite:mero de golpes se nos ofrecerán), segunda, haciendo un editor de movimientos (aunque esta opción es demasiado complicada para empezar).
- Entre combate y combate se pueden insertar entrenamientos, golpes a objetos, carrera, habilidad, ingenio, etc ... A mi parecer creo que podrían ser como juegos aparte, incluso se podría meter alguno de inteligencia, rapidez, etc ... Según terminemos estos juegos se nos daran puntos, a mayor número de puntos (acumulables en el torneo), mayor número de movimientos donde elegir.
- Cuando se seleccione un movimiento, se seleccionará también la sucesión de teclas (o movimientos de joystick) que hay que dar para activarlo.