Recruit AI
Background
The design is more of a bridge between other systems rather than a system in itself, and will have many aspects not included in the other, related systems. For example, the Quest System which will be key to allow for the recruitment logic to trigger does not in itself include movement or targets, nor does the Building System that is intended to follow.
Tasks
Firstly, the behavior tree checks a task to see if the requirements to recruit the NPC has been met. This is currently represented by a bool which is set when interacting with the NPC and is related to interfacing with the Blueprint Interface implemented in both the PC and the NPC.
The second task checks the target of the NPC. This is connected to a Target Point Object Reference which is editable on spawn, meaning it can easily be eyedropped in the editor and then retrieved from the NPC.
The system played out in the editor:
The recruitment prerequisite will be updated when the Quest System is further implemented. In this case, the Bool IsRecruited will be altered to an instance editable Quest Object Reference to determine which specific quest need to be completed to instigate the Recruit Logic.
Recruit AI
Hobby Project
The recruit task is a part of an AI system which allows the player to recruit certain NPCs after completing critical quests, which will cause them to move to a specific location related to the next phase of the game.
The recruit system is set up through a behavior tree to allow for the logic to run, and includes two tasks, a Character Class NPCRecruitable NPC child character actor and a target location.