This is a very basic implementation of a GOAP system for UnrealEngine 4. It is barely finished, and hasn't been tested at all. I've put it on the back-burner until I can put together a decent test demo game to work with. The planning algorithm is not safe and very easy to crap out with poorly configured data, there's no defensive coding whatsoever so it's liable to crash and burn regularly. Use at your own risk.

The core terminology:

  • Agent – The NPC we are controlling
  • State – This is a symbolic representation of a single attribute of agent-centric world state e.g. ‘targetIsDead=false’
  • Goal – A goal is a set of target states.
  • Action – Agents are configured to have a set of allowable Actions. They consist of :
  • Preconditions – A set of states that must be satisfied for this action to be valid
  • Effects – A set of state changes that will be satisfied upon completion of the action 
  • Cost – Cost of the action

Code is on Github

There are no articles in this category. If subcategories display on this page, they may have articles.