PERSONAL PROJECT
Shanubis
I challenged myself to build a survival-horror game using only assets from Epic’s free-for-the-month packs. I rigged the statue character, designed and built stealth mechanics, scaling difficulty progression, UI, and enemy ai, then designed a level that was easy to get turned around in but had memorable landmarks.
Features
Risk & Reward Difficulty Scaling
As you make it further in the game, it becomes more difficult as more “titans“ start hunting you
Breaking containers gives you the items you need to survive and escape but also alerts the titans to your location
Finding Lucky Charms increases your chance of finding survival items making the game easier
If you want to make it harder on yourself, avoid the charms, they’re not required to beat the game and you get an achievement for doing so
Stealth
Listen for the titans’ footsteps and “hunt music“, if you can hear it, hide
Watch for glowing yellow eyes, if you can see them, they can probably see you
Throw rocks to create distractions and break containers from afar
Level Design
Memorable Confusion
When designing the map for Shanubis, I needed the monster to be able to surprise the player from anywhere but also provide the player fair chances of escaping. This becomes super important later in the game when there are multiple roaming monsters.
I also wanted new players to feel like they were getting turned around in a maze, but provided enough distinguishable landmarks so that after a few runs, players would be able to get their bearings more easily.
Originally I had the monster start chasing immediately but due to player feedback, I changed it so that the player can explore and get the low down of the map first which adds tension due to the unknown for new players. I then have the player trigger the monster at an intersection where even experienced players don’t know where he could come from.
Enemy AI Design
Considerations:
Enemy is melee only so needs to be able to catch the player
Give the player a chance to react
Player needs to be able to get away but is slower
Design:
Enemy is faster than the player
Average human reaction time is ~250ms, Enemy has a reaction time of 400ms
Enemy is immobile when attacking giving the player a chance to break line of site
States:
Patrol
Picks a random pre-placed marker in the map that’s not near them
Walks to that marker, Repeat
Investigate
Hears a sound and goes to investigate
Chase
Sees player and begins to chase
If in melee range, stop and attack
Search
Lost the player, looks around to see if they can spot them
Either sees the player and chases again or goes back to patrolling
Used Mixamo to rig the static mesh
Retargeted various animations in Unreal
Break pots and crates to find pickups
I used Unreal Engine’s Chaos Destruction System and swapped out the normal mesh for the broken mesh collection at runtime and then had the pieces fade out and dissapear after a few seconds to maintain performance.
Pickups
Bombs
Bombs are used to break open walls, and are the only pickup you need to actually finish the game
There are only 2 walls you need to blow up but many others that can open new routes for you to help when chased
You only actually need 2 bombs if you know which walls to blow up but finding more means more options
Lucky Charms effect the drop rate of this item
Rocks
Rocks can be thrown to:
Distract the enemy by making a sound to direct the enemy to a location
Break pots from afar
Hit lucky charms that are out of reach so they drop for you to pick them up
Herbs
Herbs are used to heal, they give the player more chances to keep their current playthrough going
Lucky Charms effect the drop rate of this item