AUDIO NINJA – Entrevista a Juan Pablo Reyes

Audio Ninja es un videojuego rítmico para iOS, lanzado en Agosto de este año. Fue desarrollado en Colombia, liderado por el diseñador industrial Juan Pablo Reyes, y desarrollado por su empresa Cocodrilo Dog en alianza con Brainz.  Juan Pablo, quien muy amablemente concedió esta entrevista, nos cuenta detalladamente acerca de cómo fue el proceso de creación de Audio Ninja, de dónde viene la inspiración del juego, qué herramientas de software y lenguaje de programación emplearon, la co-producción con Brainz, y los problemas técnicos relacionados al audio que se presentaron, entre otros temas.

AudioNinja Pic

Antes de continuar con la entrevista, un breve contexto para quienes no han jugado el juego:

El personaje principal es Ninjipu, un joven ninja quien debe derrotar, al ritmo de la música, a los enemigos creados por el científico malvado Clone Evil. Esto lo logra por medio de unos audífonos mágicos que un misterioso hombre del futuro le obsequia.  El jugador tiene dos comandos, o tipos de ataques: uno claro y uno oscuro, y se deben utilizar dependiendo del color de los enemigos y al ritmo marcado con la música.  Más adelante los audífonos permiten acelerar, desacelerar, y retroceder el tiempo. En los siguientes links pueden descargar el juego y encontrar más reseñas y videos:

Reseña en Cocodrilo Dog

Reseña en Brainz

Naila Burney: Cuéntanos un poco acerca de ti y sobre cómo inició el proyecto de Audio Ninja

Juan Pablo Reyes: El juego lo empecé a principios del 2011. Yo trabajaba en una empresa de aplicaciones para internet, y era desarrollador líder. Sin embargo, yo estudié diseño industrial, entonces digamos que siempre he tenido un componente artístico; además de ser ingeniero, me gusta mucho la parte de diseño porque fue lo que en principio estudié.

JuanPabloReyes

Cuando salieron los juegos para móviles empecé a conocerlos; compré un iPad y empecé a jugarlos, y me atrajeron muchísimo porque volví a ver en ellos la sencillez de los que jugaba cuando yo era adolescente, que me parecía buenísima, entonces me empecé a aficionar a este tipo de juegos.  Lo interesante de haberlos visto en este momento fue que me di cuenta que yo mismo podría hacer algo similar.

Hubo un periodo en el que no tuve mucho que hacer en la empresa donde trabajaba, así que me dediqué a investigar sobre cómo se hacían estos juegos. En ese momento hice un demo de un juego para navidad que nunca se completó, pero sí fue suficiente para ver que sí se podían hacer cosas.

Un tiempo después decidí renunciar a mi trabajo. Yo tenía ahorrada una plata que me alcanzaba para vivir más o menos durante 6 meses, entonces decidí desarrollar un videojuego. Salí con ninguna idea particular sobre qué juego iba a diseñar o cómo lo iba a hacer, pero sí quería darme la oportunidad de explorar creativamente y hacer un videojuego.

NB: ¿En qué consistió esa primera etapa creativa? ¿De donde nace la idea o inspiración para crear Audio Ninja?

JPR: Bueno, pues salí con ese presupuesto y empecé la etapa creativa; empecé a investigar mucho sobre juegos, a leer sobre diseño de juegos, y en algún momento encontré un juego que me llamó mucho la atención, que era muy similar a Audio Ninja pero sin la mecánica musical que es lo que lo hace interesante. Es un juego que se llama Pucca Run Away; uno era el ninja que Pucca siempre persigue para darle besos, y está huyendo, se está moviendo siempre hacia el lado izquierdo, y por el lado derecho van llegando enemigos que uno debe derrotar. Hay 3 enemigos, y uno los derrota con las teclas z, x y c, entonces si el siguiente que viene a atacar corresponde a la letra x, uno oprime x, si es la c, oprime c, y así sucesivamente. Cada vez se pone más rápido, entonces a mi me pareció muy emocionante, bien interesante y muy sencillo también, pero yo sentí que era un poco caótico; cuando se ponía rápido como que el cerebro no era capaz de reaccionar a las señales de ver la x y tener que oprimirla tan rápido, entonces ya no era tan divertido en ese punto. Fue cuando se me ocurrió que si eso estaba asociado a algún tipo de ritmo musical, uno podría responder bien, y sería mucho más satisfactoria la experiencia. En ese momento se me ocurrió la mecánica de Audio Ninja. Le di un par de vueltas, me pareció que sería más chévere ir caminando hacia adelante en vez de estar huyendo, y bueno, a mi los ninjas siempre me han gustado mucho entonces pensé que el héroe podría ser un ninja pequeñito bien simpático, y de ahí salió la idea. Como tal, salió también el nombre de una vez; es un ninja que funciona con el audio entonces, Audio Ninja.

