Beep Boop (🛠️ Work In Progress 🛠️)

Game Design

For this project I have decided to adhere to 3 simple design motifs: Toy Box, Embrace Distraction, and Comical. Throughout the development process I will be designing puzzles and interactable objects that adhere to these design motifs and scale for multiple players.

Game Engines

Most of my game development projects have been done using Unity. For this project I decided to make the switch to Unreal Engine to take advantage of the high fidelity assets and strengthen my C++ skills. Luckily, many of the systems between the two game engines are similar and I've been able to apply the skills I've learned in Unity to this project.

Multiplayer Game Development

This project is my first experience with programming a networked multiplayer game. The added complexity of developing a networked game has proven to be a fun and exciting challenge in my game development journey!

C++
Unreal Engine
Game Engineering
Networking

Emote System

As this project is still a work in progress, the videos here will be showcasing game mechanics and designs as I develop them.

Dev Log

To adhere to the design motifs of Comedy and Embracing Distraction, I developed an emote system so players can goof around and interact with each other as they navigate the game world. This system involved creating a functional UI menu, configuring the player's animation state machine, and ensuring that animations were correctly replicated to each connected client.

Pressure Plates

I developed a pressure plate system that can be used as a switch and make the game world more interactable. The pressure plates can be linked to other game objects or events and can be triggered by the player or other objects. This system is perfect for doors, platforms, and generating other in-game events.

Creating & Joining a Server

Unreal Engine uses the client-server model to run a game across multiple machines. In particular, one machine acts as a listen server which allows those with the right credentials to connect as a client and run the simulation. I made use of Unreal Engine's multiplayer subsystem to build the functionality for creating and joining game sessions. One player acts as a host and creates the game server on their machine, while other players can join and connect as a client.

Creating & Joining a Server