Hierarchical Task Network Planning AI

Maks Maisak - Jul 23, 2020

Create AI that can plan ahead using this flexible, fully-featured alternative to Behavior Trees

  • Supported Platforms
  • Supported Engine Versions
    4.24 - 4.27
  • Download Type
    Engine Plugin
    This product contains a code plugin, complete with pre-built binaries and all its source code that integrates with Unreal Engine, which can be installed to an engine version of your choice then enabled on a per-project basis.

WEBSITE

DISCORD

The HTN Planning plugin lets you create AI that predicts consequences of its actions and plans multiple steps ahead. Here are some examples:

  • Video: an HTN-based character inventing the optimal plan to attack a target
  • Video: two groups of HTN-based characters tactically fighting in a simple FPS arena


Just like with Behavior Trees, you can easily create Tasks, Decorators, and Services from either C++ or Blueprints, and arrange them in a visual graph editor. Easily use the Blackboard to store knowledge about possible futures and modify it from within graph nodes. The planner efficiently finds the plan with the lowest cost.


Compared to other planning techniques like Goal-Oriented Action Planning, HTN planning is more efficient and gives designers much more control over the AI. You can create AI with just as much autonomy and flexibility as you need.


For more info, check out the documentation website, the tutorials, and the official Discord community.

Technical Details

Features:

  • Node-based HTN graph editor
  • Seamlessly use Blackboard data as worldstate
  • Make custom Tasks, Decorators, and Services in both C++ and Blueprints
  • Parallel planning
  • Any-order planning
  • Visualize the current plan of any AI via the Visual Logger
  • Integration with the Environment Query System for complex movement planning and decision-making
  • Realtime debugging features


Code Modules:

  • HTN [Runtime]
  • HTNEditor [Editor]


Number of Blueprints: 0

Number of C++ Classes: 70

Network Replicated: No

Supported Development Platforms: Windows, macOS, Linux

Supported Target Build Platforms: Windows 64-bit, Windows 32-bit, macOS, Linux, Android, iOS

Documentation: HTN Documentation

Example Project: HTN Example Project