NB: ¿Cómo fue el proceso de desarrollo, y cómo decidiste qué software y lenguaje de programación utilizar?

JPR: Hasta el momento yo había sido desarrollador líder de Flash. El prototipo que había hecho en la empresa donde trabajaba lo había hecho en Unity. Entonces sabía bastante de Flash, un poco de Unity, y sabía también que tenía un reto bastante grande con el audio. Antes de todo esto, yo había hecho unas aplicaciones de audio interactivo en la universidad, entonces tenía más o menos una idea de cómo se programaba el audio y qué requerimientos tenía para poder hacer cosas interactivas con audio. Lo principal era que uno pudiera poner un audio seguido con otro, y que empataran bien y no quedaran con ningún gap o hueco entre ningún archivo de audio y de otro. Entonces lo primero que yo tenía que resolver era cómo podía hacer eso. Una persona de otro país me recomendó una librería que se llama FMOD. Es una librería que de por sí se llama Audio en bajo nivel en la cual se puede hacer lo que uno quiera. Se pueden manejar los buffers de audio que, actualmente aún no tengo muy claro que son, pero en términos generales es acceso al audio a un nivel bajo, para poder manejar las partículas de audio o samples, y coordinarlas como uno quiera por medio de código. Ese fue el punto de partida en la parte técnica, y empecé a investigar qué plataformas para hacer juegos podrían soportar eso.

Sabía que Unity tenía FMOD por defecto, pero hasta donde yo conocía, era un poco complicado comunicarse con código nativo, por ejemplo en C++.  Además la licencia en esa época costaba bastante y yo estaba guardando presupuesto, entonces trabajé un poquito con Unity, un poquito con Corona (otro framework) y la conclusión fue la siguiente: Corona y Unity tenían un plus y es que los vendían como que eran más fáciles para desarrollar juegos. Yo sabía que existía Cocos 2D, pero también sabía que era más difícil porque había que aprender Objective C, que en ese momento pensé que era algo muy complejo (aunque después no me pareció tanto). Finalmente resultó ser que la única forma de yo tener acceso libre para manejar el audio con FMOD era con Objective C, entonces obligatoriamente tenía que escoger Cocos 2D para hacer el juego que yo quería hacer. Una vez eso estaba claro, me dediqué a estudiar Objective C, que es el lenguaje de Cocos 2D, y mientras tanto fui empezando a conocer un poco FMOD.

NB: ¿Cuanto tiempo duraste aprendiendo estos programas?

JPR: Más o menos en un mes empecé a hacer cosas con algún sentido. Como ya tenía experiencia en programación en Flash, una vez uno ha programado en un lenguaje ya tiene una estructura que le sirve para aprender otros lenguajes, entonces no es tan complicado. Es más ponerse en la tarea de hacer ejercicios y ponerse en la tarea de entender bien a fondo, y perderle la pereza a puro estudio sin que eso necesariamente produzca algo, sino sencillamente para aprender.

NB: ¿Cuando hablas de pedazos de audio a qué te refieres?

JPR: Son como ladrillos. Si te fijas en Audio Ninja, algunos niveles son más largos que otros, pero tienen como la misma canción, entonces yo lo que le pedí al músico fue que partiera la música en compases como archivos de audio por aparte, de manera que yo los pudiera armar a mi antojo y hacer, por decirlo de alguna manera, sub composiciones con eso. Entonces podía hacer una versión más corta de la canción, una versión más larga, etc. Es decir, es coger la canción, ya mezclada y todo, y ponerla en pedacitos, un ladrillo al lado del otro.

Por aparte hay otra capa que son los golpes de batería, que van sincronizados con la música.

NB: Íbamos en que estabas aprendiendo las herramientas. ¿Qué siguió después?

