Difference between revisions of "Weapon Damage Formula"

1,119 bytes added ,  23:15, 14 January 2009
New formatting
imported>SnakeChomp
m (ArmCondtion ->ArmCondition)
imported>SnakeChomp
(New formatting)
Line 12: Line 12:


'''DamageMultiplier''' = fDamageWeaponMult
'''DamageMultiplier''' = fDamageWeaponMult
:*fDamageWeaponMult defaults to: 1


'''GunConditionPenalty''' = fDamageGunWeapCondBase + (fDamageGunWeapCondMult * WeaponCondition)
'''GunConditionPenalty''' = fDamageGunWeapCondBase + fDamageGunWeapCondMult * ''WeaponCondition''
:*fDamageGunWeapCondMult defaults to: 0.34
:*fDamageGunWeapCondBase defaults to: 0.66
:*WeaponCondition is 1 at 100% condition, 0.5 at 50% condition, and etc


'''MeleeConditionPenalty''' = fDamageMeleeWeapCondBase + (fDamageMeleeWeapCondMult * WeaponCondition)
'''MeleeConditionPenalty''' = fDamageMeleeWeapCondBase + fDamageMeleeWeapCondMult * ''WeaponCondition''
:*fDamageMeleeWeapCondMult defaults to: 0.5
:*fDamageMeleeWeapCondBase defaults to: 0.5
:*WeaponCondition is 1 at 100% condition, 0.5 at 50% condition, and etc


'''SkillBonus''' = fDamageSkillBase + (fDamageSkillMult * ActorSkillValue / 100)
'''SkillBonus''' = fDamageSkillBase + fDamageSkillMult * ''ActorSkillValue'' / 100
:*fDamageSkillBase defaults to: 0.5
:*fDamageSkillMult defaults to: 0.5
:*ActorSkillValue is the actor's skill value with the weapon.


'''MeleeDamageActorValue''' is an [[ActorValue]]. The base value = fAVDMeleeDamageStrengthMult * (ActorStrengthValue + fAVDMeleeDamageStrengthOffset)
'''MeleeDamageActorValue''' is an [[ActorValue]]. The base value = fAVDMeleeDamageStrengthMult * (fAVDMeleeDamageStrengthOffset + ''ActorStrengthValue'')
:*fAVDMeleeDamageStrengthMult defaults to: 0.5
:*fAVDMeleeDamageStrengthOffset defaults to: 0
:*ActorStrengthValue is the actor's strength value
:The value of the MeleeDamage actor value can be increased or decreased by certain abilities, effects, perks, enchanted armors, and consumables. For example, the "Takoma Park Little Leaguer Cap" has an enchantment which increases melee damage by 5 while a baseball bat is equipped. Wearing this cap while equiping a baseball bat would mean that the base value calculated from strength is further increased by 5.
:The value of the MeleeDamage actor value can be increased or decreased by certain abilities, effects, perks, enchanted armors, and consumables. For example, the "Takoma Park Little Leaguer Cap" has an enchantment which increases melee damage by 5 while a baseball bat is equipped. Wearing this cap while equiping a baseball bat would mean that the base value calculated from strength is further increased by 5.


'''MeleeArmConditionPenalty''' = BaseWeaponDamage * (fDamageArmConditionBase - 1 + fDamageArmConditionMult * ''ArmCondition'') / 2
'''MeleeArmConditionPenalty''' = BaseWeaponDamage * (fDamageArmConditionBase - 1 + fDamageArmConditionMult * ''ArmCondition'') / 2
:*fDamageArmConditionBase defaults to: 0.2
:With default values, this term reduces melee damage dealt by (up to) 10% of base weapon damage when arms are crippled and does nothing when arms are healthy.
:*fDamageArmConditionMult defaults to: 0.8
 
'''CriticalDamageBonus''' = PerkCritModifiers(CritDamage) * ''IsCriticalHit''
:*'''PerkCritModifiers''' is a function that modifies the input value using any perks active on the actor that have a "Calculate My Critical Hit Damage" [[Entry Point]] and returns the result.
:*'''CritDamage''' is the "Crit Dmg" value on the [[Weapons|weapon form]]
 
 
''WeaponCondition'' is 1 at 100% condition, 0.5 at 50% condition, and etc.
 
''ActorSkillValue'' is the actor's skill value with the weapon.
 
''ActorStrengthValue'' is the actor's strength value.
 
''ArmCondition'' is the condition of the actor's arm.
:*When using a one handed weapon, ''ArmCondition'' is 1 with a healthy right arm and 0 with a crippled right arm.
:*When using a one handed weapon, ''ArmCondition'' is 1 with a healthy right arm and 0 with a crippled right arm.
:*When using a two handed weapon, ''ArmCondition'' is 1 with both arms healthy, 0.5 with 1 arm crippled, 0 with two arms crippled.
:*When using a two handed weapon, ''ArmCondition'' is 1 with both arms healthy, 0.5 with 1 arm crippled, 0 with two arms crippled.
:With default values, this term reduces melee damage dealt by (up to) 10% of base weapon damage when arms are crippled and does nothing when arms are healthy.


'''CriticalDamageBonus''' = IsCriticalHit * PerkCritModifiers(CritDamage)
''IsCriticalHit'' is 1 if the attack was a critical hit, 0 otherwise. See also the [[Critical Hit Chance Formula]].
:*IsCriticalHit is 1 if the attack was critical, 0 otherwise
 
:*'''PerkCritModifiers''' is a function that modifies the input value using any perks active on the actor that have a "Calculate My Critical Hit Damage" [[Entry Point]] and returns the result.
=== Game settings used in these formulas ===
:*CritDamage is the "Crit Dmg" value on the [[Weapons|weapon form]]
 
{{SettingGroupHeader}}
{{SettingGroupSetting
|Name = fDamageWeaponMult
|Default = 1
|Description = Scales base weapon damage in the damage formulas.
}}
{{SettingGroupSetting
|Name = fDamageGunWeapCondMult
|Default = 0.34
|Description = Used to calculate ''GunConditionPenalty''
}}
{{SettingGroupSetting
|Name = fDamageGunWeapCondBase
|Default = 0.66
|Description = Used to calculate ''GunConditionPenalty''
}}
{{SettingGroupSetting
|Name = fDamageMeleeWeapCondMult
|Default = 0.5
|Description = Used to calculate ''MeleeConditionPenalty''
}}
{{SettingGroupSetting
|Name = fDamageMeleeWeapCondBase
|Default = 0.5
|Description = Used to calculate ''MeleeConditionPenalty''
}}
{{SettingGroupSetting
|Name = fDamageSkillBase
|Default = 0.5
|Description = Used to calculate ''SkillBonus''
}}
{{SettingGroupSetting
|Name = fDamageSkillMult
|Default = 0.5
|Description = Used to calculate ''SkillBonus''
}}
{{SettingGroupSetting
|Name = fAVDMeleeDamageStrengthMult
|Default = 0.5
|Description = Used to calculate ''MeleeDamageActorValue''
}}
{{SettingGroupSetting
|Name = fAVDMeleeDamageStrengthOffset
|Default = 0
|Description = Used to calculate ''MeleeDamageActorValue''
}}
{{SettingGroupSetting
|Name = fDamageArmConditionBase
|Default = 0.2
|Description = Used to calculate ''MeleeArmConditionPenalty''
}}
{{SettingGroupSetting
|Name = fDamageArmConditionMult
|Default = 0.8
|Description = Used to calculate ''MeleeArmConditionPenalty''
}}
{{SettingGroupFooter}}


=== Notes ===
=== Notes ===
Anonymous user