Solicitamos su permiso para obtener datos estadísticos de su navegación en esta web, en cumplimiento del Real Decreto-ley 13/2012. Si continúa navegando consideramos que acepta el uso de cookies. OK | Más información

Juan J. Martínez, un apasionado de las Game Jams

Ya sabéis que participo en la organización de la BitBit Jam. Me apasiona el concepto de poder crear algo de la nada en un tiempo récord. Uno de los participantes de esta última edición y, por cierto, ganador en la categoría de ‘Best platform use’ es Juan J. Martínez con Black Star y allá que nos fuimos para preguntarle cómo vive él todo este mundillo.

Eres un usuario muy activo en las redes sociales y en la escena homebrew pero, ¿cómo te defines?

Desarrollo software para ganarme la vida y me gusta tener proyectos personales que me permitan relajarme y distraerme haciendo cosas que me gustan, especialmente con tecnologías que no tengo oportunidad de aplicar en el trabajo.

Lo la escena homebrew es algo relativamente reciente para mi. Había programado juegos de forma intermitente en el pasado, pero sin la suficiente continuidad como para acabar nada. Hace unos cuatro años me animé a participar en mi primera jam, y resulta que es perfecto: me permite centrarme y completar proyectos que de otra forma se alargarían sin llegar a ninguna parte hasta perder el interés.

Por eso me animé a hacer otras jams, hasta que descubrí el reto ‘un juego al mes’ y, por diferentes motivos, me animé a participar haciendo doce juegos durante el 2014 (aquí hay un post-mortem de mi experiencia).

Los tres últimos juegos del reto los hice para el ZX Spectrum 48K, lo que me llevó a descubrir todo el movimiento homebrew alrededor de las máquinas de Sinclair, y Twitter hizo un poco el resto.

Si participar en una game jam es estresante, ¿cómo es participar en una competición en la que se debe entregar un juego cada mes máxime cuando entregaste juegos tan interesantes como Alien Gamma o The Legend of Traxtor?

La idea era publicar un juego bien pulido al final de cada mes, que ahora en retrospectiva creo que era poco realista. Cuando empecé el reto me puse mis propias condiciones sobre lo que iba a considerar ‘un juego’, porque no quería acabar el año con doce demos que no fueran jugables.

Aunque lo mío es más la programación, tengo un poco de formación musical y experiencia con trackers (un tipo de programas que permiten componer música), pero en el apartado gráfico nunca ha sido mi fuerte.

Al final lo conseguí, más o menos, pero resultó ser completamente agotador. Desde encontrar qué hacer hasta la implementación de técnicas que no había programado nunca antes, teniendo en cuenta que todo esto debía pasar en mi tiempo libre.

Muchos de tus juegos son juegos de Spectrum ¿te sientes más cómodo desarrollando para el ZX que para otros sistemas de la década de los ochenta y noventa?¿Por qué?

Uno de los juegos que hice durante el reto fue para la Speccy Jam, en la que había que hacer un juego para plataformas modernas que imitaran a juegos de Spectrum. Disfruté mucho con las limitaciones de la jam, y la nostalgia creo que hizo el resto porque mi primer ordenador fue un ZX Spectrum +2A, y ahí es donde empezó mi pasión por la programación.

Hay muchas cosas que aprender en el ZX Spectrum, y aún estoy en ello. Cada juego que acabo es un poco mejor que el anterior, con lo que cada nuevo proyecto mantiene el interés al máximo.

Alguna vez me ha pasado por la cabeza hacer un port de La Leyenda de Traxtor a la NES, pero es difícil empezar a desarrollar para una plataforma de la que no conoces nada en absoluto.

¿Qué te lleva a combinar el desarrollo de videojuegos para plataformas clásicas con juegos más actuales?

Cada plataforma tiene sus características. Cuando programo en Python tengo que prestar mucha atención a la optimización y otras cosas son muy fáciles. Cuando paso entonces a programar en C o C++ no tengo que preocuparme tanto por planificar porque es más rápido, pero lo que antes eran dos lineas de Python ahora requieren librerías externas y una gran cantidad de trabajo.

Algo similar ocurre con las plataformas clásicas. Aplicar técnicas que son un estándar en plataformas modernas es muy complicado, pero cuando lo consigues los resultados son geniales. Si luego vuelves a trabajar para una plataforma más moderna todo parece mucho más fácil.

¿Con qué herramientas desarrollas los juegos?

Trabajo en Linux, así que suelo usar herramientas open source. En todos los proyectos trabajo con GIMP para los gráficos y VIM como editor. Ya dependiendo de la plataforma puedo usar herramientas específicas, como SchismTracker para la música cuando programo para PC.

Para el ZX Spectrum hay gran cantidad de herramientas gratuitas. Algunas son open source y las puedes compilar en Linux, otras funcionan más o menos con WINE (permite ejecutar programas de Windows en Linux), y en otros casos he programado lo que he ido necesitado y luego lo he publicado como open source.

Luego dependiendo de la plataforma puedo usar unas librerías u otras. Soy el tipo de programador que disfruta programando el motor del juego, así que me gusta que las librerías me den flexibilidad para hacer lo que se me ocurra.

En Python he usado mucho Pyglet, en C++ me gusta SFML, en C he trabajado con SDL. Para el ZX Spectrum uso el compilador Z88DK y la librería SP1.

¿Prefieres trabajar sólo o en equipo y por qué?

Por ahora he trabajado mayoritariamente solo porque las cosas se han presentado así, aunque es cierto que al ser un equipo de uno tienes perfecto control en todos los aspectos del proceso. La parte negativa es que no soy buen grafista, pero poco a poco voy mejorando esa parte.

En The Return of Traxtor pude contar con la colaboración de Craig Stevenson que aportó una fantástica pantalla de carga par el Spectrum, y me gustó la experiencia. Tuve que rediseñar la nave del personaje para que se pareciera al diseño de Craig, pero estoy muy contento con el resultado.

Tienes un buen número de juegos en tu currículum, ¿dónde encuentras la inspiración para desarrollarlos?

Creo que la mejor inspiración para hacer juegos es jugar a juegos de todo tipo y tratar de entender cuáles son los elementos que funcionan, y cuales no. Los vídeos de AVGN son geniales para eso, porque puedes ver qué deberías evitar en tus juegos (además es divertido, sobretodo los episodios clásicos).

A veces el juego gira entorno a una mecánica concreta (‘salta y dispara’ o ‘match 3’) y otras es solo un juego de género (‘Shoot’em up’ o ‘point and click’). Depende del proyecto.

Para mí esta parte es la más difícil de todo el proceso. Una vez que te pones en marcha con una idea, por vaga que sea, las cosas más o menos van encajando.

Y ¿de cuál te sientes más orgulloso?

Pues es difícil de decir. En su momento Grid Runners me gustó mucho porque es un juego muy pulido para estar hecho en una jam de una semana, pero creo que The Return of Traxtor es más divertido y se juega muy bien en el Speccy.

De hecho ese juego va a tener edición física gracias a Monument Microgames, así que creo que cuando tenga la cinta en mis manos va a ser sin duda me favorito. Ahí tienes una primicia, que esto no lo había mencionado hasta ahora.

¿Qué persigues conseguir cuando desarrollas un videojuego que vas a colgar gratis en la web?

Hacer el juego es divertido y cumple parte de lo que busco, pero el objetivo final es que la gente juegue al juego. Ya tengo un trabajo con el que pago mis facturas, lo de programar juegos es otra cosa completamente distinta.

Uno de los factores que me han enganchado a la escena homebrew es que mucha más gente juega a tus juegos, y en muchos casos hay comunidades activas que te dicen si les ha gustado o no y eso para mi es muy satisfactorio.

Quizá sea porque en las plataformas clásicas salen muchos menos juegos cada año, por lo que es más fácil conseguir un poquito de atención.

¿Qué es lo que está en el horno en estos momentos?

He estado experimentando con un vídeo blog en el que hablamos de juegos que jugamos cuando éramos niños en ‘Recordando al ZX Spectrum‘ y, aparte de divertido, está siendo muy útil para la parte de la ‘inspiración’.

Llevo tiempo pensando en hacer algo para otra plataforma clásica que no sea el ZX Spectrum, pero que no sea empezar de cero, así que finalmente me he decidido a investigar el Amstrad CPC. Puedo usar el compilador Z88DK que ya conozco, es la misma CPU (el Z80), y mucho del código y herramientas que tengo pueden ser útiles.

Así que estoy dándole vueltas a un juego para Amstrad, aunque todavía no tengo muy claro el tema. Me gustaría hacer algo en Mode 0, que la paleta del CPC tiene muchas posibilidades, ¡pero aún tengo mucho que aprender!

Gracias por la entrevista y mucha suerte con ZXDevs.

Perfil en Twitter | @reidrac
Página personal | Usebox.net

Coméntalo en: Twitter Facebook Google +