The goal of this project is to create a playable gameplay loop around stealth mechanics.
### Scenario
You are an Unreal Engine developer tasked with creating a complete stealth game from scratch. You need to implement everything, including AI behavior trees, player animations, and gun mechanics. As you progress, you realize balancing these elements—ensuring the AI responds accurately to player movements while maintaining smooth gameplay—is more challenging than expected. Every feature, from the main menu to mission completion, must work seamlessly to deliver a polished and playable game within the given constraints.
- When changing the resolution, a pop-up should appear in the middle of the screen, asking if the player wants to keep the newly applied graphics settings. If the player clicks "Yes" within 10 seconds, the settings are confirmed. If the 10 seconds pass or the player clicks "No," the settings revert to the previous ones.
- Change the mouse sensitivity.
- Option to invert the mouse vertical axis.
#### Map/Level.
- The map should include areas where the player can hide from enemies by `ducking` or taking cover `behind walls and props`.
- There should be pickable ammunition scattered throughout the map.
- Health packs should be placed around the map for the player to collect.
#### Player:
- The player should have animations for `walking`, `running`, `shooting`, `ducking`, and performing `melee attacks`.
- Blood particles should appear when the player is hit.
- A health bar should decrease whenever the player takes damage.
- Upon death, the player should have the option to quit the game, return to the main menu, or start over.
- The player's mission is flexible and can be any of the following: completing a task, eliminating all enemies without being detected, or collecting documents. Regardless of the mission, the player will encounter enemies that attempt to hinder their progress.
- When the player successfully completes their mission, a pop-up should appear stating that the mission is complete.
- Pressing `Esc` pauses the game, bringing up a widget similar to the main menu.
- The player should be able to change the game graphics settings the same way as in the main menu.
- The game should last no longer than 6 minutes. After this time, the player is presented with the same choices as when they die: quit the game, return to the main menu, or start over.
- The basics assets you will need for this project can be found in the [StealthBoomAssets.zip](https://assets.01-edu.org/gamedev/stealth-boom-assets.zip) file. It contains the basic animations, character, enemies and props you will need for this project.
> If it is not possible to upload files to Gitea due to their size, use GitHub instead and have a look at [Git LSF](https://docs.github.com/en/repositories/working-with-files/managing-large-files/about-large-files-on-github)