SUKHRAJ JOHAL
_Ocular
Team: Solo Project / Role: Game & Level Designer, Programmer / Timeline: 2 Weeks
Play as a thief that is trying to steal three priceless vases, without being caught/captured by the patrolling guards the surrounding environment.
Design Goals
-
Design engaging AI using FSM/ State-Driven Behaviours
-
Create a strong AI Sensory System
-
Make enemy behaviours readable to player without animations
State-Driven AI Behaviour
Enemy Types
Primary function is to patrol the environment and report any intruders or suspicious behaviour to the Hunter.
Neutralize any threat that it detects from the environment. It can temporary blur a players vision and capture intruders.
Designing the AI Sensory System
3D Vision Cone
-
Outer layer: peripheral view (AI will notice if a player stays in zone for too long)
-
Inner Layer: immediately detects anything in this zone
Object Detection
-
Navigation: uses obstacle avoidance using Unity's Navmesh System, and a custom waypoint system
-
Investigate System: the enemy AI can detect/investigate objects that are thrown nearby its detection radius
Initial Design Notes
Visual Barks
Challenge: How to make the enemy behaviours identifiable?
Since the project scope was very small, I wanted to do create readable AI behaviours without the use of animations. In the end, I used visual iconography to distinguish enemy behaviour. The use of visual barks (indicated by icons), made it very easy for the player to distinguish what behaviour the AI is performing and react accordingly.
Color was used to distinguish the alert levels within the AI, so white meant that the player was clear. On the other hand, red meant that the player was in view of the enemy AI.
Investigation State
Alert (Transitioning to Chase State)
Designing The Level - Process
Top Down Map
Block Out Mesh
Player Flow: Stealth Movement
The level is designed so that the player has pockets of cover (physical objects or debris) to maneuver around if an enemy is nearby. Tighter and intimate areas create a feeling of tension, as the player tries to find the hidden vases in the environment.
Outcomes
What did I learn?
-
Designing and implementing two different enemy AI each with its own set of behaviour, using finite state machines
-
Creating readable enemy behaviour without the use of animations
-
Designing a versatile AI sensory system: 3D Vision Cone, Object Detection