Attribute Manager #
Videos #
This is an abstract video about the core features of the attribute manager:
Please note that the attribute manager is massive! In combination of ouor other modules it is extremly powerfull. E.g. in combination with our level manager, you could add attribute points like how its done in games like Skyrim, or Ark Survival.
This is a tutorial on how something like that can be achieved (this is implemented, use the tutorial to learn):
We also have a full tutorial in our Udemy course on how to setup a basic version (focus on the core principles explaining the why instead of only how) from scratch.
The attribute manager is a comprehensive system that handles:
- Character attributes (health, stamina, food, etc.)
- State effects (poisoned, sick, drunk, on fire, etc.)
- Temporary and permanent stat modifications
- Survival mechanics (temperature, hydration, hunger)
- Combat attributes (damage, armor, etc.)
- Skill progression
All logic is combined into AC_Attribute_Manager_Advanced, which can be assigned to any actor.
State Effects #
State effects are conditions that affect a character, such as:
- Health States: Sick, Healthy, Infection, Wounded, Poisoned, Drunk
- Temperature States: Very Cold, Cold, Normal, Hot, Very Hot
- Misc States: Wet, Warming, On Fire, Low Health, Starved
State effects are configured in DT_StateEffects data table and can include:
- Camera modifiers
- Particle effects
- Animations
- Damage over time
- Auto-recovery
- Duration (temporary or permanent)
- Spread mechanics (diseases)
State Effect Actors:
When a state effect is applied, a state effect actor is spawned and attached to the character. This actor handles:
- Adding/removing visual effects
- Applying damage or healing
- Managing timers for temporary effects
- Camera modifiers (drunk effect, etc.)
The attribute manager itself coordinates these actors and handles attribute changes.
Attributes #
The attribute system tracks character stats in two categories:
Non-Persistent Attributes:
Current values that change constantly during gameplay:
- Health, Stamina, Food, Hydration, Mana, Energy, Weight, Oxygen
Persistent Attributes:
Configuration values that determine attribute behavior:
- Maximum values (Max Health, Max Stamina, etc.)
- Regeneration rates (Health Regen Rate, Stamina Regen Rate, etc.)
- Consumption rates (Food Consumption Rate, Hydration Consumption Rate, etc.)
- Skills (Mining Skill, Crafting Skill, etc.)
- Other settings (Inventory Weight, Movement Speed, etc.)

Setting Attributes:
Use these functions to modify attributes:
- Set Non-Persistent Attribute: Changes current values (Health, Stamina, etc.)
- Set Persistent Attribute: Changes max values, rates, skills, etc.

Base Value vs Added Value #
Each attribute has two values:
Base Value:
- Permanent changes
- Persists through save/load
- Use for permanent upgrades
- Example: Permanently increase Max Health by 50
Added Value:
- Temporary bonuses
- Resets on save/load
- Reapplied by state effects/equipment
- Example: +20 Max Health while wearing helmet

When to Use Each:
- Base Value: Level-ups, permanent consumables, character progression
- Added Value: Equipment bonuses, temporary buffs, state effect modifications
The total attribute value = Base Value + Added Value.
State effects system #
State Effect Categories #
Health States:
- Sick: Bad stats, slowly recovering
- Healthy: Normal stats
- Infection: Needs medicine, bad stats, slowly dying
- Wounded: Bad stats but slowly restoring, small chance of infection if not attended
- Poisoned: Random chance of recovering, antidote helps restore
- Drunk: Temporary dizzy screen, more hunger and thirst, a bit more energy
- Low Health: Triggered automatically when health is low
- Starved: Triggered when food reaches 0, applies damage and sounds
Temperature States:
Based on external temperature and character's chill temperature:
- Very Cold: Bad stats and small amount of damage
- Cold: Bad stats, faster hunger
- Normal: No penalties
- Hot: Bad stats, faster thirst
- Very Hot: Bad stats and small amount of damage
Each state has screen animation effects.
Misc States:
- Wet: When in rain or just out of water, faster cold
- Warming: Near a fire, faster not wet AND faster too hot and less fast too cold
- On Fire: Fire particle + dying + not wet
Auto-Triggered State Effects #
State effects can be automatically applied when attributes reach certain thresholds.
Low State Thresholds:
In AC_Attribute_Manager_Advanced, you can configure low state values for each attribute:
- Low Health Threshold: Default 20 (when Health < 20, apply Low Health state effect)
- Low Stamina Threshold: When stamina is low
- Low Food Threshold: When food is low
- Starved Threshold: When food reaches 0

