homebrewVideojuegos

Space Panic para CPC

Space Panic, el primer videojuego de plataformas

4.7
(10)

He leído que Space Panic (1980), programado por UNIVERSAL, es considerado el primer juego de plataformas, ya que es anterior a Donkey Kong (1981).

El desafiante SPACE PANIC enfrenta a tu personaje, un hombre del espacio, contra los astutos monstruos espaciales que merodean por el lugar. Debes utilizar tácticas de defensa y cavar trampas en el suelo para que los enemigos caigan en ellas. Una vez han caído en las trampas, rellénalas de tierra con tu herramienta y así poder destruirlos.

¡Deberás tener cuidado! Algunos monstruos deben caer desde más de una altura. Esto y el uso de las escaleras para cambiar de altura del habitáculo te permitirán escapar de sus ansias de carne humana.

Pero no acaban aquí las dificultades. El lugar es inhóspito y tu aparato respiratorio no es capaz de asimilar mucho tiempo esa combinación química de oxígeno. Esto te obliga a destruir a todos los enemigos antes de que se agote.

Cuando yo (fito), el autor del juego, era pequeño (EGB), instalaron en los recreativos del barrio el Space Invaders, el Space Panic y varios más. Para jugar echabas 5 duros (25 pesetas). También instalaron los pinball que costaban un duro (5 pesetas). Por suerte, me daban 30 pesetas los domingos que “invertía” en pasar el mejor momento de la semana ahí dentro (también a jugar al parque y estar con las chicas 😊). No duraba nada, todo hay que decirlo, pero estaréis conmigo los viejunos, que con el sonido de la cabina (que ponían a tope) y esos muñecos que TÚ controlabas con esos PEAZO gráficos, te sumergías en el juego. En este caso concreto, cuando se te acercaba uno de los marcianos te entraba tan acongoje que se te ponían los nervios de punta, jajaja. Pero valían la pena esos minutos. Además, molaba ver cómo jugaban los demás y adoptar sus técnicas y tácticas. Y como digo yo, con lo que te sobraba, te pillabas un pepinillo o cebolletas avinagradas a tope y los mayores que jugaban a los futbolos se compraban cigarrillos sueltos o intercambiaban novelas (pufff, como cambia todo, y ahora un paquete de tabaco costaría unas 600 o 700 pesetas cuando con 1000 pesetas echaba tu padre gasofa).

Veamos, centrémonos, leñe… sigo …

Siempre he visto a los analistas/programadores de este juego como a visionarios futuristas de su época y aunque hice mis pinitos para Windows siempre he querido hacer con mis deditos un remake de este juego para mi querido Amstrad.

8BP – 8 Bits de Poder (José Javier García Aranda)

Space Panic para CPC 2

Aunque “soy de Amstrad”, he estado arropado por el calor de la escena ZX estos últimos meses donde me involucré aprovechando mis ganas de programar para 8 bits. Allí encontré herramientas para el programador que te permiten escribir código para ZX de manera relativamente fácil. Allí escribí un harrier attack, un oh mummy y alguna cosilla más.

Pero hablé con J.J. (8BP) y volvió Figo. Comenzé a utilizar 8BP desde BAsic para después dar el salto al wrapper para C que te ofrece la librería. Pare el que no la conozca, es una librería que utiliza las extensiones del firmware de los Amstrad cpc para añadir comandos que permiten llamar a código máquina pasando argumentos… todo un mundo de posibilidades. José Javier ha conseguido dejarnos en bandeja el manejo de sprites desde el propio Basic de los cpc a una velocidad y facilidad insuperables. Pero las posibilidades no acaban ahí, sino que, además, puedes analizar las bases de tu juego para implementarlas en lenguaje C obteniendo velocidad extra aunque por el contrario, perdiendo facilidad en la depuración (pero esto ya es como te lo montes).

8BP+C = pintado de sprites+colisiones+sonidos+música+sobreescritura+paths+tiles+un largo etc.

