Project C

(All Art, SFX and Animations etc. are placeholders)

Role: Game Director, Project Manager, Programmer and Writer

Tools: Unreal Engine 4, WWise

Team: 5
 

Contributions:

  • Game, Level and Narrative Design

  • Game Director

  • Project Management

  • Blueprint & C++ Programming

  • Story & Cinematics

About

Project C is a Narrative Driven First-Person Puzzle Platformer with a Time Manipulation Mechanic that plays like a blend of Portal, Quantum Conondrum and Braid which sees you solving Time and Physics-based puzzles by Slowing, Pausing and Rewinding Time. 

The game takes place in Ancient mysterious Ruins beneath a great Mountain. 

Its First Section is complete with 14 Levels designed to naturally teach the player the Mechanics and Components of the game while keeping both their wits and skills challenged. 

This project is what best represent my skills as a Game, Level, Narrative and Technical Designer as I've Designed, Programmed and Written everything.

Complete Walkthrough
(Art, SFX, Music and Animations are all placeholders.)
Highly Recommend playing it first to get a better understanding of the design by solving the puzzles yourself.
 

Mechanics & Components

Slow

Slow Down Time for puzzle solving and platforming

(Hover Over for More)

Rewind

Rewind Time to traverse the environment and activate components again. 

(Hover Over for More)

Pause

Pause Time to use objects as platforms or re-direct their velocity. 

(Hover Over for More)

Fundamental Components

The games most basic components used for building the puzzles.

(Hover Over for More)

 

Design

The Game Design

In order to fade in a Memory Flashback in a natural way ...


the character had to be put in a position of waiting or reflection, where their mind could naturally wander so we can explore her mind.

  • This is why the tower is so tall so I had a long time for the shots that first showes the Ruins they've traveled through and then a long closeup of her face as she is holding the pendant.
  • As she holds it tightly she looks up toward the sky through the windows and then closes her eyes and nods down and thinks of that day when her brother disappeared and how she found it.
  • This action of looking upward, as if she is looking for answers and then closes her eyes and nods down makes the white fade out into her memory more natural.





The Conceptualization

I returned to the project due to the good feedback i had gotten of the prototype. ...


  • But I wanted it to move away from other games in the genre that often times tried to mimic Portal 2's success.
  • This meant no testing chambers or in-game narrator, but instead have a strong focus on the Main Character that could not only be used to channel the emotional beats to the player but also be the face of marketing which can make a big difference in terms of sales. Often times its the Characters of a game that you remember more than the actual plot lines.





Re-Imagining

The Original Prototype.
Inspirations for the Original Prototype
The Intro Flashback Concepts
The World and Ruins Concepts

The Mountain


  • Shows the Mountain in its normal state to the player, this becomes relevant shortly later when events unfold.
  • From here the camera acts more as a character that follows the player and observes their action and is thus much more intimate with the character with close-ups.




Hint at why she is there.


  • As the Character Kneels down in front of the Entrance She pulls out a old worn picture of a small boy.
  • The Memory previous to this entire cutscene featured a small boy and hinted that something terrible may have happened to him.
  • This is to connect this character with the boy and to hint that she may be looking for him or something similar.




The Pendant


  • The character has a mysterious pendant around her neck. It reacts to the Entrance which opens it up.
  • This is to show that the ruins is not anchored in reality so when unnatural things occur within them they player will not feel any form of disconnect.





The Art Style

The Game Play

In order to fade in a Memory Flashback in a natural way ...


the character had to be put in a position of waiting or reflection, where their mind could naturally wander so we can explore her mind.

  • This is why the tower is so tall so I had a long time for the shots that first showes the Ruins they've traveled through and then a long closeup of her face as she is holding the pendant.
  • As she holds it tightly she looks up toward the sky through the windows and then closes her eyes and nods down and thinks of that day when her brother disappeared and how she found it.
  • This action of looking upward, as if she is looking for answers and then closes her eyes and nods down makes the white fade out into her memory more natural.





