Missile weapon combat: Difference between revisions

5,027 bytes added ,  18:56, 16 June 2022
→‎Projectile Hit and Damage: further detailed missing info
mNo edit summary
(→‎Projectile Hit and Damage: further detailed missing info)
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{As Of Patch|2.0.201.114}}{{tocright}}
Missile weapons are one of three core weapon classes in {{gamename}}, along with [[Melee weapon combat|melee weapons]] and [[Thrown weapon combat|thrown weapons]].
Missile weapons are one of three core weapon classes in {{gamename}}, along with [[Melee weapon combat|melee weapons]] and [[Thrown weapon combat|thrown weapons]].


Line 4: Line 6:


= Missile Weapon Accuracy =
= Missile Weapon Accuracy =
Missile weapons fire projectiles toward an enemy target. Those projectiles are subject to a variety of calculations and randomness that can cause them to veer off the intended path. Among other things, learning some of the [[skills]] associated with missile weapons and improving one's [[Agility]] stat can improve the accuracy of missile weapons.
The first component to a missile weapon attack is determining the trajectory of any projectiles.


== Angular Variance ==
== Angular Variance ==
Line 17: Line 19:
=== Weapon Variance ===
=== Weapon Variance ===
[[Image:Missile weapon 25 degree example.png|thumb|Example range of weapon variance (blast cannon)]]
[[Image:Missile weapon 25 degree example.png|thumb|Example range of weapon variance (blast cannon)]]
{| class="wikitable" style="float:right;"
{| class="wikitable" style="float:right;margin-left:8px;"
!Accuracy
!Accuracy
!Numeric Value
!Numeric Value
Line 43: Line 45:


=== Aim Variance ===
=== Aim Variance ===
{{clear}}[[Image:Missile_weapon_aim_variance_initial_roll_probabilities.png|thumb|Outcome probabilities for initial Abs(2d20-21) roll]]
Each projectile fired is additionally affected by the wielder's aim variance. '''AimVariance''' begins with a standard {{dice tooltip|2d20}} dice roll shared by all missile weapons. The value can then be modified by attributes, skills, weapon mods, and other factors, and it can sometimes be reduced to 0.
Each projectile fired is additionally affected by the wielder's aim variance. '''AimVariance''' begins with a standard {{dice tooltip|2d20}} dice roll shared by all missile weapons. The value can then be modified by attributes, skills, weapon mods, and other factors, and it can sometimes be reduced to 0.


Bow and rifle shots using [[Sure Fire]] or [[Beacon Fire]] always have an aim variance of 0.
In the following cases, aim variance is always set to 0.
* Bow and rifle shots using [[Sure Fire]] or [[Beacon Fire]].
* The final shot of a barrel from {{favilink|Ruin of House Isner}}.


Otherwise, the general formula for aim variance is as follows.<ref name="MissileWeaponFireEvent" />
Otherwise, the general formula for aim variance is as follows.<ref name="MissileWeaponFireEvent" />
Line 73: Line 78:


= Projectile Hit and Damage =
= Projectile Hit and Damage =
{{Cleanup|This section could use review and improvement.}}
{{Missing info|This section needs more info about how the "Hit" mechanics work for missile weapons, and possibly a little cleanup.
When the projectile actually hits the target, regular damage calculations occur. However, there is a -5 DV penalty. If the target has [[Swift Reflexes]], the penalty will not be inflicted. If the creature is immobile, the DV is set to a flat -100.
 
Also, info on damage calculations is not found in the linked penetration article, as claimed. Rather than adding it there, it might be better to explain the damage calculation here for a ranged weapon & ammo, similar to the example in the [[Melee weapon combat#Damage Rolls|Melee weapon combat]] article.}}
 
After a projectile actually hits a target - whether or not that was the intended target - regular damage calculations occur. However, there is a -5 DV penalty. If the target has [[Swift Reflexes]], the penalty will not be inflicted. If the creature is immobile, the DV is set to a flat -100.
 
For information about penetration and damage calculations for missile weapons, refer to the [[Penetration_(PV)|penetration]] article.
 
= Additional Notes =
* It is possible in some cases for aim variance to offset weapon variance in a way that is beneficial to the overall accuracy of the shot. For example, a blast cannon may roll -18° for weapon variance and then have an aim variance of 17°. If the game randomly chooses to add the aim variance to the weapon variance, it would result in a near-perfect shot (-1° total angular variance). On the other hand, if the game randomly chooses to subtract the aim variance from the weapon variance, it would result in a total angular variance of -35°.
* Because the [[scoped]] mod affects only aim variance (not weapon variance), it has limited usefulness to characters who already have very high Agility and supporting skills/cybernetics. If aim variance has already been reduced to 0 by other factors, the scoped mod will have no functional effect (because aim variance cannot be reduced below 0). You can test your character's aim variance by using a weapon that has perfect accuracy, such as the {{favilink|sniper rifle}}, {{favilink|nullray pistol}}, or {{favilink|arc cannon}}. If all of your shots with that weapon hit a far away target without missing, your aim variance is already 0 (or near enough to zero) that [[scoped]] will not be useful to you on ''any'' weapon.
 
= List of Missile Weapons =
<div style="display:flex;flex-wrap:wrap;">
<div style="margin-right: 2.5em;">
 
=== Pistols ===
{{#cargo_query:tables=ItemsTable=IT,MissileWeaponData=MWD
| join on=MWD.JoinKey=IT.JoinKey
| fields=
    CONCAT('{{((}}favilink id{{!}}',CONCAT(IT.ObjectID),'{{))}}')=Weapon,
    CONCAT(MWD.Accuracy,' ({{(}}#switch: ',MWD.Accuracy,'{{!}}0=Very High{{!}}1{{!}}2{{!}}3{{!}}4=High{{!}}5{{!}}6{{!}}7{{!}}8{{!}}9=Medium{{!}}10{{!}}11{{!}}12{{!}}13{{!}}14{{!}}15{{!}}16{{!}}17{{!}}18{{!}}19{{!}}20{{!}}21{{!}}22{{!}}23{{!}}24=Low{{!}}Very Low{{)}})')=Accuracy,
    CONCAT('{{((}}PV{{))}}',CONCAT(IT.MaxPV))=Max PV,
    CONCAT(CASE WHEN IT.Damage IS NOT NULL THEN CONCAT('{{((}}Heart{{))}}{{((}}dice tooltip{{!}}',CONCAT(IT.Damage),'{{))}}') ELSE 'ammo-based' END)=Damage
| where=IT.Skill='Pistol' AND MWD._pageNamespace = 0
| order by=IT.MaxPV DESC,IT.Damage DESC
| format=table
}}
 
=== Bows ===
{{#cargo_query:tables=ItemsTable=IT,MissileWeaponData=MWD
| join on=MWD.JoinKey=IT.JoinKey
| fields=
    CONCAT('{{((}}favilink id{{!}}',CONCAT(IT.ObjectID),'{{))}}')=Weapon,
    CONCAT(MWD.Accuracy,' ({{(}}#switch: ',MWD.Accuracy,'{{!}}0=Very High{{!}}1{{!}}2{{!}}3{{!}}4=High{{!}}5{{!}}6{{!}}7{{!}}8{{!}}9=Medium{{!}}10{{!}}11{{!}}12{{!}}13{{!}}14{{!}}15{{!}}16{{!}}17{{!}}18{{!}}19{{!}}20{{!}}21{{!}}22{{!}}23{{!}}24=Low{{!}}Very Low{{)}})')=Accuracy,
    CONCAT('{{((}}PV{{))}}',CONCAT(IT.MaxPV))=Max PV,
    CONCAT(CASE WHEN IT.Damage IS NOT NULL THEN CONCAT('{{((}}Heart{{))}}{{((}}dice tooltip{{!}}',CONCAT(IT.Damage),'{{))}}') ELSE 'ammo-based' END)=Damage
| where=IT.Skill='Bow and Rifle' AND MWD.AmmoName = 'arrow' AND MWD._pageNamespace = 0
| order by=IT.MaxPV DESC,IT.Damage DESC
| format=table
}}
 
</div>
<div style="margin-right: 2.5em;">
 
=== Rifles ===
{{#cargo_query:tables=ItemsTable=IT,MissileWeaponData=MWD
| join on=MWD.JoinKey=IT.JoinKey
| fields=
    CONCAT('{{((}}favilink id{{!}}',CONCAT(IT.ObjectID),'{{))}}')=Weapon,
    CONCAT(MWD.Accuracy,' ({{(}}#switch: ',MWD.Accuracy,'{{!}}0=Very High{{!}}1{{!}}2{{!}}3{{!}}4=High{{!}}5{{!}}6{{!}}7{{!}}8{{!}}9=Medium{{!}}10{{!}}11{{!}}12{{!}}13{{!}}14{{!}}15{{!}}16{{!}}17{{!}}18{{!}}19{{!}}20{{!}}21{{!}}22{{!}}23{{!}}24=Low{{!}}Very Low{{)}})')=Accuracy,
    CONCAT('{{((}}PV{{))}}',CONCAT(IT.MaxPV))=Max PV,
    CONCAT(CASE WHEN IT.Damage IS NOT NULL THEN CONCAT('{{((}}Heart{{))}}{{((}}dice tooltip{{!}}',CONCAT(IT.Damage),'{{))}}') ELSE 'ammo-based' END)=Damage
| where=IT.Skill='Bow and Rifle' AND MWD.AmmoName <> 'arrow' AND MWD._pageNamespace = 0
| order by=IT.MaxPV DESC,IT.Damage DESC
| format=table
}}
 
</div>
<div style="margin-right: 2.5em;">
 
=== Heavy Weapons ===
{{#cargo_query:tables=ItemsTable=IT,MissileWeaponData=MWD
| join on=MWD.JoinKey=IT.JoinKey
| fields=
    CONCAT('{{((}}favilink id{{!}}',CONCAT(IT.ObjectID),'{{))}}')=Weapon,
    CONCAT(MWD.Accuracy,' ({{(}}#switch: ',MWD.Accuracy,'{{!}}0=Very High{{!}}1{{!}}2{{!}}3{{!}}4=High{{!}}5{{!}}6{{!}}7{{!}}8{{!}}9=Medium{{!}}10{{!}}11{{!}}12{{!}}13{{!}}14{{!}}15{{!}}16{{!}}17{{!}}18{{!}}19{{!}}20{{!}}21{{!}}22{{!}}23{{!}}24=Low{{!}}Very Low{{)}})')=Accuracy,
    CONCAT('{{((}}PV{{))}}',CONCAT(IT.MaxPV))=Max PV,
    CONCAT(CASE WHEN IT.Damage IS NOT NULL THEN CONCAT('{{((}}Heart{{))}}{{((}}dice tooltip{{!}}',CONCAT(IT.Damage),'{{))}}') ELSE 'ammo-based' END)=Damage
| where=IT.Skill='Heavy Weapon' AND MWD._pageNamespace = 0
| order by=IT.MaxPV DESC,IT.Damage DESC
| format=table
}}


= Considerations =
</div>
* Because the [[scoped]] mod affects only aim variance (not weapon variance), it has limited usefulness to characters who already have very high Agility and supporting skills/cybernetics. If aim variance has already been reduced to 0 by other factors, the scoped mod will have no functional effect.
</div>


= References =
= References =
312

edits