Desarrollando un motor propio

El Sábado 18 de Octubre de 2008, AgeR (yo!) dará una charla titulada “Desarrollando un motor propio”. La charla tendrá lugar a partir de las 10:30 horas en la Sala de Grados I de la Casa del Alumno en la Universidad Politécnica de Valencia.

La charla, destinada a aquellos que quieran iniciarse en el desarrollo de motores a nivel de aficionado, repasa los pasos recomendados a seguir para obtener un motor estable y sencillo de usar, destinado al prototipado rápido y la realización de pequeños videojuegos.

Podéis acceder a la presentación desde el siguiente enlace: Descargar.

Comments

[CP2008] Post-Deadline: Y fin

He aquí el descargable del juego (Zip, 8Mb).

La memoria justificativa (PDF, 0.9Mb).

Y una pequeña lista de to-dos importantes que trataremos de implementar lo antes posible:

  • Corregir bug de flipeado de texturas en el motor.
  • Adición de información de tiempo (contador de segundos descendente desde 60 en Cooperativo y contador de minutos ascendente desde 0 en Panic Mode).
  • Infomación sobre el nivel alcanzado al superar cada fase en Cooperativo.
  • Adición de gráficos adicionales (nave del jugador) en la información de definición de teclado, jugador ganador u opciones de menú.
  • Devolver la pantalla de Game Over y dejar la de participación en el concurso para la salida final (pero sólo si ganamos :P).
  • Refactoría de todo el tema de sonido.
  • Posicionamiento 3D de los efectos de sonido.
  • Autoiluminación y partículas en los enemigos.
  • Otros estilos de IA para los enemigos.
  • Stencil shadows.
  • Motion Blur.
  • Glow.
  • Port a DS o móviles táctiles.
  • Dominar el mundo.

¡Gracias por vuestro apoyo! (O no)

Comments

[CP2008] Día 3: Dos dúos duales

Terminó la deadline, y sólo falta por completar algo de burocracia (como este mismo blog) con el resto de información del desarrollo de hoy.

Al final se han quedado colgadas ciertas características (como el contador de tiempo o la pantalla de información de cuántos niveles has pasado), que podrían haber estado perfectamente con medio día de desarrollo más. Lo dejamos como deberes.

También hemos tenido que quitar la pantalla de “Game Over” y sustituirla por la requerida por las bases acerca de la presentación de este trabajo en el concurso. Se supone que se debería mostrar en la última fase, pero nuestro juego tiene virtualmente infinitas fases…

En definitiva, aquí van unas cuantas capturas acerca de algunas de las herramientas usadas en el videojuego (a falta de una captura de Inkscape para el preliminar vectorial mostrado hace un par de días):

Captura del programa de edición de sonidos libre 'Audacity'

Captura del programa de edición de sonidos libre 'Audacity'

Captura del programa de edición de imágenes libre 'The Gimp'

Captura del programa de edición de imágenes libre 'The Gimp'

Captura de pantalla del programa gratuito de composición musical 'Skale Tracker'

Captura de pantalla del programa gratuito de composición musical 'Skale Tracker'

Y el aspecto final:

Cuarta captura de Dual Zone

Cuarta captura de Dual Zone

Quinta captura del Dual Zone

Quinta captura del Dual Zone

Aspecto final de los menús (I)

Aspecto final de los menús (I)

Aspecto final de los menús (II)

Aspecto final de los menús (II)

Aspecto final de los menús (III)

Aspecto final de los menús (III)

Como últimos apuntes, cabe destacar que todos los recursos gráficos y de código han sido creados íntegramente por nosotros, y a excepción de los instrumentos usados en las composiciones, todo el tema de audio es asimismo nuestro. Una última nota “friki”: dado que el entorno de programación usado por AgeR (el programador principal) era Windows y el mío (programador de apoyo) era Ubuntu, todo el sistema de menús ha sido programado de oídas (sin compilar ni una sola vez) durante varias horas, con el fantástico editor de textos de KDE, Kate. Apenas ha habido que hacerle retoques para que compilara con éxito.

Como colofón, espero que os guste el juego y os resulte al menos tan divertido como a nosotros. Estamos completamente abiertos a críticas, sugerencias y cumplidos, pero si nos aportáis algo en forma de premio en metálico, aún mejor.

En el siguiente post, el descargable del juego, y el to-do.

Comments

[CP 2008] Día 2: 2.0 ¿Y mueren?

No, aún no mueren (al menos, los enemigos), pero parece que se vuelve a encaminar hacia la senda adecuada. Los personajes sí tienen ya un número de vidas que se decrementan cuando se dan las condiciones ya descritas.

Tercera captura de Dual Zone

Tercera captura de Dual Zone

En la captura anterior, los enemigos eran naves replicadas. Los enemigos finales serán las siguientes extrañas formas:

Enemigo a las puertas interdimensionales

Enemigo a las puertas interdimensionales

