Bomberman Arena is a shared-screen maze battle for RCWeb. One browser becomes the full arena display, while every phone becomes a live controller for its own bomber. Players weave through walls and crates, plant bombs, uncover upgrades, and try to be the last player standing.


Bomberman Arena turns the familiar bomb-maze formula into a lively room game. The shared screen shows the whole field: solid walls, breakable crates, live bombs, blast flames, powerups, round countdowns, and the scoreboard. Phones handle the private player-side interaction: movement and bomb placement.
The arena is built around round-based survival. Living players move through the maze, break crates, and uncover powerups that can increase bomb capacity or movement speed. The last living bomber wins the round, keeps the win on the board, and the maze resets for the next one.
Getting eliminated takes you out until the next round.
Open /bomberman/ on the shared screen. Players scan the QR code to open /bomberman-c/ on their phones in the same room. As soon as players are connected, the arena can begin and rebuild itself round after round automatically.
Use the direction pad on your phone to move through the maze. While alive, the action button places a bomb. Bombs explode after a short fuse, sending flames outward in straight lines until they hit a wall or run out of range.
Blow up crates to open paths and reveal powerups. Bomb upgrades increase how many bombs you can have active at once, and speed upgrades let you move more aggressively through the maze.
If a blast catches you, you are out for the rest of the round. When only one living player remains, the round ends, the winner gets the win, and the arena resets for the next round.
Bomberman Arena uses RCWeb's room-based WebSocket layer to split the game between one display and many phone controllers. The display and all phones join the same RCWeb room using the rc values injected by the Java server. The display publishes a QR code with that room already selected, so players can jump directly into the correct arena without setup friction.
The display owns the live simulation. It builds the maze, tracks bombs, flames, crates, powerups, player positions, round flow, and round wins, and decides when rounds begin and end. Because the shared screen is the single source of truth, every phone sees the same blasts, the same upgrades, and the same winner resolution.
Phones communicate with the display through comms.js and RCWeb function calls. A controller registers a player, streams movement direction and action presses, and receives targeted updates for mode, round wins, bomb count, and action label. The result feels like a proper shared arcade arena, but it runs on RCWeb's lightweight Java backend and vanilla browser apps.