Difference between revisions of "ABI 2da"
m |
m |
||
(3 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
{{2da start|ABI_}} | {{2da start|ABI_}} | ||
− | {{2da column| label |string| Human-friendly description. For item abilities this appears in the item's '''Activated Ability''' drop-down list.}} | + | {{2da column| label | string | Human-friendly description. For item abilities this appears in the item's '''Activated Ability''' drop-down list.}} |
− | {{2da column| namestrref |int| String Ref ID of the name of the ability.}} | + | {{2da column| namestrref | int | String Ref ID of the name of the ability.}} |
− | {{2da column| descstrref |int| String Ref ID of the description of the ability.}} | + | {{2da column| descstrref | int | String Ref ID of the description of the ability.}} |
− | {{2da column| tooltipstrref |int| String Ref ID of the buff/deff format on mouse over. (Caution: Abilities with ID over 500000 is considered as debuff and will not take the format of normal buffs.) }} | + | {{2da column| tooltipstrref |int | String Ref ID of the buff/deff format on mouse over. (Caution: Abilities with ID over 500000 is considered as debuff and will not take the format of normal buffs.) }} |
− | {{2da column| strid_effect| int| String Ref ID of the buff/debuff description on mouse over.}} | + | {{2da column| strid_effect | int | String Ref ID of the buff/debuff description on mouse over.}} |
− | {{2da column| icon|string| Name of the icon file, without extension.}} | + | {{2da column| icon | string | Name of the icon file, without extension.}} |
− | {{2da column| abilitytype | int|The type of ability. See [[abilitytype.xls]] and the [[ABILITY_TYPE_*]] constants in [[2da_constants_h]]: | + | {{2da column| abilitytype | int | The type of ability. See [[abilitytype.xls]] and the [[ABILITY_TYPE_*]] constants in [[2da_constants_h]]: |
* 1 - talent | * 1 - talent | ||
* 2 - spell | * 2 - spell | ||
* 3 - skill | * 3 - skill | ||
* 4 - item}} | * 4 - item}} | ||
− | {{2da column| abilitymode |int|}} | + | {{2da column| abilitymode | int |}} |
− | {{2da column| conditions |int| Flags that determine what conditions must be met before this ability can be used: | + | {{2da column| conditions | int | Flags that determine what conditions must be met before this ability can be used: |
* 0x00000001 - One-handed weapon | * 0x00000001 - One-handed weapon | ||
* 0x00000002 - Shield | * 0x00000002 - Shield | ||
Line 29: | Line 29: | ||
* 0x00000100 - Dog | * 0x00000100 - Dog | ||
* 0x00000200 - Mana user}} | * 0x00000200 - Mana user}} | ||
− | {{2da column| condition_mode | int| The ID of a modal ability that must be active before this ability can be used if Conditions is set to 16.}} | + | {{2da column| condition_mode | int | The ID of a modal ability that must be active before this ability can be used if Conditions is set to 16.}} |
− | {{2da column| condition_group |int| This links modal abilities. Use the lowest integer of the group. Whenever one of these abilities is used it will turn off the other linked abilities. }} | + | {{2da column| condition_group | int | This links modal abilities. Use the lowest integer of the group. Whenever one of these abilities is used it will turn off the other linked abilities. }} |
− | {{2da column| cost| float| How much Mana/Stamina an ability will cost.}} | + | {{2da column| cost | float | How much Mana/Stamina an ability will cost.}} |
− | {{2da column| costupkeep |float| How much from the max Mana/Stamina an ability takes away until it is deactivated (modal abilities only)}} | + | {{2da column| costupkeep | float | How much from the max Mana/Stamina an ability takes away until it is deactivated (modal abilities only)}} |
− | {{2da column| prereqability |int | The ID of a prereq ability.}} | + | {{2da column| prereqability | int | The ID of a prereq ability.}} |
− | {{2da column| prereqlevel | int| Minimum character level to pick it up.}} | + | {{2da column| prereqlevel | int | Minimum character level to pick it up.}} |
{{2da column| prereqattribute | int | Which attribute is a prereq for the ability. See [[properties.xls]] for what this number maps to.}} | {{2da column| prereqattribute | int | Which attribute is a prereq for the ability. See [[properties.xls]] for what this number maps to.}} | ||
{{2da column| prereqattvalue | int | The value the specified attribute has to be greater than.}} | {{2da column| prereqattvalue | int | The value the specified attribute has to be greater than.}} | ||
{{2da column| guitype | int | This is the category that the ability is grouped into. Things like, "Creation" and "Primal". See [[guitypes.xls]].}} | {{2da column| guitype | int | This is the category that the ability is grouped into. Things like, "Creation" and "Primal". See [[guitypes.xls]].}} | ||
{{2da column| targettype | int | A bit operator which indicates which categories of targets the ability will affect. See [[targettype.xls]] and [[Ability#Targeting Behavior|Targeting Behavior]]}} | {{2da column| targettype | int | A bit operator which indicates which categories of targets the ability will affect. See [[targettype.xls]] and [[Ability#Targeting Behavior|Targeting Behavior]]}} | ||
− | {{2da column| autotarget | int| If set to TRUE then it will automatically target a selected hostile or friendly creature. }} | + | {{2da column| autotarget | int | If set to TRUE then it will automatically target a selected hostile or friendly creature. }} |
− | {{2da column| range | int| Range: | + | {{2da column| range | int | Range: |
* 0 - melee (touching target) | * 0 - melee (touching target) | ||
* 1 - close spell range (barely outside melee) | * 1 - close spell range (barely outside melee) | ||
Line 46: | Line 46: | ||
* 3 - long spell range (edge of hostile detection range) | * 3 - long spell range (edge of hostile detection range) | ||
* 4+ - extremely long range}} | * 4+ - extremely long range}} | ||
− | {{2da column| speed |int| This determines how long the ability takes to activate | + | {{2da column| speed | int | This determines how long the ability takes to activate: |
− | {{2da column| usetype |int | Whether the ability is a passive, activated, or sustained. See [[abilityusetype.xls]]: | + | * 0 - instant |
+ | * 1 - plays the '''castanim''' animation | ||
+ | * 2+ - displays the interruptable cast-bar and plays the '''conjureanim''' animation for its duration; once the cast bar is full plays the '''castanim''' animation}} | ||
+ | {{2da column| usetype | int | Whether the ability is a passive, activated, or sustained. See [[abilityusetype.xls]]: | ||
* 2 - sustained | * 2 - sustained | ||
* 3 - passive | * 3 - passive | ||
* 4 - activated}} | * 4 - activated}} | ||
− | {{2da column| spellscript |string| This is the script that is run when the ability is used. Includes the file extension ".ncs".}} | + | {{2da column| spellscript | string | This is the script that is run when the ability is used. Includes the file extension ".ncs".}} |
{{2da column| cooldown | float | The ability cooldown in seconds.}} | {{2da column| cooldown | float | The ability cooldown in seconds.}} | ||
− | {{2da column| conjurevfx | int| This is the VFX that is played during both the conjure sequence and the cast sequence of the ability. | + | {{2da column| conjurevfx | int | This is the VFX that is played during both the conjure sequence and the cast sequence of the ability.The value is an ID from [[VFX_ 2da]].}} |
− | {{2da column| blendtree | string| Set by animators for abilities that change the default animations of a PC or party member, e.g. when you use "Shield Wall" your idle becomes a defensive crouch using your shield prominently.}} | + | {{2da column| blendtree | string | Set by animators for abilities that change the default animations of a PC or party member, e.g. when you use "Shield Wall" your idle becomes a defensive crouch using your shield prominently.}} |
− | {{2da column| conjureanim | int | | + | {{2da column| conjureanim | int | The animation to play during the conjure sequence. A list of values is located at [[ANIM_base.xls]].}} |
− | {{2da column| castanim | int | | + | {{2da column| castanim | int | The animation to play during the casting sequence. A list of values is located at [[ANIM_base.xls]].}} |
{{2da column| projectile | int | This is the model name for projectiles. See [[PRJ_base.xls]] for the integers. 1 is a common one for arrow.}} | {{2da column| projectile | int | This is the model name for projectiles. See [[PRJ_base.xls]] for the integers. 1 is a common one for arrow.}} | ||
− | {{2da column| autocancel | int| Obsolete }} | + | {{2da column| autocancel | int | Obsolete }} |
− | {{2da column| autodraw |int| This determines how the ability handles the drawn state of weapons. See [[Ability#Targeting_Behavior|Targeting Behavior]] | + | {{2da column| autodraw | int | This determines how the ability handles the drawn state of weapons. See [[Ability#Targeting_Behavior|Targeting Behavior]] |
* 0 - ignore weapon state | * 0 - ignore weapon state | ||
* 1 - force a weapon to be drawn before use | * 1 - force a weapon to be drawn before use | ||
* 2 - force a non-staff to be sheathed before use | * 2 - force a non-staff to be sheathed before use | ||
Any spell with a speed higher than 1 should have this set to 2. The sheathing animation occurs during the conjure sequence without slowing it down, and putting away the weapon will prevent clipping.}} | Any spell with a speed higher than 1 should have this set to 2. The sheathing animation occurs during the conjure sequence without slowing it down, and putting away the weapon will prevent clipping.}} | ||
− | {{2da column| threat_use|float| Obsolete}} | + | {{2da column| threat_use | float | Obsolete}} |
− | {{2da column| threat_impact|float| This is the amount of threat generated by each impact. May be obsolete.}} | + | {{2da column| threat_impact | float | This is the amount of threat generated by each impact. May be obsolete.}} |
− | {{2da column| aoe_type|int| | + | {{2da column| aoe_type | int | |
* 1 - a circle | * 1 - a circle | ||
* 2 - a cone}} | * 2 - a cone}} | ||
− | {{2da column| aoe_idx|int| Defined areas of effect. | + | {{2da column| aoe_idx | int | Defined areas of effect. The value is an ID from [[persistent 2da]].}} |
− | {{2da column| aoe_param1 |float| Either the radius of the circle or degree arc of the cone.}} | + | {{2da column| aoe_param1 | float | Either the radius of the circle or degree arc of the cone.}} |
− | {{2da column| aoe_param2 |float| Obsolete}} | + | {{2da column| aoe_param2 | float | Obsolete}} |
− | {{2da column| vfx_impact0| int| The VFX that is used at each impact. [[ | + | {{2da column| vfx_impact0 | int | The VFX that is used at each impact. The value is an ID from [[VFX_ 2da]]. See [[Ability_GetImpactLocationVfxId]]}} |
− | {{2da column| vfx_impact1|int| This isn't used by the engine, but can be used as a constant in | + | {{2da column| vfx_impact1 | int | This isn't used by the engine, but can be used as a constant in scripts. Many ITEMS use this value to hold the VFX ID to be used in scripting. The value is an ID from [[VFX_ 2da]]. See [[Ability_GetImpactObjectVfxId]]. |
Typically used by duration-based and modal abilities to reference the crust VFX to be used.}} | Typically used by duration-based and modal abilities to reference the crust VFX to be used.}} | ||
− | {{2da column| flags |int| Bitwise flags: | + | {{2da column| flags | int | Bitwise flags (see [[ABILITY_FLAG_*]] constants): |
* 1 - ranged weapon attack (for an ability uses the animation of the equipped ranged weapon) | * 1 - ranged weapon attack (for an ability uses the animation of the equipped ranged weapon) | ||
* 64 - end on 'out of mana' (for a modal abilty that expires when stamina/mana runs out) | * 64 - end on 'out of mana' (for a modal abilty that expires when stamina/mana runs out) | ||
Line 81: | Line 84: | ||
* 256 - curable (for an ability that is subject to curing) | * 256 - curable (for an ability that is subject to curing) | ||
So, for example, use 192 for a dispellable, modal ability that expires when the caster's mana runs out.}} | So, for example, use 192 for a dispellable, modal ability that expires when the caster's mana runs out.}} | ||
− | {{2da column| showintactics| int| Set to 1 for abilities that PC or party members will want to use in the tactics system.}} | + | {{2da column| showintactics | int | Set to 1 for abilities that PC or party members will want to use in the tactics system.}} |
− | {{2da column| showinchargen |int| Bitwise flags: | + | {{2da column| showinchargen | int | Bitwise flags: |
* 1 - {{undocumented}} | * 1 - {{undocumented}} | ||
* 2 - to show in chargen only | * 2 - to show in chargen only | ||
* 4 - to show in talent/spell/skill book | * 4 - to show in talent/spell/skill book | ||
So, for example, use 7 to show in both chargen & talent/spell/skill book}} | So, for example, use 7 to show in both chargen & talent/spell/skill book}} | ||
− | {{2da column| passive_id |int| Refers to an ID in [[passive_abilities 2da]]}} | + | {{2da column| passive_id | int | Refers to an ID in [[passive_abilities 2da]]}} |
− | {{2da column| crust_id | int| Obsolete}} | + | {{2da column| crust_id | int | Obsolete}} |
− | {{2da column| resistance |int | {{undocumented}} }} | + | {{2da column| resistance | int | {{undocumented}} }} |
− | {{2da column| damageinfo | int| {{undocumented}} }} | + | {{2da column| damageinfo | int | {{undocumented}} }} |
− | {{2da column| condition_appgroup|int| | + | {{2da column| condition_appgroup | int | |
Set a condition to restrict use of an ability to a specific appearance group. Only a creature that sports an appearance that belong to this group will be allowed to use the abilities. The '''AppearanceRestrictionGroup''' bit flag in the [[APR_ 2da]] determines which appearance groups a creature belongs too.}} | Set a condition to restrict use of an ability to a specific appearance group. Only a creature that sports an appearance that belong to this group will be allowed to use the abilities. The '''AppearanceRestrictionGroup''' bit flag in the [[APR_ 2da]] determines which appearance groups a creature belongs too.}} | ||
− | {{2da column| ProcessWithEvent | int| If specified this ability does not use any of the normal ability functionality but instead fires and processes and event - meaning it even works when the game is paused. Use with care. }} | + | {{2da column| ProcessWithEvent | int | If specified this ability does not use any of the normal ability functionality but instead fires and processes and event - meaning it even works when the game is paused. Use with care. }} |
{{2da column| fatigue | float | If it is a modal ability, this determines the level of fatigue it will incur while active. }} | {{2da column| fatigue | float | If it is a modal ability, this determines the level of fatigue it will incur while active. }} | ||
{{2da end}} | {{2da end}} |
Latest revision as of 21:15, 6 April 2015
The ABI_ 2da defines all skills, spells, talents and item abilities in the game.
The 2da is defined as an m2da in the M2DA_base 2da and has an ID of 1. It can be extended by m2da fragments which have names starting with ABI_. It can be referenced in scripting using the TABLE_ABILITIES_TALENTS and TABLE_ABILITIES_SPELLS constants defined in 2da_constants_h.
Structure
Column | Type | Description |
---|---|---|
ID | int | A number that uniquely identifies the entry (unless creating an M2DA override). ID numbers are listed from smallest to highest within a given file but do not need to be consecutive. |
label | string | Human-friendly description. For item abilities this appears in the item's Activated Ability drop-down list. |
namestrref | int | String Ref ID of the name of the ability. |
descstrref | int | String Ref ID of the description of the ability. |
tooltipstrref | int | String Ref ID of the buff/deff format on mouse over. (Caution: Abilities with ID over 500000 is considered as debuff and will not take the format of normal buffs.) |
strid_effect | int | String Ref ID of the buff/debuff description on mouse over. |
icon | string | Name of the icon file, without extension. |
abilitytype | int | The type of ability. See abilitytype.xls and the ABILITY_TYPE_* constants in 2da_constants_h:
|
abilitymode | int | |
conditions | int | Flags that determine what conditions must be met before this ability can be used:
|
condition_mode | int | The ID of a modal ability that must be active before this ability can be used if Conditions is set to 16. |
condition_group | int | This links modal abilities. Use the lowest integer of the group. Whenever one of these abilities is used it will turn off the other linked abilities. |
cost | float | How much Mana/Stamina an ability will cost. |
costupkeep | float | How much from the max Mana/Stamina an ability takes away until it is deactivated (modal abilities only) |
prereqability | int | The ID of a prereq ability. |
prereqlevel | int | Minimum character level to pick it up. |
prereqattribute | int | Which attribute is a prereq for the ability. See properties.xls for what this number maps to. |
prereqattvalue | int | The value the specified attribute has to be greater than. |
guitype | int | This is the category that the ability is grouped into. Things like, "Creation" and "Primal". See guitypes.xls. |
targettype | int | A bit operator which indicates which categories of targets the ability will affect. See targettype.xls and Targeting Behavior |
autotarget | int | If set to TRUE then it will automatically target a selected hostile or friendly creature. |
range | int | Range:
|
speed | int | This determines how long the ability takes to activate:
|
usetype | int | Whether the ability is a passive, activated, or sustained. See abilityusetype.xls:
|
spellscript | string | This is the script that is run when the ability is used. Includes the file extension ".ncs". |
cooldown | float | The ability cooldown in seconds. |
conjurevfx | int | This is the VFX that is played during both the conjure sequence and the cast sequence of the ability.The value is an ID from VFX_ 2da. |
blendtree | string | Set by animators for abilities that change the default animations of a PC or party member, e.g. when you use "Shield Wall" your idle becomes a defensive crouch using your shield prominently. |
conjureanim | int | The animation to play during the conjure sequence. A list of values is located at ANIM_base.xls. |
castanim | int | The animation to play during the casting sequence. A list of values is located at ANIM_base.xls. |
projectile | int | This is the model name for projectiles. See PRJ_base.xls for the integers. 1 is a common one for arrow. |
autocancel | int | Obsolete |
autodraw | int | This determines how the ability handles the drawn state of weapons. See Targeting Behavior
Any spell with a speed higher than 1 should have this set to 2. The sheathing animation occurs during the conjure sequence without slowing it down, and putting away the weapon will prevent clipping. |
threat_use | float | Obsolete |
threat_impact | float | This is the amount of threat generated by each impact. May be obsolete. |
aoe_type | int |
|
aoe_idx | int | Defined areas of effect. The value is an ID from persistent 2da. |
aoe_param1 | float | Either the radius of the circle or degree arc of the cone. |
aoe_param2 | float | Obsolete |
vfx_impact0 | int | The VFX that is used at each impact. The value is an ID from VFX_ 2da. See Ability_GetImpactLocationVfxId |
vfx_impact1 | int | This isn't used by the engine, but can be used as a constant in scripts. Many ITEMS use this value to hold the VFX ID to be used in scripting. The value is an ID from VFX_ 2da. See Ability_GetImpactObjectVfxId.
Typically used by duration-based and modal abilities to reference the crust VFX to be used. |
flags | int | Bitwise flags (see ABILITY_FLAG_* constants):
So, for example, use 192 for a dispellable, modal ability that expires when the caster's mana runs out. |
showintactics | int | Set to 1 for abilities that PC or party members will want to use in the tactics system. |
showinchargen | int | Bitwise flags:
So, for example, use 7 to show in both chargen & talent/spell/skill book |
passive_id | int | Refers to an ID in passive_abilities 2da |
crust_id | int | Obsolete |
resistance | int | [Undocumented] |
damageinfo | int | [Undocumented] |
condition_appgroup | int |
Set a condition to restrict use of an ability to a specific appearance group. Only a creature that sports an appearance that belong to this group will be allowed to use the abilities. The AppearanceRestrictionGroup bit flag in the APR_ 2da determines which appearance groups a creature belongs too. |
ProcessWithEvent | int | If specified this ability does not use any of the normal ability functionality but instead fires and processes and event - meaning it even works when the game is paused. Use with care. |
fatigue | float | If it is a modal ability, this determines the level of fatigue it will incur while active. |
Remarks
During Dragon Age's development this file was automatically updated from an internal database. End user builders can update it manually.
When making abilities the best way to proceed is to copy the nearest analogous ability and then modify the specific columns you need to.