En el to-do: terminar el modo de juego “Panic mode” (que servirá como base para el modo cooperativo normal), terminar el sistema de menús del juego, crear los efectos de sonido pertinentes, poner cera y pulir cera. Quedan menos de 24 horas…

Comments (1)

[CP 2008] Día 2: Se reproducen…

La estrella de la noche fue un extraño bug que surgió tras un desafortunado apagón en nuestra zona. Ahora funciona, ahora ya no funciona. Estuvimos un rato largo tratando de encontrar al fatídico culpable, con total fracaso, y decidimos irnos a dormir, con total éxito.

Aparte de esto, por la tarde ya teníamos un sistema de colisión contra partículas decente (el mismo sistema en el que ha surgido el bug por la noche), así que poco más nos hace falta para tener listo el modo de juego “Deathmatch”. Hemos decidido que, aparte del modo cooperativo (el ya mencionado en el post anterior), también dejaremos un modo de juego típico “Tron”, y un modo survival “Panic Mode”, en el que volvemos al modo cooperativo pero con una dosis ingente de enemigos a los que sobrevivir.

También hemos renunciado a los movimientos de cámara, que podían resultar mareantes para dos jugadores, y a la complicación de reproducir una animación de desplegado y plegado de las naves antes de comenzar a emitir partículas o justo después de emitirlas, respectivamente. Ahora la nave está continuamente en un loop de plegado y desplegado. En cualquier caso, con la cámara actual la distancia es tal que no se aprecia animación alguna, así que…

No hay ningún avance gráfico significativo que mostrar, así que dejamos la actualización de imagen hasta el próximo reporte, probablemente esta tarde.

Comments

[CP 2008] Día 1: Los problemas crecen

Al término del reporte del primer día, hay pocos progresos que mostrar. Después de parte de la mañana y de la tarde perdidos en encontrar y corregir un par de bugs relacionados con el movimiento de los personajes y la carga de sus animaciones, finalmente estamos recuperando el control del volante y avanzando de nuevo en la dirección correcta.

Las actualizaciones básicamente consisten en la exportación de los modelos al motor (y su adaptación y arreglos), y en la creación de los grafismos de parte de los textos del juego. Un par de capturas del estado de la nación esta mañana y hace cinco minutos:

Primera captura del Dual Zone

Primera captura del Dual Zone

Segunda captura del Dual Zone

Segunda captura del Dual Zone

El próximo paso… ¡enemigos!

Comments

[CP 2008] Segundos pasos con el proyecto

Empecemos por el principio, y avancemos desde ahí.

Después de descartar hacer un juego con amor, agua y cooperativo (en el que dos cupidos debían lanzar sus flechas a las parejas de enamorados que pasean en barcas por típicos riachuelos), debido a un ataque agudo de vómito de AgeR, decidimos encaminarnos por los temas ya indicados.

El título provisional del juego, WaterFire, hacía referencia a las dos entidades que podemos manejar (un ser-nave-entidad que genera agua, y otro que genera fuego) en un terreno-coliseo-arena de reducidas dimensiones en el que deberemos defender (durante un minuto por fase) a nuestro compañero de otros seres-naves-entidades específicamente diseñadas para hacer daño sólo a un determinado oponente.

La cosa se complica cuando, al movernos, dejamos una estela de nuestro material esencial. La nave de fuego no tolera bien el agua, y viceversa. Por lo tanto, una buena coordinación y entendimiento será esencial para soportar el embate constante, aleatorio y cada vez más acusado de dichas entidades.

El objetivo final es permanecer con vida durante todos los rounds del juego.

El título del juego no terminó de gustarle a AgeR, que propuso finalmente “Dual Zone”, tomando la idea de los opuestos complementarios.

Algo del arte creado para la ocasión:

Portada de Dual Zone

Portada de Dual Zone

Captura de la creación del ente jugador

Captura de la creación del ente jugador de agua

Boceto de idea para la arena

Boceto de idea para la arena

Textura final para el suelo de la arena

Textura final para el suelo de la arena

Aquí una prueba de vídeo de la nave de agua: prueba_pliegue_despliegue_azul_xvid

Y, finalmente, un par de temas musicales (el del menú y el del juego), compuestos para la ocasión con el Sk@le Tracker:

Dual Zone Intro Theme

Dual Zone Main Theme

De momento, esto es todo. Esta noche, la siguiente actualización. Stay tunned!

Comments

[CP 2008] Primeros pasos del proyecto

Estamos en la Campus Party de Valencia, compitiendo en el concurso de desarrollo rápido de videojuegos en 72 horas. Entre las 8 temáticas disponibles, hemos elegido las 3 siguientes:

  • Agua
  • Cooperativo
  • Aleatoriedad

El juego está siendo desarrollado con nuestro motor, NaraEngine. En un primer momento, ibamos a hacer el juego con la nueva versión del motor, aunque finalmente lo hemos descartado ya que todavía está verde en determinados aspectos que necesitamos para el proyecto (sistemas de partículas, iluminación…).

En breve, seguro que Mars os ofrece más info y las primeras imágenes del proyecto.

Comments