2.1 KiB
2.1 KiB
DA_ObjectiveData — Data Asset
Parent Class: UDataAsset
Dependencies: BPC_ObjectiveSystem, WBP_ObjectiveDisplay
Purpose: Defines objective content — objective text, requirements, completion conditions, linked narrative flags, and reward data.
Variables / Structure
| Field | Type | Description |
|---|---|---|
ObjectiveTag |
FGameplayTag |
Unique tag for this objective |
ObjectiveText |
FText |
Display text for HUD/journal |
ObjectiveCategory |
EObjectiveCategory |
Main, Side, Hidden, Tutorial |
PrerequisiteFlags |
TArray<FGameplayTag> |
Narrative flags required before objective activates |
CompletionFlags |
TArray<FGameplayTag> |
Flags set when objective completes |
bIsOptional |
bool |
Objective can be skipped |
ObjectiveLocation |
FVector |
World location for marker |
RewardItems |
TArray<FPrimaryAssetId> |
Items granted on completion |
RewardExperience |
int32 |
XP awarded |
LinkedEndingWeight |
float |
Score contribution to ending evaluation |
Gameplay Tags
- Namespace:
Objective.<Category>.<Name>(e.g.,Objective.Main.FindKey,Objective.Side.RescueNPC)
Validation Rules
ObjectiveTagmust be uniqueObjectiveTextmust not be empty- At least one
CompletionFlagrequired (unless narrative-driven)
Example Data
| Field | Value |
|---|---|
| ObjectiveTag | Objective.Main.EscapeHospital |
| ObjectiveText | "Escape the abandoned hospital" |
| ObjectiveCategory | Main |
| CompletionFlags | Narrative.EscapedHospital |
| RewardExperience | 500 |
Consumed By
Reuse Notes
- Objectives are data-driven; no blueprint logic changes needed for new objectives
PrerequisiteFlagsgate objective activation behind narrative flagsLinkedEndingWeightfeeds into ending evaluation system