Data Behavior - funovus/editor-wiki GitHub Wiki

Table of Contents
- [Data\Behavior](#databehavior) * [Template](#template) * [Parent](#parent) * [Family](#family) * [Alignment](#alignment) * [Refresh Stack](#refresh-stack) * [Max Stack Count](#max-stack-count) * [Update Duration While Disabled](#update-duration-while-disabled) * [Duration Random Addition](#duration-random-addition) * [Unit Modifier](#unit-modifier) * [Duration](#duration) * [Stacks Removed On Expire](#stacks-removed-on-expire) * [Start Effect](#start-effect) * [Final Effect](#final-effect) * [Refresh Effect](#refresh-effect) * [Expire Effect](#expire-effect) * [Periodic Interval](#periodic-interval) * [Periodic Interval Expressions](#periodic-interval-expressions) * [Periodic Effect](#periodic-effect) * [Periodic Effect Count](#periodic-effect-count) * [Behavior Validators Apply](#behavior-validators-apply) * [Behavior Validators Remove](#behavior-validators-remove) * [Behavior Validators Disable](#behavior-validators-disable) * [Modifiers](#modifiers) * [Damage Response](#damage-response) * [Death Response](#death-response) * [Behavior Tag Array](#behavior-tag-array) * [Persist Through Morph](#persist-through-morph) * [Locked](#locked) * [BehaviorModifier](#behaviormodifier)

Data\Behavior {dataBehavior}

Behaviors are usually buffs or debuffs that can be applied to units that modify the unit's attributes or how it acts. Behaviors can also apply tags and can function like custom attributes.

Template {Template}

FieldType: Template

Parent {Parent}

FieldType: Parent

Family {Family}

Used for filtering families of behaviors via behavior filter.

Alignment {Alignment}

You can set this field to say whether a behavior is good, bad, neutral, or both for a unit. Does not affect gameplay in any way.

  • NEUTRAL: Marks the behavior as neutral.
  • POSITIVE: Marks the behavior as positive.
  • NEGATIVE: Marks the behavior as negative.
  • MIXED: Marks the behavior as both positive and negative.

Refresh Stack {Refresh-Stack}

If this is checked, the behavior's Duration will reset when subsequent stacks of the behavior are applied to the unit.

Max Stack Count {Max-Stack-Count}

The maximum number of stacks a unit can have of this behavior.

Applying additional stacks beyond the maximum will not increase the stack count, but will refresh the duration if Refresh Stack is checked. A maximum stack count of 0 means that there is no limit to the number of copies allowed on a unit.

Update Duration While Disabled {Update-Duration-While-Disabled}

If this is checked and the behavior is disabled from a Disable Validator, the behavior's Duration will continue to count down, rather than be paused.

Duration Random Addition {Duration-Random-Addition}

If set, a random value between 0 and the duration random addition will be added to behavior's the Duration when applied. A negative number will instead reduce the Duration in the same manner.

Unit Modifier {Unit-Modifier}

Modifications that are applied to the unit when the behavior is applied.

Ownership {Ownership}

Used to change the owner of a unit. You typically want to use caster unit or source unit for charm behaviors.

Target Behavior Type {Target-Behavior-Type}

EnumType: BehaviorComponent.BehaviorType

Used to change the unit's AI behavior type.

Duration {Duration}

This is how long the behavior will last for.

By default, this duration is not reset when additional stacks are applied. All stacks are removed when the duration expires. A duration of 0 will result in the behavior lasting indefinitely.

Stacks Removed On Expire {Stacks-Removed-On-Expire}

How many behavior stacks will be removed when the duration expires, 0 means all stacks will be removed. If duration expires but not all behavior stacks removed, the duration timer will be refreshed.

Start Effect {Start-Effect}

The effect created when the behavior is started.

Final Effect {Final-Effect}

The effect created when the behavior is removed.

Refresh Effect {Refresh-Effect}

The effect created when subsequent stacks of a behavior are applied to a unit.

Requires the Refresh Stack flag to be enabled.

Expire Effect {Expire-Effect}

The effect created when the behavior's duration expires.

This effect won't be executed if the behavior is removed via Effect/Remove Behavior.

Periodic Interval {Periodic-Interval}

Determines how often the Periodic Effect occurs. Must be greater than 0 to function to create periodic effects.

Periodic Interval Expressions {Periodic-Interval-Expressions}

The evaluated expressions are added to the Periodic Interval.

Periodic Effect {Periodic-Effect}

The effect created a the end of each Periodic Interval.

Periodic Effect Count {Periodic-Effect-Count}

Determines how many times the Periodic Effect is run. A periodic effect with count of -1 will last until the behavior is removed.

Behavior Validators Apply {Behavior-Validators-Apply}

The behavior will only be applied if all of validators listed here succeed. Unlike Remove and Disable validators, these are only checked once.

Behavior Validators Remove {Behavior-Validators-Remove}

The behavior will be removed if any of these validators succeed.

NOTE: these remove validators are checked every frame while the behavior is active and can cause significant CPU overhead. It's recommended to have less than 20 of such behaviors active at once.

Behavior Validators Disable {Behavior-Validators-Disable}

The behavior will be disabled if any of these validators succeed. The behavior will be enabled again the next time that all of these validators fail.

NOTE: these disable validators are checked every frame while the behavior is active and can cause significant CPU overhead. It's recommended to have less than 20 of such behaviors active at once.

Modifiers {Modifiers}

These modifiers can be applied to a number unit attributes (like health or movement speed) and different types of modifiers interact in different ways. Each modifier is applied once per stack of the behavior. Modifiers are only applied while the behavior is active.

Flags {Flags}

Invulnerable {Invulnerable}

Prevents damage taken.

Can be filtered by search filters such as in Effect\AreaSearch.

Stealth {Stealth}

Can be filtered by search filters. By itself stealth does not do anything.

Suppress Movement {Suppress-Movement}

Prevents the unit from moving.

Suppress Weapon {Suppress-Weapon}

Prevents the unit using weapons.

Suppress Ability {Suppress-Ability}

Prevents the unit from casting abilities.

Suppress Turning {Suppress-Turning}

Prevents the unit from turning.

Suppress Collision {Suppress-Collision}

Prevents the unit from interacting with or being affected by other unit's collision.

Ignore Pathing {Ignore-Pathing}

Prevents the unit from being restricted to moving on the navmesh.

Max Health Modifier {Max-Health-Modifier}

MessageType: BehaviorModifier

Modifies the unit's health.

Max Mana Modifier {Max-Mana-Modifier}

MessageType: BehaviorModifier

Modifies the unit's mana.

Max Shield Modifier {Max-Shield-Modifier}

MessageType: BehaviorModifier

Modifies the unit's shield.

Health Regeneration Modifier {Health-Regeneration-Modifier}

MessageType: BehaviorModifier

Modifies the unit's health regen.

Mana Regeneration Modifier {Mana-Regeneration-Modifier}

MessageType: BehaviorModifier

Modifies the unit's mana regen.

Shield Regeneration Modifier {Shield-Regeneration-Modifier}

MessageType: BehaviorModifier

Modifies the unit's shield regen.

Unit Target Priority {Unit-Target-Priority}

MessageType: BehaviorModifier

Modifies the unit's target priority.

See: Data/Unit/Target Priortity.

Unit Radius Modifier {Unit-Radius-Modifier}

MessageType: BehaviorModifier

Modifies the unit's radius.

Move Speed Modifier {Move-Speed-Modifier}

MessageType: BehaviorModifier

Modifies the unit's movement speed.

Attack Speed Modifier {Attack-Speed-Modifier}

MessageType: BehaviorModifier

Modifies the unit's weapon attack speed.

Weapon Damage Modifier {Weapon-Damage-Modifier}

MessageType: BehaviorModifier

Modifies the unit's weapon damage.

Ability Damage Modifier {Ability-Damage-Modifier}

MessageType: BehaviorModifier

Modifies the unit's ability damage.

Weapon Damage Taken Modifier {Weapon-Damage-Taken-Modifier}

MessageType: BehaviorModifier

Modifies the unit's damage taken (from weapons).

Ability Damage Taken Modifier {Ability-Damage-Taken-Modifier}

MessageType: BehaviorModifier

Modifies the unit's damage taken (from abilities).

Critical Chance Modifier {Critical-Chance-Modifier}

MessageType: BehaviorModifier

Modifies the unit's critical chance with weapons.

Ability Critical Chance Modifier {Ability-Critical-Chance-Modifier}

MessageType: BehaviorModifier

Modifies the unit's critical chance with abilities.

Ability Gold Cost Modifier {Ability-Gold-Cost-Modifier}

MessageType: BehaviorModifier

Modifies the gold cost of the unit's abilities.

Ability Mana Cost Modifier {Ability-Mana-Cost-Modifier}

MessageType: BehaviorModifier

Modifies the mana cost of the unit's abilities.

Ability Health Cost Modifier {Ability-Health-Cost-Modifier}

MessageType: BehaviorModifier

Modifies the health cost of the unit's abilities.

Heal Modifier {Heal-Modifier}

MessageType: BehaviorModifier

Modifies the unit's healing effects. Note that this modifier only applies to flat (non-percentage) healing effects.

Weapon Range Modifier {Weapon-Range-Modifier}

MessageType: BehaviorModifier

Modifies the unit's weapon range.

Weapon Scan Range Modifier {Weapon-Scan-Range-Modifier}

MessageType: BehaviorModifier

Modifies the unit's weapon scan range.

Ability Cooldown Modifier {Ability-Cooldown-Modifier}

MessageType: BehaviorModifier

Modifies the unit's cooldown recharge speed.

Increases the speed of ability cooldown by this factor. Setting scaled or unscaled to 1 will increase ability cooldown recharge speed to 200% (1.00 + 1.00 = 2.00), reducing the cooldown time by half. Setting additive, unified, or multiplier factor to 1 will also increase ability cooldown recharge speed to 200% (1.00 * (1.00 + 1.00) = 2.00).

Ability Speed Modifier {Ability-Speed-Modifier}

MessageType: BehaviorModifier

Modifies the unit's ability cast speed.

Increases the speed of ability prep time, finish time, and cooldown by this factor. Setting scaled or unscaled to 1 will increase ability cast speed to 200% (1.00 + 1.00 = 2.00), reducing the total cast and cooldown time by half. Setting additive, unified, or multiplier factor to 1 will also increase ability cast speed to 200% (1.00 * (1.00 + 1.00) = 2.00).

Ability Cooldown Period Modifier {Ability-Cooldown-Period-Modifier}

MessageType: BehaviorModifier

Modifies the unit's ability cooldown reduction.

This modifier only acts on ability cooldown and does not modify prep time or finish time. To reduce ability cooldowns by 1 second, you could set the scaled or unscaled value to -1. To reduce ability cooldowns by 50%, you could set the additive, unified, or multiplier factor to -0.5.

Disabled Weapons {Disabled-Weapons}

Prevents the unit from using these weapons.

Enabled Weapons {Enabled-Weapons}

Enables these weapons if they are disabled.

Disabled Weapon Families {Disabled-Weapon-Families}

Prevents the unit from using weapons under these families.

Enabled Weapon Families {Enabled-Weapon-Families}

Enables weapons under these families if they are disabled.

Weapon Modifier Group {Weapon-Modifier-Group}

If set, modifiers affecting weapons (such as weapon damage, weapon range, attack speed, etc) only apply to weapons listed here rather than to all weapons.

Ability Modifier Group {Ability-Modifier-Group}

If set, modifiers affecting abilities (such as ability damage, ability cooldown, ability speed, etc) only apply to abilities listed here rather than to all abilities.

Disabled Abilities {Disabled-Abilities}

Prevents the unit from using these abilities.

Enabled Abilities {Enabled-Abilities}

Enables these abilities if they are disabled.

Hide Abilities {Hide-Abilities}

Hide these abilities from the built-in UI.

Show Abilities {Show-Abilities}

Show these abilities in the built-in UI if hidden.

Add Highlight To Abilities {Add-Highlight-To-Abilities}

Highlight these abilities in the built-in UI.

Remove Highlight From Abilities {Remove-Highlight-From-Abilities}

Remove highlight from these abilities in the built-in UI.

Damage Response {Damage-Response}

Allows the unit to create an effect or modify damage amounts in response to taking or dealing damage.

Chance {Chance}

The chance that the damage response will occur. If 0, the damage response will never be triggered. If 1 the damage response will always be triggered.

Cooldown {Cooldown}

The duration (in seconds) the damage response has to wait before it has a Chance of occurring again.

Location {Location}

  • DEFENDER:The damage response occurs when the unit takes damage.
  • ATTACKER:The damage response occurs when the unit deals damage.

Fatal Only {Fatal-Only}

If enabled, the damage response only occurs when taking or dealing fatal damage.

Effect {Effect}

The effect is created when the damage response succeeds.

Damage Modifier {Damage-Modifier}

MessageType: BehaviorModifier

The damage that triggered the damage response is modified by these values when the damage response succeeds.

See BehaviorModifier for how these values are calculated.

Validators {Validators}

These validators must succeed when the damage response is triggered for the damage response to be executed.

Chance Modifier Per Stack {Chance-Modifier-Per-Stack}

MessageType: BehaviorModifier

Modifies the damage responses chance per stack of the behavior on the unit.

See BehaviorModifier for how these values are calculated.

Damage Clamp Min {Damage-Clamp-Min}

If set, any damage below this amount will be adjusted to this amount when the damage response is triggered.

Damage Clamp Max {Damage-Clamp-Max}

If set, any damage above this amount will be adjusted to this amount when the damage response is triggered.

Death Response {Death-Response}

Allows the unit to create an effect when it dies.

Chance {Chance}

The chance that the death response will occur. If 0, the death response will never be triggered. If 1 the death response will always be triggered.

Effect {Effect}

The effect created by the death response.

Target Type determines who it affects.

Target Type {Target-Type}

The location where the death response occurs. In this context Caster/Source refers to the killing unit and Target refers to this unit.

Behavior Tag Array {Behavior-Tag-Array}

Used to have the behavior apply global tags to the unit. Tags can be referenced in validators and expressions.

Name {Name}

The name of the tag to apply.

Count {Count}

The number of stacks of the tag to apply (per behavior stack).

Persist Through Morph {Persist-Through-Morph}

See: Data/Effect/Morph.

Locked {Locked}

Disables the behavior. Used by Wild Sky to allow behaviors to be enabled by contextual loading.

BehaviorModifier {BehaviorModifier}

The total result of all modifiers for an attribute follows this formula:

 result = (value + sum(scaled))
          * (1 + sum(additive_factor))
          * (1 + positive(max(unified_factor)) + negative(min(unified_factor)))
          * (1 + multiplier_factor[1]) *  (1 + multiplier_factor[2])
          + sum(unscaled).

Scaled {Scaled}

The value is added to the base value, and can be multiplied by additive, unified, or multiplier factors.

Unscaled {Unscaled}

The value is added to the base value but are never multiplied by additive, unified, or multiplier factors.

Additive Factor {Additive-Factor}

Increases the base value as a multiplier.

When multiple sources of additive factors are applied, they combine additively (Ex: +0.5 + +0.25 = +0.75).

Unified Factor {Unified-Factor}

Increases the base value as a multiplier.

When multiple sources of unified factors are applied, only the highest positive value and lowest negative value are used (Ex: +0.5 + +0.25 = +0.5).

Multiplier Factor {Multiplier-Factor}

Increases the base value as a multiplier.

When multiple sources of multiplier factors are applied, they combine multiplicatively (Ex: +0.5 + +0.25 = +0.875).

⚠️ **GitHub.com Fallback** ⚠️