- Health drops below threshold (e.g., 20)
- Low Health state effect automatically applied
- Screen effects appear
- Player receives visual/audio feedback
- When health rises above threshold, state effect removed
- Food reaches 0
- Starved state effect automatically applied
- Damage applied over time
- Starvation sounds play
- When food increases, state effect removed
Disease Spreading #
State effects can spread from one character to another.
Spread Configuration:
In DT_StateEffects, configure spread settings:
- Can Spread: Enable/disable spreading
- Spread Radius: How close characters must be
- Spread Chance: Probability of transmission
- Spread Interval: How often to check for spread
- Character A has Infection state effect with spread enabled
- Character B comes within spread radius
- Spread check occurs at intervals
- Based on spread chance, Character B may become infected
- Infection spreads to nearby characters
This allows for realistic disease mechanics in survival games.
State Effect Configuration #
DT_StateEffects Data Table:
Each state effect row contains:
- State Effect Name: Enum value matching state effect type
- Auto Recover: Whether state effect automatically removes over time
- Damage: Damage applied per interval
- Duration: How long temporary effect lasts
- Camera Modifier: Camera shake, blur, etc.
- Particle Effect: Visual effects spawned on character
- Animation: Animation to play
- Can Spread: Disease spreading enabled
- Spread Settings: Radius, chance, interval

State Effect Actors:
Custom state effect actors can be created by extending BP_StateEffect. These actors handle state-specific logic like:
- Drunk effect: Camera modifier + increased consumption
- On Fire: Fire particles + damage + spread to nearby characters
- Poisoned: Random recovery chance + antidote interaction

Attribute system #
Non-Persistent Attributes #
Non-persistent attributes are current values that change constantly during gameplay.
Non-Persistent Attribute List:
- Health: Current health points
- Stamina: Current stamina (for sprinting, jumping)
- Food: Current food level
- Hydration: Current hydration level
- Mana: Current mana (for spells/abilities)
- Energy: Current energy (sleepiness/fatigue)
- Weight: Current carried weight
- Oxygen: Current oxygen (underwater)

Enable/Disable Attributes:
You can enable or disable specific attributes per character. Disabled attributes:
- Won't appear in HUD
- Won't consume/regenerate
- Won't trigger state effects

Changing Non-Persistent Attributes:
Use Set Non-Persistent Attribute function
- Attribute Type: Health
- New Value: 75
This sets the character's current health to 75.
Persistent Attributes #
Persistent attributes are configuration values that don't change frequently.
Persistent Attribute Categories:
Maximum Values:
- Max Health, Max Stamina, Max Food, Max Hydration, Max Mana, Max Energy, Max Oxygen
Regeneration Rates:
- Health Regen Rate, Stamina Regen Rate, Oxygen Regen Rate
Consumption Rates:
- Food Consumption Rate, Hydration Consumption Rate, Energy Consumption Rate
Combat Attributes:
- Damage, Armor, Melee Damage, Ranged Damage, Critical Chance
Movement:
- Movement Speed, Sprint Speed
Skills:
- Mining Skill, Crafting Skill, Fishing Skill, etc.
Other:
- Maximum Inventory Weight, Chill Temperature Penalty, etc.
Changing Persistent Attributes:
Use Set Persistent Attribute function
- Attribute Type: Max Health
- New Value: 150
This sets the character's maximum health to 150.
Setting Attributes #
Set Non-Persistent Attribute:
Changes current attribute values during gameplay.
Usage:
- Select attribute type (Health, Stamina, Food, etc.)
- Set new value
- Attribute updates immediately
- HUD updates automatically
- State effects may trigger based on new value
Set Persistent Attribute:
Changes maximum values, rates, and skills.
Usage:
- Select attribute type (Max Health, Stamina Regen Rate, etc.)
- Set new value
- Attribute updates immediately
- Affects future calculations (regen, consumption, etc.)
Base vs Added:
When setting attributes, you can choose to modify:
- Base Value: Permanent change
- Added Value: Temporary change (removed on load/save unless reapplied)
Equipment and state effects typically use Added Value, while progression systems use Base Value.
5 NON-PERSISTENT ATTRIBUTES DETAIL

