Postmortem Jaguar

Sé que Jaguar es un proyecto viejo, pero quiero compartir mi experiencia pues fue el primer juego en forma en el que tuve participación. Este juego le pertenece a la empresa donde estaba trabajando o a Square Enix (la verdad ya no supe quien se quedó los derechos al final) así que ya no está disponible en línea. Lo único que queda es este video:

¿Qué fue Jaguar?

Jaguar fue el proyecto con el que ganamos la segunda final del Latin America Game Contest 2012.
Es un juego de aventuras y plataformas en 3D, donde tomas el control del Guerrero Jaguar el cual debe regresar del inframundo a defender su aldea de los invasores. En el camino debe recuperar su traje, resolver los diferentes acertijos y vencer al guardián del Mictlán para poder regresar al mundo de los vivos.
Es un juego muy corto de apenas tres niveles, sin embargo cuenta con varios cinematics y unos puzzles que le dan muy buena dinámica al juego.
Nos tomó alrededor de dos meses de tiempo completo a las cinco personas que estuvimos involucradas desde el principio, una vez que pasamos a la final se nos unieron otras dos personas para darle los detalles finales y hacer los videos de promoción.
Dicha convocatoria nos cayó como anillo al dedo pues el proyecto que íbamos a desarrollar para una instancia del gobierno fue cancelado y tanto Jorge (que era el responsable del 3D) como yo (responsable de la programación en Unity) nos quedamos sin proyecto principal; se puede decir que Jaguar nos salvó la chamba, sobre todo a mi.
En lo que se refiere a la tecnología utilizada, se usó Unity como engine, las gráficas fueron dibujadas en Photoshop e Illustrator, el modelado se realizó en Modo y las animaciones en Maya, por último el audio se editó en Audition.
Ahora sí, dejemos la promoción y pasemos al postmortem.

Lo que hicimos bien

1. Conocer nuestras posibilidades y limitaciones
En un principio sólo Jorge y yo éramos responsables del proyecto, además teníamos únicamente dos meses para terminarlo. Sabíamos que podíamos hacer algo bueno con los recursos que contábamos, pero que tampoco podíamos hacer un Zelda o un Final Fantasy. Revisamos las herramientas y nuestros conocimientos en los mismos. Pensamos que juego nos gustaría hacer y decidimos hacer uno en 3D con tres niveles nada más, un único tipo de enemigo y un gran jefe final. Posteriormente se nos unieron Rodrigo con el 2D, Hiram con la música y Carlos con la administración del proyecto.

2. Libertad creativa
La empresa donde estábamos tenía como negocio principal el desarrollo de cursos educativos, pero para este proyecto teníamos la libertad total de hacer lo que quisiéramos, no teníamos que dar justificaciones de por qué el juego era educativo, ni de revisarlo con nadie, prácticamente el juego quedó intacto de lo que habíamos planeado y queríamos hacer desde un principio. Es muy diferente cuando tienes que forzar un juego a un tema específico que muchas veces no tiene nada que ver a cuando haces el juego que tú planeaste.

3. Motivación
La mesa estaba puesta. Estábamos trabajando en el proyecto que queríamos, haciendo las funciones y animaciones que se nos ocurrían y a pesar de estos detalles extras íbamos respetando el calendario que nos habíamos propuesto. Además recibíamos nuestro sueldo normal. Conforme el juego fue tomando forma nos emocionamos cada vez más con lo que veíamos, nuestro Jaguar caminaba y podía golpear enemigos, las gráficas se veían muy bien, los controles respondían bien y aunque sí tuvimos algunas dificultades técnicas, éstas fueron mínimas comparadas con los avances que teníamos. Además de todo esto, para esos días la empresa era una startup, el ambiente era muy relajado… demasiado relajado de hecho, el café era muy bueno y estábamos en La Roma donde siempre había algo bueno para comer. La moral del equipo fue muy buena durante todo el proyecto y eso se notó en el producto final.

4. Tener un excelente equipo
Cuando las personas correctas se juntan pasan cosas grandiosas. El estilo de dibujo de Rodrigo se notó en las gráficas que tuvo el juego; la experiencia y la habilidad de Jorge con el modelado y la animación hicieron posible añadir animatics al juego; la música estuvo a la altura del mismo e incluso grabamos voces para los animatics y los efectos del juego; la agenda del desarrollo se cumplió pues la planeación estaba bien hecha; la programación seguía las buenas prácticas desde los nombres hasta el comportamiento e implementación y las versiones estaban bien documentadas. Cada quien dió lo mejor de sí y eso nos permitió trabajar en equipo teniendo la misma meta en mente.

5. Tener una metodología de trabajo
Aunque Jaguar era un proyecto “chico” utilizamos Scrum para desarrollarlo. Esto nos fue muy útil pues al utilizar los sprints de forma correcta no nos atrasamos con los objetivos del mismo e incluso nos dió tiempo de añadir muchos detalles como los animatics, las voces, las partículas y los efectos de la cámara. Sin una metodología de trabajo es muy probable que no hubiéramos acabado a tiempo o que nos hubiéramos enfocado en una sola parte del juego y descuidado otras partes del desarrollo.