Con la ayuda de J.J. he conseguido escribir un juegecillo, que no siendo perfecto, con sus fallos y virtudes, te hará pasar unos minutos simpáticos moviendo a tu personaje e intentando dejar cao a los enemigos.

Space Panic, el desarrollo !!!

El juego se comenzó, inicialmente, probando el proceso inicial de carga de sprites de 8BP desde WINAPE, todo detallado en perfecto castellano en http://8bitsdepoder.blogspot.com, y posteriormente “pintando” en pantalla un Sprite. El siguiente paso fue moverlo en horizontal sin que dejara rastro y después controlar el teclado:

space panic
Space Panic, proceso de creación

Los sprites han sido capturados de los originales de la versión arcade de © UNIVERSAL para luego pasarlos con RGAS a formato db assembler como secuencia de bytes para alimentar a 8bp (es super fácil).

SI NO TE INTERESA EL PROCESO/FASES DE SU PROGRAMACIÓN PUEDES SARTAR ÉSTO

Luego añadí a los “malos” aunque solo se movían a lo loco de izquierda a derecha. Y os juro que la librería movía a 20 de ellos simultáneamente (para los entendidos, en el mismo ciclo, a lo loco!!)

Por favor, acepta las cookies de YouTube para poder ver este video. Aceptando, accederás al contenido de YouTube, un servicio externo y gestionado por terceros.

Leer la privacidad de Youtube.

Aceptando este aviso, tu selección será guardara y la página se refrescará.

Space Panic, proceso de creación

Más tarde, los “malos” también aprendieron a bajar escaleras y a caer por los bujeros.

Aquí me atasqué muchos días o semanas, cuando el personaje “bueno” tiene que cavar en el suelo los agujeros donde caerán los merodeantes.

Por favor, acepta las cookies de YouTube para poder ver este video. Aceptando, accederás al contenido de YouTube, un servicio externo y gestionado por terceros.

Leer la privacidad de Youtube.

Aceptando este aviso, tu selección será guardara y la página se refrescará.

Space Panic, proceso de creación

Aunque en este punto, todavía no puedes machacarles las antenas y rellenar de tierra el hueco para así destruirlos pero ya podemos ver que puedes cavar y ellos quedan en un estado de sufrimiento (pobrecitos).

Por favor, acepta las cookies de YouTube para poder ver este video. Aceptando, accederás al contenido de YouTube, un servicio externo y gestionado por terceros.

Leer la privacidad de Youtube.

Aceptando este aviso, tu selección será guardara y la página se refrescará.

Space Panic, proceso de creación

Cuando se atascan en un agujero sin acabar de cavar (ups), quedan en un estado de aletargamiento de tiempo indeterminado del que tardan recuperarse y que les pone de muy mala leche:

Por favor, acepta las cookies de YouTube para poder ver este video. Aceptando, accederás al contenido de YouTube, un servicio externo y gestionado por terceros.

Leer la privacidad de Youtube.

Aceptando este aviso, tu selección será guardara y la página se refrescará.

En la siguiente fase del desarrollo nos ponemos a capturar los sprites que animan el personaje para picar/despicar (a ver como se traducirá luego esto) con la pala (no sé si en el espacio es pala o azada, jajaja). De este modo ya podemos hacer una eliminación como dios manda de los enemigos. También, llegados a este punto, deberíamos poder destruir a los enemigos verde y blanco, que deberás matar tirándolos desde 2 y 3 alturas, respectivamente. Si no lo consigues, y los tiras a poca altura, no conseguirás ejercer ningún tipo de violencia sobre ellos y se te reirán en la cara.

Por favor, acepta las cookies de YouTube para poder ver este video. Aceptando, accederás al contenido de YouTube, un servicio externo y gestionado por terceros.

Leer la privacidad de Youtube.

Aceptando este aviso, tu selección será guardara y la página se refrescará.

Space Panic, proceso de creación

Luego ya hice el menú inicial, contacté con Xeno, quien me demostró su faceta de tracker-composer. Me facilitó una música para el menú. También me puso en contacto con Brundij para la fantástica portada:

Space Panic para CPC 3
Space Panic, pantalla de carga

Y a su vez, Brundij, le encomendó a Trocoloco un loader como dios manda que subiremos a itch.io (estamos en ello).

Como quizás a alguien, puede que no le gustaran los cursores que definí para el movimiento (con Z y X para cavar, rellenar), decidí añadir Redefinición de teclas en el menú inicial.

En cuanto al tiempo invertido… pues han sido mogollón de horas (cosas de la nostalgia, de que la sarna con gusto no pica y esas cosillas). Muchos atascos y cambios de manera de hacer las cosas dando la paliza a Jose Javier (8bp), buscando información de punteros en C, asesorándome sobre aspectos del compilador SDCC, como por ejemplo, de la asignación de variables globales y no globales, utilización de punteros, etc.

Me he quedado sin memoria (para el juego!!, aunque físicamente también ya estoy alzeimerioso), pero es culpa toda mía por no saber optimizar y no utilizar la libería 8BP como dios manda, o mejor dicho, como dice su detallado manual. Por la manera que necesito chequear colisiones entre el layout, los “malos” y el “bueno” añadí unas funciones adicionales de cosecha propia. El juego comienza en 5000 y acaba en 0x5c93=23699 y hay muchas cosas mejorables pero creo que es hora de “a otra cosa mariposa”.

Space Panic para CPC 4

Igual está un poco desordenado pero mas o menos así fue. 🙂 Y rediosss, no seáis insensatos, rayos y centellas, por Tutatix! Un sábado por la tarde, utilizad la librería 8BP para mover un sprite por pantalla… sólo eso. Os aseguro que, al ver los resultados, os entrará el gusanillo de tener vuestro jueguecillo en un DSK. Está todo muy bien documentado.

El colega Trocoloco me ha pasado un video de este juego rulando en un amstrad físico y casi se me salta la lágrima. Ha sido una grata aventura el desarrollo de este videojuego (con la ayuda de José Javier en varias cosas). Anteriormente, he dado vueltas muchas vueltas capturando sprites originales cpc y compilando con técnicas tipo gamemaker, libgdx, monogame y otras que no recuerdo ahora mismo pero me congratula llegar a mi medio siglo de vida habiendo conseguido mi meta de compilar nativamente para Amstrad.

Tras ver mi juego y el original arcade de UNIVERSAL, alguno diréis que por qué no he usado más colores (que me han sobrao un guevo) y que por qué no mejoraba los sprites y que por qué no hice trascender la versión original, pero el que me conoce sabe que me gustan los remakes a poder ser, lo más exactos posibles al original, solamente para recordar viejos tiempos.

Y por último, decir que soy del QAOP pero que seguiremos siendo amigos si eres de cualquier otra sucedánea, eh? jejeje (es broma)

Gracias Xeno, por ayudarme a aportar un granito de arena a esta escena Amstrad que sigue viva.

Espero que os entretenga a vosotr@s y vuestros zagal@s unos minutillos.

Ahora voy a ver si hago experimentos con el scroll y nos vemos en la próxima aventura.

Y ya saben ustedes… no olviden vitaminarse y supermineralizarse..

Fito.

Descarga de CPC Space Panic: fitosoft.itch.io

Agradecimientos para:

  • mis colegas Siyei Er y Azimov, enciclopedias del spectrum y los 8 bits
  • el incansable, multiterreno y super betatester PacoVespa que me aguanta pacientemente
  • Trocoloco, por lo fácil que me ha hecho conocerlo y colaborar en este proyectito

Por favor, acepta las cookies de YouTube para poder ver este video. Aceptando, accederás al contenido de YouTube, un servicio externo y gestionado por terceros.

Leer la privacidad de Youtube.

Aceptando este aviso, tu selección será guardara y la página se refrescará.


¿Te ha Resultado útil este artículo?

Ayúdanos a mejorar y danos tu opinión:

Mostrar más

2 comentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Publicaciones relacionadas

Mira también
Cerrar
Botón volver arriba