JPR: Ya teniendo las herramientas, lo primero que hice fue el motor de audio que me permitiera sincronizar diferentes pedazos de audio uno tras otro y que pegaran bien, que sonaran seguido. Yo quería que se pudiera reversar la música. En parte, para poder lograr eso también necesitaba que la música estuviera dividida en ladrillos. Lo primero que hice fue desarrollar ese motor. Una vez ya lo tenía supremamente robusto, ya empecé a armar el juego.

Para armar el juego hice unos dibujos a mano de lo que hoy es Audio Ninja, que si los ves hoy en día es súper tierno porque es como la versión niño chiquito de Audio Ninja. En ese entonces yo estaba oxidado con las herramientas de diseño digital, entonces los hice a mano con marcadores, colores y demás cosas. Dibujé a Ninjipu, el personaje principal, dibujé al malo, y dibujé el paisaje, que se parece mucho a lo que hay hoy en día en el primer nivel del juego. Con eso ya empecé a armar el prototipo.

En el prototipo utilicé una canción de Prodigy, un grupo que siempre me ha inspirado muchísimo, con el rollo de la música y la interacción y demás cosas. La partí en pedacitos y ahí fue que empecé a armar ese esquema de diseño de niveles. Usé esa canción para componer un primer mundo larguísimo de Audio Ninja y ahí programé la lógica del malo oscuro, el malo claro, que van asociados al bombo y al redoblante de la batería. Ya con eso armado se empezó a ver algo muy chévere.

NB: ¿Cuándo deciden buscar un socio?

JPR: En todo ese proceso, desde que arranqué a estudiar diseño de juegos, programación, etc etc, y armar el prototipo hasta que ya fuera jugable, pasaron 4 meses. De mi presupuesto solo me quedaban dos meses, y me di cuenta que esto estaba complicado porque los personajes necesitaban animaciones. En el prototipo estaban los muñequitos con la pose de estar corriendo, pero no movían las piernas ni los brazos. Entonces empecé a notar que cada vez que yo mismo me ponía a hacer los detalles y animaciones y demás, me demoraba más y más y más, y me habría demorado toda una vida si hubiera seguido solo, y ya el presupuesto se me estaba agotando.

En ese momento tomamos la decisión con mi esposa, quien estuvo vinculada al proyecto desde el principio, y es co-fundadora de la empresa, y decidimos salir a buscar inversión de alguna empresa, para poder terminar el juego y que se hicieran socios en las ventas del juego cuando se publicara. Esa era la siguiente misión, pero para eso el juego debía verse mejor. Como te digo, los dibujos eran hechos a mano y aunque era un prototipo, no se veía profesional todavía. Entonces me tomé esos dos meses que tenía para esa parte. En mi carrera de diseño yo había aprendido un poco de Photoshop y de Illustrator muy por encima, entonces me dediqué a aprender las herramientas un poco más a fondo, y en ese tiempo diseñé lo que es hoy en día el paisaje del primer mundo, el personaje principal, y el malo del primer mundo; es decir, ya tenía los elementos del primer mundo listos. Reemplacé las texturas viejas por las nuevas, y ahora sí se veía espectacular, algo muy bonito y muy profesional, y dije, ya con esto, si salgo a mostrarlo, va a llamar mucho más la atención.

NB: ¿Cómo fue ese proceso de buscar un socio?

JPR: Como yo trabajaba en una empresa de diseño digital, lo primero que hice fue ir allá. Les gustó el demo y quedaron en decirme más adelante si tenían alguna propuesta o no. Fui a otra empresa que también conocía, y también fui a Brainz. Yo conocía a Brainz desde antes, pues conocí a Alejandro Gonzalez quien es el presidente, en un evento que se llama Flash Camp que es un evento donde dan conferencias de prototipos y cosas interesantes para la comunidad Flash. En ese entonces yo trabajaba con mi hermano en otra empresa de sitios web, en Flash precisamente; mi hermano es diseñador, y allá lo conocimos los dos. Mi hermano tuvo una empatía muy chévere con el, y más adelante entró a trabajar a Brainz. Entonces digamos que más o menos tenía un contacto cercano, y hablé con mi hermano para ver si podía presentarles el juego. Entonces así fue, les presenté el demo, y les gustó mucho. En un tiempo definimos cómo iba a ser el negocio entre los dos, y ahí mi esposa empezó a hacer una parte más activa de la empresa. Ella estructuró todo el contrato, todo el rollo, y bueno, ahí arrancó la co-producción del videojuego con Brainz. Esto fue a finales de 2011.

