Bone Dry - Human designed, Claude built.
A bartending simulation game that teaches players how to create real recipes and measure their pours from behind the bar. Every character, bottle, and glass is illustrated by hand, then brought to life as a playable game with Claude Code.
How can we teach users to bartend using a game that simulates the high-pressure situation of a real shift?
Designing for Learning
Before designing any screens, I researched how games can actually teach, and used my findings to design Bone Dry’s flow.
Gamification improves retention
A game that just shows the recipe once and moves on will teach much less than one that keeps quizzing the player on drinks they made three "shifts" ago.
Flow theory → Difficulty reacts to the player
A task too easy produces boredom, one too hard produces anxiety, and flow lives in the space between.
Bone Dry uses dynamic difficulty adjustment, a behind-the-scenes loop that runs for every order of the shift:
- Read the room. The game tracks pour accuracy, hesitation, hint use, and streaks, without ever showing the user a stress meter.
- Adjust the difficulty. Those signals change the order rate, number of orders at once, time per order, and drink complexity up or down in small steps. A bad run gives the player room to recover instead of punishing them.
- Player responds. The next order reflects that adjustment, and its outcome feeds the next decision. The bar reacts to the player instead of moving on a fixed timer.
Stress → Orders behave differently over time
As for stress: users can handle more stress when performing a task they’ve performed before, but need a calmer environment when performing a new or more complex task.
Design principle: A brand new drink opens with its recipe card right after the customer orders. A drink the player has made before keeps the recipe card tucked in the corner. They can open it once per order, but it costs them part of their tip.
Game logic

Every frame used in Bone Dry was drawn by hand in Procreate, and then imported into Figma, where I made the UI design decisions for each screen.
The screens were then transferred to Claude Code to bring the game to life using the Figma MCP.
Design round 1





Decisions after Round 1
What I kept:
I received positive feedback regarding having a visual difference between the customer who is currently ordering, and the customers who are waiting. I ended up keeping this for the rest of the game, but with a twist.
What I changed:
The bar screen felt crowded and had a very high contrast. Looking back, the flow for choosing new ingredients to use was quite confusing, but this didn’t get addressed until round 3.
Round 2
Before working on this round, I defined a concept behind the bar itself. Inspired by these 3 images pulled from my mood board, I decided that the story behind the game would be that the user has found themselves in the land of the dead as a bartender at a bar called “Bone Dry.” When talking to each of the spirits, the user is able to see the skeleton’s human form.







One significant thing I did during round one was define the custom font set for the game. I crated each one by hand, and for specific purposes.
What I changed:
The contrast was far too high and the screen was still too busy, even with the outline-only illustrations. So in the 3rd round, I refined the illustrations, adding a low opacity fill to all of the drinks. I also decided to position them in a scrollable row rather than a grid-like bar structure.
Round 3 - Final







Start screen + modes


Design system











