Rescue

Final Project for Unreal Engine Fundamentals Course


My Role

I worked as the Game Designer and Main Programmer.
My main tasks were:

  • Design the main concept, core mechanics and game loop.
  • Implement all the mechanics using Blueprints in UE5
  • Integrate external art and sound assets.


The Game

UE 5 / BLUEPRINTS

TECHNOLOGY

1

TEAM SIZE

14

DEV. TIME (DAYS)

PC

PLATFORM

Features

  • Explore a hand-made snow covered landscape.
  • Eat wild fruits and drink from the rivers to keep your stats high.
  • Find comfort in safe zones in the shape of cozy caves where you can warm up and prepare for the rest of the adventure.
  • Avoid AI-powered wolves that will hunt your on sight.

Goals

  • Create a short, functional game that showcases the skills learnt in the Unreal Fundamentals course.
  • Gain experience working on Unreal Engine using Blueprints.
  • Experiment with different UE5 features such as auto materials for landscape and Water.
  • Learn more about UMG and the UI management in UE5.

Constraints / Risks

  • Restricted scope to stay within the assignment limits and the defined time-frame.
  • Working as a one-person team.
  • No in-house art & sound (using Epic Marketplace and other sources)
  • Limited experience with Unreal Engine.


Keep scrolling or use the shortcuts:



Key Design Points

The Adventure





Mission 1: Create a reason for the adventure

Rescue is a Survival game where the player guides the main character through a cold mountain landscape, enduring cold, hunger and thirst.

But there needs to be a reason for the character to leave the comfort of their cabin and start an adventure under such unappealing circumstances.


Strategy

The goal defined was to find a missing friend that had started the journey before the main character but has yet to return.

This allowed the game to have a purpose and also fulfill one of the assignment requirements: to include a small piece of narrative that gave a meaning to the game.

The message was delivered using the following tools:

  • The character starts inside the cabin and is prompted with a UI message that explains the objective.
  • Inside the cabin, the props were positioned in a way that would lead the player to interact with a letter that suggested that the friend has gone missing.
  • When exiting the cabin, a cutscene is played showing the goal location in context.





Mission 2: Make the adventure challenging while encouraging exploration

The game needs to balance between making the objective too easy, i.e. reaching the goal without any challenge, and making so difficult to reach that the player would need to focus exclusively on reaching the destination, ignoring exploration.


Strategy

In order to generate a challenge, the following elements were added:

  • PvE element: the storm is so cold that the character's health is constantly lowered. There are safe zones strategically placed.
  • Enemies lurking. Wolves using the UE AI system patrol certain areas. They are not always visible but will follow the player on sight and attack when they are close enough.

The fact that the character is constantly losing health, makes the player create a plan of action in order to reach the safe zone caves on time.

The player needs to plan a route and use the caves as check points in order to recover enough health to continue the journey until the next cave.

This planned route, needs to also take into account the presence of the wolves that will be lurking and waiting for the player to approach them. Some caves will also be close to these enemies, and the player will need to be fast to reach the cave before being attacked.


On the other hand, the strategy to encourage exploration was completely based on the needs system.

Hunger and thirst increase as time goes by. When both stats reach zero, health decreases at a higher rate.

The only way to restore these stats is by searching for food and water. Wild fruits and rivers are scattered around and exploration is required to find them and fulfill the needs.

Together with the need for safe zones, the player now needs to explore the field and find relevant places in order to succeed.


Level Design


General Level Design Ideas Applied

The following concepts were applied when designing the level using the lanscape tool in UE5 together with auto materials and the Experimental Water Plugin:

  • Create landmarks that could guide the player when lost: a large lake in the center, forests, groups of mountains.
  • A lake in the center was also used as a recurring point. The player could remember that at the center of the map there's always water and probably also food, in case of need.
  • Mixture of punishment or challenge and reward: more advanced parts of the level (closer to the goal) would normaly feature large groups of food or water near dangerous groups of wolves. Some late game caves would also be surrounded by wolves.



Technical Achievements




  • Implemented for the first time external animations using the retargeting process in Unreal.
  • Created a Stats System for the character that decreases the stats over time, using different rates for each stat and updating the UI.
  • Created a Generic Interactable that was inherited by other interactables such as "Change Stats Interactable" or "Show UI Element Interactable".
  • Create a hand-made large level using landscape and other tools that were new to me at the time of development.
  • Successfully integrated external art, sounds and particle assets from various sources.
  • Created my first Unreal Engine game from scratch with successful results.




Main Takeaways




  • There is some future work I'd like to do with this project:
    • Balance the stats decreasing with the level design and map size
    • Create a cool-down time after which the food or water sources are respawned into the world (right now they are destroyed).
    • Integrate different kinds of enemies with different perceptions, not limited to only sight as it is now.
    • Create different types of foods that recover different amount of hunger
    • Integrate a small inventory where the player can carry a small potion or some food to extend the character's life in case of emergency. This would allow the game to be less punishing.
  • I really enjoyed learning Unreal Engine this way. In spite of having completed other courses before, this game was completely made from zero and it helped me understand the work flow that works for me in Unreal Engine.
  • Learning how to retarget animations for characters was a challenging and fulfilling experience.