Progress Manager

The Progress Manager (AC_ProgressManager) is a simple yet powerful component that tracks player progress using a Gameplay Tag | EProgress map. It integrates seamlessly with the AI Interaction Manager component, allowing dialogues to dynamically adjust based on the player's progress. Additionally, it includes a Gameplay Event System that can be triggered from AI dialogues or other gameplay events.
It is added to the PlayerController class by default (PC_SoulslikeFramework).
How It Works
Storing & Managing Progress
The component maintains a map of Progress Tags | EProgress. Each progress state is stored persistently, allowing the system to track which objectives, quests, or interactions have been completed.
Executing Gameplay Events
ExecuteGameplayEvents(EventsArray)
This function processes a struct (
FDialogGameplayEvent
), which contains:EventTag
: Identifies what type of gameplay event it is.AdditionalTag
: Provides extra context for event handling.Custom Data
: A flexible Instanced Struct that can store any type of data dynamically.
When triggered, iterates through the array of events, extracting necessary data and routing them accordingly.
Using a switch statement, determines the type of event, executing the desired logic according to event tag.
Example Usage

Example Usage with the NPC Dialogues

Example on Triggering Gameplay Events through Dialogue Tables

Last updated
Was this helpful?