top of page
Engine: 
Unreal
Role:
Solo Developer
Date: 
 7 jan - 24 Jan 2025
Description
Screenshot 2025-01-14 133611.png

This game was a assignment we had on learning the  multiplayer framework in unreal. It is a 1v1 arena shooter were you can choose between

different weapon and ability combinations. 

Overview

PVP Arena

Learning multiplayer

At the start of this project I was confident because I was well versed in unreal and had made first person shooters many times before. 

But this project showed me that i still have more to learn because knowing what should be server and client side was something I struggled with in the beginning. 

Also learning "replication" and late joining was some of the things I've never thought about but learned how important they were for multiplayer. 

Due to the small time frame it was not too polished but I was proud of it even with that limitation.

Screenshot 2025-01-20 131531.png
Design methodology

Since I was working with something new I decided to keep the weapons and abilities simple and fun. I also wanted to give the player a chance to customize their loadout by choosing their weapon and ability separately, allowing for more variety. 

The weapons are inspired by TF2s weapon design. You either hit or miss. This makes the rules very simple but also gives the players choices depth. And it makes the neutral game all about who can hit their shoots and dodge the enemy shots. 

​​​​

A great example is The rocket launcher, it fires straight-moving rockets that explode on impact, knocking players back. A direct hit inflicts full damage, while the explosion deals half. Pretty straight forward. 

​​

BUT: the rockets can also knock you back, so it can be used to move around the map. This makes it a risk-reward option of sacrificing health for movement. 

These types of choices the player can make is what I believe makes the game more appealing and interesting. 

And letting the player experiment and find their unique play-style was what i wanted to encourage. 

image.png

Image showing the loadout selection screen

Screenshot 2025-01-15 135819.png

Image of Rocket launcher

Issues and Summary
Issues 

It took me a while to  understand what should be client side and server side. Things like projectiles and abilities being server side but UI being client side was something I had to get used to and lead to a lot of bugs with. 

 ​

Then we have late joining which was a major problem. I made my weapons update their colors when created. The system works for 2 people because they spawn in at the same time and have the color update, but any future players will not get the correct color because for some reason. 

Turns out to fix this I needed to create a "rep notify" for the equipped weapon variable, so the model gets updated when a new player connects.  And this gets replicated to all clients. 

Summary 

After working on this project I got a new appreciation for multiplayer and enjoyed learning it in the project. I was really proud off it and tested the game with some students in school. The game was fun even in its simple state. 

Due to the small time frame it was not too polished but I was proud of it even with that limitation. And learning this new way of working was hard but rewarding. 

If I had more time I probably would have added more weapons and maybe even character presets. Like a smaller character with less health but a smaller hit box.  

If you want a more in depth look at the process read my devlog

Image showing how the late joining player cant see the weapon color of the first player. 

Screenshot 2025-03-13 141557.png
Screenshot 2025-01-20 113516.png
bottom of page