Mobile Game — Unity
Color Bomb
A portrait mobile match-3 built with Unity 6 and URP, where the matching loop feeds a city-restoration economy rather than a score alone.
- Role
- Solo Developer — gameplay, systems design, and UI
- Period
- 2026
- Focus
- Wiring the matching loop into a progression economy while keeping board resolution isolated from input, and keeping content data-defined rather than coded.
01 / Problem
What needed solving?
A match-3 board is playable on its own but it does not hold anyone: the player has no reason to open the next level. Adding a progression layer on top of it, however, meant getting the order right between input, board resolution, level data, and economy — without any of them stepping on each other.
02 / Approach
Building the product as a whole.
I separated play from content with JSON-defined level data, funnelled all input through a single central swipe layer, and put the board behind a state flow that locks input while a resolution is running. What the player earns then flows into a separate city-restoration layer: a district map that opens piece by piece, buildings that advance in stages, and the energy economy that feeds them.
03 / Technical architecture
The system's layers
- 01
Board resolution
A locked state flow that resolves matches, falls, blockers, and special pieces in order; no new input is accepted until a resolution finishes.
- 02
Level data
Levels are defined as JSON files — board layout, objectives, move count, and blockers — with safe availability checks for content that has not shipped yet.
- 03
City restoration
The meta layer where earned energy is spent: a district map, buildings that are restored in stages, and unlock conditions tied to level progress.
- 04
Input and UI
Centralized swipe input, and a portrait-first responsive UI with safe-area handling and full-bleed backgrounds.
04 / Product scope
Key features
- 01
Matching, blockers, objectives, move limits, and scoring
- 02
Special pieces — rockets, bombs, and a colour core
- 03
JSON-defined levels and a district-based level map
- 04
City restoration: buildings advanced in stages, driven by an energy economy
- 05
Hints, retry, and complete victory and loss states
- 06
A portrait-first responsive interface with safe-area handling
05 / Stack
The tools used for this work.
- Unity 6
- C#
- Universal Render Pipeline
- Input System
- LeanTween
- TextMesh Pro
- JSON
- Android
- iOS
Interface
Product screens





Result
What changed?
The opening, district selection, level selection, and gameplay flow are playable end to end, and the city-restoration layer works. Level content is still being expanded, with content and balance work continuing before a store release.
Project links
