Jump to content

fo4edit: weapon properties in detail


Cerbsen

Recommended Posts

Base GameSettings = getgs sPropModScaleWeapf... , e.g. sPropModScaleWeapfAimModelMinConeDegrees

 

If multiple weapon mods use the same properties, the final multplier value is usually [ 1.0 + sumOfPropertyValues ].

 

Crippled limbs will add an additional multiplier to most values.

 

Weapon spread

 

AimModelMinConeDegrees

  • value = -1.0 equals zero spread
  • higher/lower values equal more spread
  • same modulus[ value + 1.0 ] equals same amount of spread, e.g. spread of 0.5 equals -2.5 ... like |0.5+1.0| = |-2.5+1.0| ... |1.5| = |-1.5|

AimModelMaxConeDegrees

  • value = -1.0 equals zero spread
  • higher/lower values equal more spread
  • same modulus[ value + 1.0 ] equals same amount of spread, e.g. spread of 0.5 equals -2.5

AimModelConeIncreasePerShot

-- if value <= -1.0

  • AimModelMinConeDegrees is used for all weapon spread calculation
  • AimModelMaxConeDegrees is not used at all

-- if value > -1.0

  • AimModelMinConeDegrees is used for spread calculation of a single shot or the first shot of an automatic weapon
  • AimModelMaxConeDegrees is used for spread calculation of all shots after the first one

AimModelConeIronSightsMultiplier

  • used as multiplier for AimModelMinConeDegrees and AimModelMaxConeDegrees to increase/decrease spread while using sights/scope..

IMAGE:

http://i.imgur.com/Nw55QFu.png

 

 

Weapon recoil

 

AimModelRecoilArcRotateDeg

  • defines the initial recoil direction
  • direction = (( 1.0 + value ) * 15° ) rotating clockwise
  • minimum angle = 0°, maximum angle = 180°
  • after a certain distance direction will change straight upwards/downwards
  • value of 5.0 will hit the same spot after the previous distance

IMAGE:

http://i.imgur.com/6lCk7J8.png

 

 

AimModelRecoilArcDeg

  • defines how much the recoil will differ from AimModelRecoilArcRotateDeg

IMAGE:

http://i.imgur.com/PTWsxu9.png

 

 

AimModelRecoilShotsForRunaway

  • defines the number of shots that will use AimModelRecoilMinDegPerShot for recoil calculation
  • values 0.0 to 4.0 seem to be equal to (1.0 + value ) number of shots, after that "dimishing return" kicks in, e.g. value of 10 = 6 shots
  • if value is > -2.0 and <= 1.0 AimModelRecoilMaxDegPerShot is used for all recoil calculations, while AimModelRecoilMaxDegPerShot > -1.0
  • if value is <= -2.0, then AimModelRecoilMinDegPerShot is used for all recoil calculations

AimModelRecoilMinDegPerShot

  • defines the distance of recoil between two shots
  • value multiplier is 0.66 times smaller than AimModelRecoilMaxDegPerShot, e.g. MinDegPerShot=2.0 (+1.0 BaseValue = 3.0) has the same recoil as MinDegPerShot=1.0 (+1.0 BaseValue = 2.0)
  • if value is -1.0, there will be no recoil when value is used in recoil calculation
  • if value is < -1.0 direction will be invertered with no angle just staight upwards and downwards and random up/down movement with AimModelRecoilArcRotateDeg = 5.0 ( needs further testing )

AimModelRecoilMaxDegPerShot

  • defines the distance of recoil between two shots
  • value multiplier is 1.5 times larger than AimModelRecoilMinDegPerShot, e.g. MaxDegPerShot=1.0 (+1.0 BaseValue = 2.0) has the same recoil as MinDegPerShot=2.0 (+1.0 BaseValue = 3.0)
  • if value is <= -1.0, then AimModelRecoilMinDegPerShot is used in distance calculation instead

 

IMAGE:

http://i.imgur.com/iitzTa7.jpg

 

 

Weapon stability

 

AimModelBaseStability

  • defines the weapon sway multiplier for scopes.
  • multiplier is 1.0 + values

Factors in weapon stability calculation

  • AimStability = actorValue 35b = 1.00
  • -- aimStabilty default value calculated at character creation = AimStability[AVIF:0000035B] + Player[NPC_:00000007].AimStability[AVIF:0000035B] = 0.5 + 0.5
  • Mod_Stabilized_AV = actorValue 245BC6 = 2.0 times items with stabilized mod
  • -- stabilizedMult = 1 + 0.01 x Mod_Stabilized_AV
  • Sniper perk aimstability bonus = 0.05
  • fAimStabilityCrouchedScopeMult = 1.05
  • fAimStabilityCrippledArmPenalty = -0.20 ( -0.40 if both arms are crippled )

swayFactor = ( AimStability + SniperBonus - CrippledArmPenalty ) x CrochedScopeMult x stabilizedMult x AimModelBaseStabilityMultiplier

  • if swayFactor >= 1.0, then no sway at all
  • if swayFactor < 1.0, then more sway for lower numbers
  • if crippled even with no sway from weapon stability there will be sway from the wobble effect fAimCrippleWobbleScopeMult = 0.10 ( 0.0 = no wobble)
Edited by Cerbsen
Link to comment
Share on other sites

  • 7 months later...

Normally I'd look away from necroing a thread but in this case I reckon it's worth bringing this post back up since it has some really useful info, and I'd like some things clarified instead of starting an entirely new thread on the same topic.

 

I'm a little confused by "modulus[ value + 1.0 ] equals same amount of spread, e.g. spread of 0.5 equals -2.5" - what does this actually mean?

 

Other than that these are some really nice details. This should be stickied...

Link to comment
Share on other sites

  • 1 month later...

I too would like to know what 'modulus[ value + 1.0 ] equals same amount of spread, e.g. spread of 0.5 equals -2.5.'

 

If a spread of 0.0 = aimmodelminconeº(-1.0) + 1.0) = 0...

 

Yeah, nothing is making sense to me with this statement. A value of ( -0.5 + 1 ) =/= -2.5. Or, ( -2.5 + 1.0 ) = -1.5 would not equal spread, but the value of the aimmodelminconeº

 

Spread is a derived attribute, it seems based on the aim model values, not the other way around... right?

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...