Player promise
01Find ingredients in the wild, then make something useful with them
Exploration and cooking needed to depend on each other, not sit beside each other as separate mechanics.
Cook. Explore. Deliver.

An AI-assisted 2D art experiment became a public cooking game with timed orders, persistent world state and a final forest feast.
I was the game designer and primary programmer, responsible for systems, UX, content integration, playtesting, trailer production and itch.io publishing.

Role
Creator, designer & primary programmer
Systems, UX, content and publishing
Development
April–August 2025
Public beta in June
Platform
Windows
Public beta on itch.io
Engine
Unity 6 + C#
2D URP project
Scope
10 public ranks
Foraging, orders and a final feast
The starting constraint
On 7 April 2025, I set out to test whether generated images could support a consistent 2D game. The plan was one mechanic, one recording and then move on.
A friend's cooking-game suggestion gave the experiment a direction two days later. On 10 April, I merged it with Gather & Grow, a foraging prototype I had already started. Gathering gave the cooking game a world; cooking gave the gathering prototype a purpose.
The brief after the pivot
Player promise
01Exploration and cooking needed to depend on each other, not sit beside each other as separate mechanics.
Production constraint
02The art style had to remain consistent across UI, items, stations, animals and a growing map.
Finish line
03A clear beginning and ending, reliable saves, a trailer and a downloadable build mattered more than an endless feature list.
The player promise
At roughly 25 ingredients, the project had plenty to collect and no strong reason to keep collecting. I stopped adding content and asked a simpler question: what does the player do, and why should they care?

Read the landscape and gather renewable ingredients from plants, animals and fishing spots.

Cut, mix, boil, bake or fry ingredients at dedicated stations.

Combine processed items into a meal that matches a live order.

Serve before the timer expires to earn coins and advance toward the next rank.

Ranks open recipes, stations, order capacity and new parts of the wilderness.

Reach rank 10 and cook the animals' requested feast menu.
Orders turn recipes into choices. Ranks turn orders into direction. The feast gives progression an ending.
Recipe for a game
The plan changed whenever a build exposed the next problem. The timeline shows what I chose and what changed.
Choose a development stage
7 April 2025
Starting point
A one-to-two-day visual experiment with one mechanic, one scene and a video at the end.
The call
Keep the question narrow enough to answer by building, not by planning a larger project.
Result
A character, item set and gathering prototype existed within days, which made the next idea cheap to test.
Design decisions
Clarifying progression and feedback often improved the game more than adding another feature.
Under the cookbook
ScriptableObjects define items, recipes, meals and stations. Cooking, fishing and orders add runtime state on top of that shared content model.
63
item definitions
32
recipe definitions
57
meal definitions
9
station definitions
Counts from the current working Unity project; they are not a verified inventory of the downloadable August build.
From ingredient data to player goal
ScriptableObjects
Item assets define stack size, spoilage, burning and plating rules. Recipe assets define station inputs, outputs and processing time. Meal assets list the ingredients they accept.
State + persistence
Easy Save 3 provides the storage layer; each subsystem restores its own station contents, active recipes, timers, ranks and feast slots.
70% current-rank pool
On 70% of rolls, order generation draws from the current-rank meal pool; otherwise it draws from all unlocked meals, which keeps older recipes in circulation.
The public build
The interface keeps the chain visible across current orders, inventory, nearby stations, the cookbook and the map.
Outside the builder's head
I had tested the spoilage timer until it felt obvious. A friend seeing it for the first time thought food spoiled almost immediately.
The timer behaved as coded, but a new player could not predict it. I used external tests to check timing, icon clarity and interaction rules before adding more polish.
“Why is my food rotting instantly?”
Earlier tests also found
Making of
The making-of video shows why I changed direction, where the scope grew and how I decided to finish.
Game development case study
One public build, from first test to final feast.