First-Person Stealth Game Prototype
This project is a first-person stealth game that uses light as the mechanic for player detection and features an ability system. The project was built in Unreal Engine 4 using Blueprints. The objective is to reach a target location whilst remaining undetected by the enemy guards, using the layout of the level and leveraging their abilities to achieve this goal. All features were designed and implemented by myself using the blueprint visual scripting system, with assets such as textures, models, sounds, and animations being sourced from free asset providers.
Videos
Documentation
Features
Detection Mechanic
If the player is Visible, whilst they are in view of a Guard, a Detection Meter will appear on the HUD, displaying that Guards current awareness of the player. If the Detection Meter fills up completely, the Guards will enter the Alerted state.

Visibility System
A Visibility System has been implemented, relying on light to determine whether it is possible for Guards to see the player. This system is binary to prevent ambiguity on whether the player is visible; if the player is illuminated by any light source, they are considered Visible. If Guards enter the Alerted state, the Visibility System is temporarily disabled whilst the Guards search for the player.

Abilities
The player has 5 unique Abilities, each designed to help them to achieve their objectives using stealth.

Interaction
The player can be assassinate Guards if they interact with them from behind, and can also interact with their bodies to drag them to a hidden location. Air Vents can also be interacted with, opening up hidden pathways.

AI
There are 4 different Guard states:
1. Patrolling
2. Investigating
3. Alerted - Searching
4. Alerted - Chasing
​
Whilst the player is Undetected, the AI Guards are in the Patrolling state, and will follow 1 of 3 different patrol patterns.
​
Sounds made by the players footsteps will be heard by guards, causing them to enter the Investigating state. In the Investigating state, a Guard will break from its patrol pattern, and search the area the sound came from.
​
If any guard detects the player, the Guards will enter the Alerted state. Guards that are unaware of the player's location will be in the Alerted - Searching state, and will search for the player. Guards that can see the player will be in the Alerted - Chasing state, and will chase and attempt to kill them using their melee attack. Guards return to the Patrolling state if the player remains hidden from the Guards for long enough.