Overwatch Mechanics Coursework
ROLES
Sole Programmer
DESCRIPTION
This project was produced during my third year of university for my gameplay mechanics module. For this assignment, I had to create a mechanic of my choice within Unreal Engine. I opted to replicate some of my favourite Overwatch abilities within the engine using C++.
YEAR
2022
Team Size
Solo Project
PLATFORM
Windows
Overview
This project was developed within Unreal Engine 4 using C++ for my gameplay mechanics module. The task was to program a mechanic of our choice within the engine with me opting to try to create my own version of some of my favourite Overwatch abilities within Unreal C++. There are 4 abilities within this demo that form what I have described as "The ultimate Overwatch character" mechanic: Roadhog's hook, Roadhog's scrap gun with both primary and secondary fire, Tracer's recall ability and Lucio's wall run ability. The hook ability throws a hook ahead of the player and drags an object or enemy towards them if it successfully hits something. The scrap gun primary fire shoots a large amount of small pellets that gradually disperse further as they travel whereas the secondary fire provides a bit more of a mid-ranged option as it remains as a singular projectile until it travels 25 metres at which point it will explode into smaller pellets. Each pellet deals a small amount of damage and therefore causes the player to have to make a decision on which fire mode is more appropriate to deal the most damage at that point. The recall ability allows the player to travel back in time to where they were 3 seconds ago which is visually represented via a smooth lerp back to said position. FInally, the wall run ability allows the player to glide along walls as well as leap between them. The wall run can be used in tandem with the other 3 abilities to create engaging gameplay scenarios.
My
Contributions
- Programmed an Overwatch style hook mechanic
​
- Made use of Physics to implement a projectile based scrap weapon with both primary and secondary fire
​
- Utilized techniques such as line tracing to code a wall run mechanic
​
- Used linear interpolation to create a recall mechanic
​
- Implemented an ability cooldown system
​
- Implemented each ability in such a way that they can all be used in tandem to create engaging gameplay scenarios