DishDash
DishDash is a 3D cooking and time-management game developed in Unity, featuring both single-player and online multiplayer modes. Players prepare ingredients, cook meals, and deliver completed dishes under time pressure while managing multiple kitchen stations. Originally developed as a single-player experience, the project was later expanded with online multiplayer functionality using Unity Netcode for GameObjects, allowing players to compete in synchronized real-time matches.
Key Features
- Single-player mode with progressively increasing order complexity.
- Online multiplayer mode using Unity Netcode for GameObjects.
- Real-time synchronized gameplay with shared match state.
- Ingredient preparation, cooking stations, and order delivery systems.
- Data-driven recipe, ingredient, and order configuration using Scriptable Objects.
- Time-based scoring system with performance evaluation.
- Complete game flow including menus, lobby system, pause, and restart.
- Playable on PC and WebGL (browser).
Screenshots

Challenges & Solutions
Challenge
Synchronizing gameplay state across multiple clients in online multiplayer while maintaining responsiveness.
Solution
Implemented authoritative server logic using Netcode for GameObjects, synchronizing player actions and order states while minimizing latency issues through careful RPC and state management.
Challenge
Designing systems flexible enough to support both single-player and multiplayer without duplicating logic.
Solution
Structured gameplay systems to be modular and reusable, separating core mechanics from networking logic. Gameplay data such as recipes and orders were managed using Scriptable Objects to allow balancing without modifying core systems.
Challenge
Maintaining gameplay clarity in a fast-paced environment with multiple simultaneous actions.
Solution
Refined UI feedback, interaction indicators, and timing systems through iterative playtesting to ensure clarity and responsiveness.
Project Overview
Technologies
Development Process
DishDash began as a single-player cooking game focused on building structured gameplay systems including order management, cooking logic, scoring, and timed objectives. After stabilizing the core mechanics, the project was expanded into a multiplayer experience using Unity Netcode for GameObjects. The multiplayer implementation required restructuring certain systems to support synchronized state management, lobby handling, and real-time player interaction. The final development phase focused on balancing, UI refinement, and deployment to WebGL, resulting in a complete project demonstrating both gameplay system design and online networking integration.
Timeline
Month 1
Designed and implemented core single-player systems including ingredient preparation, cooking logic, order management, and scoring.
Month 2
Refactored gameplay systems for modularity and began multiplayer architecture research and experimentation with Unity Netcode for GameObjects.
Month 3
Integrated online multiplayer including player spawning, synchronized actions, RPC communication, and authoritative state handling.
Month 4
Implemented lobby system, improved synchronization stability, conducted multiplayer playtesting, optimized performance, and deployed WebGL build.