This article relates to the game "Dota 2". Click here for more information.
This article relates to the SDK/Workshop Tools for "Dota 2 Workshop Tools". Click here for more information.
This article's documentation is for Source 2. Click here for more information.

Dota 2 Actions and Modifiers

From Valve Developer Community
Jump to navigation Jump to search

[WIP]

This is a reference of actions and modifiers for custom Dota 2 Dota 2 datadriven items and abilities. See the Dota 2 Addon Portal for more information.

Modifier Properties

Manipulates the properties of the affected unit/object

Modifier Name Effect
MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE Modifies damage as added damage.
MODIFIER_PROPERTY_PREATTACK_BONUS_DAMAGE_POST_CRIT Modifies damage as added damage, not calculated into critical hits.
MODIFIER_PROPERTY_BASEATTACK_BONUSDAMAGE Modifies damage as base damage.
MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PHYSICAL Physical damage dealt after the normal attack. [Needs verification]
MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_MAGICAL Magical damage dealt after the normal attack. [Needs verification]
MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_COMPOSITE Composite damage dealt after the normal attack. [Needs verification]
MODIFIER_PROPERTY_PROCATTACK_BONUS_DAMAGE_PURE Pure damage dealt after the normal attack. [Needs verification]
MODIFIER_PROPERTY_PROCATTACK_FEEDBACK Mana burn. [Needs verification]
MODIFIER_PROPERTY_POST_ATTACK ?
MODIFIER_PROPERTY_INVISIBILITY_LEVEL ?
MODIFIER_PROPERTY_PERSISTENT_INVISIBILITY ?
MODIFIER_PROPERTY_MOVESPEED_BONUS_CONSTANT Constant movespeed increase
MODIFIER_PROPERTY_MOVESPEED_BASE_OVERRIDE Sets the base movespeed.
MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE Increased movespeed that is percentage based. Does not stack with itself.
MODIFIER_PROPERTY_MOVESPEED_BONUS_PERCENTAGE_UNIQUE Increased movespeed that is percentage based. Item version, does not stack.
MODIFIER_PROPERTY_MOVESPEED_BONUS_UNIQUE Contant movespeed increase. Item version, does not stack.
MODIFIER_PROPERTY_IGNORE_MOVESPEED_LIMIT Ignore movespeed limit
MODIFIER_PROPERTY_MOVESPEED_ABSOLUTE ?
MODIFIER_PROPERTY_MOVESPEED_LIMIT ?
MODIFIER_PROPERTY_MOVESPEED_MAX ?
MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT Constant attack speed increase.
MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT_POWER_TREADS Power treads version; does not stack. [Needs verification]
MODIFIER_PROPERTY_ATTACKSPEED_BONUS_CONSTANT_SECONDARY ?
MODIFIER_PROPERTY_BASE_ATTACK_TIME_CONSTANT Sets the Base Attack Time.
MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE Outgoing auto-attack damage, also puts the target in leashed state.
MODIFIER_PROPERTY_DAMAGEOUTGOING_PERCENTAGE_ILLUSION Outgoing auto-attack damage for illusions.
MODIFIER_PROPERTY_BASEDAMAGEOUTGOING_PERCENTAGE Modifies the base damage dealt.
MODIFIER_PROPERTY_INCOMING_DAMAGE_PERCENTAGE Modifies Incoming damage modified by a percentage.
MODIFIER_PROPERTY_INCOMING_PHYSICAL_DAMAGE_PERCENTAGE Modifies Incoming physical damage by a percentage.
MODIFIER_PROPERTY_INCOMING_SPELL_DAMAGE_CONSTANT Modifies incoming damage from spells by a percentage.
MODIFIER_PROPERTY_EVASION_CONSTANT Evasion.
MODIFIER_PROPERTY_AVOID_CONSTANT Faceless Void's Backtrack.
MODIFIER_PROPERTY_AVOID_SPELL Same as above, but for spells. [Needs verification]
MODIFIER_PROPERTY_MISS_PERCENTAGE Increased chance to miss.
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS Physical armor bonus.
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_ILLUSIONS Physical armor that affects illusions. [Needs verification]
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE ?
MODIFIER_PROPERTY_PHYSICAL_ARMOR_BONUS_UNIQUE_ACTIVE Buckler effect?
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_BONUS Magical resistance, does not affect pure damage, stacks.
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_ITEM_UNIQUE Magical resistance, does not affect pure damage, does not stack.
MODIFIER_PROPERTY_MAGICAL_RESISTANCE_DECREPIFY_UNIQUE Pugna's Decripify, affects magical resistance, does not stack.
MODIFIER_PROPERTY_BASE_MANA_REGEN Modifies base mana regen, affected by percentage mana regen.
MODIFIER_PROPERTY_MANA_REGEN_CONSTANT Modifies mana regen, not affected by percentage mana regen.
MODIFIER_PROPERTY_MANA_REGEN_CONSTANT_UNIQUE Modifies mana regen, not affected by percentage mana regen, does not stack. [Needs verification]
MODIFIER_PROPERTY_MANA_REGEN_PERCENTAGE Modifies base mana regen.
MODIFIER_PROPERTY_MANA_REGEN_TOTAL_PERCENTAGE Modifies all mana regen.
MODIFIER_PROPERTY_HEALTH_REGEN_CONSTANT Constant health regeneration.
MODIFIER_PROPERTY_HEALTH_REGEN_PERCENTAGE Health regen based on the affected object's maximum health
MODIFIER_PROPERTY_HEALTH_BONUS Modifies current health. [Needs verification]
MODIFIER_PROPERTY_MANA_BONUS Modifies current mana. [Needs verification]
MODIFIER_PROPERTY_EXTRA_STRENGTH_BONUS Modifies strength stat.
MODIFIER_PROPERTY_EXTRA_HEALTH_BONUS Modifies total health. [Needs verification]
MODIFIER_PROPERTY_EXTRA_MANA_BONUS Modifies total mana. [Needs verification]
MODIFIER_PROPERTY_STATS_STRENGTH_BONUS Modifies Strength stat.
MODIFIER_PROPERTY_STATS_AGILITY_BONUS Modifies Agility stat.
MODIFIER_PROPERTY_STATS_INTELLECT_BONUS Modifies Intelligence stat.
MODIFIER_PROPERTY_ATTACK_RANGE_BONUS Modifies attack range.
MODIFIER_PROPERTY_REINCARNATION Aegis or Wraith King ult? [Needs verification]
MODIFIER_PROPERTY_RESPAWNTIME Modifies respawn time or sets it? [Needs verification]
MODIFIER_PROPERTY_DEATHGOLDCOST Modifies gold lost from death.
MODIFIER_PROPERTY_PREATTACK_CRITICALSTRIKE Critical power.
MODIFIER_PROPERTY_PHYSICAL_CONSTANT_BLOCK Damage block for auto-attacks.
MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK_UNAVOIDABLE_PRE_ARMOR Damage block calculated before armor (think Tidehunter Kraken Shell)
MODIFIER_PROPERTY_TOTAL_CONSTANT_BLOCK Blocks damage from all sources.
MODIFIER_PROPERTY_OVERRIDE_ANIMATION ?
MODIFIER_PROPERTY_OVERRIDE_ANIMATION_WEIGHT ?
MODIFIER_PROPERTY_OVERRIDE_ANIMATION_RATE Changes the rate an animation is played (does it affect cast point times?)
MODIFIER_PROPERTY_ABSORB_SPELL ?
MODIFIER_PROPERTY_DISABLE_AUTOATTACK Disarm (Heaven's Halberd).
MODIFIER_PROPERTY_BONUS_DAY_VISION Modified vision during Daytime, constant.
MODIFIER_PROPERTY_BONUS_NIGHT_VISION Modified vision during Nighttime, constant.
MODIFIER_PROPERTY_BONUS_VISION_PERCENTAGE Modifies vision range by a percentage.
MODIFIER_PROPERTY_MIN_HEALTH Cannot drop below this health amount; EXECUTE still kills.
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PHYSICAL All physical damage is negated.
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_MAGICAL All magical damage is negated.
MODIFIER_PROPERTY_ABSOLUTE_NO_DAMAGE_PURE All pure damage is negated.
MODIFIER_PROPERTY_IS_ILLUSION Is the unit an illusion?
MODIFIER_PROPERTY_TURN_RATE_PERCENTAGE Modifies turn rate by a percentage
MODIFIER_PROPERTY_DISABLE_HEALING Stops health from going up (think Ice Blast).
MODIFIER_PROPERTY_TOOLTIP Can be anything, used in Armlet for health loss.
MODIFIER_PROPERTY_MODEL_CHANGE Sets the model.
MODIFIER_PROPERTY_MODEL_SCALE Scales the model..
MODIFIER_PROPERTY_IS_SCEPTER ?
MODIFIER_PROPERTY_TRANSLATE_ACTIVITY_MODIFIERS
MODIFIER_PROPERTY_TRANSLATE_ATTACK_SOUND
MODIFIER_PROPERTY_LIFETIME_FRACTION
MODIFIER_PROPERTY_PROVIDES_FOW_POSITION
MODIFIER_PROPERTY_COOLDOWN_REDUCTION_CONSTANT
MODIFIER_PROPERTY_FORCE_DRAW_MINIMAP

Ability Behaviors

Specifies what type of behavior an ability has. An ability can have multiple behaviors.

AbilityBehavior Effect
DOTA_ABILITY_BEHAVIOR_HIDDEN This ability can be owned by a unit but cannot be casted and it won't show up in the HUD.
DOTA_ABILITY_BEHAVIOR_PASSIVE A passive ability. Cannot be casted.
DOTA_ABILITY_BEHAVIOR_NO_TARGET Doesn't need a target to be cast, ability fires off as soon as the button is pressed.
DOTA_ABILITY_BEHAVIOR_UNIT_TARGET This ability needs a target to be casted on.
DOTA_ABILITY_BEHAVIOR_POINT This ability can be cast anywhere the mouse cursor is.
DOTA_ABILITY_BEHAVIOR_AOE This ability is similar the above one but targets an area instead of a single point.
DOTA_ABILITY_BEHAVIOR_NOT_LEARNABLE This ability can be casted but cannot be learned. Used for temporary or innate spells. Example: Spectre's Reality.
DOTA_ABILITY_BEHAVIOR_CHANNELLED This abillity is channelled. If the user moves or is silenced the ability is interrupted.
DOTA_ABILITY_BEHAVIOR_ITEM This ability is tied up to an item.
DOTA_ABILITY_BEHAVIOR_TOGGLE This ability can be insta-toggled. Example: Medusa's Mana Shield.
DOTA_ABILITY_BEHAVIOR_DIRECTIONAL This ability has a direction from the hero.
DOTA_ABILITY_BEHAVIOR_IMMEDIATE This ability does not interrupt other abilities like channeled spells and invisibility.
DOTA_ABILITY_BEHAVIOR_ROOT_DISABLES This ability is disabled by roots like Spirit Bear's Entangle.
DOTA_ABILITY_BEHAVIOR_IGNORE_BACKSWING This ability ignored backswing.
DOTA_ABILITY_BEHAVIOR_DONT_RESUME_ATTACK Do not resume auto-attacking after this ability is used.
DOTA_ABILITY_BEHAVIOR_DONT_RESUME_MOVEMENT
DOTA_ABILITY_BEHAVIOR_IGNORE_PSEUDO_QUEUE
DOTA_ABILITY_BEHAVIOR_IGNORE_CHANNEL ?
DOTA_ABILITY_BEHAVIOR_ATTACK
DOTA_ABILITY_BEHAVIOR_AURA
DOTA_ABILITY_BEHAVIOR_AUTOCAST
DOTA_ABILITY_BEHAVIOR_DONT_ALERT_TARGET
DOTA_ABILITY_BEHAVIOR_DONT_CANCEL_MOVEMENT
DOTA_ABILITY_BEHAVIOR_IGNORE_TURN
DOTA_ABILITY_BEHAVIOR_NOASSIST
DOTA_ABILITY_BEHAVIOR_NONE
DOTA_ABILITY_BEHAVIOR_NORMAL_WHEN_STOLEN
DOTA_ABILITY_BEHAVIOR_RUNE_TARGET
DOTA_ABILITY_BEHAVIOR_UNRESTRICTED

Unit Target Types

Target Type Description
DOTA_UNIT_TARGET_HERO
DOTA_UNIT_TARGET_CREEP
DOTA_UNIT_TARGET_BUILDING
DOTA_UNIT_TARGET_MECHANICAL
DOTA_UNIT_TARGET_COURIER
DOTA_UNIT_TARGET_TREE
DOTA_UNIT_TARGET_CUSTOM
DOTA_UNIT_TARGET_ALL
DOTA_UNIT_TARGET_BASIC
DOTA_UNIT_TARGET_NONE
DOTA_UNIT_TARGET_OTHER

Team Flags

Team Description
DOTA_UNIT_TARGET_TEAM_FRIENDLY Targets the friendly team.
DOTA_UNIT_TARGET_TEAM_ENEMY Targets the enemy team.
DOTA_UNIT_TARGET_TEAM_CUSTOM ?
DOTA_UNIT_TARGET_TEAM_BOTH Targets both teams.
DOTA_UNIT_TARGET_TEAM_NONE Targets everything

Modifier States

ModifierState Description
MODIFIER_STATE_ATTACK_IMMUNE
MODIFIER_STATE_BLIND
MODIFIER_STATE_BLOCK_DISABLED
MODIFIER_STATE_CANNOT_MISS
MODIFIER_STATE_COMMAND_RESTRICTED
MODIFIER_STATE_DISARMED
MODIFIER_STATE_DOMINATED
MODIFIER_STATE_EVADE_DISABLED
MODIFIER_STATE_FLYING
MODIFIER_STATE_FROZEN
MODIFIER_STATE_HEXED
MODIFIER_STATE_INVISIBLE
MODIFIER_STATE_INVULNERABLE
MODIFIER_STATE_LOW_ATTACK_PRIORITY
MODIFIER_STATE_MAGIC_IMMUNE
MODIFIER_STATE_MUTED
MODIFIER_STATE_NIGHTMARED
MODIFIER_STATE_NO_HEALTH_BAR
MODIFIER_STATE_NO_TEAM_MOVE_TO
MODIFIER_STATE_NO_TEAM_SELECT
MODIFIER_STATE_NO_UNIT_COLLISION
MODIFIER_STATE_NOT_ON_MINIMAP
MODIFIER_STATE_NOT_ON_MINIMAP_FOR_ENEMIES
MODIFIER_STATE_OUT_OF_GAME
MODIFIER_STATE_PASSIVES_DISABLED
MODIFIER_STATE_PROVIDES_VISION
MODIFIER_STATE_ROOTED
MODIFIER_STATE_SILENCED
MODIFIER_STATE_SOFT_DISARMED
MODIFIER_STATE_SPECIALLY_DENIABLE
MODIFIER_STATE_STUNNED
MODIFIER_STATE_UNSELECTABLE
MODIFIER_STATE_VALUE_DISABLED
MODIFIER_STATE_VALUE_ENABLED
MODIFIER_STATE_VALUE_NO_ACTION

Modifier Events

ModifierEvent Description
MODIFIER_EVENT_ON_ABILITY_END_CHANNEL
MODIFIER_EVENT_ON_ABILITY_EXECUTED
MODIFIER_EVENT_ON_ABILITY_START
MODIFIER_EVENT_ON_ATTACK
MODIFIER_EVENT_ON_ATTACK_ALLIED
MODIFIER_EVENT_ON_ATTACK_FAIL
MODIFIER_EVENT_ON_ATTACK_LANDED
MODIFIER_EVENT_ON_ATTACK_START
MODIFIER_EVENT_ON_ATTACKED
MODIFIER_EVENT_ON_BREAK_INVISIBILITY
MODIFIER_EVENT_ON_DEATH
MODIFIER_EVENT_ON_HEALTH_GAINED
MODIFIER_EVENT_ON_MANA_GAINED
MODIFIER_EVENT_ON_ORB_EFFECT
MODIFIER_EVENT_ON_ORDER
MODIFIER_EVENT_ON_PROCESS_UPGRADE
MODIFIER_EVENT_ON_PROJECTILE_DODGE
MODIFIER_EVENT_ON_REFRESH
MODIFIER_EVENT_ON_RESPAWN
MODIFIER_EVENT_ON_SPENT_MANA
MODIFIER_EVENT_ON_STATE_CHANGED
MODIFIER_EVENT_ON_TAKEDAMAGE
MODIFIER_EVENT_ON_TAKEDAMAGE_REAPERSCYTHE
MODIFIER_EVENT_ON_TELEPORTED
MODIFIER_EVENT_ON_TELEPORTING
MODIFIER_EVENT_ON_UNIT_MOVED

Modifier Attributes

ModifierAttribute Description
MODIFIER_ATTRIBUTE_IGNORE_INVULNERABLE
MODIFIER_ATTRIBUTE_MULTIPLE
MODIFIER_ATTRIBUTE_NONE
MODIFIER_ATTRIBUTE_PERMANENT

Unit Target Flags

Target Flag Description
DOTA_UNIT_TARGET_FLAG_CHECK_DISABLE_HELP Will only activate IF the player's 'Disable Help' option is false
DOTA_UNIT_TARGET_FLAG_DEAD If not dead
DOTA_UNIT_TARGET_FLAG_FOW_VISIBLE If in vision
DOTA_UNIT_TARGET_FLAG_INVULNERABLE Is not invulnerable
DOTA_UNIT_TARGET_FLAG_MAGIC_IMMUNE_ENEMIES Is not magic immune ENEMY
DOTA_UNIT_TARGET_FLAG_MANA_ONLY If target has mana
DOTA_UNIT_TARGET_FLAG_MELEE_ONLY If target is melee
DOTA_UNIT_TARGET_FLAG_NO_INVIS If target is not invisible
DOTA_UNIT_TARGET_FLAG_NONE No flag?
DOTA_UNIT_TARGET_FLAG_NOT_ANCIENTS If target's unit type is not ancient
DOTA_UNIT_TARGET_FLAG_NOT_ATTACK_IMMUNE If target is not attackable (such as Ghost Form, Decrepify, etc)
DOTA_UNIT_TARGET_FLAG_NOT_CREEP_HERO If target is not a creep hero (Visage Familiars, Lone Druid bear, etc)
DOTA_UNIT_TARGET_FLAG_NOT_DOMINATED If target is not dominated (Helm of the Dominator, Enchantress Enchant)
DOTA_UNIT_TARGET_FLAG_NOT_ILLUSIONS Does not affect illusions
DOTA_UNIT_TARGET_FLAG_NOT_MAGIC_IMMUNE_ALLIES Does not affect magic immune allies (think Omniknight Purification and Repel)
DOTA_UNIT_TARGET_FLAG_NOT_NIGHTMARED Does not affect nightmared units (Bane Nightmare?)
DOTA_UNIT_TARGET_FLAG_NOT_SUMMONED If target is not summoned (Warlock Flaming Golem, Furion Treants, etc)
DOTA_UNIT_TARGET_FLAG_OUT_OF_WORLD If is on the map (Broodmother style, make sure she's on the world)
DOTA_UNIT_TARGET_FLAG_PLAYER_CONTROLLED If target is controlled by a player (Necronomicon creeps, dominated, summons, heroes, etc)
DOTA_UNIT_TARGET_FLAG_RANGED_ONLY If target is ranged

Ability Types

Ability Type Description
DOTA_ABILITY_TYPE_ATTRIBUTES
DOTA_ABILITY_TYPE_BASIC
DOTA_ABILITY_TYPE_HIDDEN
DOTA_ABILITY_TYPE_ULTIMATE

Damage Types

Damage Type Description
DAMAGE_TYPE_COMPOSITE
DAMAGE_TYPE_HP_REMOVAL
DAMAGE_TYPE_MAGICAL
DAMAGE_TYPE_PHYSICAL
DAMAGE_TYPE_PURE

Item Declarations

Item Declaration Description
DECLARE_PURCHASES_IN_SPEECH
DECLARE_PURCHASES_TO_SPECTATORS
DECLARE_PURCHASES_TO_TEAMMATES

Item Disassemble Rules

Item Disassemble Rule Description
DOTA_ITEM_DISASSEMBLE_ALWAYS
DOTA_ITEM_DISASSEMBLE_NEVER

Pseudo-Random

Pseudo-Random Description
DOTA_PSEUDO_RANDOM_BREWMASTER_CRIT
DOTA_PSEUDO_RANDOM_CHAOS_CRIT
DOTA_PSEUDO_RANDOM_FACELESS_BASH
DOTA_PSEUDO_RANDOM_ITEM_ABYSSAL
DOTA_PSEUDO_RANDOM_ITEM_BASHER
DOTA_PSEUDO_RANDOM_ITEM_BUTTERFLY
DOTA_PSEUDO_RANDOM_ITEM_GREATERCRIT
DOTA_PSEUDO_RANDOM_ITEM_HALBRED_MAIM
DOTA_PSEUDO_RANDOM_ITEM_LESSERCRIT
DOTA_PSEUDO_RANDOM_ITEM_MAELSTROM
DOTA_PSEUDO_RANDOM_ITEM_MJOLLNIR
DOTA_PSEUDO_RANDOM_ITEM_MJOLLNIR_STATIC
DOTA_PSEUDO_RANDOM_ITEM_MKB
DOTA_PSEUDO_RANDOM_ITEM_PMS
DOTA_PSEUDO_RANDOM_ITEM_SANGE_MAIM
DOTA_PSEUDO_RANDOM_ITEM_SANGEYASHA_MAIM
DOTA_PSEUDO_RANDOM_ITEM_STOUT
DOTA_PSEUDO_RANDOM_ITEM_VANGUARD
DOTA_PSEUDO_RANDOM_JUGG_CRIT
DOTA_PSEUDO_RANDOM_LYCAN_CRIT
DOTA_PSEUDO_RANDOM_PHANTOMASSASSIN_CRIT
DOTA_PSEUDO_RANDOM_SKELETONKING_CRIT
DOTA_PSEUDO_RANDOM_SLARDAR_BASH
DOTA_PSEUDO_RANDOM_SNIPER_HEADSHOT
DOTA_PSEUDO_RANDOM_TROLL_BASH

Orb Priorities

Orb Priority Effect
DOTA_ORB_PRIORITY_ABILITY
DOTA_ORB_PRIORITY_DEFAULT
DOTA_ORB_PRIORITY_ITEM
DOTA_ORB_PRIORITY_ITEM_PROC
DOTA_ORB_PRIORITY_NONE