GameDevelopment

Fire Brigade Escape Room

About the project

The Fire Brigade Escape Room is a project where fire man need to solve puzzles based around the information they learn at the fire brigade. This project was already in process and we got the task to polish the game and add some new features.

Project type: Game

Software used: Rider, Unreal

Language used: Blueprints

Role: Programmer

Team: 2 Programmer's

My Input

Multiplayer

I enhanced a VR Escape Room game, designed for the Fire Brigade to solve puzzles based on their training, by implementing multiplayer functionality using Unreal Engine 5. This project involved transforming the game from a single-player experience to one where multiple players can interact and collaborate in real-time within a virtual environment.

Implemented Features:

Item Movement Replication: Synchronized item movements so when a player grabs or moves an item, the action is visible to the other player.

Puzzle Synchronization: Enabled puzzles to recognize and respond to inputs from multiple players, allowing collaborative problem-solving.

Challenges and Solutions:

Lack of Information: One of the major challenges was the scarcity of resources and information about implementing multiplayer in VR. I overcame this through extensive research, trial and error, and by documenting my findings for future reference.

Invisible Items and Puzzle Sync Issues:
I encountered issues where items became invisible when grabbed by the client and puzzles did not synchronize correctly between the host and client. I resolved these through persistent debugging and refining the replication process.

Tools and Frameworks:

I did not use any specific tools, plugins, or frameworks for the multiplayer implementation but I did set up a Perforce server for version control to facilitate collaboration and manage changes effectively.

Performance and Bug Fixes:

I established a Perforce server to allow multiple team members to work on the project without reuploading the entire project. This setup was crucial in troubleshooting issues where fixing one puzzle would cause another to malfunction. Using version control, we could revert to previous states and identify the changes needed to resolve the bugs.

Testing:

Initially, multiplayer functionality was tested by playing together in VR. To avoid VR-induced dizziness and enable solo testing, I created a first-person player mode, simplifying and speeding up the testing process.

Key Learnings and Successes:

The most rewarding aspect was mastering the complexities of multiplayer implementation, understanding the underlying concepts, and documenting the process for future use. This project taught me valuable lessons in persistence and problem-solving, as pushing through the challenges led to a deep understanding and successful execution of multiplayer VR.

Additional Highlights:

Despite the difficulties and low motivation due to the lack of available information, I persevered and completed the project. This experience not only strengthened my technical skills but also enhanced my ability to overcome obstacles in game development.

Copyright © Made By Nick van Luyk