The Enemy Info Data Asset is an optional data assets that is used to initialize data from various systems in the framework. For example, here you can grant various default abilities, define the starting attributes, set animation blueprint, etc.
The Enemy Info Data Asset is async loaded in the BP_MasterEnemy on begin play. Since this data asset is async loaded, this will allow you to add various assets without needing to hard reference them.
As mentioned earlier, this data asset is optional. If you do not wish to use this data asset you can open the BP_MasterEnemy & find where the info from this data asset is initialized and used to initialize the various components used by the system. To remove any system from this you can simply remove the data initialization on begin play.
Here are the various properties found in the enemy info data asset and what they are used for:
Pawn
Here you can set the AI Pawn class and Anim Class the enemy associated with this data asset will use. The AI Pawn Class is primarily used by the BP_EnemySpawner to associate an enemy info data asset with the spawned enemy character.
Behavior
Initialize data used for enemy behavior. Behavior data such as the Behavior Tree can be changed for different AI behavior, the default starting behavior can be set, the actor gameplay tags the AI will see as “hostile”, and Blackboard Key names that are associated with gameplay tags.
State Manager
The default state classes that will be added to the enemy character’s State Manager Component. Any number of states can be added here and the states that you add here will be available to the enemy character’s state manager component at run time. What states you add here & what those state are used for can be defined by user created state classes. By default this is where the impact decision state machine is set. The Impact Decision state machine is used for blocking attacks.
Combat Style
Here you can set the enemy characters default Combat Style. This combat style will be used by the enemy upon spawning. This default combat style is how the enemy abilities are granted to the enemy character. Changing the combat style can be used to change what abilities the AI has available.
Abilities
The Default Ability Sets property will allow you to add multiple Ability Sets for the enemy character to be given by default. You can add any abilities that you’ve created for the enemy that need to be granted by default and also apply any gameplay effects with the ability set. The abilities in the default ability set will be granted to the enemy on begin play when the enemy blueprint is initializing the ability system component. What abilities are granted here & what those abilities are used for can be defined by user created ability classes.
Default Gameplay Cues can also be added to the Enemy Info Data Asset. This will allow you to spawn a gameplay cue & add that gameplay cue to the ability system component. Which will make that gameplay cue available to the ability system component to be executed by tag.
Collision Manager
There is a collision manager section in the enemy info data asset. This will allow you to add default target types to the collision manager component that can be used to find a target by tag.
Attributes
The default attributes can be defined in the enemy info data asset. This will essentially allow you to define all the starting values for the enemy character’s attribute values. For more information on how to setup attributes you can check the attributes system documentation.
Default extended attributes can also be added to this data asset. So, if the enemy character needs any default extended attributes that need to be accessible during gameplay, those can be added here.