Planned engine plugin that packages the HTN method-selection work from htn-morl-agent into reusable NPC behaviour, for Unity first and Unreal afterwards.
Nothing is implemented yet. The repository currently holds an empty
Unity project: ProjectSettings and nothing else, no scripts and no
packages of its own. It exists to reserve the shape of the work, not to be
cloned and used.
The planning and learning side lives in the research prototype and is the part that has to settle first; this repository only starts once there is a method-selection policy worth packaging.
A Hierarchical Task Network decomposes a task into methods, and when more than one method is semantically valid, something has to choose. Behaviour trees answer that with priority order, which is fixed at design time.
The intent here is to expose that choice as a plugin seam: the HTN filters the methods that are applicable, and a Multi-Objective Reinforcement Learning policy picks among them under a preference vector that can shift with the goal, the state and the NPC's profile. The designer authors tasks and methods; the policy decides which decomposition the NPC commits to.
| Piece | Responsibility |
|---|---|
| Domain authoring | Tasks, methods, preconditions and effects, editable in the engine. |
| Planner | Decomposes only the method that was selected. |
| Selection policy | Ranks applicable methods under the current preference vector. |
| Runtime | Executes primitive tasks and feeds outcomes back to the policy. |
- htn-morl-agent — the research prototype: HTN framework, GridWorld example and the MORL architecture this plugin is meant to package.
- Research notes — the wider context and where the work is heading.