Table of Contents

Enum AIAbilityIntent

Namespace
FishMMO.Shared
Assembly
FishMMO.Shared.dll

What an ability actually does, derived from the ECA actions attached to its events.

[Flags]
public enum AIAbilityIntent
Extension Methods

Fields

Buff = 4

Applies a beneficial effect to a target.

Control = 16

Prevents a target from acting or moves it against its will.

Damage = 1

Reduces a target's health, directly or over time.

Debuff = 8

Applies a detrimental effect to a target.

Dispel = 32

Removes existing effects from a target.

Heal = 2

Restores a target's health, directly or over time.

None = 0

Nothing recognisable was found in the ability's action graph.

Offensive = Damage | Debuff | Control | Threat

Anything an NPC would point at an enemy.

Revive = 64

Returns a dead target to life.

Summon = 256

Brings another entity into the world.

Supportive = Heal | Buff | Revive

Anything an NPC would point at a friend, including itself.

Threat = 128

Manipulates an NPC's threat table.

Utility = 512

Recognised, but none of the combat roles above — movement, interaction, and so on.

Remarks

A flags enum rather than a single value, because one ability routinely does several things — a nuke that also applies a burn is Damage and Debuff; a heal that cleanses is Heal and Dispel. Collapsing that to one category would force an arbitrary choice about which half of the ability the AI is allowed to notice.

Distinct from AbilityCategory, which describes delivery — melee versus ranged versus area. The two are orthogonal: a ranged AOE can be a heal or a nuke, and an NPC needs both answers. Delivery decides where it stands; intent decides who it points at.