Combat mechanics comprise the technical details relevant to combat in Dragon Age: Origins.
Armor
A numerical value that is commonly a property of armor and shields and serves as an integer reduction in physical damage sustained from a successful attack.
Armor Penetration
Armor penetration reduces your opponent's armor. It acts in direct opposition to the defender's armor. For example, if you have 3 armor penetration and your opponent has 10 armor, your attacks damage the opponent as if it had 7 armor. Note that excess Armor Penetration does not add to damage. With 12 ArmPen versus 8 armor, it is as if the opponent has 0 armor, not -4; the 4 points of extra ArmPen is not used in any way. Armor penetration is capped at 41 points.
Armor penetration can be enhanced with Telekinetic Weapons, two-handed strength, stone aura + renewed assault, pulverizing blows + quake, aim + master archer, equipment and Cunning. Each point of cunning adds approximately 0.14 armor penetration, the exact formula is:
AP = (Cunning - 10) / 7
Attack
A numerical value that is used to determine whether a physical attack succeeds in impacting, though not necessarily damaging, an enemy.
AttackValue = Base + 0.5 * {(Strength - 10) + (Dexterity - 10)} + AttackBonuses
Base attack depends on class. It is 50 for mages, 55 for rogues and 60 for warriors. Equipment, skills, spells and talents provide bonuses to Attack. Note under the influence of some spells and talents, such as Weakness and Powerful Swings, this bonus can become negative.
Attack Roll
For most attacks (including activated Talents), an attack roll against the target's defense is performed. If the attack roll is successful, the attack connects.
When the attacker's Attack value is the same as the defender's Defense value, the hit probability is 54%. Each point of attack increases this by one point (up to 100%), each point of defense decreases this probability by one point (at 0, attacks with attack rolls will always miss).
E.g., at 100 Attack:
Defense | Hit Probability in % |
---|---|
50 | 100 |
75 | 79 |
100 | 54 |
125 | 29 |
150 | 4 |
154 | 0 |
200 | 0 |
Note: Melee attacks check against the Defense value, while ranged attacks check against Missile Deflection, which is the base Defense value with any missile deflection bonuses (e.g. from carrying a shield) added
Attack Speed
Melee Attacks
The rate at which automatic attacks (not activated Talents) can be performed by a creature is determined by the Weapon Style used and the Weapon itself. It can be increased with spells: Haste, items: swift salve and talents: Momentum, blessing of the fade and blood thirst.
The duration of a normal attack (no activated Talent used) is calculated as follows:
AttackDuration = (BaseTiming + WeaponSpeedMod) * CharacterSpeedModifier
BaseTiming
- Dual-Weapons (each weapon is used in turn): 1.5s
- Weapon and Shield: 2.0s
- Two-handed: 2.5s
WeaponSpeedMod
This modifier is the Speed Modifier listed on the Weapons page.
- Note: when dual-wielding with different speeds, the timing is averaged and will alternate between main-hand and off-hand weapons every hit. I.e., If you wield Starfang (-0.1) and Rose's Thorn (-0.5), you will make an attack every [(1.5-0.1)+(1.5-0.5)]/2 = 1.2 seconds.
CharacterSpeedModifier
This value is normally 1.0. It is modified by the following:
- Haste: -0.25
- Momentum: -0.3
- Precise Striking: +0.1
- Swift Salve: -0.2
- Blood Thirst: -0.2
- Blessing of the Fade: -0.2
Due to a bug in core_h.nss, the CharacterSpeedModifier resets to 1.0, if it less than 0.5 (e.g. by having Haste and Momentum activated).
- BUG* Combining Blessing of the Fade and Momentum breaks the 0.5 cap for some people, but not for others.
Ranged Attacks
Duration of automatic attacks (most activated talents take substantially more time):
AttackDuration = BaseDuration + AimTime
BaseDuration
- If wearing heavy chest armor (and not Master Archer) or wearing massive chest armor: 2.8s
- Else: 1.6s
It is not affected either by Haste or Swift Salve, or by any Aim Speed modifiers. For non-party members, a penalty of 0.7s is added.
AimTime
The basic Aim time is 0.2s for Shortbows, 0.3s for Longbow and 0.8s for Crossbows. It can be reduced down to a cap of 0s.
Check the Aim Speed Reference Sheet for details on items, talents and spells modifying Aim Time.
Staff Attack Speed
- Staff attack speed is unaffected by chest armor type.
- Staff attack speed is normally affected by aim speed modifiers, such as Rapid Aim property on items or Haste spell.
- Staff attack speed fluctuates by 0.1-0.3s per auto-attack. Minimum length of staff attack animation is 1.4~1.7s.
Backstab
A backstab is a type of critical hit, awarded when certain prerequisites are met (see below). No talent or skill points need to be spent to acquire backstab capability; it is essentially an innate/hidden passive ability available automatically to rogues (and only rogues) from level 1 on. To perform a backstab, you simply have to attack an enemy while standing behind your opponent, within the black part of the circle. You do not need to be stealthed to backstab.
- A bow cannot be used to backstab but can cause a critical hit.
- Staves cannot be used to backstab and cannot cause a critical hit.
- Any melee weapon (and even bare hands) can be used to backstab.
Backstabs are performed with both the offhand and mainhand weapons, however the animation only shows the main. It seems however that any elemental damage runes equipped on the offhand weapon are not counted towards damage in a backstab. Only the mainhand weapons damage oriented runes seem to work correctly. Whether this is a bug or not is unconfirmed.[confirmation needed] Successive backstabs are possible. They are indicated by successive over-the-head/downward thrusts made by the mainhand weapon.
Backstabbing is how dual-wielding rogues do the most damage. In order to properly backstab, the rogue must be behind the target. What counts as "behind" is shown by the red circle around the feet of the target. A portion of that circle will be black/not filled in. That arc shows where a rogue can stand and get off a backstab.
Backstab versus critical
The damage calculation for the critical hit and the backstab are identical; the primary difference between the two being that a critical hit has a percentage chance attached to every weapon (regardless of type, etc.), whereas a backstab requires a melee weapon (among other things). The specifics of this are discussed below.
Please also note that, while backstabs do "critical damage", they are not considered by the game to be a "critical hit". The ramification of this is that a backstab will not shatter a frozen or petrified target. Rogues wishing to do so, without using a talent, may wish to stealth and then attack with any weapon. A hit will generate an automatic critical hit and shatter the target.
Implementation
The code below was found in Dragon Age scripts combat_h_nns, in relation to backstabbing with a bow/arrow. Combat_CheckBackstab is only called here:
if (nAttackType == ATTACK_TYPE_MELEE) { // If we are backstabbing, we can change the result here if it was a crit. Abilities never bs (anim priority) if (nAbility == 0 && Combat_CheckBackstab (oAttacker, oTarget, oWeapon, fFlanking)) { nRet = COMBAT_RESULT_BACKSTAB; } }
Interpretation of the code leads to the following assumptions:
- The damage effect of critical hits and backstabs is the same; however, backstabs can get some extra damage via Exploit Weakness + Shadow Striking and add bleeding damage via Lacerate.
- Backstabs can recover stamina after killing a target via Feast of the Fallen. Critical hits can only do this as well if they have the warrior ability Death Blow.
- If you hit, then there is a percentage chance of critical hit (which gets a bonus with a flanking attack, or is 100% if you are in stealth or attack a paralyzed/stunned opponent while having the passive talent Coup De Grace). This can happen with both melee and ranged weapons.
- Backstab damage calculation is done separately for each weapon though the animation shows you hit primarily with the main-hand weapon. This is noticeable if you equip a high damage main hand weapon and a low damage off-hand weapon. You will see the damage numbers vary significantly between them.
- If you hit the target and all of the following are true, then a backstab will occur:
- The attacker is a rogue.
- The attacker uses a melee weapon.
- The attack is a normal attack and not an activated ability (i.e. one can't backstab with Deadly Strike), unless the ability is scripted to cause backstabs (e.g. Flicker).
- The attacker is humanoid.
- The target is not immune to critical hits.
- Dual Striking mode is not enabled.
- The attacker is flanking the enemy, or the target is stunned/paralyzed and the attacker has Coup De Grace, or the attacker is coming out of stealth.
Damage
Weapon Damage
Damage caused by an attack with a Weapon is calculated as follows:
- Normal Hit:
Damage = BaseWeaponDmg + AttributeBasedDmg + CharacterDmgBonus + OnHitDamage - ArmorDmgReduction
- Backstab / Critical Hit:
Damage = CriticalDamageModifier * (BaseWeaponDmg + AttributeBasedDmg) + CharacterDmgBonus + OnHitDmg - ArmorDmgReduction
Note: If the calculated Damage value is less than 1.0, it is set 1.0.
BaseWeaponDmg
The base weapon damage is listed on the Weapons page. The damage range listed there is multiplied by (0.9 + 0.1 * WeaponRank).
AttributeBasedDmg
One or two character attributes are used to determine AttributeBasedDmg (listed on the Weapons page). Each weapon type has an Attribute Modifier (listed on the Weapons page as well), which influences the Damage Bonus based on attributes.
- One character attribute used:
AttributeBasedDmg = [Attribute Value - 10] * [Weapon Attribute Modifier] * [Weapon Style Modifier]
- Two character attributes used:
AttributeBasedDmg = 0.5 * [Attribute Value1 + Value2 - 20] * [Weapon Attribute Modifier] * [Weapon Style Modifier]
Weapon Style Modifier:
- Single Weapon / Sword and Shield / Two-Handed: range 50-75%, average 0.625
- Dual Wielding: range 25%-50%, average 0.375 main hand; 0.125 off hand (full 0.375 multiplier with Dual-Weapon Training)
CharacterDmgBonus
This damage bonus is based on a special character property (Property 39, DamageBonus), modified by the following:
- Level Damage Bonus: 0.1 for mages, 0.2 for rogues and 0.4 for warriors
- Specialization damage bonus: duelist and legionnaire scout
- Passive talent damage bonus: Aura of Might, Bravery
- Sustained talent damage bonus: Accuracy, Aim (increased by Master Archer), Berserk, Blood Frenzy, Combat Magic, Indomitable, Powerful Swings, Song of Courage, The Tainted Blade, Pulverizing Blows (increased by Slam and Killing Blow), and Stone Aura (with Supernatural Resilience).
- +X damage item property on weapons (if dual wielding, these will effectively apply to both weapons).
- This damage bonus is capped at +100 damage.
- +X% damage abilities debuffing enemies rather than buffing the character (e. g., Mark of Death and Weak Points,) are not affected by this cap.
Critical Hit / Backstab
BaseWeaponDmg and AttributeBasedDmg damage is multiplied by a CriticalDamageModifier, which is 1.5. The Modifier can be increased with gear that grants a bonus to the property Critical Range (e. g., Red Jenny Seekers), which is capped at 200%, according to the following formula:
CriticalDamageModifier = COMBAT_CRITICAL_DAMAGE_MODIFIER + PROPERTY_ATTRIBUTE_CRITICAL_RANGE / 100.0
The maximum total +crit/backstab dmg that can be achieved on a character is 350%, 150% base and +200% max from gear.
OnHitDmg
When a weapon hits, a number of OnHit properties can be triggered: Damage from Runes, Damage from Enchantment Spells (Flaming Weapons, Frost Weapons) and Poisons. These OnHit properties are not triggered when activated talents are used. As of Patch 1.04, when a Dual-Wielder back-stabs, Runes and other OnHit properties for the off-hand weapon are properly registering for each off-hand strike and the main-hand OnHit properties are no longer triggered for hits from both weapons.
ArmorDmgReduction
Armor can reduce damage dealt by melee weapons and ranged weapons (except for staves, which have special handling in the game engine). Other physical damage (e.g. from an explosion of Walking Bomb) is not reduced.
An effective armor value is determined for each hit:
ArmorDmgReduction = (0.7 + 0.3 * [random value between 0 and 1]) * [Armor Value of Target] - [Armor Penetration of Attacker]
If ArmorDmgReduction is less than 0, it is set to 0. Thus, Armor Penetration can at most reduce the damage reduction effect of armor to 0, it cannot result in a damage bonus.
Elemental Damage
Any kind of Elemental Damage (cold, electricity, fire, nature, spirit), e.g. from Spells, Runes, Poisons, Bombs, and Staves dealing Elemental Damage, is modified as follows:
Damage = BaseValue * AttackerDamageModifier * TargetResistanceModifier
Note that certain creatures are immune to some types of elemental damage.
AttackerDamageModifier
There is a separate modifier for each type of elemental damage. This modifier is normally 1.0. It can be increased up to a cap of 1.3 with items that have a +X% {cold/electricity/fire/nature/spirit} damage property, e.g. Spirit Hands and Elementalist's Grasp.
TargetResistanceModifier
The target can have up to 75% elemental resistance (this would correspond to a TargetResistanceMultiplier of 0.25). Elemental resistance can be negative as well (due to the target having an elemental damage weakness or spells that lower resistance: Vulnerability Hex, Affliction Hex), adding an additional amount of damage. Negative resistance is capped at -100%.
Resistance % | TargetResistanceModifier |
---|---|
-100 | 2.0 |
-50 | 1.5 |
0 | 1.0 |
25 | 0.75 |
50 | 0.5 |
75 | 0.25 |
Defense
A special creature attribute that influences the likelihood to successfully evade an attack. At very high levels, a creature can successfully evade almost all attacks.
DefenseValue = Base + (Dexterity - 10) + DefenseBonuses
Base defence depends on class. It is 40 for mages, 45 for warriors and 50 for rogues. Many items, spells and talents provide bonuses to defense.
Note: Defense allows to completely evade an attack (including any negative effects the attack might have), Armor reduces the damage from a successful attack.
Freezing
Certain spells, namely Winter's Grasp, Cone of Cold, Blizzard, and Hand of Winter can temporarily incapacitate a target if effective.
- Freezing is resisted by a successful physical resistance check vs. the caster's spellpower.
Duration
- Freeze duration is determined by the base freeze duration modified by target rank.
Elemental Immunity
Some monsters are completely immune to certain damage types. This immunity can not be bypassed with Vulnerability Hexes.
Elemental Resistance
Elemental resistance is shorthand for the four resistances for the primal elemental magics. Elemental Resistance determines the character's ability to withstand various elemental effects, specifically primal magic (fire, ice, lightning, nature, spirit). A high elemental resistance (fire, ice, lightning, nature, spirit resistance) allows a character to limit the damage of the elemental attack. Examples include: withstanding Flame Blast, Winter's Grasp, Stonefist, Shock, etc.
Health
Health is the amount of total damage a character/enemy can take before falling unconscious. The red meter outlining the left side of the character portrait tracks this statistic (percentage left vs. total). Health is increased by constitution, 5 health points per 1 level constitution.
Knockdown
A combat effect generated by many talents that incapacitates a target for a short duration.
- Knockdowns are resisted by a successful physical resistance check vs. the caster's "attack attribute". This is considered to be either the caster's spellpower or strength modifier, depending on whether the ability used is a spell or a talent, respectively.
Pseudocode - Duration
Duration (s) = (0.0 <= [Random Decimal Value] < 1.0)
Mental Resistance
See Also: Resistance Checks, Spells that Check against Mental Resistance and Attacks that Check against Mental Resistance
Mental Resistance determines the character's ability to withstand various special effects, specifically combat (Bard songs) or magic effects which affect the mind of the character. A high mental resistance allows a character to either completely shrug off the effect, or take a limited negative buff instead. Examples: withstanding Captivating Song, Blood Control, Horror, etc.
Mental Resistance is different from Spell Resistance
Missile Deflection
A property most often seen on shields that increases effective defence against missile attacks only.
Movement Speed
The speed at which a creature is able to move. Haste increases movement speed by 30%. Swift salve increases movement speed by 20%.
Physical Resistance
See Also: Resistance Checks and Spells that Check against Physical Resistance and Attacks that Check against Physical Resistance
Physical Resistance determines the character's ability to withstand various special effects, specifically combat or magic effects which affect the body of the character. A high physical resistance allows a character to either completely shrug off the effect, or take a limited negative buff instead. Examples include: Withstanding Knockdown, Earthquake, Paralyze.
Regeneration
Stamina and mana regenerate at different rates depending on attributes and whether the creature is engaged in combat. Refer to Regeneration article for additional information.
Resistance Checks
See also, Resistances
Physical and mental combat effects have a chance to be resisted by a target as modified by various factors.
Pseudocode - Resistance Check
ResistanceChance = [Target Resistance Score] - [Caster Attacking Attribute] + [Target Rank Bonus] + ([Target Level] * 5 - ((Difference Between [Target Level] and [Caster Level]) * 5.0) If ResistanceChance >= [Target Maximum Resistance Chance] ResistanceChance = [Target Maximum Resistance Chance] CheckSuccess = (0.0 <= [Random Decimal Value] < 100.0) <= ResistanceChance
Creature Resistance Table
Creature Rank | Resistance Bonus | Maximum Resistance Chance |
---|---|---|
Player | 0 | 75% |
Critter | 0 | 0% |
Normal | 0 | 50% |
Lieutenant | 10 | 75% |
Boss | 20 | 100% |
Elite Boss | 30 | 100% |
- Table is based on data from 2da "autoscale"
Shattering
When frozen or petrified by a spell a target can possibly be shattered by a critical hit (or by the effect of specific other spells), effectively killing it instantly.
Pseudocode - Shatter Check
If [Target] is not a Boss or Plot Character and (not a Party Member unless (Difficulty >= Hard)) If [Target] is a Special Rank If Difficulty = Easy ShatterChance = 0.3 ElseIf Difficulty = Normal ShatterChance = 0.2 ElseIf Difficulty = Hard ShatterChance = 0.1 ElseIf Difficulty = Nightmare ShatterChance = 0.05 Else ShatterChance = 1.0
CheckSuccess = (0.0 <= [Random Decimal Value] < 1.0) <= ShatterChance
Effects Duration Scaling
The following table includes data for the durations of effects based on creature rank and game difficulty.
Creature Rank | Easy | Normal | Hard | Nightmare |
---|---|---|---|---|
Player | 50% | 80% | 100% | 110% |
Critter | 200% | 150% | 120% | 110% |
Normal | 120% | 100% | 100% | 100% |
Lieutenant | 100% | 75% | 75% | 60% |
Boss | 80% | 60% | 40% | 35% |
Elite Boss | 50% | 25% | 20% | 20% |
- Table is based on data from 2da "autoscale"
Spell Resistance
See also Resistances
Spell Resistance determines the percentage chance to completely ignore a hostile magical spell attack. Non-spell elemental attacks ignore this attribute as they are not spells. Spells cast by party members (i.e. friendly fire) are not normally affected by Spell Resistance.
In nightmare mode, mobs have a base spell resistance of 10%. In easy mode, -10%.
Threat
See Threat
Threat determines how enemies attack your party, and it is critical to take this into account when determining combat strategy.