Frozen Bubble: Fan Edition

A C++ / SDL3 port of the classic Frozen Bubble 2, reimplementing its gameplay, network multiplayer and chain-reaction system. The original was Linux-only; this port runs on Linux, macOS, Windows, Android, and in the browser.

Get it on Google Play

Play in your browser · Downloads · Source · Privacy policy

A 1-player game: score panel, shot count and time, and a 3 DROPPED! popup

Download

Platform File
Android Google Play — phones, tablets and TV
Linux frozen-bubble-linux-x86_64.AppImage — chmod +x and run
macOS frozen-bubble-macos-arm64.dmg — Apple Silicon only
Windows frozen-bubble-windows-setup.exe — unsigned, SmartScreen will warn
Android (sideload) frozen-bubble-android-tv.apk — same APK as Play, for TV boxes and devices without Play
Browser Play on itch.io — desktop and mobile, including iPhone

Downloads are on the releases page; itch.io hosts the browser version.

There is no iOS download. The build exists but is unsigned and experimental, so a device will not install it without re-signing — see docs/IOS.md. To play on an iPhone, use the browser build.

What it does

Guides

Screens

The title menu in the Modern style

How to play: the launcher, the next bubble and the Swap pocket, each labelled with its control

The end of a two-player round: You Win! with the round's stats along the top

An online game room: match rules, players, bots and chat

The post-round statistics table in a five-player game

Playing online

The game ships with no server of its own. On startup it fetches a community-maintained list of public servers, and anyone can run one — the server lives in server/, and SetupServer.md covers hosting your own.

Chat is not moderated by the developer. In the lobby or a room, press B, tap REPORT / BLOCK above the chat, or tap someone's chat line to open the list of players: Block hides a player's messages on your device straight away, and Report sends a note to that server's operator. The host of a room can also remove a player from it. Reports are never acted on automatically: nicknames are chosen fresh on every connection, so automatic kicks on report would just hand everyone a way to remove anyone they liked. The typed /block and /report commands still work.

Community

Join the Discord — the same invite the Join Discord server row on the NET GAME server list and the online lobby opens in your browser. There's an alert whenever someone connects to a public server, plus a result alert at the end of every round — game mode, winner (or draw), and the full player roster — if you're looking for an opponent or just keeping an eye on how things are going. The server also posts its weekly rankings there once a day: round wins, round losses and bubbles popped, reset every Monday at 00:00 UTC, bots not counted. The same rankings are on the Weekly rankings screen in the online lobby, and on the web: Weekly rankings. Single-player runs have their own Highscores board.

Running your own server? It can post its own join and round-result alerts to a Discord channel of your choosing — see SetupServer.md.

Publisher and contact

Frozen Bubble for Android is published on Google Play by Solina AI LLC, a Texas limited liability company. The app is free software and the company makes no claim over the original game's code, artwork or music — see Credits below.

There is no support email. Questions, bug reports, privacy and data-removal requests all go to the public issue tracker, which is read by the maintainer: github.com/dchau360/frozen-bubble-sdl3/issues. Using the tracker rather than mail keeps the history public, so an answer to one player is visible to the next one with the same question.

The privacy policy covers what the app stores and what the ads in the Android build collect.

Credits

This is a port, not an original work. Frozen Bubble was created by the Frozen-Bubble Team — Guillaume Cottenceau (design and programming), Alexis Younes and Amaury Amblard-Ladurantie (artwork), and Matthias Le Bidan (soundtrack), with contributions from many others listed in AUTHORS. The artwork and music here are theirs.

Licensed under the GNU General Public License v2, the same licence as the original. The complete source is on GitHub, and bug reports are welcome via GitHub Issues.