NB: ¿En qué consistía la co-producción?

JPR: Consistía en que yo planeé un juego que iba a tener un juego de tres mundos, y para cada mundo se necesitaba un paisaje, unos enemigos, y una canción. Para el mundo 1 no había canción porque no podía seguir usando la de Prodigy. La co-producción consistió en que ellos pagaron el salario que yo recibía por seguir desarrollando el juego por un tiempo, pusieron un equipo de artistas super talentosos todos, para hacer la parte de producción de arte ya mucho más rápido. Los dos mundos restantes y la música de todos los niveles y todo el arte que hacía falta se hizo más o menos en tres meses.

Pasaron 3 meses. Nosotros calculamos que el juego se iba a terminar en 3 meses, es decir, que yo iba a terminar el desarrollo mientras se hacía el arte, pero eso fue un cálculo totalmente craso porque yo no conté con que yo iba a estar dirigiendo el arte y no me quedaba casi tiempo para programar, entonces en esos 3 meses el desarrollo se colgó muchísimo. Ya estuvo el arte, pero al desarrollo le faltaba, entonces tocó alargar un poco el contrato con Brainz por un par de meses más. En esos meses se sacó un prototipo más elaborado, por lo menos el primer mundo ya estaba marchando con la música propia y con algo de diseño de niveles, y el arte del mundo dos y el mundo tres.

En ese momento, Alejandro González, CEO de Brainz, que siempre ha tenido un rol muy importante en lograr negocios con el juego, empezó a mostrarle el juego a publishers, pero resulta que en ese momento el juego que había versus el demo que yo había hecho 4 meses atrás, era muy malo, a nadie le gustaba, nadie lo entendía, nadie sentía que la música tenía ritmo, entonces te imaginarás la frustración de todo el mundo en ese momento después de tanto esfuerzo, que la gente siguiera prefiriendo el demo. Entonces tocó empezar a replantear cómo íbamos a re diseñar los niveles, y poco a poco empezamos a encontrar cosas interesantes, probando con jugadores, probando con estudiantes de la Javeriana, en algún momento me hicieron el favor de prestarme a un grupo para hacer pruebas. Fue un proceso de hacer niveles de una forma, probándolo, luego de otra forma, probándolo, y poco a poco se fue definiendo más hasta que quedó el esquema que hay hoy en día.

El siguiente año y medio de desarrollo fue financiado por Cocodrilo Dog. Durante ese tiempo, Brainz consiguió el trato de publicación con Televisa y produjo las piezas gráficas para la campaña publicitaria.

NB: ¿Cuántas personas trabajaron en el juego?

JPR: En total fuimos 10 personas pero trabajando al tiempo siempre fueron como dos o tres. Dependiendo de la etapa del proyecto eran unas personas u otras. Digamos que el equipo principal era Santiago González (música), Carlos Quintero (arte) Yeison Gil (arte de los cómics y la cinemática), mi hermano Felipe hizo partes de diseño y de interfaz gráfica, Grace Mojica y Andy Vargas hicieron animaciones de personajes. Yo dirigí el arte y diseñé y programé el juego.  Alejandro González trabajó permanentemente en el desarrollo de negocios alrededor del juego.

NB: ¿Cómo fue el proceso para la selección de música?

JPR: En Brainz conocían a varios artistas, entonces hicieron una convocatoria. Hubo como 6 propuestas. La que escogimos era muy superior a las demás, y se acercaba más a lo que yo estaba buscando.

NB: ¿Qué problemas técnicos hubo con respecto al audio?

JPR: Lo más difícil fue lograr la reversa en el audio, y que eso tuviera sentido en el juego. Si lo piensas, para poder devolver el tiempo, hay que grabar todo lo que sucede y poder replicarlo hacia atrás. Uno ve esos juegos sencillos, pero todas las animaciones y todo anda hacia adelante normalmente, y ponerlo en reversa y que se replique de la forma en que se jugó, y que cuadre bien en tiempo, fue el reto técnico más complejo a nivel del audio.

Finalmente, lo que se hizo fue que todo lo que se ve en el video, está basado en el sample actual en el que está la canción. Entonces si tu andas la canción hacia adelante, todos los muñequitos se mueven hacia adelante, y si lo mueves hacia atrás, ellos automáticamente se empiezan a devolver, pero lo difícil fue lograr eso, ese algoritmo que fuera como si tu movieras un reloj que siguiera los piñones hacia un lado, todo el mecanismo gira hacia un lado, y si los giras hacia el otro todo el mecanismo gira hacia el otro…funciona más o menos así.

NB: ¿Tuvieron problemas de RAM y de espacio?

JPR: Sí. Cuando trabajaba en Flash, la memoria del computador nunca llegó a ser un problema para mi, yo nunca tuve problemas de espacio. Nunca me preguntaba siquiera cómo funcionaba la cosa. Pero cuando empecé a programar las animaciones finales a Audio Ninja, se empezó a crashear la aplicación. Entonces ahí vi que el problema era realmente de memoria.

Cuando sacamos la primera versión que era solo para iPhone, el objetivo era mantener el juego por debajo de 50 MB, porque si no, no descarga por la red si no toca por wifi, y el problema es que el juego estaba pesando como 120 MB por la música, precisamente, porque la música venía en Wav que es el audio sin comprimir, para poder sincronizar bien un sonido con el otro y que suene seguido. El MP3 tiene un problema, y es que cuando grabas en mp3, se generan unos gaps, unos huecos al final y al principio del archivo de audio, entonces si tu tratas de hacer un loop con un archivo mp3, te va a sonar con un hueco cada vez que va a arrancar, entonces no podía usar mp3 para comprimir, y la aplicación pesaba 120 y tenía que bajarla a 50, entonces ese fue un problema que se resolvió encontrando el formato de audio adecuado, que se llama Ogg Vorbis.  Ese formato me pareció buenísimo porque tiene una calidad de compresión muy buena y no tiene el problema del gap, y para mi fue como una revelación. Y afortunadamente yo había escogido FMOD porque por ejemplo Cocos 2d solo maneja mp3, en cambio FMOD si , de hecho, si no estoy mal, con FMOD hicieron Guitar Hero.

NB: ¿Qué pruebas de usabilidad hicieron?

JPR: Se hicieron varias pruebas informales, más como de diversión, y de no-frustración. Pusimos a mucha gente a jugar y analizamos los problemas cuando la gente se frustraba, o cuando la gente no entendía. A muchos amigos les fui mostrando el juego, mirando qué funcionaba bien para algunos qué no funcionaba bien para otros, empecé a ver que había perfiles de jugadores diferentes, entonces empecé a identificar qué funcionaba para todo el mundo, qué funcionaba para todas las personas, y esas fueron como las pruebas que se hicieron.

La prueba de la Javeriana si fue un poco más formal. Pusimos a los jugadores a jugar 8 minutos, y luego a llenar una encuesta con una cantidad de preguntas que nos daban idea de qué era lo más llamativo para la gente o lo más frustrante.

Luego ampliamos mas el grupo con 30 personas más por medio de una aplicación que se llama TestFlight, una plataforma donde uno envía el juego a personas por internet y pueden bajar el juego en el iPhone sin haberlo subido al app store necesariamente. Sirve para hacer ese tipo de pruebas, máximo a 100 personas, mas o menos.

Luego en Facebook hice una convocatoria pública con todos mis conocidos y amigos y armamos un grupo, empezamos a probar y luego algunos me llamaban a comentar sobre el juego y con eso ya empezamos a tener más pruebas antes de lanzarlo.

Después lo lanzamos solamente en Colombia y Canadá, y ahí tuvimos otra etapa también previa de testeo, y finalmente se lanzó globalmente.

Etiquetado , , , , ,

2 pensamientos en “AUDIO NINJA – Entrevista a Juan Pablo Reyes

  1. Interesante! solo basta tener iniciativa y disciplina para realizar un proyecto de principio a fin! Me parece interesante ademas el hecho de lograr haber conseguido financiación para el juego y que los interesados lanzaran esté como si fuera una especie de editorial…
    Buen post Naila!
    Gracias por esta entrevista!

  2. Jack dice:

    Que buen artículo!!! Esto motiva.

    También estoy en proceso de diseño de un videojuego y este tipo de artículos nos ayudan mucho a orientarnos cuando empezamos solos y queremos buscar gente para trabajar como equipo.

    Saludos desde Peru

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: