# DA_RoomMutation — Data Asset **Parent Class:** `UDataAsset` **Dependencies:** [`BPC_AdaptiveEnvironmentDirector`](../10-adaptive/) **Purpose:** Defines room mutation rules — environment changes triggered by narrative progression, fear state, or adaptive difficulty. --- ## Variables / Structure | Field | Type | Description | |-------|------|-------------| | `MutationTag` | `FGameplayTag` | Unique mutation identifier | | `RoomFilter` | `FGameplayTag` | Which rooms this mutation applies to | | `MutationType` | `EMutationType` | Geometry, Lighting, Audio, EnemyPlacement, LootPlacement | | `RequiredNarrativeFlags` | `TArray` | Flags required for mutation to activate | | `RequiredFearThreshold` | `EFearThreshold` | Minimum fear tier needed | | `CooldownSeconds` | `float` | Min time between mutations | | `MutationChance` | `float` | 0.0-1.0 probability per eligible room | | `bCanRevert` | `bool` | Can room return to original state | | `RevertCondition` | `FGameplayTag` | Narrative flag that triggers revert | --- ## Gameplay Tags - Namespace: `RoomMutation..` (e.g., `RoomMutation.Geometry.WallShift`) --- ## Validation Rules - `MutationTag` must be unique - `MutationChance` must be 0.0-1.0 --- ## Example Data | Field | Value | |-------|-------| | MutationTag | `RoomMutation.Geometry.CeilingDrop` | | MutationType | Geometry | | RequiredFearThreshold | Afraid | | MutationChance | 0.3 | --- ## Consumed By - [`BPC_AdaptiveEnvironmentDirector`](../10-adaptive/)