In this example we will setup AI Character in simplest possible way.
If distance from AI ( Subject ) to Player ( Invoker ) is above 2000, then it will be despawned
and when it's less than 2000 then AI is spawned.
- We want AI to be updated by subsystem right after its spawn, thus CanBeUpdatedBySubsystem is set to true.
- We want to allow subsystem to spawn/despawn this subject, thus AllowSubsystemToDespawn is set to true.
- We want AI to be despawned when there isn't any Invoker within 2000 radius, thus OverrideSubsystemDespawnRadius is set to 2000.
- Priority doesn't matter in this case, it can be left at 0.
- We don't save any data of AI so DataClass can remain empty.
- We don't use OptimizationLayers because everything is handled by subsystem, thus it remains empty.
- We don't need to know whether AI is seen or not because system only spawns/despawns this subject based on radius to Invokers, thus ShouldCalculateIsSeen is set to false.