Gameproject 2, February 2019
Roles: Level Designer, Blueprint & UI Scripter
Time: 4 weeks
Team Size: 3 Designers, 3 3D Artists, 3 2D Artists, 3 Programmers
Tools: Unreal Engine 4, Perforce P4V
My contribution: Level Design, Game Design, Menu Systems, UI & Blueprint Scripting, Animation Implementation
Summit was selected for DreamHack Summer's 2019 Student Showcase, where we exhibited the game for the entirety of the event. It was also top 10 popular on itch with over 800 downloads.
The expo included networking with the DreamHack Indie Showcase, as well as giving valuable experience in Indie Exhibiton.
Summit is an emergent puzzle adventure platformer, about facing challenges and coming up with creative solutions.
The player has crash-landed on this vast tower in the middle of nowhere - The Summit.
This ancient overgrown ruin hides many secrets to uncover and holds the key to finding your way home again.
The main purpose of the level design was having emergent gameplay and our abilities in mind, and creating a puzzle that wouldn't be too hard for the player.
I achieved this by lots of play testing, and using a method called "action blocking", which is a workflow inspired by the Titanfall 2 GDC talk.
Action blocking is when you prototype multiple level design features or puzzles, and pick out the best ones to make one level.
The objective of the level is solving the given puzzles or creating your own solution to climb up to the next level.
• Multiple solutions • Less enemies • Vertical progression • Less platforming
• More linear • More enemies • "Backtracking" • More platforming
Since you can take damage in the game, we needed a way to restore health, so I made a health pick-up.
The player can increase their max health by picking up 3 health pick-ups.
I made it rotate by adding a rotating movement component so that it would be easier to spot.
I created a checkpoint system for the respawning, which kept track of the respawn checkpoint order.
It saves the first checkpoint in the player BP at the start of the game and calls to update the respawn functionality written in C++
(made by a programmer) whenever another one is triggered.
I helped our animator by showing how to implement some of the character animations, create blend spaces in Unreal and create transitions.
I also scripted the logic for some of the transition booleans later used.
Health Meter & Pickup Counter
The triangles are always there, but I scripted the visibility and appearance for the triangle sprites to change if the player was missing health, gaining health or increasing their Max Health.
The player could get more Max Health by picking up 3 Health Pick-Ups. They always start with 3 triangles.
I also made a pick-up counter which kept track of how many pick-ups the player was from gaining another health container.
I made a custom button for the menu systems which allows input from mouse, keyboard and gamepad controller. I also scripted the other main and pause menu functionality.
The Main Menu
The main menu is in a separate level, which then loads in the game level once "play" has been pressed.
It then starts an introduction video, which can be skipped
by pressing spacebar.
The "Pause" Menu
The pause menu never really pauses, but rather fakes it by setting time dilation super low.
I chose to do it this way as a hacky fix since the true pause also paused my button functionality, and I was running out of time.