Multiplayer Parkour Demo

For this project I had one main goal. I wanted to attempt to create a first person controller that felt like it would belong in a AAA game with advanced movement, and I also wanted to challenge myself to have this movement working with Unreal’s Replication system to have multiplayer on a dedicated server. There isn’t currently a way to play it without downloading the project and playing it inside of Unreal Engine 5 but you can check out this video that showcases the movement.

My favorite part of the game

I do genuinely enjoy the movement in this game a lot. I would find myself tweaking a variable then after testing I would get lost running around the level, sliding, and wall-running. In my opinion it feels very fluid and rewarding to chain together these movement mechanics. The sliding is my favorite as the slide force increases based on the slope of the ground, meaning if you catch a slope just right it feels so good to speed up.

What would I change about this game

I would love to add more to the experience, I thought vaulting would be cool and even had a working version of it but ended up removing it because I felt that it slowed down what was a really fast movement system. I also would like to change up my implementation of these systems, I attempted to keep everything scalable so that integrating new movement modes was easy but Im not sure that I completely nailed that aspect.

How can you play the game

Right now there isn’t an easy way to play it. I jumped straight into another project and never built a server or standalone version of it. The best way would probably to clone the github repository and play it in the engine… That being said I would love to come back and update this once I do get around to building the project.

Any interesting bugs or trouble in development

I faced a good bit of bugs in this game due to multiplayer and replication issues. I have only completed a few projects using replication and I would often have trouble knowing when something would automatically be replicated by Unreal’s character controller versus if I had to replicate it myself. I found that it was often much easier to deal with adding a new system if I knew that Unreal would not help me at all as apposed to fighting with its prebuilt systems to get the result that I wanted.