Health #
Health Mechanics:
- Character's current hit points
- Death occurs at 0 health
- Can be affected by damage, healing, state effects
- Fall damage implemented and configurable
- Visualized with pawn in radius component
Health State Effects:
- Low Health: Triggered when health < low health threshold
- Death: Character dies at 0 health
Health Sources:
- Consumable items (food, potions)
- Equipment attributes
- Natural regeneration (if configured)
- State effect healing/damage
Stamina #
Stamina Mechanics:
- Used for sprinting and jumping
- Sprinting: Hold Shift, consumes stamina continuously
- Jumping: Press Spacebar, consumes stamina per jump
- Auto-stop sprinting when stamina reaches 0
- Cannot jump when stamina is in low range
- Regenerates automatically based on Stamina Regen Rate
Low Stamina Effects:
- Out of breath sound when stamina is low
- Cannot sprint or jump until regenerated
Stamina Configuration:
- Max Stamina: Persistent attribute
- Stamina Regen Rate: Persistent attribute
- Sprint Stamina Cost: Configurable per tick
- Jump Stamina Cost: Configurable per jump
Food #
Food Mechanics:
- Decreases over time based on Food Consumption Rate
- When food reaches low range, stomach growling sound plays
- When food reaches 0, Starved state effect applied
- Starved state effect applies damage directly to health (bypasses armor)
Food Restoration:
- Consumable food items
- Certain cooked items provide more food
- Configured in DT_Items under Assigned Attributes
Food Configuration:
- Max Food: Persistent attribute
- Food Consumption Rate: Persistent attribute (affected by temperature, activity)
- Starved Damage: Configured in state effect
Hydration #
Hydration Mechanics:
- Decreases over time based on Hydration Consumption Rate
- When hydration is low, thirst sound plays
- When hydration reaches 0, damage applied to health (bypasses armor)
Hydration Restoration:
- Consumable drink items
- Water sources (if configured)
- Configured in DT_Items under Assigned Attributes
Hydration Configuration:
- Max Hydration: Persistent attribute
- Hydration Consumption Rate: Persistent attribute (affected by temperature)
Mana #
Mana Mechanics:
- Resource for spells and abilities
- No default spell system included (implement your own)
- Regenerates based on Mana Regen Rate
Mana Configuration:
- Max Mana: Persistent attribute
- Mana Regen Rate: Persistent attribute
Energy (Sleep) #
Energy Mechanics:
- Represents sleepiness/fatigue
- Decreases over time based on Energy Consumption Rate
- Different from Stamina (which is for sprinting/jumping)
- No default sleep mechanic included (implement your own)
Energy Configuration:
- Max Energy: Persistent attribute
- Energy Consumption Rate: Persistent attribute
Potential Uses:
- Require sleep when energy is low
- Reduced stats when tired
- Beds restore energy
Weight #
Weight Mechanics:
- Tracks total carried weight from inventory
- Inventory system automatically updates weight attribute
- When weight exceeds Maximum Inventory Weight, Encumberment state effect applied
Encumberment Effects:
- Reduced movement speed
- Cannot sprint
- Visual/audio feedback
Weight Configuration:
- Weight: Non-persistent (current carried weight)
- Maximum Inventory Weight: Persistent attribute
Oxygen #
Oxygen Mechanics:
- Used when underwater
- Decreases when submerged
- Regenerates when above water based on Oxygen Regen Rate
- Damage applied when oxygen reaches 0
Oxygen Configuration:
- Max Oxygen: Persistent attribute
- Oxygen Regen Rate: Persistent attribute
- Oxygen Consumption Rate: Based on underwater state
Persistent attributes detail #
Maximum Values #
Maximum values determine the upper limit for non-persistent attributes.
Maximum Attribute List:
- Max Health: Maximum health points
- Max Stamina: Maximum stamina
- Max Food: Maximum food level
- Max Hydration: Maximum hydration level
- Max Mana: Maximum mana
- Max Energy: Maximum energy (sleep)
- Max Oxygen: Maximum oxygen when underwater
Modified By:
- Equipment (added value)
- State effects (added value)
- Level progression (base value)
- Permanent consumables (base value)
Regeneration Rates #
Regeneration rates control how fast attributes restore over time.
Regeneration Attributes:
- Health Regen Rate: Health points restored per second
- Stamina Regen Rate: Stamina restored per second
- Mana Regen Rate: Mana restored per second
- Oxygen Regen Rate: Oxygen restored per second when above water
Modified By:
- Equipment bonuses
- State effects (sick reduces regen, healthy increases regen)
- Skills/perks
Consumption Rates #
Consumption rates control how fast attributes decrease over time.
Consumption Attributes:
- Food Consumption Rate: How fast food decreases
- Hydration Consumption Rate: How fast hydration decreases
- Energy Consumption Rate: How fast energy decreases
Modified By:
- Temperature (hot increases hydration consumption)
- Activity (sprinting increases food consumption)
- State effects (drunk increases consumption)
Skills #
Skills track character proficiency in various activities.
Skill Attributes:
- Mining Skill: Mining efficiency/speed
- Crafting Skill: Crafting quality/speed
- Fishing Skill: Fishing success rate
- Combat Skill: Combat effectiveness
- Survival Skill: Survival mechanics
- (Custom skills can be added)
Skill Progression:
Used in combination with a level manager for Skyrim/ARK-style progression:
- Perform action (mine, craft, fish)
- Gain skill experience
- Level up skill
- Unlock perks/abilities
Reference tutorial: https://youtu.be/oN8mmCMmVfk
Other Persistent Attributes #
Combat Attributes:
- Damage: Base damage output
- Armor: Damage reduction
- Melee Damage: Melee weapon damage multiplier
- Ranged Damage: Ranged weapon damage multiplier
- Critical Chance: Critical hit probability
Movement Attributes:
- Movement Speed: Base walk speed
- Sprint Speed: Sprint movement multiplier
Inventory Attributes:
- Maximum Inventory Weight: Weight limit before encumberment
Environmental Attributes:
- Chill Temperature Penalty: How cold affects character (modified by clothing, wet state, fire proximity)
Attribute assignment #
DT_Items Assigned Attributes #
Items in DT_Items can have Assigned Attributes that are applied when the item is added to inventory.
When Applied:
Assigned attributes from DT_Items are applied when:
- Item is added to any inventory container
- Item is picked up
- Item is crafted
Use Cases:
- Quest items: Add bonus stats when in inventory
- Talismans/Charms: Passive bonuses while carried
- Cursed items: Negative effects while in possession

