It's not been in active development for some time, although I do plan to come back and refactor/clean it up in the near future with a view to building a decent sized test prototype.
A simple STRIPS-like Goal Oriented Action Planning Framework for UE4
This branch is built on UnrealEngine 4.15.0. See branches for previous engine versions.
C++ plugin designed to be used in Blueprints (although can be used in C++). Includes editor customisations and per-project state configuration.
Based on:
http://alumni.media.mit.edu/~jorkin/goap.html
https://en.wikipedia.org/wiki/STRIPS
Includes a sample project with a (very) basic shooter agent. Otherwise follow the intructions for install and use.
Using a very crude forward search planning algorithm starting from current state at present. Needs work.
##Instructions
- Install the GOAPer Plugin
- Create a project
- Go to Project Settings -> Plugins -> GOAPer
- Here you configure all the state atoms you want to use
- Create Blueprints based on GOAPAction for each action
- Set the PreConditions and Effects in the blueprint defaults (you will see the values from the plugin settings)
- Set other parameters such as tick rate, interaction radius etc.
- Override the 'Execute' method. This should return false until the action completes, then return true
- Remember to set the GOAPState effects before returning true
- Create a Blueprint based on GOAPAIController
- Set the AvailableActions, consisting of the GOAPActions you have created
- Set the Starting State
- Set the default Goal
##Todo
- Add more comprehensive and robust planning algorithms
- Continue building out demo project