Minilop Retroware

MPAGD

¿Qué es MPAGD? Multi-Platform Arcade Games Designer

1 de noviembre de 2020

MPAGD es una herramienta de desarrollo para Windows para crear juegos para ordenadores de 8 bits. El software está diseñado y creado por Jonathan Cauldwell. Aunque mi objetivo principal es desarrollar juegos para los ordenadores Sinclair ZX Spectrum, una de las ventajas de MPAGD es que permite portar juegos a otras máquinas retro, como el Amstrad CPC, MSX, Dragon 32, Acorn, BBC y unas cuantas más (por desgracia, todavía no el Commodore 64...).

Además, es relativamente fácil de entender para quienes no son desarrolladores. Lo digo yo, que no soy desarrollador y he conseguido crear un par de juegos que han tenido bastante buena acogida... todo gracias a MPAGD.

Básicamente, MPAGD se encarga de todo lo aburrido que hace falta para crear un juego en código máquina de 8 bits, y te deja centrarte en lo divertido: diseñar gráficos, pantallas/niveles y la jugabilidad.

Por supuesto, diseñar un juego para un ordenador de más de 35 años trae sus propios desafíos.

Y el principal es la memoria.

Pongámoslo en perspectiva. ¿Ves el logotipo en la parte superior de esta página? Ese logotipo ocupa 42Kb.

Ese logotipo necesita más memoria que un juego entero de ZX Spectrum (un ZX Spectrum de 48K tiene unos 40Kb de memoria utilizable).

Y ese logotipo no se mueve, no salta obstáculos, no dispara a los malos... ni hace nada más que quedarse ahí.

Meter un juego en la memoria disponible es un reto y medio. Lo aprendí a las malas al desarrollar Cocoa and the Time Machine, mi primer juego con MPAGD. Está muy bien tener una animación de 12 fotogramas que muestre con todo detalle cómo se desmoronan las estalactitas al caer al suelo. Pero esa única animación necesitaba unos 500 bytes, cerca del 3% del espacio total disponible (¡acabó quedándose en 1 fotograma!).

Tuve que hacer muchos otros sacrificios: mi epopeya de 100 pantallas se redujo a unas 30, descarté otros fotogramas de animación, y un fin de semana refactorizando todo el código de jugabilidad me ahorró otros 800 bytes más o menos... que acabé usando para mejorar otros aspectos del juego.

A diferencia del software moderno, donde la memoria no es problema y todo va de «¿qué puedo meter?», diseñar para las limitaciones de un ordenador retro va más de «¿qué puedo quitar?».

Y esa es la mitad de la diversión.

MPAGD tiene un lenguaje de scripts sencillo que puedes usar para personalizar

tu juego a tu gusto. Y digo sencillo de verdad... hasta yo lo domino más o menos, y lo último que programé fue un poco de COBOL hacia 1992. Su conjunto de instrucciones se parece a BASIC... es como un BASIC más básico todavía.

Puede ser sencillo, pero no tiene por qué ser simplista. De hecho, puedes crear juegos bastante complejos, inventar nuevas mecánicas... y hacer todo lo que consigas meter en 40K de memoria.

Así que pensé en empezar este blog, una guía para torpes sobre desarrollo de juegos retro, para cuarentones y cincuentones atolondrados que siguen queriendo a su Speccy* (*hay otros ordenadores retro de 8 bits disponibles). Así que, aunque nunca hayas programado, vamos a crear un juego con MPAGD. Será divertido, te lo prometo.

Todos los tutoriales de MPAGD