About

Project pointers — releases, source, issue trackers, upgrade notes.

[ About ]

About Intent Forge

A Goal-Oriented Action Planning framework for Unreal Engine 5. MIT-licensed, developed by dreulavelle on GitHub. Under active development and not yet validated in a shipping game — APIs may shift before the first stable release.

MITv1.0.0-alpha

Where to find what

You want…Look at
Per-release notesGitHub Releases
The plugin source codegithub.com/dreulavelle/IntentForge
To file a bug or feature requestPlugin issue tracker
To file a docs bugDocs issue tracker

Upgrading between releases

Most API renames migrate Blueprint graphs automatically; you'll see no breakage in BP after updating. Source-code callers should adopt the new names — old names remain available for one minor version before they're removed.

A few migrations need manual attention:

MigrationWhat to do
IsCurrentActionStale / ClearCurrentActionStaleGetPlanGeneration / HasPlanChangedSinceDeleted in v1.0-alpha. Source callers must switch to the monotonic counter: cache LastObservedPlanGeneration per observer and compare against Component.GetPlanGeneration() each tick, or call Component.HasPlanChangedSince(LastObservedGeneration) for the boolean form. See Concepts → Plan invalidation for the full pattern.
ForceReplanRequestReplanDeleted in v1.0-alpha. Blueprint graphs migrate automatically via a FunctionRedirect declared in Config/BaseIntentForge.ini. Source callers must adopt RequestReplan directly.
ResolveActorFromFactGetActorFact, bPlanWasEmptybPlanEmpty, plus other renamesSource callers should adopt the new names. Blueprint graphs migrate automatically via the redirects in Config/BaseIntentForge.ini.
Single-player components → networked actorsUIntentForgeComponent opts into replication by default (SetIsReplicatedByDefault(true)). On non-replicating actors there's no behaviour change. On bReplicates=true actors, the planner now runs server-only and clients receive the current action via OnReplicatedActionChanged. See the Networking ADR and the Replicated Patrol example.
Older versions → current anti-flapThe anti-flap toolkit was introduced incrementally; existing archetypes work unchanged. Momentum, filter, and latch are all opt-in per fact / per component. See the Anti-Flap Toolkit.

Hard breaks — anything bigger than a name change — are called out in the release notes.

License

MIT. The plugin and these docs ship under the same licence.

On this page