Skip to content

CaptainCo0L/bomberman

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Bomberman

A 4-player arcade Bomberman built in Rust with the Bevy 0.17 game engine. Play against AI bots or a friend on a randomized destructible arena. All graphics are code-generated and all sound is synthesized at runtime — there are no asset files.

Download (Windows)

Grab the latest standalone build — no install, no extra files, just double-click:

Download bomberman-windows-x64.exe

Or browse all builds on the releases page. Prefer to build it yourself? See Build & Run below.

Features

  • Game modes
    • Solo — you vs 3 AI bots
    • Duo — 2 humans vs 2 AI bots
    • Local 2-Player — two humans, no AI
  • Smart AI — bots forecast bomb blasts (danger map), pathfind with BFS, hunt the nearest enemy, dig through crates to reach you, and only bomb when they have a verified escape (so they don't blow themselves up).
  • Powerups dropped by destroyed crates:
    • 💣 Bomb — carry one more bomb at a time
    • 🔥 Fire — bigger blast radius
    • Speed — move faster
  • Bomb-kick — run into a bomb to send it sliding; it explodes on impact with a wall, crate, or player.
  • Procedural graphics (checkerboard floor, beveled walls/crates, round players, pulsing bombs, fading explosions) and synthesized chiptune audio + sound effects.

Controls

Action Player 1 Player 2
Move W A S D Arrow keys
Drop bomb Space Enter

Menu: press 1, 2, or 3 to pick a mode and start. Game over: press Enter to return to the menu.

Kicking: walk into one of your own bombs to push it; it slides until it hits something and detonates on contact.

Build & Run

You need the Rust toolchain (stable, edition 2024).

git clone https://github.com/CaptainCo0L/bomberman.git
cd bomberman
cargo run

The first build compiles Bevy and may take a few minutes; subsequent runs are fast. For a fully optimized build:

cargo run --release

Tests

The pure grid logic (blast propagation, collision, coordinate math) is unit-tested:

cargo test

How it's organized

File Responsibility
src/main.rs App setup, state machine, system scheduling
src/grid.rs Grid math + blast computation (unit-tested, no Bevy systems)
src/setup.rs Board generation and per-match spawning
src/player.rs Input → intent, movement, bomb placement, kicking
src/bomb.rs Fuses, detonation, sliding bombs, powerup drops/pickup
src/ai.rs Danger map, pathfinding, and the bot decision brain
src/gfx.rs Shared meshes/materials and entity animations
src/audio.rs In-memory WAV synthesis (SFX + music)
src/ui.rs Menu and game-over screens
src/components.rs, src/resources.rs ECS components and resources

About

4-player Bevy bomberman with AI bots, powerups, bomb-kicking, and synthesized audio

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages