What Is an Attribute Profile?
An Attribute Profile is a data asset that defines the entire attribute structure for a character or actor. A profile includes:- Attribute Definitions (Health, Stamina, Strength, etc.)
- Optional Leveling/Progression rules
- Optional Regeneration rules
- Attribute Link Definitions (scaling rules)
- Optional Calculation/Effect configuration
Creating an Attribute Profile
Step 1 — Create the Data Asset
- In the Content Browser
- Right-click → Create Advanced Asset → Miscellaneous → Data Asset
-
Choose:
AttributeProfile(class name:UAttributeProfile) -
Name it something clear, such as:
DA_PlayerAttributesDA_WolfAttributesDA_BossAttributes
Step 2 — Add Attribute Definitions
Inside the profile:- Open the asset.
- Find the section Attribute Definitions.
- Click Add Element.
- For each attribute, configure:
- Attribute Handle (e.g., “Health”)
- Base Value
- Min Value / Max Value
- Optional: Regen settings
- Optional: Progression settings
- Optional: Tags
Step 3 — (Optional) Add Level Link Definitions
If your game needs scaling logic (e.g., Strength affecting MaxHealth):- Create a Data Asset of type:
AttributeLevelLinkDefinition - Add Link Rules such as:
- Source Attribute: Strength
- Target Attribute: MaxHealth
- Operation: Add
- Formula: 1 STR → +10 MaxHealth
- Assign the link definition to your Attribute Profile under:
Step 4 — (Optional) Configure Progression
If your game uses XP or leveling: In each Attribute Definition → ProgressionConfig:- Assign an XP curve
- Assign a Level curve
- Set max levels
- Configure XP overflow
- Configure per-level scaling rules
Step 5 — Assign the Profile to Your Character
Go to your character Blueprint or C++ actor:Blueprint
- Select the Attribute Manager Component
- Look for the field: Attribute Profile
- Select your new profile
C++
- Load all definitions
- Create runtime attribute instances
- Apply link definitions
- Initialize XP/Level values
- Set starting values
- Replicate everything
Designer Tips
- Keep attributes grouped logically (Combat, Survival, Magic, etc.)
- Use link definitions to reduce repetitive stat editing
- Use progression curves sparingly—only for attributes that should level
- Make unique profiles for dramatically different creatures
(e.g., wolves vs humans vs bosses)
Developer Notes
- Profiles are immutable at runtime
- Runtime instances exist in the Attribute Manager
- Changing a profile only affects new spawns, not existing actors
- Profiles are lightweight assets—safe for duplication and iteration
- All work is done server-side and replicated automatically