Este fue mi proyecto de final de grado, con la calificación de 10. Dinoland es un juego de navegador multijugador que trata sobre la gestión de un parque de dinosaurios, donde el usuario deberá administrar los recursos, hacer expediciones, interactuar con otros usuarios para avanzar en el juego.

El desarrollo del proyecto duró 6 meses y fue ejecutado por un equipo de 5 personas. El objetivo principal, a parte de hacer un juego de navegador, era investigar y utilizar nuevas tecnologías de programación. Más adelante, os explicaré con más detalles cuáles son.

El desarrollo se basó en una metodología de trabajo SCRUM, dividiendo en «historias verticales» o «Sprints» las diferentes etapas de desarrollo y apoyándonos de herramientas productivas de desarrollo en paralelo, tales como el control de versiones en Git o la gestión de tareas en Trello.

El proyecto terminado es un embrión de lo que podría ser un producto comercial a largo plazo. La idea era construir una aplicación web en forma de juego que tuviera diferentes componentes, no solo el del juego. Para ello, cuenta con un sistema de usuarios completo con un componentes social, donde los jugadores pueden interactuar entre ellos mediante chats, muros públicos, ránkings, alianzas, clanes, etc.

Además, el juego incluye múltiples funcionalidades y mecánicas, tales como niveles de construcción, investigaciones, expediciones y mucho más.

Las tecnologías utilizadas para este proyecto son tecnologías punteras y emergentes en el mundo del desarrollo. Para el motor gráfico del juego, se ha usado Phaser. un framework de HTML5 que trabaja con el elemento Canvas.

Como corazón de la aplicación, se ha usado Meteor como framework full-stack, basándose en el modelo-vista-controlador. Para la gestión de los datos, se ha usado MongoDB, una base de datos orientada a objetos, tratando los datos en archivos JSON. Por último, el juego cuenta con una interfaz en el cliente basada en HTML5, CSS3 y JavaScript, juntamente con Canvas.

github.com/dinolandgame/Dinoland