AI Programming (Unreal Engine 5)
Team Lead
This project was made for UCI's Video Game Development Club over the span of a school quarter (~2 months).
This is a third-person stealth game inspired by Hitman and it was made in Unreal Engine 5. The player must navigate through the level avoiding the enemies and alarm traps to retrieve a brief case and get out. If spotted, the player can use lemons to stun enemies or knock down hanging pipes to knock out enemies. If they are caught, they'll lose a life and automatically release a smoke bomb which blinds and confuses enemies.
One of my primary motivations for making this game was so that I had an excuse to learn more about Unreal's AI perception system. That is Unreal's built-in solution to simulating senses such as sight, hearing, and touch for its AI controlled pawns. For this project, I only used sight and hearing. Obviously, the AI can see the player but they are also programmed to remember the last spot the saw the player when losing line-of-sight. When this happens, I programmed them to wander around the area for a bit before returning to their set patrol path. They are also able to hear the player's footsteps when not crouching as well as the alarm traps scattered throughout the level. Both these sounds trigger the same response which is to go over to the source of the sound.
Beyond programming the AI, I was also the project's team lead. I was assigning tasks, organizing meetings, and managing scope to ensure we had a finished project to showcase at the end of the quarter. It was my first time formally leading a project team.
Gameplay video courtesy of yours truly
The shot I make onto the falling trap at the beginning of the video is deceptively hard and took me several tries to get right
Cafeteria
The player's minimap. The red arrows are enemies.
The briefcase. Players must reach it before they can make their escape.
Documentation I made of the enemy patrol path system. Intended for the level designer to use when placing enemies in the world.