What it does
This pack is data and a preset. bubbleBobblePreset returns a configuration for the enemy-capture session, which,
with the platform and bubble packs beneath it, plays the game: blow bubbles to trap monsters, pop them in chains for
rising scores and fruit, collect items, spell the six letters for an extra life, and clear each round before the
hurry-up and the chaser that follows it.
The rounds carry what made the original play the way it did. Each map has its per-cell air currents, so bubbles drift and gather where the currents meet. Monsters drop in at their own delays. Trapped times shorten from 30 seconds on the first rounds to one on the last. The points item is chosen by the rule the arcade used, special items appear when hidden counters reach their thresholds, and special bubbles rise in through floor gaps: water that sweeps monsters along the floor and carries the player with it, fire that burns the floor, lightning that crosses the screen. The last round gives the player lightning breath against a boss that takes 100 hits on the arcade setting.
The maps and currents come from the level data of a faithful home-computer conversion, with the row it dropped put back, and the monsters, timings and items from published dumps of the arcade program. Where the sources give no units, such as for run and bubble speeds, the pack documents the mapping it uses, and the less certain choices are exposed as options.
Features
- 100 rounds — 32 by 26 cell maps of solid walls and pass-through platforms, decoded by
bubbleBobbleRound. - Air currents — per-cell currents for every round, which carry bubbles and gather them where they converge.
- Nine monster kinds — walkers, rock throwers, ricochets, fliers, bouncers, fire breathers, bottle throwers, invaders that fire downwards, and the final boss, entering at their own delays.
- Arcade timings — trapped time, hurry-up, the chaser's arrival and speed, monster run speed and bubble speed per round.
- Scoring — chained pops from 1,000 to 64,000 points, the fruit they turn into, leftover-bubble fruit rounds and extra lives by score.
- Items — the points item by the arcade's rule and special items earned by counters, such as sweets, a shoe, a clock, bombs, umbrellas that skip rounds, a potion, a heart and a cross.
- Special bubbles — water streams that sweep and carry, fire and lightning, rising in through floor gaps.
- Bonus letters — letter bubbles offered by the size of your best chain; six letters give a life.
- Exported tables — round data, shots, points items, special items, fruit rounds and the map legend.
Good for
- A faithful single-screen bubble-trapping platformer in the style of Bubble Bobble, all 100 rounds.
- A short arcade set for a demo or a party mode, using only the rounds you list.
- A practice or accessibility mode, starting at any round, with more lives or invulnerable players.
- Your own bubble game, borrowing the monster kinds, round maps or air currents and adding levels of your own.
- One or two players, as in the arcade.
Make it yours
The preset takes a difficulty (easy, normal or arcade), the starting round from 1 to 100, one or two players,
starting lives, the extra-life score thresholds, a list of rounds to play in order, a seed, and a switch that stops
players dying. It returns a plain enemy-capture configuration, so anything the session supports, such as the
trapped time, bubble range, float speed and anger speed, can be changed after that, and the exported tables let you
build a different set of rounds altogether.
Two materially different uses: the whole 100-round arcade game on the arcade difficulty with three lives and the original extra-life scores; and a five-round sampler of hand-picked rounds on easy, with invulnerable players, for a kiosk or a child's first go.
A quick look
Start a capture game from the preset, and read one round's data:
const EC = game.enemyCapture, BC = game.bubbleCave;
const g = EC.createCaptureGame(BC.bubbleBobblePreset({ difficulty: 'normal', startRound: 1 }));
const round11 = BC.bubbleBobbleRound(11); // one round: rows, currents, monsters, timings
Works with
enemy-capture— required: the capture-and-clear session that plays this configuration.bubble-trap— the bubbles themselves, for bubble mechanics without the arcade structure.platform-map,platform-walkerandplatform-enemies— the platform world beneath the session.
Good to know
- Layouts and currents come from a faithful conversion's data checked against arcade maps, so small differences from the arcade on a few rounds cannot be ruled out.
- Movement, bubble and projectile speeds are estimates from play where the arcade data has no documented units.
- The two-player true ending, the super mode, secret rooms and warps, name codes, fireball bubbles, the rarer special items and the dynamic difficulty counter are not reproduced.
- Water carries the player until it drains, as the sources describe; jumping out is an option, not the default.






