
AI COMPANION SYSTEM
Designed and implemented an AI companion system in Unreal Engine 5 using MetaHuman characters. The companion supports four player-directed behaviours: Follow, Wait, Distract and Attack—each designed around different gameplay situations.
Design Challenge
How can an AI companion support the player without playing the game for them?
I designed the companion around player-directed commands rather than autonomous problem-solving. Follow and Wait support positioning, while Distract and Attack provide tactical options that require the player to decide when and where to intervene.

My Contributions
System Design
Designed and implemented the companion command system across four behaviours: Follow, Wait, Distract and Attack defining behaviour rules, transitions, cooldowns and player-directed interactions.
Level Design
Built stealth and combat spaces around the companion abilities, using enemy placement, navigation and environmental layouts to create opportunities for distraction, avoidance and combat.
Characters & animations
Integrated the MetaHuman companion into gameplay and coordinated movement, rotation and animation states so her actions remained readable across following, throwing and combat behaviours.
UI/UX
Designed the four-command interface and supporting gameplay feedback, including the central aiming crosshair, distraction landing marker, enemy suspicion feedback and ability availability states.
Behaviour Architecture
System Design Decisions
ABILITY COOLDOWNS
Problem
Distract and Attack could be repeatedly used to solve encounters without meaningful timing.
Solution
Added a 15-second cooldown after using Distract or Attack. The intention was to give the player time to act on the opening created by the companion before another intervention became available. A shorter interval would make repeated commands more dominant, while a longer interval could make the companion less useful within an encounter.
Result
The cooldown preserves the companion as a useful tactical option while preventing Distract and Attack from being continuously reused.
ENEMY PERCEPTION
Problem
Instant detection made stealth encounters too binary and gave the player little opportunity to react.
Solution
Designed enemy perception around a 70° focal vision cone and a suspicion meter that builds before full detection. The cone was intended to make enemy facing matter, giving the player opportunities to approach from outside the focal area. Gradual suspicion added a reaction window, allowing the player to notice the risk and reposition before being fully detected.
Result
The suspicion meter creates readable feedback and a reaction window before the player transitions from unseen to fully detected.
DIRECTED DISTRACTION
Problem
A fixed distraction location would limit the companion's tactical usefulness and reduce player control.
Solution
Designed a player-directed throw system. After selecting Distract, the player aims with the crosshair and previews the landing position. The companion retrieves the nearest distraction item, rotates toward the target and throws it.
Result
The player could direct distractions 360 around them, using enemy positioning and the environment to create their own openings
Connecting companion actions to enemy awareness
Enemy suspicion relied only on sight.
Enemy awareness relied only on sight, limiting how the companion could draw enemies’ attention away from the player.
I added hearing so enemies could respond to the sound of objects thrown by the companion and investigate the source.
Give the player a way to direct enemy attention through the companion, creating opportunities to move past them.
Final Gameplay
Watch for the four companion commands: Follow, Wait, Distract and Attack. The feedback supporting player decisions: the distraction landing preview, enemy suspicion meter and ability cooldown states.
Released
Released
ReleasedProject outcome
PLAYER-DIRECTED BEHAVIOURS
The final prototype demonstrated four companion commands that could support traversal, stealth and combat while keeping tactical decisions with the player
What worked
- ●Player-directed commands kept the companion useful without removing player agency.
- ●Suspicion feedback created a readable reaction window during stealth.
- ●Directed distractions let players create openings based on enemy positioning.
- ●Cooldowns prevented Distract and Attack from becoming repeatable solutions to every encounter.
Designing companion AI required balancing usefulness with restraint. Each behaviour needed to provide meaningful support while leaving positioning, timing and tactical decisions in the player's hands.
SYSTEM TAKEAWAY
The strongest version of the companion was not the most autonomous one, but the one that responded clearly to player intent. Combining direct commands, readable feedback and constrained abilities allowed the companion to support encounters without replacing player decision-making.