Retro Gaming on Adafruit PyBadge: A Creative Take on CircuitPython

314Reactor is a notable member of the Electromaker community, widely recognized for his innovative and creative projects. One of his memorable projects, the Relic Cyberware, drew inspiration from the cyberpunk genre, incorporating advanced AI with a Raspberry Pi Pico. This track record of creativity sets the stage for their latest endeavor.

The Electromaker Show
Watch Ian talk about the Checkout Challenge: Retro Gaming on an Adafruit PyBadge in this episode of The Electromaker Show

The Checkout Challenge is a retro-inspired racing game designed specifically for the Adafruit PyBadge, a microcontroller that, while compact and somewhat outdated, still offers significant creative potential. The game harkens back to the classic racing games of the '90s, where players could upgrade their vehicles and face off in intense races. However, in this modern twist, the game centers around shopping carts, combining nostalgia with a unique and playful theme.

The Adafruit PyBadge is equipped with the ATSAMD51 chip, a 32-bit microcontroller that, while not the latest in technology, still offers a robust platform for retro gaming. The PyBadge features an array of built-in components including LEDs, a small screen, and several input buttons, making it an ideal choice for compact gaming projects. Despite its age, the PyBadge’s hardware is well-suited to handle the demands of a retro racing game, balancing simplicity with the essential features needed for a fully functional gaming experience.

Checkout Game

Software Implementation

To bring the Checkout Challenge to life, 314Reactor utilized CircuitPython for programming the game. CircuitPython’s ease of use and flexibility made it possible to implement both custom code and AI-assisted solutions. Leveraging ChatGPT, 314Reactor was able to streamline various aspects of the coding process, including optimizing the game’s performance. This AI assistance was particularly valuable in handling garbage collection, a critical task given the PyBadge's limited 192 KB of RAM. The combination of human ingenuity and AI collaboration resulted in a smooth, playable game that maximizes the potential of the PyBadge’s hardware.

Art and Gameplay Design

The visual design of the Checkout Challenge game is a blend of hand-drawn pixel art and AI-generated images, creating a unique aesthetic that merges traditional and modern techniques. For the game's sprites, 314Reactor used Pyxel Edit, a powerful yet user-friendly tool for creating detailed pixel art. This allowed for the creation of charming, retro-style characters and objects that give the game its nostalgic feel. Additionally, DALL-E, an AI image generator, was employed to craft the game's menu screens and background images. This combination of human and AI-driven art brings a fresh look to the retro gaming experience, adding depth and creativity to the visual presentation.

Checkout Game

The gameplay in Checkout Challenge is reminiscent of classic '90s top-down racing games, where players navigate through a series of increasingly challenging tracks. The game features two main difficulty levels: "Bargain Hunt," an easier mode designed for casual play, and "Everyday Shopper," a more challenging mode that tests players' skills. In the game, players control a shopping cart, racing against an AI-controlled cart to collect items and avoid obstacles. The AI not only serves as a competitor but also contributes to content generation within the game, enhancing the overall experience with dynamic and unpredictable elements. This blend of classic gameplay mechanics with modern AI integration makes Checkout Challenge a unique and engaging retro gaming experience.

Did you enjoy this article?

Make sure you subscribe to The Electromaker Show for similar content and subscribe to our monthly newsletter!

Leave your feedback...