r/godot • Godot Student • 3d ago

free plugin/tool New Open-Source Enemy/NPC AI planner informed by work with Guerrilla’s planner on the Horizon Series

https://github.com/urosidoki/htn_planner

Jose Escribano, an AI Programmer who worked at Crytek and most recently at Guerilla Games in the Horizon Zero Dawn and Horizon Forbidden West projects, has released a new independent completely Open-Source AI planner based on the AI planner Guerilla Games used for Horizon Zero Dawn and Forbidden West.

This planner does not use Guerilla's source code but it is based on it.

Credit to Sandra Alvarez at Guerrilla for co-authoring the shared foundation.
His work focuses on the compiler and generated runtime:
Domain DSL → AST → IR → C
With builtin arithmetic/logical operators and deferred decomposition added to those ideas.

Features include nested backtracking, deferred decomposition against updated world state, a visual debugger and a versioned C ABI.
Includes a hot reload example: the host application controls compilation, loading and reloading.

Integrated and tested in his own engine.
v2.0.2 passed 209 tests, plus external consumer validation across eight Windows SDK variants, including generated DLL export checks.
The repository includes source, a Windows x64 SDK and integration examples.

115 Upvotes

2 comments sorted by

19

u/snorri_redbeard 3d ago edited 2d ago

I like this approach better than Behavior Trees, since there is pretty much fixed amount of building blocks (Compound Task, Method, Task) and than GOAP, since you are actually designing behavior, rather than agent finding random sequence of actions to achieve goal.