Time Manipulation Device Concepts

The Level Design

Level 3 - From Sketch -> White Box -> Concept -> Block out
I usually clean up the First-Draft Sketch in Photoshop if time lets me
Level 5 - Tomb Area
I usually clean up the First-Draft Sketch in Photoshop if time lets me
Level 9 - Transition From Dark to Natural Light Sky lit and the Courtyard that follows.
I usually clean up the First-Draft Sketch in Photoshop if time lets me

The Approach To Level Design

The Mountain


  • Shows the Mountain in its normal state to the player, this becomes relevant shortly later when events unfold.
  • From here the camera acts more as a character that follows the player and observes their action and is thus much more intimate with the character with close-ups.




Hint at why she is there.


  • As the Character Kneels down in front of the Entrance She pulls out a old worn picture of a small boy.
  • The Memory previous to this entire cutscene featured a small boy and hinted that something terrible may have happened to him.
  • This is to connect this character with the boy and to hint that she may be looking for him or something similar.




The Pendant


  • The character has a mysterious pendant around her neck. It reacts to the Entrance which opens it up.
  • This is to show that the ruins is not anchored in reality so when unnatural things occur within them they player will not feel any form of disconnect.





Sightlines, Leading Lines & Framing

First Introduced with Simple Platforming and No pits. ...


  • Then re-iterates it but with added challenge over Pits and with a new puzzle component; the Blue Force Field, and that they are safe for the player.
  • Also gets introduced that the Force Field Disintegrates Cubes and that Buttons can Turn them off. Requires a combination of it with Slow Motion to finish the puzzle.





(Hover Over for More)

The Tutorial Design

Intro to Slow-Motion

First Introduced with Simple Platforming and No pits. ...


  • Then re-iterates it but with added challenge over Pits and with a new puzzle component; the Blue Force Field, and that they are safe for the player.
  • Also gets introduced that the Force Field Disintegrates Cubes and that Buttons can Turn them off. Requires a combination of it with Slow Motion to finish the puzzle.





(Hover Over for More)

(Hover Over for More)

Intro to Throw

Re-Iterates on the previously introduced Component ...


which was the Force Field but in Combination with something new, which is the Throw.

  • Then re-iterates Throw in Combination with the Slow-Motion.
  • Ends in a Combination of them all. This is an extension of the previous levels puzzle but in a new way where the player have to create the velocity of the cube and get to the button in time.





Intro to Pause

Player Controller


  • I've tried keeping things centralized and avoiding Circular dependancy by having Puzzle Components only request what Current Time Manipulation Speed. The Player Controller is only dependent on the Game Instance.
  • The Player Controller handles all Input and makes great use of the States and Switches to determine what to execute.
  • The player controller handles spawning of the player, the camera and sets upp HUD and sets which input modes.
  • Has the TimeManipulationInput Component and streams through settings into it when the TimeManipulationInput function is called within it, which is what does the actual lerp to a certain time. Settings such as if TimeManipControl is disable, IfUsingController, FramesAvailableToRewind etc. Afterwards the Component has set what CurrentTimeManipulationSpeed should be the PlayerController Sets the Global Time Dilation
  • The Input can turn off which Time Speed the player can lerp to in runtime, enabling future puzzles where the a new time can be recieved mid level for greater variety in puzzles.




Character


  • The Character only handles things that has to do with the character itself and is only dependent on the Player Controller and Game Instance.
  • Uses Interfaces to communicate to Puzzle Components instead of references to keep things clean, for example if the player is standing on a cube or interacting with it.
  • Has a Jump Assist Function that nudges the player toward the closest cube toward where they are looking when they are jumping forward, to make the platforming a bit easier.
  • Can also be Slowed, Paused and Rewinded and is meant to be used in Future Levels.





(Hover Over for More)

(Hover Over for More)

Intro to Rewind

In order to fade in a Memory Flashback in a natural way ...


the character had to be put in a position of waiting or reflection, where their mind could naturally wander so we can explore her mind.

  • This is why the tower is so tall so I had a long time for the shots that first showes the Ruins they've traveled through and then a long closeup of her face as she is holding the pendant.
  • As she holds it tightly she looks up toward the sky through the windows and then closes her eyes and nods down and thinks of that day when her brother disappeared and how she found it.
  • This action of looking upward, as if she is looking for answers and then closes her eyes and nods down makes the white fade out into her memory more natural.





The Narrative Design

The Premise

In order to fade in a Memory Flashback in a natural way ...


the character had to be put in a position of waiting or reflection, where their mind could naturally wander so we can explore her mind.

  • This is why the tower is so tall so I had a long time for the shots that first showes the Ruins they've traveled through and then a long closeup of her face as she is holding the pendant.
  • As she holds it tightly she looks up toward the sky through the windows and then closes her eyes and nods down and thinks of that day when her brother disappeared and how she found it.
  • This action of looking upward, as if she is looking for answers and then closes her eyes and nods down makes the white fade out into her memory more natural.





The Character

In order to fade in a Memory Flashback in a natural way ...


the character had to be put in a position of waiting or reflection, where their mind could naturally wander so we can explore her mind.

  • This is why the tower is so tall so I had a long time for the shots that first showes the Ruins they've traveled through and then a long closeup of her face as she is holding the pendant.
  • As she holds it tightly she looks up toward the sky through the windows and then closes her eyes and nods down and thinks of that day when her brother disappeared and how she found it.
  • This action of looking upward, as if she is looking for answers and then closes her eyes and nods down makes the white fade out into her memory more natural.





Main Characters Concepts

The Theme

Physics Based Cubes


  • The games most Fundemental Puzzle Component is the Cube that comes in three Variants, one that doesn't get destroyed on impact, one that is fragile to impact and one that only gets spawned and will always destroy on impact (This orange one is most likely going to have another mesh).
  • The three variants are all their own BP that derives from a parent and just overrides some settings to enable their own behaviour.
  • The cube can be Slowed, Paused and Rewinded as well as picked up, Thrown, Moved and Rotated during pause which also rotates its velocity direction. The player can also stand on it and use it as a platform and will inherit its velocity if jumped from it, even when going in reverse.
  • Has the CPPC_TimeManipulationComponent but overrides it with its own Time manipulation Behaviour that does the same principle but adds the ability to do the things mentioned above.




Cube Spawner


  • The Blueprint Class that Spawns the Physics Based Cubes. Can be set in the details Which Cube to Spawn, what Velocity, Initial Delay and then Delay Between Spawns and Number of Cubes.
  • Uses the Time Manipulation Component but only utilezes the Manual Tick which is when the things store transform and velocity arrays. Except it only uses it to add to a Timer Array, this Timer controls its entire behaviour where if for example at -1 it starts to wind up and spawns at 0.
  • When rewinded it goes back into that array and sets the Timer Variable to what it was at that point in time.
  • Implements some interfaces so it can be Activated, De-Activated and Reset.





The Structure

The Mountain


  • Shows the Mountain in its normal state to the player, this becomes relevant shortly later when events unfold.
  • From here the camera acts more as a character that follows the player and observes their action and is thus much more intimate with the character with close-ups.




Hint at why she is there.


  • As the Character Kneels down in front of the Entrance She pulls out a old worn picture of a small boy.
  • The Memory previous to this entire cutscene featured a small boy and hinted that something terrible may have happened to him.
  • This is to connect this character with the boy and to hint that she may be looking for him or something similar.




The Pendant


  • The character has a mysterious pendant around her neck. It reacts to the Entrance which opens it up.
  • This is to show that the ruins is not anchored in reality so when unnatural things occur within them they player will not feel any form of disconnect.





The Storytelling

2D Flashback Memory Sequences

Physics Based Cubes


  • The games most Fundemental Puzzle Component is the Cube that comes in three Variants, one that doesn't get destroyed on impact, one that is fragile to impact and one that only gets spawned and will always destroy on impact (This orange one is most likely going to have another mesh).
  • The three variants are all their own BP that derives from a parent and just overrides some settings to enable their own behaviour.
  • The cube can be Slowed, Paused and Rewinded as well as picked up, Thrown, Moved and Rotated during pause which also rotates its velocity direction. The player can also stand on it and use it as a platform and will inherit its velocity if jumped from it, even when going in reverse.
  • Has the CPPC_TimeManipulationComponent but overrides it with its own Time manipulation Behaviour that does the same principle but adds the ability to do the things mentioned above.




Cube Spawner


  • The Blueprint Class that Spawns the Physics Based Cubes. Can be set in the details Which Cube to Spawn, what Velocity, Initial Delay and then Delay Between Spawns and Number of Cubes.
  • Uses the Time Manipulation Component but only utilezes the Manual Tick which is when the things store transform and velocity arrays. Except it only uses it to add to a Timer Array, this Timer controls its entire behaviour where if for example at -1 it starts to wind up and spawns at 0.
  • When rewinded it goes back into that array and sets the Timer Variable to what it was at that point in time.
  • Implements some interfaces so it can be Activated, De-Activated and Reset.





3D In-Engine Third-Person Cutscenes

Player Controller


  • I've tried keeping things centralized and avoiding Circular dependancy by having Puzzle Components only request what Current Time Manipulation Speed. The Player Controller is only dependent on the Game Instance.
  • The Player Controller handles all Input and makes great use of the States and Switches to determine what to execute.
  • The player controller handles spawning of the player, the camera and sets upp HUD and sets which input modes.
  • Has the TimeManipulationInput Component and streams through settings into it when the TimeManipulationInput function is called within it, which is what does the actual lerp to a certain time. Settings such as if TimeManipControl is disable, IfUsingController, FramesAvailableToRewind etc. Afterwards the Component has set what CurrentTimeManipulationSpeed should be the PlayerController Sets the Global Time Dilation
  • The Input can turn off which Time Speed the player can lerp to in runtime, enabling future puzzles where the a new time can be recieved mid level for greater variety in puzzles.




Character


  • The Character only handles things that has to do with the character itself and is only dependent on the Player Controller and Game Instance.
  • Uses Interfaces to communicate to Puzzle Components instead of references to keep things clean, for example if the player is standing on a cube or interacting with it.
  • Has a Jump Assist Function that nudges the player toward the closest cube toward where they are looking when they are jumping forward, to make the platforming a bit easier.
  • Can also be Slowed, Paused and Rewinded and is meant to be used in Future Levels.





The First-Person Cutscenes

First Introduced with Simple Platforming and No pits. ...


  • Then re-iterates it but with added challenge over Pits and with a new puzzle component; the Blue Force Field, and that they are safe for the player.
  • Also gets introduced that the Force Field Disintegrates Cubes and that Buttons can Turn them off. Requires a combination of it with Slow Motion to finish the puzzle.





 

Cinematics

Here I break down the most Important Cinematics and the thought process behind them.

Since it is all made with placeholder art, animations etc., they are intentionally a bit slower paced than what the final versions will be since I find it easier to trim down a shot and make it faster paced when you have the final art compared making a shot slower paced and longer. 

In the game you can turn on/off the Cinematic References and Descriptions.  

NOTE Some of these cutscenes are out of date as they has been revised, this page will be updated soon

Opening Cinematic

Goal of the Cinematic

The Goal of the Cinematic is to give a soft introduction to the world and character as well as give a small hint at what the character is doing there.

Physics Based Cubes


  • The games most Fundemental Puzzle Component is the Cube that comes in three Variants, one that doesn't get destroyed on impact, one that is fragile to impact and one that only gets spawned and will always destroy on impact (This orange one is most likely going to have another mesh).
  • The three variants are all their own BP that derives from a parent and just overrides some settings to enable their own behaviour.
  • The cube can be Slowed, Paused and Rewinded as well as picked up, Thrown, Moved and Rotated during pause which also rotates its velocity direction. The player can also stand on it and use it as a platform and will inherit its velocity if jumped from it, even when going in reverse.
  • Has the CPPC_TimeManipulationComponent but overrides it with its own Time manipulation Behaviour that does the same principle but adds the ability to do the things mentioned above.




Cube Spawner


  • The Blueprint Class that Spawns the Physics Based Cubes. Can be set in the details Which Cube to Spawn, what Velocity, Initial Delay and then Delay Between Spawns and Number of Cubes.
  • Uses the Time Manipulation Component but only utilezes the Manual Tick which is when the things store transform and velocity arrays. Except it only uses it to add to a Timer Array, this Timer controls its entire behaviour where if for example at -1 it starts to wind up and spawns at 0.
  • When rewinded it goes back into that array and sets the Timer Variable to what it was at that point in time.
  • Implements some interfaces so it can be Activated, De-Activated and Reset.





Opening Cut Scene
(Art, SFX, Music and Animations are all placeholders)
Focus Transitions softly from the World to the Character. 
I utilize References to communicate concepts and ideas.
The Style of the Third-Person Cutscenes are a bit similar to MGSV where the camera almost acts as a person that is following and observing the Main Character throughout the game events.

The Mountain


  • Shows the Mountain in its normal state to the player, this becomes relevant shortly later when events unfold.
  • From here the camera acts more as a character that follows the player and observes their action and is thus much more intimate with the character with close-ups.




Hint at why she is there.


  • As the Character Kneels down in front of the Entrance She pulls out a old worn picture of a small boy.
  • The Memory previous to this entire cutscene featured a small boy and hinted that something terrible may have happened to him.
  • This is to connect this character with the boy and to hint that she may be looking for him or something similar.




The Pendant


  • The character has a mysterious pendant around her neck. It reacts to the Entrance which opens it up.
  • This is to show that the ruins is not anchored in reality so when unnatural things occur within them they player will not feel any form of disconnect.





The Transition to First-Person

As the character goes into the ruins, the camera pans past her and makes a seamless ...


transition into First-Person Mode.

  • The game transitions in and out of these modes seamlessly during cut scenes unless the player is looking at another direction where a fade out will occur.





The cut scenes transition softly into game play, this along with no loading screens creates a more seamless experience.

The Pedestal Cinematic

Pedestal Cut Scene
(Art, SFX, Music and Animations are all placeholders)

Goal of the Cinematic

 The goal was for the character to Receive the Time Manipulation Device and by doing it, re-awakens the Ruins and getting a Hint to the overall End Objective.

As the character goes into the ruins, the camera pans past her and makes a seamless ...


transition into First-Person Mode.

  • The game transitions in and out of these modes seamlessly during cut scenes unless the player is looking at another direction where a fade out will occur.





Transitions from Game play into Third Person Cut Scene

The Time Manipulation Device

As the character goes into the ruins, the camera pans past her and makes a seamless ...


transition into First-Person Mode.

  • The game transitions in and out of these modes seamlessly during cut scenes unless the player is looking at another direction where a fade out will occur.





Pedestal Open, revealing the Time Device. Something at the Mountains Top Reacts to her presence, hinting its the End Goal

The Mountain

The Mountain


  • Shows the Mountain in its normal state to the player, this becomes relevant shortly later when events unfold.
  • From here the camera acts more as a character that follows the player and observes their action and is thus much more intimate with the character with close-ups.




Hint at why she is there.


  • As the Character Kneels down in front of the Entrance She pulls out a old worn picture of a small boy.
  • The Memory previous to this entire cutscene featured a small boy and hinted that something terrible may have happened to him.
  • This is to connect this character with the boy and to hint that she may be looking for him or something similar.




The Pendant


  • The character has a mysterious pendant around her neck. It reacts to the Entrance which opens it up.
  • This is to show that the ruins is not anchored in reality so when unnatural things occur within them they player will not feel any form of disconnect.





Transitions from what we last saw her looking at to First-Person

The Tower Cinematic

The Tower Cut Scene
(Art, SFX, Music and Animations are all placeholders)

Goal of the Cinematic

The goal was to give the player a natural transition from the current Section to the next one and get to see the Ruins that they've traversed through from a new perspective which could give them a better overview of the size of the ruins and a feeling of accomplishment. 

I also wanted to present in the Second Memory here in a natural way.

Transitioning Into Memory Flashback

In order to fade in a Memory Flashback in a natural way ...


the character had to be put in a position of waiting or reflection, where their mind could naturally wander so we can explore her mind.

  • This is why the tower is so tall so I had a long time for the shots that first showes the Ruins they've traveled through and then a long closeup of her face as she is holding the pendant.
  • As she holds it tightly she looks up toward the sky through the windows and then closes her eyes and nods down and thinks of that day when her brother disappeared and how she found it.
  • This action of looking upward, as if she is looking for answers and then closes her eyes and nods down makes the white fade out into her memory more natural.





A Shot of the Ruins the player has traversed but from a new perspective. Long close up of the girl as she is holding the pendant tightly and thinks back to the day she found it. 
 

Game Play Systems

This is by far the most advanced game I have ever made with many Systems running under the hood.
 
Here I try to give an brief overview of the most notable Game Play Systems.

The Test Level is included in the game and can give a quick understanding of the components and their behavior. 
Overview

I've programmed everything in this project such as the Main Mechanic, Puzzle Components, Sound Implementation and Back-End with Checkpoints, Cutscene Setup, Level Loading etc.

As the character goes into the ruins, the camera pans past her and makes a seamless ...


transition into First-Person Mode.

  • The game transitions in and out of these modes seamlessly during cut scenes unless the player is looking at another direction where a fade out will occur.





(Hover Over for More)

Here is a Simplified Flow Chart of how some systems communicate & The Time Manipulation Plugin.

When I program I try to do it with a lot of foresight where I want system to be easily be expanded, debugged and very customizable. 

Time Manipulation

Physics Based Cubes


  • The games most Fundemental Puzzle Component is the Cube that comes in three Variants, one that doesn't get destroyed on impact, one that is fragile to impact and one that only gets spawned and will always destroy on impact (This orange one is most likely going to have another mesh).
  • The three variants are all their own BP that derives from a parent and just overrides some settings to enable their own behaviour.
  • The cube can be Slowed, Paused and Rewinded as well as picked up, Thrown, Moved and Rotated during pause which also rotates its velocity direction. The player can also stand on it and use it as a platform and will inherit its velocity if jumped from it, even when going in reverse.
  • Has the CPPC_TimeManipulationComponent but overrides it with its own Time manipulation Behaviour that does the same principle but adds the ability to do the things mentioned above.




Cube Spawner


  • The Blueprint Class that Spawns the Physics Based Cubes. Can be set in the details Which Cube to Spawn, what Velocity, Initial Delay and then Delay Between Spawns and Number of Cubes.
  • Uses the Time Manipulation Component but only utilezes the Manual Tick which is when the things store transform and velocity arrays. Except it only uses it to add to a Timer Array, this Timer controls its entire behaviour where if for example at -1 it starts to wind up and spawns at 0.
  • When rewinded it goes back into that array and sets the Timer Variable to what it was at that point in time.
  • Implements some interfaces so it can be Activated, De-Activated and Reset.





Time Manipulation & Its Components

(Hover Over for More)

Time Manipulation Input Component
Physics Based Cubes

(Hover Over for More)

Cube Spawner

(Hover Over for More)

Physics Based Cubes


  • The games most Fundemental Puzzle Component is the Cube that comes in three Variants, one that doesn't get destroyed on impact, one that is fragile to impact and one that only gets spawned and will always destroy on impact (This orange one is most likely going to have another mesh).
  • The three variants are all their own BP that derives from a parent and just overrides some settings to enable their own behaviour.
  • The cube can be Slowed, Paused and Rewinded as well as picked up, Thrown, Moved and Rotated during pause which also rotates its velocity direction. The player can also stand on it and use it as a platform and will inherit its velocity if jumped from it, even when going in reverse.
  • Has the CPPC_TimeManipulationComponent but overrides it with its own Time manipulation Behaviour that does the same principle but adds the ability to do the things mentioned above.




Cube Spawner


  • The Blueprint Class that Spawns the Physics Based Cubes. Can be set in the details Which Cube to Spawn, what Velocity, Initial Delay and then Delay Between Spawns and Number of Cubes.
  • Uses the Time Manipulation Component but only utilezes the Manual Tick which is when the things store transform and velocity arrays. Except it only uses it to add to a Timer Array, this Timer controls its entire behaviour where if for example at -1 it starts to wind up and spawns at 0.
  • When rewinded it goes back into that array and sets the Timer Variable to what it was at that point in time.
  • Implements some interfaces so it can be Activated, De-Activated and Reset.





Fundemental Puzzle Components

Cube Spawner

Player Controller


  • I've tried keeping things centralized and avoiding Circular dependancy by having Puzzle Components only request what Current Time Manipulation Speed. The Player Controller is only dependent on the Game Instance.
  • The Player Controller handles all Input and makes great use of the States and Switches to determine what to execute.
  • The player controller handles spawning of the player, the camera and sets upp HUD and sets which input modes.
  • Has the TimeManipulationInput Component and streams through settings into it when the TimeManipulationInput function is called within it, which is what does the actual lerp to a certain time. Settings such as if TimeManipControl is disable, IfUsingController, FramesAvailableToRewind etc. Afterwards the Component has set what CurrentTimeManipulationSpeed should be the PlayerController Sets the Global Time Dilation
  • The Input can turn off which Time Speed the player can lerp to in runtime, enabling future puzzles where the a new time can be recieved mid level for greater variety in puzzles.




Character


  • The Character only handles things that has to do with the character itself and is only dependent on the Player Controller and Game Instance.
  • Uses Interfaces to communicate to Puzzle Components instead of references to keep things clean, for example if the player is standing on a cube or interacting with it.
  • Has a Jump Assist Function that nudges the player toward the closest cube toward where they are looking when they are jumping forward, to make the platforming a bit easier.
  • Can also be Slowed, Paused and Rewinded and is meant to be used in Future Levels.





Input and First-Person Character

Player Controller Input

(Hover Over for More)

First-Person Character

(Hover Over for More)

Player Controller
 

Back-End Systems

Here I try to give an brief overview of the most notable Back-End Systems.

The Mountain


  • Shows the Mountain in its normal state to the player, this becomes relevant shortly later when events unfold.
  • From here the camera acts more as a character that follows the player and observes their action and is thus much more intimate with the character with close-ups.




Hint at why she is there.


  • As the Character Kneels down in front of the Entrance She pulls out a old worn picture of a small boy.
  • The Memory previous to this entire cutscene featured a small boy and hinted that something terrible may have happened to him.
  • This is to connect this character with the boy and to hint that she may be looking for him or something similar.




The Pendant


  • The character has a mysterious pendant around her neck. It reacts to the Entrance which opens it up.
  • This is to show that the ruins is not anchored in reality so when unnatural things occur within them they player will not feel any form of disconnect.





Cinematics System

Different types of Cut Scenes

(Hover Over for More)

Uses Original and Other Media as References

(Hover Over for More)

Cutscene Setup
Checkpoint Start Locations BP and its Array of Transforms Containing the Checkpoint Locations

In order to fade in a Memory Flashback in a natural way ...


the character had to be put in a position of waiting or reflection, where their mind could naturally wander so we can explore her mind.

  • This is why the tower is so tall so I had a long time for the shots that first showes the Ruins they've traveled through and then a long closeup of her face as she is holding the pendant.
  • As she holds it tightly she looks up toward the sky through the windows and then closes her eyes and nods down and thinks of that day when her brother disappeared and how she found it.
  • This action of looking upward, as if she is looking for answers and then closes her eyes and nods down makes the white fade out into her memory more natural.





