Skip to content

Creación de un juego en Arduboy

En esta sección, vamos a crear un juego sencillo en Arduboy, utilizando las funciones y librerías que hemos aprendido en las secciones anteriores. El objetivo es crear un juego de jugabilidad donde el jugador mueve un objeto en pantalla que debe recoger objetos (caramelos) y evitar obstáculos (pescados). El juego tendrá un sistema de puntuación y acabará cuando el jugador pierda todas sus vidas.

Puedes encontrar el juego completo en nuestro repositorio de Codeberg: https://codeberg.org/MakeClassicGames/ardugame. En este repositorio, encontrarás el código fuente del juego, así como los recursos necesarios (imágenes y sonidos) para que puedas compilarlo y jugarlo en tu Arduboy.

En los siguientes apartados, vamos a ver cómo crear el juego paso a paso, desde la configuración inicial hasta la implementación de la jugabilidad y el sistema de puntuación. Al final de esta sección, tendrás un juego completo que podrás cargar en tu Arduboy y jugar.

Info

Este juego requiere una serie de imágenes y sonidos que puedes descargar desde el siguiente enlace: Recursos del juego. Asegúrate de descomprimir el archivo y colocar las imágenes y sonidos en la carpeta correspondiente de tu proyecto de Arduino.

Vamos a comenzar, creando un nuevo proyecto en Arduino IDE y configurando las librerías necesarias para nuestro juego. Asegúrate de tener instaladas las librerías Arduboy2 y ArduboyPlayTune, ya que las utilizaremos para controlar la consola y reproducir sonidos y música en nuestro juego.

Vamos a partir a partir del siguiente código base, que nos permitirá inicializar la consola y establecer la configuración inicial de nuestro juego:

#include <Arduboy2.h>

#define FRAMES 25

Arduboy2 arduboy;

void setup() {
  arduboy.begin();
  arduboy.setFrameRate(FRAMES);
}

void loop() {
  if (!(arduboy.nextFrame())) return;
  arduboy.clear();
  // Aquí irá el código del juego
  arduboy.display();
}

Con este código base, es el que utilizaremos para crear nuestro juego. En la función setup(), inicializamos la consola y establecemos la tasa de fotogramas por segundo (FPS) a 25, lo que nos permitirá tener un juego fluido y con una jugabilidad adecuada. En la función loop(), comprobamos si es el momento de actualizar la pantalla y, en caso afirmativo, limpiamos la pantalla y mostramos el contenido del juego.