4m Arena


Ya fue una sorpresa y un lujo tener un juego en exclusividad para Explora Commodore 5 y, despu茅s de unos meses, los autores del juego lo liberan para que todos podamos disfrutar de este adictivo arcade. 4m Arena toma como idea la que Taito plasm贸 en su videojuego Gun Fight (1975), la actualiza y convierte la tem谩tica del duelo de vaqueros a una diferente y mas emp谩tica: La guerra de sistemas de 8 bits.

MSX, Amstrad, ZX Spectrum y Commodore 64 se enzarzar谩n en una batalla para conseguir la supremac铆a y derrotar a sus contrincantes para conseguir la victoria. En modo 1 o 2 jugadores, solo tendremos que escoger nuestro bando, afilar nuestro l谩ser y no tener piedad del contrincante hasta acabar con 茅l.




Darro99, el encargado del c贸digo del juego, nos cuenta sobre su participaci贸n en el proyecto:


La historia de este desarrollo comienza el mes antes del 煤ltimo RetroMadrid en el 2018. Erranking habl贸 conmigo sobre realizar un juego de C64 para los torneos del pr贸ximo Explora Commodore de ese mismo a帽o, la cuarta edici贸n, y recib铆 de su parte un correo con un documento en el que se explicaban las reglas, los gr谩ficos de los niveles y los sprites correspondientes. Pero exist铆a un problema ya que yo a煤n estaba finalizando Sky Diving, el juego que por aquel entonces ten铆a entre manos y que pude finalizar para presentarlo en la Retro Madrid, en el stand de Explora Commodore, junto a otros compa帽eros commodorianos, lo que supuso una gran experiencia.

El caso es que me era literalmente imposible acometer el proyecto en un mes escaso y finalizarlo para el pr贸ximo evento en Barcelona y tuve que posponerlo para despu茅s del mismo, muy a mi pesar.

Tras una cuarta edici贸n memorable, me puse manos a la obra con este nuevo proyecto, y aqu铆 aparecieron los primeros desaf铆os. El primero de ellos fueron los sprites, donde la definici贸n de los mismos solo estaban realizados hacia el lado derecho, y seg煤n las especificaciones del juego cada jugador puede escoger uno de ellos y ambos deben de estar enfrentados. Por lo tanto dependiendo de lo que escogiera el jugador hab铆a que hacer espejo de los mismos, algo que no hab铆a hecho nunca.

Por suerte, como casi siempre, la red acude en mi ayuda y pude encontrar algoritmos para realizar los espejos de los sprites multicolores. Para esto tuve que realizar la versi贸n para el compilador Kick Assambler, el que uso habitualmente, ya que, la mayor铆a de los ejemplos eran para ACME o cc65, y no solo eso, tambi茅n requer铆a la adaptaci贸n para los propios prop贸sitos del juego. Como a帽adido tambi茅n tuve que hacer el espejo de los sprites monocromo, pero he de reconocer que comparados con los primeros fue mucho mas sencillo.


Otro desaf铆o fue la multiplexaci贸n de sprites. Ya hab铆a experimentado con ello en mi anterior juego, pero a nivel muy b谩sico, con sprites est谩ticos que se usan en la portada del mismo. Aqu铆 las naves de cada uno de los jugadores son dos sprites superpuestos, adem谩s deben moverse junto con los disparos, mas la representaci贸n de los personajes... A priori se me antojaba complicado.

Consulte algunos c贸digos de multiplexaci贸n y ordenaci贸n de sprites. Esto era algo que no hab铆a tenido en cuenta y que pronto descubr铆 como fundamental. Para cada barrido de pantalla los sprites deben de estar perfectamente ordenados para realizar el 'truco' de representar mas de 8 sprites en pantalla. Fue todo un desaf铆o mantener los gr谩ficos de cada una de las naves unidos junto a sus disparos mientras se mov铆an, todo esto sin perder la fluidez. El tercer desaf铆o asoma ante mi: El juego requer铆a rapidez, el ritmo deb铆a mantenerse y no pod铆a ralentizase. Ten铆a que ordenar lo que se ejecuta y en su momento, contando en algunos casos los ciclos de instrucciones y comprobando las interrupciones. Poco a poco todo se optimiza hasta que llega el punto en que la ejecuci贸n se alinea cual conjunci贸n planetaria, llegando a un estado de uno con el c贸digo. Es una gran satisfacci贸n pues, hasta llegar a este punto, la frustraci贸n corre a raudales por tu mente.

Las cosas parec铆an marchar... Multiplexaci贸n, fluidez y los bugs parecen mitigarse... Pero quedaba un detalle y es que los preciosos gr谩ficos de cada uno de los cuatro escenarios ocupaban demasiado. El maravilloso VIC-II del C64 permite realizar la redefinici贸n de los caracteres hasta un m谩ximo de 255, pero los escenarios ocupaban cerca de los 320, un problema la verdad.

Como soluci贸n empec茅 a experimentar con los bancos de gr谩ficos del VIC. En un barrido de pantalla pod铆a ejecutar una interrupci贸n a mitad de pantalla y dibujar los gr谩ficos definidos en un banco diferente al mostrado en la mitad superior. Para aplicar esta soluci贸n me embarque en 'recolocar' todos y cada uno de los car谩cteres definidos para ordenarlos en dos ficheros en un trabajo tedioso y repetitivo. Una vez acabado, no me termin贸 por convencer. En algunos momentos de los combates la parte inferior de la pantalla parpadeaba, no era un error continuo, parec铆a cosa de velocidad de proceso, ¿quiz谩s estaba intentando ejecutar demasiadas cosas en un mismo barrido de pantalla? La frustraci贸n volvi贸 y significaba volver a reordenar el c贸digo, volver a los ciclos... Adem谩s en mi vida personal hab铆an aparecido situaciones que afectaban a mi estado an铆mico y no ayudaban a seguir con el desarrollo.


Tras varias pruebas la cosa no mejoraba, aunque se pod铆a jugar de forma correcta, y de vez en cuando volv铆a el maldito parpadeo y decid铆 tomar otro camino. Tendr铆a dos juegos de caracteres, pero no partidos, si no uno para los dos primeros escenarios junto con las pantallas de elecci贸n de personaje y pantalla de ganador, y otro con los otros dos escenarios. Solo tendr铆a que cambiar el banco del VIC al inicio de los escenarios o pantallas no afectando al desarrollo de la batalla entre los jugadores. Otra vez tuve que reordenar los gr谩ficos, tedioso aunque algo menos, por repetici贸n y porque estaba convencido de que iba a funcionar.

Por fin estaba satisfecho con el proyecto, la cosa mejor贸 bastante e incluso las naves ahora iban mas deprisa! Adem谩s el tiempo corr铆a a mi favor y quedaban mas de 3 meses para el evento. Me las promet铆a muy felices y solo tendr铆a que ir depurando las peque帽as cosas que fuesen saliendo y quiz谩s ajustar la jugabilidad. Aqu铆 entran en escena mis testeadores no oficiales a los que agradezco mucho su labor, el propio Errazking y Paco (pacoblog64) a los que de manera furtiva ataco con mis versiones. Hasta ahora gracias a sus comentarios siempre he podido mejorar los desarrollos y mucho.

Entonces Igor me coment贸 que solo hab铆a hecho la versi贸n de dos jugadores y faltaba la versi贸n de uno solo. Esto me pill贸 a contrapelo ya que, al ser para los torneos de Explora, siempre pens茅 que ser铆a para dos jugadores. Reconozco que no me apetec铆a programar la versi贸n de un jugador, me hab铆a costado mucho realizar la versi贸n actual y mi estado de 谩nimo tampoco ayudaba. Quer铆a acabarlo y punto. Por un tiempo me negu茅 a acometer la versi贸n de un solo jugador mientras segu铆a puliendo algunas cosas que segu铆an apareciendo en la versi贸n para dos jugadores. Al final me propuse realizar un programa completamente independiente, pues cre铆a que todo en uno no cabria en un mismo programa aunque el tiempo me ha demostrado lo contrario.

Lo primero que me plantee fue la ‘inteligencia’ del oponente, nunca hab铆a programado algo as铆, y empec茅 a realizar un nuevo c贸digo para darle vida a una sencilla pseudo-inteligencia y poco a poco consegu铆 que el oponente tuviera su propia IA.

Probando el juego me ‘masteric茅’. En la primera versi贸n operativa que pase a Paco para probar no pod铆a ganar ni el primer escenario a menos que fuera un experto y se conociera el algoritmo del oponente. Como ya he dicho gracias a Paco pude ajustar la dificultad de los oponentes en cada uno de los escenarios.

Ya estaba casi todo listo, pero aun faltaba un peque帽o desaf铆o, la edici贸n f铆sica. El juego, como exclusiva para el quinto aniversario de Explora Commodore, deber铆a tener una cinta del mismo y as铆 ayud谩bamos al evento en su promoci贸n.

Denymetanol dibuj贸 la estupenda portada para la car谩tula de la cinta, Bieno me ayud贸 con el montaje del TAP y la grabaci贸n corr铆贸 a cargo de Star, que hizo un magnifico trabajo con la maquetaci贸n y edici贸n de la misma, adem谩s de vender la edici贸n en el propio evento.

Este juego ha sido personalmente bastante duro, no solo por los desaf铆os en la programaci贸n si no  tambi茅n porque han ocurrido eventos en mi propia vida que siempre ir谩n asociados a 茅l.





Igor Errazking, ide贸logo y grafista del mismo, tambi茅n nos explica su aporte en el juego:


4MA surgi贸 con el esp铆ritu de servir como juego competitivo para dos jugadores en el evento Explora Commodore. Uno de los problemas que se derivan de los campeonatos es el uso y abuso de juegos cl谩sicos, lo que permite que jugadores avezados se hagan f谩cilmente con la victoria. De ah铆 surgi贸 la idea, hacer un juego competitivo en d贸nde las posibilidades de ganar estuvieran m谩s equiparadas.

Basado en un juego de Gameboy, que a su vez se inspira en un arcade anterior, 4MA coge como base la idea de confrontar a dos jugadores sin mayores pretensiones que hacer del enfrentamiento algo entretenido.

Por suerte Darro tuvo a bien hacerse con el control del proyecto y fue adecuando el material del que dispon铆a con ingentes horas de programaci贸n que nunca podr茅 agradecer lo suficiente.

Con la ilustraci贸n de @Denymetanol para la portada y la m煤sica de @narcisound, Darro dej贸 el juego por finiquitado y es ahora cuando, como broche final, se ha dispuesto a realizar una versi贸n definitiva para ponerlo a disposici贸n de los usuarios de C64.

Espero que os guste.

Narciso, ex-miembro de The Blasters, se ha encargado del aspecto sonoro y nos habla de su participaci贸n en este proyecto:



4M Arena supuso un reto para mi, ya que hac铆a 30 a帽os que no compon铆a nada para el C64. Para solventar 茅sta situaci贸n utilic茅 el programa GoatTracker el cual funcionaba de maravilla en mi ordenador con Windows 10. Del GoatTracker lo que mas me cost贸 fue sacar un buen pu帽ado de sonidos (bajos, bater铆as, leads, pads, synths) que tuvieran una calidad de sonido lo mas cercana al SID del C64 y para ello no hubo m谩s remedio que ir editando sonido por sonido hasta darle ese tono que necesitaba.

La parte de la composici贸n musical fue la m谩s divertida, pues el editor del GoatTracker es una delicia en comparaci贸n con el Future Composer que utilizaba anta帽o en el C64, el cual para hacer sonar una nota ten铆as que escribir por ejemplo C para que suene un DO, seguido de un n煤mero para indicar la octava y adem谩s escribir otro par de bytes para determinar la duraci贸n de la nota, una cosa mas o menos as铆: "C-1 D2:02", as铆 con todas las notas de cada una de las 3 pistas o canales que dispone la canci贸n. Toda 茅sta parafernalia de escribir notas supon铆a que componer una melod铆a era todo un machaque de darle al play, escuchar, ajustar, volver a darle al play...... as铆 hasta conseguir que suene bien tu canci贸n.

Volviendo al GoatTracker, siguiendo las instrucciones que trae el mismo programa y preguntando alguna que otra cosilla por los "interneses" de la vida, consegu铆 averiguar la manera de meter varios "tracks" o canciones dentro del SID, quedando de la siguiente manera: Una melod铆a para los Main Title o T铆tulo Principal, otra melod铆a para la elecci贸n de naves, otra para la fase de lucha del juego y otra m谩s para la pantalla de Winners. Como an茅cdota decir que la melod铆a compuesta para la fase de lucha solo ocupa un canal, dejando libre los dos restantes para los disparos y explosiones de las naves y qued贸 bastante bien la verdad. Como material extra, compuse otro SID con una melod铆a destinada a la pantalla de carga la cual qued贸 genial con el gr谩fico de fondo que pusieron durante la carga del juego.

En resumen:


4M Arena es un duelo entre 2 jugadores, contra otro usuarios o la CPU y que se desarrolla en 4 escenarios diferentes: Space, Moon, Terra y Well of Souls, que dan un toque variado a las partidas y que hacen variar el nivel de gravedad para darle un toque diferentes entre ellas. El movimiento es suave, los gr谩ficos est谩n muy bien cuidados y los diferentes SIDs encajan perfectamente con la tem谩tica del arcade. Sencillo y divertido, es ideal para jugar sin muchas mas pretensiones y pasarlo bien.

Un muy buen trabajo realizado por el equipo formado por Darro99, Errazking y Narciso y lleno de detalles.  Ahora a esperar que se vuelvan a unir para otro t铆tulo tan entretenido como este.

  • Pod茅is adquirir la versi贸n especial de Explora Commodore 5 en la p谩gina de MATRA.
  • Pod茅is descargaros la 煤ltima actualizaci贸n en CSDB.

Publicar un comentario

0 Comentarios