WORKFUN

What is it?

Beehave is a addon/plugin for the Godot Engine that enables the users to create robust AI systems using a behavior node tree system. Examples including creating behaviors of NPCs like a town that lives their own lives with responsibilities or creating a complex boss

My Capstone Project

I'm developing a game to learn how to make video games. One of the ways to make the game more engage full is by having NPCs and enemies that are interesting and unique. While that is a task that can be done manually. With the use of this plugin it allows to set up these interactions much quicker especially if you are creating several different NPCs and enemies.

Research

This plugin does come with its own github and documentation page but the first issue I did come across was that it is hard to understand, specifically because how vast you could set up the tree system and still requires unique programming. Paired with Godot's problem of it's documentation becoming outdated every time the engine gets a major over haul, finding a relevant source could feel discouraging. The light and the end of the table is that there is other people that feel like this and vent out an issue of programmer/engineers creating documentation/guides. It makes sense to them but for people who are venturing into it as an amateur could have a harder time understanding the system

Enemy A.I

My current progress with setting up an enemy A.I, is to set up a navigation area that the enemy could survey. Set up a range in which the enemy can scan for the player. Once the player is close enough the enemy A.I can chase the player. After getting within range the enemy player can attack the player. It will try to run around obstacle to get to the player but can still be lapped

Setting Up Enemy A.I with Beehave

Setting up a second enemy with the same structure as the first one. This one will have the same features that if the player will get close enough it will attack the main player, The SequenceComposite node will assure that each node that is branched will follow one after another.
The Condition Leaf(node) will check if certain conditions are met, i.e if the enemy is at a certain health or if it's at a certain location for this sake I will be using it to patrol around a certain area.
The Action Leaf(node) will perform the action that you set the NPC in this case, an enemy to perform. for this case it will be to move to a location for a particular amount of time.

WIP