Example – Lucky Charm
When Lucky Charm is added to inventory, these bonuses apply. When removed, bonuses are removed.
DT_Equipment Assigned Attributes #
Equipment in DT_Equipment can have Assigned Attributes that are applied when the equipment is equipped.
When Applied:
Assigned attributes from DT_Equipment are applied when:
- Equipment is equipped using Equip function
- Equipment actor is spawned
When Removed:
- Equipment is unequipped
- Equipment actor is destroyed
Use Cases:
- Armor: Increase Max Health, Armor value
- Weapons: Increase Damage, Critical Chance
- Accessories: Increase skills, movement speed
- Environmental gear: Modify temperature resistance
When helmet is equipped, these bonuses apply. When unequipped, bonuses are removed.
Equipment should always use Added Value, not Base Value. This ensures bonuses are removed when equipment is unequipped and don't become permanent.
Temperature system #
External Temperature #
External temperature is the environmental temperature affecting all characters in the area.
Temperature Sources:
- Weather system (rain, snow, heat)
- Day/night cycle (cold at night, hot during day)
- Biome/location-based temperature
- Manually set for specific areas

Temperature Range:
External temperature is measured on a scale (e.g., -20 to 40 degrees) and determines which temperature state effect is applied.
Chill Temperature #
Each character has a Chill Temperature value that represents their personal temperature.
Chill Temperature Calculation:
Chill Temperature = External Temperature + Chill Temperature Penalty
Chill Temperature Penalty Sources:
- Clothing/Equipment: Armor provides cold resistance (negative penalty = warmer)
- Wet State: Being wet increases cold penalty
- Warming State: Near fire decreases penalty (warmer)
- Character attributes: Base chill resistance
External Temperature: 5 degrees
Character's Chill Penalty: -15 (wearing warm clothes)
Chill Temperature: 5 + (-15) = -10 degrees → Character feels warmer
Temperature Penalties #
Wet State:
- Applied when in rain or just exited water
- Increases chill temperature penalty (feel colder)
- Must dry off to remove (time or near fire)
Warming State:
- Applied when near a fire
- Decreases chill temperature penalty (feel warmer)
- Faster removal of Wet state
- Can lead to overheating if too close for too long
On Fire State:
- Character is actively burning
- Applies damage over time
- Removes Wet state instantly
- Can spread to nearby characters

