AI Companion Framework
Honours Project for my Game Design and Production Course at Abertay University.
Disclaimer: All Justification of each solution can be found at the bottom where a download button will allow you to download my report.
Core Goals
• Research into AI Companions players have disliked and the reasons why.
• Research into AI Companions players have liked and determine if any of the features could be used to solve the problems of the disliked AI Companions.
• Research into Adaptive Companions to work with different situations.
• Research into AI Design and Creation using Behaviour Trees.
Honours Project Presentation Video
Focus:
Create an AI Framework solving researched problems.
Date:
date - date
Engine:
Unreal Engine 5.
Language:
Blueprints..
Pre-Production
Research
AI Helping with Puzzles.
when researching into problematic AI Companions there was many posts from gamer's complaining about the AI Companions in God of War: Ragnarok solving the puzzle for the player not long after just encountering the puzzle.
some user have stated that there is a setting called Puzzle Timing but in an article I found it stated that Sony Santa Monica confirmed that it doesnt actually impact the length of time it takes for atreus and/or Mimir to start giving you hints about solving the puzzles.
The Solution
I Looked into 2 games with different hint systems to see if they would have worked better than what God of War gave us.
the first game was called the 7th guest which gets the player to go to a certain room to get a hint.
the seconds game was the original Uncharted game with prompts you with a UI Image to tell you how to get a hint when you need it.
After much research into the pros and cons of each hints system I decided to go with the Uncharted system.
AI Not Reviving Player.
The second problematic AI Companion I found upon researching where the AI Companions from Payday the Heist.
there was a user to said "One time i failed a heist because all three bots refused to get me up".
Another who said "I call them and they don't come."
After reading all the complaints I decided to take this problem on for my AI Companion Framework.
Solution.
With the Help from my Mentor for this project we realized I couldn't just have the solution being the Companion always revives the player as it prevents the player to caring when they get downed so I have consider consequences with this solution.
I looked into 2 games with death systems.
The first was Crash Badicoot which gives the 3 lives before having to restart.
The second was Call of Duty: Black Ops 2 Zombies which required a team mate to revive you under a time frame before being killed off.
Again after considering the pros and cons I decided to go with the Zombies Solution.
AI Walking into Traps.
The third problem I decided to undertake was actually found by myself at the point of researching i decided to buy myself the latest Avatar the Last Airbender game and noticed the AI Companions would randomly walk into traps and get themselves injured and killed.
this was annoying and with a game being released in 2023 I didn't expect these kind of problems .
after some research I realized this wasn't the only game to have it as games like Metal Gear Solid V and Guardians Tales also have AI Companions who would get themselves killed.
Solution.
Production
Hint System
Help Timer Setting.
While implementing the Hint System I decided to make a pause menu which would allow the player to change how much time would pass before being prompted with the Hint Option.
Implementing Hint System with AI Companion.
After the Pause Menu was implemented I started on an Inspect System which would allow the player to rotate the object being inspect, then after the time set in the settings had passed a prompt telling the player to press H is they needed a Hint would appear.
Instead of going back and forth between an item and the lock on the door I implemented a feature which would allow the player to input their guesses first, a voice line would be played hinting to either its the wrong code or the right code which would then allow the player to go to the door and enter the code.
Revive System
Implementing the Revive System.
The Revive System works by having the AI Companion go to the nearest medical station for supplies to heal the player, although after one medical station has been raided the companion cant go back which means they will need to find the nearest un-raided medical station, which means eventually after the player goes down too many times the companion wont be able to get back in time and causing the player to die.
Walking into Traps
Implementing Walking into Traps Solution
I started by first implementing a feature which would allow the AI Companion to detect a trap based off a percentage chance.
If the Companion has never encountered a trap before then the chances of noticing the trap will be low, but when it encounters a trap the chances of the Companion noticing a trap will increase.
After a while without noticing a trap then the Companion awareness will lower and the chance of noticing a trap will be low again.
Post-Production
Abertay Digital Graduate Show
At the end of my Honours Project I had the honor to share my Project with Student, School Kid, Lecturers and Industry Guests and with this I got amazing feedback and surprisingly I got A lot of great compliments on my Camera System I created for project which can be view here
For the graduate show I decided to go a little over the top as I had 3 Monitors on display, one to display the project, a second to display a QR Code to my Link Tree and a 3rd with a video so i could use this to explain my project to other.
A lot of students agreed that at time we are in with gaming and technology there shouldn't be an excuse for annoying and problematic AI Companion and with everyone I spoke to had experience with problematic AI Companion so I feel this Project helped them connect to how I wanted to make a change.
Download Project Report