Checkpoint System

Load Game

Player Controller


  • I've tried keeping things centralized and avoiding Circular dependancy by having Puzzle Components only request what Current Time Manipulation Speed. The Player Controller is only dependent on the Game Instance.
  • The Player Controller handles all Input and makes great use of the States and Switches to determine what to execute.
  • The player controller handles spawning of the player, the camera and sets upp HUD and sets which input modes.
  • Has the TimeManipulationInput Component and streams through settings into it when the TimeManipulationInput function is called within it, which is what does the actual lerp to a certain time. Settings such as if TimeManipControl is disable, IfUsingController, FramesAvailableToRewind etc. Afterwards the Component has set what CurrentTimeManipulationSpeed should be the PlayerController Sets the Global Time Dilation
  • The Input can turn off which Time Speed the player can lerp to in runtime, enabling future puzzles where the a new time can be recieved mid level for greater variety in puzzles.




Character


  • The Character only handles things that has to do with the character itself and is only dependent on the Player Controller and Game Instance.
  • Uses Interfaces to communicate to Puzzle Components instead of references to keep things clean, for example if the player is standing on a cube or interacting with it.
  • Has a Jump Assist Function that nudges the player toward the closest cube toward where they are looking when they are jumping forward, to make the platforming a bit easier.
  • Can also be Slowed, Paused and Rewinded and is meant to be used in Future Levels.





Seamless Level Transitions

The Transition Level Doors that Hides the Unload
Loading and Unloading of Levels using a custom ForEachLoop that Calls Event Delegates when done.
Nim - Opening Cinematic
Project C - Debugging

Player Controller


  • I've tried keeping things centralized and avoiding Circular dependancy by having Puzzle Components only request what Current Time Manipulation Speed. The Player Controller is only dependent on the Game Instance.
  • The Player Controller handles all Input and makes great use of the States and Switches to determine what to execute.
  • The player controller handles spawning of the player, the camera and sets upp HUD and sets which input modes.
  • Has the TimeManipulationInput Component and streams through settings into it when the TimeManipulationInput function is called within it, which is what does the actual lerp to a certain time. Settings such as if TimeManipControl is disable, IfUsingController, FramesAvailableToRewind etc. Afterwards the Component has set what CurrentTimeManipulationSpeed should be the PlayerController Sets the Global Time Dilation
  • The Input can turn off which Time Speed the player can lerp to in runtime, enabling future puzzles where the a new time can be recieved mid level for greater variety in puzzles.




Character


  • The Character only handles things that has to do with the character itself and is only dependent on the Player Controller and Game Instance.
  • Uses Interfaces to communicate to Puzzle Components instead of references to keep things clean, for example if the player is standing on a cube or interacting with it.
  • Has a Jump Assist Function that nudges the player toward the closest cube toward where they are looking when they are jumping forward, to make the platforming a bit easier.
  • Can also be Slowed, Paused and Rewinded and is meant to be used in Future Levels.





Debugging

The Mountain


  • Shows the Mountain in its normal state to the player, this becomes relevant shortly later when events unfold.
  • From here the camera acts more as a character that follows the player and observes their action and is thus much more intimate with the character with close-ups.




Hint at why she is there.


  • As the Character Kneels down in front of the Entrance She pulls out a old worn picture of a small boy.
  • The Memory previous to this entire cutscene featured a small boy and hinted that something terrible may have happened to him.
  • This is to connect this character with the boy and to hint that she may be looking for him or something similar.




The Pendant


  • The character has a mysterious pendant around her neck. It reacts to the Entrance which opens it up.
  • This is to show that the ruins is not anchored in reality so when unnatural things occur within them they player will not feel any form of disconnect.





Sound Implementation

Nim - Opening Cinematic
Project C - Sounds
Sound Time Manip Demonstration
Debugging
Game Setup - Checks if Debugging and Loads Levels etc. Accordingly.