DishDash
A cooking game inspired by Overcooked!, built solo as a one-week personal challenge.
A week in Unity
I built DishDash in Unity and C# in less than a week. Players prepare ingredients and assemble dishes against the clock. I developed the core interactions first, with my partner and friends playtesting as I added features.
Play DishDash in your browser on itch.io ↗
Project challenge
Keeping food rules in the game data
I needed reusable rules for preparing and combining ingredients within a one-week deadline. Each food's ScriptableObject defined its appearance, preparation result, and possible combinations.
Recipes were stored on one ingredient. Counter interactions checked both items for a matching recipe, allowing either combination order without duplicating the data.
A shared countertop class handled taking, placing, and combining items. Preparation stations added their own rules and timers. These shared behaviours supported both the burger and pizza kitchens.
Project challenge
Making room for pizza toppings
The original system combined two food objects into one result. Adding pizzas made defining every topping combination that way cumbersome.
I kept fixed recipes for creating the base and margherita, then added toppings to the existing pizza. A pizza-specific food type tracked the topping list, with the visuals attached to the kitchen object.
This supported different pizza orders without a separate food definition for every combination, and kept the implementation manageable within the deadline.
What I'd change
Keeping interaction logic on countertops restricted where items could be used. I'd move that responsibility onto the items themselves to support interactions beyond the counters.
Read Next: Unmasked Truths