Temperature States #
Based on chill temperature, different state effects are applied:
Very Cold (Chill Temp < -15):
- Bad stats (reduced movement, regeneration)
- Small damage over time
- Screen frost effect
Cold (-15 < Chill Temp < 0):
- Bad stats
- Faster food consumption
- Shivering animation
Normal (0 < Chill Temp < 25):
- No penalties
- Normal stats
Hot (25 < Chill Temp < 35):
- Bad stats
- Faster hydration consumption
- Heat wave screen effect
Very Hot (Chill Temp > 35):
- Bad stats
- Small damage over time
- Heat stroke effects
Temperature State Transitions:
As external temperature or chill penalty changes, the character automatically transitions between temperature states.
Special mechanics #
Fire Spread #
Characters on fire can ignite other characters.
Fire Spread Mechanics:
- Character A has On Fire state effect
- Character B comes within fire spread radius
- Character B catches fire
- Fire can chain-spread to Character C, D, etc.
Fire Proximity Warming:
Standing near fire (but not on fire):
- Applies Warming state effect
- Removes Wet state faster
- Increases chill temperature (warmer)
Extinguishing Fire:
- Enter water
- Use fire extinguisher item (if implemented)
- Wait for duration to expire
Encumberment #
When carried weight exceeds maximum inventory weight, Encumberment state effect is applied.
Encumberment Effects:
- Reduced movement speed
- Cannot sprint
- Stamina regeneration reduced
- Visual/audio feedback (heavy breathing, slow walk animation)
Removing Encumberment:
- Drop items to reduce weight below maximum
- Increase Maximum Inventory Weight (equipment, perks)
Fall Damage #
Fall damage is calculated based on fall height and velocity.
Fall Damage Configuration:
- Minimum fall height for damage
- Damage multiplier based on fall distance
- Fatal fall height

Fall Damage Reduction:
- Equipment bonuses (boots, armor)
- Skills/perks
- State effects (feather fall buff)
Use cases #
Creating a New State Effect #
Step 1: Add to State Effects Gameplay tags #
- Add new entry (e.g., “Bleeding”)
Step 2: Add Row to DT_StateEffects #
- Open DT_StateEffects data table
- Add new row with same name as enum entry
- Configure settings:
- State Effect Name: Select your new value
- Auto Recover: Should it remove automatically?
- Damage: Damage per interval
- Duration: How long it lasts (-1 for permanent)
- Camera Modifier: Camera effects
- Particle Effect: Visual effects
- Can Spread: Can it spread to others?
- Spread Radius, Spread Chance, Spread Interval: If spreading enabled
Step 3: Create Custom State Effect Actor (Optional) #
If your state effect needs custom logic:
- Create new blueprint extending BP_StateEffect_Base
- Implement custom logic in Event Graph
- Reference this actor in DT_StateEffects
Step 4: Test #
- Place activation pad in test map
- Configure pad to apply your new state effect
- Test triggering, effects, duration, spreading
Creating a New Attribute #
Step 1: Add to Attribute gameplay tags #
Step 2: Add Variables to Attribute Manager #
- Open AC_Attribute_Manager_Advanced blueprint
- Add new indexes for your attribute:
- For non-persistent: “Current Charm” (float)
- For persistent: “Max Charm” (float), “Charm Regen Rate” (float)

Step 3: Add to UI #
- Open UI_PlayerStats widget
- Duplicate existing attribute row
- Change to display your new attribute
Step 4: Test #
- Set attribute via Set Persistent/Non-Persistent Attribute
- Verify value changes
- Check UI updates correctly
- Test with equipment/items if applicable
