Element

A first person, hero-based arena shooter developed by Goodbye Games, a team of five talented and hard working students from the University of Bolton.

Element
Element

The Project

Element's development lasted a full academic year, with a team of 5 members. I was the sole programmer. I developed systems for dynamic weapon load-outs, hero characters, abilities & many more. I developed utility tools for myself and Designers in the team. I worked all of these features under multiplayer architecture (Photon) and integrated all art assets to blend perfectly to the game features.


Agile

We utilised an agile development scrum approach - with weekly team meetings, so we could easily identify features that were going well in the pipeline, and ones that had to be thrown in the backlog. This gave us the opportunity to refactor many features of the game as demands changed, without losing too much development time.

Systems

I created a View Model / World Model weapon system which allowed me to separate details from the first and third person character, and add hands to first person. All weapons are animated by me and use Unity's Animator State Machines to increase the fidelity of all weapons.


Multiplayer

A lot of the game was designed to focus on the networking system. This took a large chunk of development time, espeically when it has to be replicated to onwards of 12 other players at once is a daunting task. Using Photon made this task way less daunting, and allowed me to approach the game with more features in mind instead of prioritizing the basic fundamentals of the network.

Element
Element

Game Modes

The game supports multiple game modes, which is awesome for added features along the line. The way the game mode system is set out is by using inheritance, which allows for child classes to be created without the need to duplicate code - reducing code bloat within the project and enhancing the fluidity of the codebase.


UI & UX

I worked on all User Interface (UI) for Element, and integrated it all with the game systems while focusing heavily on the User Experience (UX).

Thank you!

The game came under so many iterations, and it has taught me a lot about Unity over the span of an academic year. It's a large accomplishment from me and my team - and I'm very proud of the end result.