Bomberman on FPGA

A 4-player recreation of the classic game Bomberman, implemented entirely in Verilog and deployed on multiple Basys 3 FPGAs linked via UART.

See Gameplay

Project Overview

Objective

To design and build a multiplayer, hardware-based game from the ground up. The project focuses on implementing complex game logic, real-time animation, and inter-board communication using low-level hardware description languages.

Result

A fully functional 4-player Bomberman game where each player has unique character animations. The system handles simultaneous bomb placement, chain reactions, player respawns, and a synchronized game state across all connected FPGA boards.

Bomberman Gameplay Screenshot

Key Features

Hardware-Level Game Logic

All game mechanics, including player movement, collision detection, bomb timers, and explosion physics, are implemented directly in Verilog, ensuring maximum performance and low latency.

Bomb Chaining Logic

4-Player UART Communication

A master-slave architecture using UART synchronizes the game state across four Basys 3 boards. Player inputs from any board are processed by the master, which then broadcasts the updated state to all slaves.

UART Communication Protocol

Custom Character Animation

Each of the four playable characters features unique, pixel-art sprites and multi-frame walking animations, rendered in real-time on the VGA display based on player input.

Character Sprite Animation

Dynamic Bomb & Explosion System

Bombs feature a ticking animation that speeds up before detonation. Explosions propagate in a cross pattern and can trigger "bomb chaining," where one explosion sets off others in its blast radius.

Bomb Explosion Animation

Technology & Concepts

  • Verilog
  • Basys 3 FPGA
  • VGA Video Generation
  • UART Protocol
  • Finite State Machines (FSM)
  • Memory-Mapped I/O
  • Block RAM (BRAM)
  • Pixel Art & Animation
  • Live Gameplay

    See It In Action

    This video demonstrates the final hardware in action. Watch as four players navigate the map, drop bombs, and compete in real-time. The demo highlights the fluid animation, responsive controls, and the successful implementation of the multiplayer UART link.

    Watch Demo ↗