Roles: Technical Design, Gameplay Design
Duration: 4 weeks
Team Size: 9
Tools: Unreal Engine 4, Github
Hrafninn is a singleplayer 3D puzzle platformer where you take the role of Munin, one of Odin's two ravens.
Use your powers to traverse between realms and solve tricky puzzles, in order to help the lost souls find their way back to Valhalla.
But beware as sacrifices from the past may come back to haunt you.
FIND & RETURN SOUL
The goal of each puzzle is to find the lost soul and return it to a lantern. Once the player has done so, they are rewarded by unlocking a new area.
The player will have to move objects in the rooms in order to create a path, and ultimately complete the puzzle.
In one realm, climbing a table is not possible. In the other realm, the table is broken and turned into a ramp for the player to climb onto.
In order for the mechanic to fit the platforming aspect of the game, the visibility switch of the objects had to be instant to not disrupt the gameplay.
Switching realms is the core mechanic of the game, which meant it had to feel fluent and non-disruptive.
In the initial prototype, I worked with level streaming, but it turned out to be problematic for our level designers to work with. I decided to make something that would be easier for them to use.
Instead, I made a master object connected to an enum type, that sets visibility depending on the current realm.
The goal was to make a camera that would fit the atmosphere with a float like movement.
The camera is aimed at an offset in the player's current direction, to display more of the area that the player is moving towards.
The camera follows a vertical and a horizontal spline in order to also track the player in higher dimensions.
The camera also pans from room to room whenever the player completes a puzzle. I locked the movement between two spline points in each room to achieve this.
Looking back, I think the camera angle caused depth problems for the player. If I were to remake it today, I would place the camera higher to create better depth perception.
Odin's eye is the last boss of the game and I worked on it together with Gustav Lidén, who was the one who made the prototype.
When the player is seen by the eye, they are forced into another realm where they can’t progress further in the level until they run behind cover.
In the initial prototype, the eye would search randomly around the room for the player.
The pattern was not predictable for the player, which did not fit a puzzle mechanic.
I decided to create a specific search pattern where the eye would look, which allowed the player to predict when to move and when to stay in cover.
I used an array of 3D widget vectors so that it would be easy for the level designer to place them out and decide what pattern would work best.
Communicating the mechanic:
It had to be crystal clear that the eye should be avoided.
When seen, the light changes from green to red.
I also added two camera shakes, one harsh for when the player is seen, and one smaller when the player runs behind cover.
The eye will also search around the area when the player hides to further communicate that it's safe to continue.
WHAT I LEARNED
I learned how to work and co-operate with game programmers as a technical designer, communicating what is needed and the thought process behind it.
I also learned more about how to work with camera systems and how to solve potential depth problems.