Ability Data Asset
The custom Ability System Component provided by the framework can be initialized using an Ability Data Asset, which defines Attribute Sets, Gameplay Effects, Gameplay Abilities, and Gameplay Tags.

You can assign the Ability Data Asset in two ways:
Directly in the Ninja GAS Ability System Component — set it in the component's Details panel.
Useful when the same data asset is shared by multiple characters.
Via the AbilitySystemDefaultsInterface, implemented in an Avatar — the avatar provides the Data Asset to use.
Useful when each avatar has unique abilities but the ASC resides in a shared Player State.
Data Asset Settings
You can configure Attribute Sets, Gameplay Effects, Gameplay Abilities, and replicated Gameplay Tags in the data asset.
Attribute Sets
Property | Description |
|---|---|
| Attribute Set class to grant. |
| Scope for this Attribute Set (Local, Server, or Both). |
| Data table with default attribute values, based on |
Gameplay Effects
Property | Description |
|---|---|
| Gameplay Effect class to grant. |
| Initial level. |
Gameplay Abilities
Property | Description |
|---|---|
| Gameplay Ability class to grant. |
| Initial level. |
| Input assigned to this ability (old Input System). Not recommended for new projects. |
Additional Properties
Property | Description |
|---|---|
| Replicated gameplay tags added by default. |
Ability System Defaults Interface
This interface allows you to decouple the Ability Data from the Ability System Component. It is particularly useful when the ASC resides in the Player State but multiple Characters can be used, each with their own abilities.
The base Character classes implement this interface and expose a property for the Data Asset. If left empty, it will be safely ignored. When provided, it takes priority over any Data Asset set directly on the ASC.