top of page
logo.png

January 2022
- June 2022

Single Player | Top-down | Cooking

All assets & coding created by Kevin Kincaid

Cooking Wizard is a top-down, third person cooking game.  The players must act as both chef and waiter, taking orders and delivering food in a timely manner.  If customers are left waiting, they will storm out and give your restaurant a negative review.  In addition, there are magical hazards players must avoid in order to make their restaurant a success!

 

Cooking Wizard began as a school project for my Gameplay Scripting class, but I continued working on the project after completing the course.  I created the game design and completed the programming and asset modeling.   Free assets utilized for the sound and particle FX.  Cooking Wizard went through several different iterations during development.  It was later selected as a game design finalist in SCAD’s Entelechy competition.

Cooking Wizard Current Version

Two Jobs at Once!

Compared to other cooking-based restaurant games, players must do more than simply complete  the orders that appear onscreen. The Wizards must also manage the dining room by checking on customers and delivering food in a timely manner.

Back of House

Front of House

cook v3 1.png
cook v3 3.png
  • Gather Ingredients

  • Prepare Food based on Orders

  • Keep Food from Burning

  • Keep a clean Kitchen

Avoid the Magical Hazards that are present in certain Kitchens

  • Watch for arriving Customers

  • Take Orders from Customers

  • Monitor Customer Satisfaction

  • Deliver Food to the correct tables

Guests left unattended may throw Hexes at the Kitchen Staff

Keeping It Simple

All interactive elements in the game are organized using parent blueprints. Each class has an specific enumerator to identify the specific child class it belongs to. Other than the player, table, and a few miscellaneous blueprints, everything is a Customer, Countertop, Ingredient, Cookware, or Meal. 

Customers: are assigned to tables & generate an order. They slowly get unhappier until they are served or leave

Countertop: Include stoves and other appliances. Cookware can be placed on top of them.

Ingredients: Can be carried &  placed into Cookware.

Cookware: Turns ingredients into a Meal after a certain amount of time elapses

Meal: Completed food order. Must be grabbed from Cookware onto a plate (specific type of cookware) and delivered to Customers.

The Player interacts using the mouse.

 

Left Click checks if the player is next to a countertop, and then grabs or drops items accordingly. If they are holding an ingredient next to an empty cauldron, the ingredient is added. Alternatively, If a player is holding nothing and is near a frying pan, the cookware is picked up.

Right Click interacts with Customers if any are nearby.

Development Process

Initial Concept & Development

cook sketch map.png
cook sketches.jpg

In the scripting course, we were given few requirements for the game concept.  Requirements focused on scope and certain assets such as pickup and power-ups.  Given this broad starting point, I created a cooking-based game where the player collects ingredients from the surrounding environment and then returns to home base to cook the food.  I added a wizard aspect because I enjoy the aesthetic.

Cooking Wizard Prototype Graybox

This game version was developed over eight weeks.  Players could see the ingredients needed for each recipe and a time limit.  The landscape was littered with hazards that would damage players.  If a player died, they respawned back at the base.

This graybox version was submitted as the prototype milestone for the course.  My professor’s feedback was that the core gameplay was not strong enough, but that the number of interactive elements was impressive.  He suggested I refocus upon the cooking aspect of gameplay rather than item retrieval.

Redirection & Refocus

Version 2 Cooking
Version 2 Customer Service
Version 2 Tutorial

I began simplifying the scenario.  The goal now was to earn an excellent restaurant rating by feeding customers quickly.  Each customer had a satisfaction level that slowly lowered as they failed to receive service.  If a player took too long, the customer would storm out of the room and the restaurant rating would decrease.

Cooking Wizard Version 1 

I had only two weeks between when the graybox and the final project was due to make changes.  The environment design changed significantly between version 1 and 2, while certain hazards developed for the original level were used in the new game.  The lava hazard appears in later kitchens and adds a degree of difficulty in collecting ingredients.  I implemented both the customer blueprint actors and the new system for creating meal orders in two days’ time.

Starting From Scratch

The following quarter, I redesigned the game with the goal of submitting it to SCAD’s Entelechy competition.  The largest difference was in rebuilding the system in a top-down format in order to put the focus on managing orders.  In a top-down perspective, the player can see more information and make better decisions.


I also made a variety of backend changes.  I utilized parent classes and enumerators to simplify the interactions and organize function calls.  This allowed me to add cooking elements such as cauldrons and chopping boards giving variety to later levels. 

cook title.png
cook v3 3.png
cook v3 1.png
cook v3 2.png

This was my first Unreal project that reached the level of a fully-functional video game.  I learned game design principles and effective structure of a core system.  I may return to this system in the future to restructure it, but I am satisfied with the project as it stands.

bottom of page