It Will Find You - Devlog 9: Monster AI Part 1 - The Core
Hey Folks,
So continuing last weeks discussion on the monster, and how its AI developed, I thought today i'd discuss the initial AI loop that was created as a foundation for the monster, and which laid the groundwork for the system to expand and become more complex. As this was my first experience creating an AI that worked in 3D, it was very much a learning process for me, and hopefully discussing that journey can help anyone else that's interested.
Fair warning in advance, the next few devlogs will be somewhat technical : )
As a core element of both the narrative and gameplay, it was important to ensure the Monster felt like a living entity to the player, as oppose to a generic basic AI.
The foundation of this monsters brain is a string-based state system built around the Nav Mesh Agent, that allows the monster to cycle through different states depending on what scenario it finds itself in. These states can also be referenced and called by external scripts, allowing the Master Event System to influence the monster’s behaviour as a secondary AI brain.
At the core of this system was a Nav Mesh Agent (NMA) attached to the creature, with an adjustable radius and height that could be altered as development continued to ensure the creature had free mobility throughout all environments. The NMA would then have its behaviour determined by the string state machine or external factors like collisions and behave accordingly. This presented a good base to build the AI on, as the inbuilt tools of the NMA and Unity’s navigation system meant the creature could navigate the space consistently without too many additional calculations needing to be made to compensate for tight spaces, with the baked mesh often providing all the navigation detail needed.
With this in place I began to create the core cycle the monster would work through during its active phase whilst hunting. The idea was to have an AI loop that it would move through, step by step, whilst exploring its environment that could then be deviated from when exceptions, like contact with the player, occurred. This took the form of an idle phase, a movement phase and a search phase. In the idle phase the creature would pick a random point inside of a unit sphere centred on itself, then set this as the navigation point. The movement phase would then set the NMA speed so that the creature could begin walking towards the selected point, and upon arrival it would search the spot for the player, rotating 360 degrees before returning to idle, choosing another point and repeating the process if the player was not detected. This loop was a simple but effective base on which to begin expanding, and with the creature able to move, it was time to give it the ability to chase and catch the player.
And that's where we'll leave it for this week, I hope this first insight into AI's basic foundation was interesting!
Tune in next week for more on the AI. and how it hunts the player,
Until then,
Nick
If you want to come discuss the game, have a general chat, or reminisce about Captive Audience, why not join our discord or Facebook pages, or follow us on twitter for more news!
Discord: https://discord.gg/bhgXgH
Facebook: https://www.facebook.com/ItWillFindYou/
Twitter: https://twitter.com/HeraldofLoco
Get It Will Find You
It Will Find You
Status | Released |
Author | Captive Minds |
Genre | Adventure |
Tags | 3D, First-Person, Horror, Monsters, Multiple Endings, Narrative, Psychological Horror, Spooky, Story Rich, Voice Acting |
More posts
- It Will Find You Free IndefinitelyMar 18, 2020
- It Will Find You - 50% off Black Friday Holiday Sale!!Nov 28, 2019
- It Will Find You - Patch 0.1.2Nov 07, 2019
- It Will Find You - Whats Next?Nov 02, 2019
- It Will Find You - Halloween Spooktacular SaleOct 24, 2019
- 3...2...1... And we're live!Oct 23, 2019
- Launch Delay - ItchOct 18, 2019
- Minimum Specs for It Will Find YouOct 16, 2019
- It Will Find You: Pre-launch FAQOct 08, 2019
- It Will Find You - Devlog 12: The problem with doors.Oct 07, 2019
Leave a comment
Log in with itch.io to leave a comment.