CoffeeBot, is a 3D, physics-based, management simulator game, with gameplay that is reminiscent of Overcooked and Totally Reliable Delivery Service. Play as Serg.io, a former bomb-defusing robot who's trying to make a living by delivering coffee in a chaotic physics-based coffee shop.
"Shoutout to 4-Sided Studios for their Coffeebot game, had a lot of fun playing that." - Conor Hamilton, Talent Acquisition & Employer Branding Specialist at BlackShamrock.
Check out the CoffeeBot HighLight on GeekIreland.
Studio: 4-Sided Studios
Team Size: 4
My Primary Roles: Level Designer, Technical Designer, Systems & Gameplay Programmer
My Additional Roles: Production Management, Social Media Management
Tools Used: Unity, ProBuilder, Visual Studio - C#, GitHub, Trello, Google Docs, LinkedIn, Pinterest
Timeline: October 2023 - August 2024
Responsibilities Include:
Designed the cafe level with a desired player path. Ensuring that the space was laid out to accommodate the physics of the game.
Designed the tutorial level to teach the player the pick-up, throw and crafting mechanics.
Designed the crafting, order and storage systems, while keeping in mind real-life coffee recipes.
Programmed Gameplay Systems (Craft, Order, Unlock Coffee).
Implemented and programmed the Follow Camera & Orthographic Camera.
Implemented Gameplay UI (Money, Time, Order trackers, and Upgrade Menu).
Implemented UI indicators unique to playing with a controller.
Wrote upgrade descriptions for player clarity.
Took on Alpha and Beta playtest feedback and implemented suitable changes.
Kept up-to-date progress posts on the team's LinkedIn.
When designing the Café Level I wanted it to look and feel like an actual café, while also serving as a space for the player to play which would accommodate the physics and other mechanics of the game.
To understand how to get this feeling across, I looked at images of coffee shops and similar spaces from Pinterest to get inspiration and give the team a better idea of the space I wanted to create.
The café would need a large open space for our NPCs and Player to move around.
For our crafting system, a storage area with our ingredients was needed. However, it would need to have its own space in the level.
To accommodate our CoffeeBot Serg.io, I wanted the level to include a minimalist countertop space to collect crafted orders.
I wanted to include couches in the design like this cafe to give the level a less separated feel.
From the ideas, I mapped out some initial level ideas. I wanted the player to start at the storage area, bring resources to the crafting area, followed by bringing the crafted coffee out to the café and delivering it to the customer. Where the gameplay loop would then be repeated.
These levels were then brought to the team for discussion. Overall the team preferred the shape of C. However we liked the more open space of A, with the cluttered seating of B.
To avoid getting caught up making level drafts, I decided to create the level white box. This allowed us to get an idea of our space in the game and allowed us to make any changes we wanted from the drafts.
The level had an area for storage in the back, followed by a counter with a crafting area behind it. This led to the open area with tables and chairs which connected to the bathroom. We now had our "playground" for testing gameplay.
After our environmental artist had created assets, I updated the white box. Our level now had a sense of atmosphere, and was beginning to look a lot more like our decided cyberpunk café theme.
I decided to block off the bathroom space as it was not being used during this point of development. Eventually, this space would be replaced, as adding a bathroom would have created more work with potential mechanics and environmental assets.
As development continued over the months, the space we had was beginning to become outdated. The level needed an update for our Beta release to keep up with new development changes and decisions.
I drew up an updated concept for our level with a desired player path.
The space had the bathroom space replaced with additional NPC seating space. The level overall was also larger, giving the Player and NPCs more space to move around.
After the level was updated with these changes, we added our new assets. This included the countertop, storage shelves and recipe board.
After the level updates, I added additional assets to make the level feel more lived in and more visually like a café. Bookshelves, carpets, lights and couches.
With our game taking place in a coffee shop, naturally our Player would have to craft coffee.
Thus, a system to store ingredients and use them to craft coffees had to be made. This system would also need to allow for new coffee recipes to be unlocked, and for NPCs to be able to order these coffees.
I also wanted the system's recipes to mimic creating real-life coffee.
With our concept made. I decided on how the system would work.
The system would involve taking ingredients in boxes and storing them in crafting storage units for them to be used in crafting.
Because managing the costs of resources would be another level of complexity to the gameplay, we decided that the storage boxes would have an unlimited amount of their resource. However, the crafting storage units can only hold a certain amount of that resource.
Each box contains a tag of their respective ingredient which represents what is stored in them.
Eg. the Coffee Bean box contains the "CoffeeBean" tag.
There is an individual box for all 6 ingredients.
When interacting with a storage box in hand, the crafting storage units will check if the tag is one of the 6 ingredients.
If it is one of the ingredients, it is added to the crafting storage unit. The ingredient can be removed at any time in case the Player stores an ingredient they did not intend to.
Once a recipe is met. An icon next to the crafting storage units will show what can be currently crafted with the ingredients.
Eg. adding Coffee Beans and Milk will create a Latte. Adding Coffee Beans, Milk and Cocoa Powder will create a Mocha.
To avoid any confusion for the player. Ingredients can be placed in any order in the recipe.
Once the Player wants to craft, they press a button on their keyboard so when something is crafted is in their control.
Coffees that are crafted are tagged with their respective name. Eg. Latte is tagged as Latte.
The Player starts with three recipes and ingredients.
Americano, Cappuccino and Latte.
Coffee Beans, Milk and Water.
Once a day is over the player can unlock new recipes by purchasing them. This will unlock new ingredients, and allow the NPCs to order the new unlocked coffees.
When a NPC is spawned they choose from the list of available orders.
They update their "accepted coffee tag" to what coffee they have ordered. Eg. If they ordered a Latte their "accepted coffee tag" is "Latte".
An image and name of the coffee they have ordered is shown on a patience bar.
When the correct coffee is brought to the NPC they accept it. This removes their patience bar and replaces it with a speech bubble with a text response. The response will be positive or negative depending on how fast the player delivers the coffee.