6. Inspirarnos en los mejores
Guardando todas las proporciones, decidimos tomar lo que más nos gustaba de los juegos que admirábamos. De esta forma las primeras dos escenas estaban inspiradas en Mario 64 y Ocarina of Time. La escena donde eres atacado por un montón de enemigos al mismo tiempo fue inspirada en God of War y el jefe final era el clásico jefe por etapas de The Legend of Zelda. Los puzzles fueron inspirados en los acertijos de Bioshock cuando debes abrir una puerta hackeandola. Las partículas y algunos efectos los quisimos copiar del Final Fantasy XIII que andaba jugando por esos días.
Además el tutorial salió de un taller que James Portnow dio en Devhr en su edición 2012 y dónde explicó el primer mundo del Mario original y los primeros minutos de un juego de NES llamado Gun Smoke.

¿Bueno o malo?

1. No hacerlo para móvil
Una vez que terminó el concurso, quedó la sensación de que si hubiéramos hecho el juego para móvil, tal vez pudimos haber estado en la primer final y haber ganado allá, pues todos los juegos de la primer final eran para dispositivos móviles. Realmente nunca lo sabremos y no es algo que me quite el sueño.
Por otra parte no teníamos nada de experiencia en desarrollo para plataformas móviles, la programación estaba en UnityScript y no tenía el #pragma strict en todos los scripts, los modelos, animaciones, texturas, efectos nunca se hicieron pensando en móvil. Por eso fue que nos concentramos en hacerlo para PC pues ahí sí podíamos defendernos al tener algo de experiencia. Yo creo que está decisión fue la correcta, más si tomamos en cuenta el tiempo y los recursos limitados que teníamos.

2. El juego era algo corto
Viéndolo hoy, siento que el juego es demasiado corto, ya teníamos todos los assets, así que pudimos haber hecho más niveles sin mucho problema, técnicamente sólo había que diseñar las nuevas escenas y acomodar algunos enemigos y al Jaguar. Aunque viéndolo desde otro punto de vista, preferimos tener algo bien hecho aunque fueran únicamente tres niveles y un jefe. Tal vez si hubiera sido más largo se hubiera vuelto tedioso y nadie hubiera llegado a ver al gran jefe final.

Lo que hicimos mal o pudimos haber hecho mejor

1. No respetar las escalas de Unity
Si son nuevos en Unity haganme caso, respeten la escala de Unity, una unidad de Unity es equivalente a un metro de la vida real. Nosotros no lo hicimos y tuvimos un buen de problemas que salieron hasta la etapa final, los colliders no funcionaban en todos los casos pues las velocidades eran altísimas. Tuvimos que utilizar Raycast y algunas paredes invisibles para solucionar los problemas.

2. QA al último momento
Aunque íbamos conforme al calendario, la parte de QA la dejamos muy al último, había algunos bugs medios y menores que ya no nos dio tiempo de corregir. Las versiones se probaban periódicamente y estaban guardadas en el repositorio, así pues, a esta etapa no llegó ningún bug grave, de haber sido así no sé si nos hubiera dado tiempo de arreglarlo.

3. El control…
Esta fue una de las discusiones que aparecieron al final del desarrollo. Originalmente te movías con WASD como siempre, brincabas con el botón derecho del mouse o con la barra espaciadora y golpeabas con el clic normal. Después alguien vino a meter ruido diciendo que no quería que usaramos el mouse para nada; remapear los controles no fue un problema, el problema fue que la gente no se acomodaba a jugar con las flechas y los teclados no sabían que hacer cuando el usuario apretaba muchas teclas a la vez, esta es una limitación de hardware según investigué y depende de la calidad del teclado y la forma en que estén conectadas las teclas.
El control en sí y el día perdido en el cambio, las pruebas y las discusiones no fueron el verdadero problema, lo preocupante fue que era una señal de que ya iban a empezar a meter el desorden en el proyecto.

4. Ya se armó el …. relajo
De un día para otro siguieron esos cambios de la nada. Todos estábamos felices con las voces de los personajes, pero a la misma persona del control se le ocurrió lo del teclado no le parecieron buenas y se perdió algo de tiempo en cambiarlas. Esa misma persona quiso que los textos no los pudieras quitar y que además duraran casi 30 segundos en pantalla.
Las cosas que más criticaron del proyecto fueron las voces y esos textos que no se podían saltar, además de que el control era incómodo. Afortunadamente todo esto pasó muy al final del desarrollo, así que no se pudieron implementar más ideas y cambios como esos gracias a que llegó la fecha de entrega.

Conclusión

Jaguar fue la muestra de que las cosas sí se pueden lograr cuando se trabaja bien; de que a veces hay que estar con la gente adecuada en el momento adecuado y de que un revés como un proyecto cancelado puede generar una gran oportunidad.
Después de que ganamos, el futuro parecía muy prometedor, yo estaba muy emocionado pues habíamos logrado algo bueno a la primera; pero como dicen por ahí: era demasiado bueno para ser verdad.
Dicen que si no tienes algo bueno que decir de alguien mejor no digas nada, así que lo dejaré en que para el proyecto siguiente todo fue un desastre, en serio, todo.
Una vez que se consumó dicho fracaso la empresa decidió no hacer mas juegos y dedicarse a hacer interactivos en Flash de drag and drop, así que mejor decidí seguir mi camino en otro lugar.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s