Calm ball sort puzzle for players aged 35 to 50
Every control a casual puzzle needs, and the board still wins the screen.
- Role
- UX/UI designer & game artist, solo
- Product
- Ball Sort · casual puzzle for mobile
- Scope
- Game and win screens, Ball materials, Playable prototype
Results
- 66colour pairs checked at the real 34 px size; the closest pair's colour distance rose from 5.3 to 13.98
- 1 paletteshared by plain, yarn and wooden balls: readability came from tuning the renders, so not one hex code changed
Ball Sort is a casual mobile puzzle for players aged 35 to 50. I designed the game and win screens, drew every flask and ball from scratch, and made yarn and wooden ball materials for Unity. The result is a prototype you can play here, with all 66 colour pairs checked at the real 34 px size.
Introduction
Twelve elements on one phone screen.
The level number, the store, the rating, an extra flask for an ad and a banner that always owns the bottom: none of them can go. With equal weight they would turn the game into a control panel, so the work was about hierarchy. Try it here: tap a flask to lift its ball, another to drop it.

It's playable.
The prototype runs right here: sort the balls, try the controls.
Layout
Three bands, placed by habit rather than novelty.
The genre lives in blue and purple, and the released games I looked at lacked depth or looked too young. The screen splits into stats, board and controls, with balance top right and pause top left, where people already look. The board gets the most height and free air above the flasks, because the top ball lifts.
Icons
Two icon families tell level from metagame.
Controls of the current level (pause, restart, undo, the extra flask) and the metagame (balance, rating, dailies) are drawn in two styles, so players see at once what affects this level and what affects overall progress. Every state is a component, so the build redraws nothing.
Readability
Readability measured at game size, not at showcase size.
Yarn and wood looked right at 216 px and turned into a blob at the real 34 px. I tuned the renders and the colour blend, then checked all 66 colour pairs at game size: the closest pair rose from 5.3 to 13.98 for yarn and 14.53 for wood, with no hex code changed.
Win screen
A win screen that only leads forward.
The game lives on purple, so the win takes a blue accent and feels different at once after every level. Only the coins earned, the rating and the way on stay: with no menu and no restart, the player stays in the loop.
Themes
Spare themes become store items.
A faint generated texture under the purple fill adds depth without getting in the way. The green and blue themes did not become the main one, so they stay ready to sell in the store with no new art.
Outcome
Outcome
The screens, every flask state and both materials come together in a playable prototype, so the game is judged in play. The material pipeline was built with Claude on my approach: the colouring method, the 34 px check and the choice of skins were mine.
What I learned
- A texture that works at showcase size proves nothing. The 34 px check found a problem the 216 px sheet hid completely.
- Genre convention is a feature for this audience, not a lack of ideas. The personality went into the materials and the win screen instead.
- Packing assets for Unity is not my daily routine. Pairing with Claude got it done; next time I would agree the export format with the engineers first.
