Collab Awards
4x Nominee for Univeristy of Staffordshire Playday!
Gravity Knight
A game created for Junior Collab in 2nd year of university. This game was created with a team of 20, divided up into groups of artists, animators, designers and tech. We worked together to create a game that was for our collab module. I was a Junior in this module as it was my 2nd year of university. I worked on the tech team by implementing the UI, Systems and UI art from the artists. I also implemented some physics actors such as the chains and banners.
- UI Implementation With Full Controller Support
- Data-driven Design For Credit, Dialogue, Level Select Systems
- Physics Actors - Chains and Banners
Trailer
Controller Support
I had a problem to solve. Controllers. For our game we wanted as a group to make sure it had controller support to make it easy to pickup and play. This then included controller support on the UI which I was in charage of.
To do this I leveraged Unreal's UI navigation system that allowed for easier controller support. I did not use common UI but that would be something for me to look into down the line.
Data Driven Systems
Level Selection System
To make this easier for designers I wanted to make this data-driven so they could add new levels when they are complete with ease. I created a data table that allowed designers to add a level name an reference to the level. These would be generated on loading the level selection screen. Cutting down on the amount of modifying the widget and making it simpler for others.
Dialouge System
As this was a team game, I wanted this also to be easy for designers to add new values through a data table. This was paired with a dialouge table so you could use dialouge with differetn systems like a tutorial dialouge and normal speaking dialouge.
Credits System
For the games credits I could have made it so I manually added text for each person, but I wanted it easier to modify and add new people to the credits. To solve this problem I had to find some thing to hold the data, as you could have guessed data tables! This system allowed for easier additions of new people over the course of the development.
Options System
Options have always been a harsh point for me, having to create all of them, and they were all quite similar. To fix this I could take in an OOP approach.
To do this I created a base options widget that had a setting name and named slot to allow for additions of different settings. This allowed me to create variations from this such as sliders, dropdowns, checkbox settings and more.
Physics Actors
I was tasked to create some physics actors to make the world feel more alive when the character interacts them. These included some banners and chains. I had never touched physics actors using Unreal Engine before. I found out that you could rig meshes with bones and add physics actors to them. This then allowed you to simulate the skeletal mesh to allow for physics to take over.
We had an issue with the implementation where the physics would fling the character if they jumped onto the banners or light chains. To fix this instead of calculating the collision and physics we can just calculate the physics of the skeletal mesh stopping the flinging entirely.
