A punishing deep-sea precision platformer made for a university capstone project.
My Role:
Programmer (blueprints), Designer, Concept Artist
Date:
Jun 2024 - Dec 2024
Engine:
Unreal Engine 5
Team Size:
5
Platform:
PC (windows)
Deep Climb is a first person precision platformer about the grueling journey of a diver attempting to return to the surface after awakening in an oasis far under the sea. It features challenging and unique jumping mechanics, vibrant but daunting underwater terrain, and unsettling secrets to be uncovered throughout.
Deep Climb was my university capstone project— I collaborated with a group over a six month period to design and develop the game from scratch. I was deeply involved in the ideation, design, concepting, and programming of the game using UE 5 blueprints. The project was split into sprints, the end of each having a playtesting session, and Git source control was utilised throughout development.
My contributions to this project include:
The collectables, dubbed 'echoes', were a core mechanic of the game I was responsible for implementing. Each one is unique, with a different specific sprite and text associated, and once found they had to be available to re-read from the echo log menu.
As we iterated on the game and things were constantly changing/updating, I wanted to set up the core interaction system in a modular way that would allow me, or others in the team, to easily change the associated sprite or text for each collectable and place them around the map, without needing to manually edit several different blueprints with each change. This method allowed for a smoother development process for my team, and freed up time to spend on other aspects of the game in the long run.
The platforming levels, being such an important aspect of gameplay, went through several iterations throughout development as we refined the mechanics and received feedback from play-testers. For our initial prototype, as a team we each created a few different sections of platforms to see what would stick, and while this served as a proof of concept, it soon became obvious we would need a more structured design approach to create better flow and consistency.
We brainstormed what platforming goals and guidelines we wanted, and designated sections of platforming between us. These goals guided how we would design each section based on what mechanic, or combination of mechanics for the more complicated sequences, should be used. The workflow we decided on would also involve gray-boxing and testing the levels first, then later replacing them with finished assets. The three sections I designed were:
The forward jump section: One of the first sections in the game, with the purpose of teaching the player how to forward jump across long distances. I designed this section to be easy and somewhat repetitive, easing the player into the mechanics with the purpose of getting them more comfortable with judging how far they would need to charge their jump. The last jump presents them with needing to land inside a lower but enclosed platform—this slowly introduces more difficult jumps, while giving the player room to experiment and figure out a solution with the knowledge and tools at their disposal before they get far enough that falling is a significant deterrent.
The jolt-fall section: A mid-game section meant to be more challenging, this level involved needing to use the jolt mechanic that had been introduced earlier while re-incorporating other mechanics such as the forward jump and vault in combination. While more difficult, falling is not a major threat in this level, but instead offers the opportunity to find a hidden collectable echo, suggesting to the player that more can be found hidden around the map.
The long distance section: This is the final level of the game; a long stretch of platforms that requires the careful use and combination of all the mechanics to traverse successfully, and provides even more of a challenge if trying to collect the last echo. Visually, this section is meant to look intimidating and vast, with nothing below to recover from a fall— this was designed to make it one of the riskiest sections if not played carefully.
As Deep Climb progressed to the point where it was long enough to warrant multiple play sessions to finish, I created the save and checkpoint system. We hadn’t initially anticipated needing a save system, but it was a much-needed quality of life addition given the difficulty of the game. Visible checkpoints were placed strategically at each platforming section, saving the player's position and data such as found collectables, settings values, and highest depth reached.
After this, I was able to also implement a ‘checkpoint mode’ as the set up required was already in place, and it would provide an easier and more accessible way to play the game by resetting the player at the latest checkpoint when they fell.
I was responsible for programming the majority of the UI and menu functionality (pause, settings, main menu, etc.). This included the indicator charge and fuel bars for the core jumping mechanic and two abilities; Jolt— similar to a mid-air forward dash, and Vault— similar to a hover ability with limited fuel. As one of two programmers, I coordinated with the other responsible for programming the jumping mechanics to ensure everything worked together smoothly.
Throughout development I was responsible for bug fixing, playtesting, and implementing feedback from playtesting sessions at the end of each sprint; e.g. Adjusting sections that were confusing about where to go, misunderstood teaching of mechanics during the tutorial, and small quality of life changes such as the positions of UI on the screen.
I created a few visual effects mostly using Unreal Engine’s Niagara Effects; the underwater floating particles, collectable glow effect, and an animated arrow for the tutorial section. The arrow used a spline to determine its path, and was adjustable in its direction and length.
At the beginning of the project, I created concept art in a short amount of time based on a design brief and early ideation for the project. This was so our team, which included other artists who would be responsible for most art assets, could have a unified vision and visual theme to work from.