Fallout New Vegas
0 of 0

File information

Last updated

Original upload

Created by

migck - S6S - konradl

Uploaded by

miguick

Virus scan

Safe to use

About this mod

Replaces the formulas for weapon jamming when firing and reloading with a scriptoid implementation. Also fixes the associated bugs when it happens to automatic weapons. ESPless, everything is done from a text file thanks to JIP's scriptrunner.

Requirements
Permissions and credits
Changelogs
Weapon Jamming Tweaks
This mod replaces the game's workings for making weapons in poor condition jam, which forces the player and actors to interrupt their attack in order to assay their weapon.

Details:
In the vanilla game, this was enabled only when reloading a weapon, and even then only when the weapon is in pretty bad shape. There are options to enable this mechanic when firing normally, but that encounters a problem with automatic weapons such as machine guns and the like. The chance to jam is rolled before the bullet is fired, but is also rerolled after the jam animation plays. If the chance to jam is high enough, it can keep the actor stuck in a jamming loop until he gets lucky enough to finally fire that stuck shot.

The mechanic is also controlled by a series of game settings that define a chance to jam at every 10% bracket of the weapons' current condition. Admittedly it helps to simulate whichever function the player desires the chance to follow, but it kind of clashes with the design choice that weapons in NV behave as if at 100% condition until they cross the 75% threshold.

In this mod I've set the relevant game settings to 0 using the game setting config feature of lStewie's Tweaks, and setup a scripted replacement for both reloading and firing chance to jam, all of it started from a plain .txt file thanks to JIP's scriptrunner feature. With some scripted jank, it gets rid of the problem affecting automatic weapons, by making them roll a (reduced) chance to jam after each shot, instead of before.

To make things short, I've used a logistic function of the weapon condition as the chance to jam, with various settings to affect its falloff. If you're good enough at mathematics (unlike me) you could even easily rewrite it to suit your preferences.

The formula also acknowledges a pair of public auxiliary-variables:
"_ActorJamMult" is read on the actor reference, such that the final jam chance will be multiplied by (1 + firingActor.AuxVarGetFlt "_ActorJamMult"). So it does nothing by default as it will be 0 on all actors, but you can eliminate jamming for an actor or the player by setting that aux var to -1 on him for example.
"*_WeaponJamMult" is read on the weapon base object, also multiplying the final jam chance by (1 + AuxVarGetFlt "*_WeaponJamMult" 0 weaponID). An optional file applies this to recharger weapons, since in vanilla these lack appropriate animations for jamming.

Enjoy, or suffer when your weapon jams I guess.

Requirements:
xNVSE (v6.3.3+)
JIP LN NVSE
JohnnyGuitar
ShowOff xNVSE
lStewieAl's Tweaks and Engine Fixes

Installation:
Ensure that the requirements detailed above are installed and up to date.
Install the main file.

Optional:
Install the Sweet's Configuration file.
Install the Ammo Jam values file.
(These configuration's effects are described below.)
Install the No recharger weapon jams file, if you don't have an animation pack with jam anims for those (I don't think there's one yet).

If updating from Version 1.xx, replace your existing installation.

Configuration:
To configure the file, download, install, and modify either the Default Config INI or the Sweet Configuration file in the Optional Files section.

There is an optional, slightly more "hardcore", config .ini available in the Optional Files section, configured by SweetSixShooter.
It increases the threshold for jamming, allowing for jams to have a chance to occur even at max weapon health, makes jams somewhat more common while firing at low condition, and smooths the falloff of reload jam chance at higher weapon health.

You can also find an optional configuration file defining falloff multipliers for different kinds of ammo, provided by konradl. Note that in order to simplify things, any ammo definitions you add have to go into such a file, "data\config\JamTweaksAmmo.ini", under an [Ammo] ini section, with key being the editorID of the ammo and a value for the falloff multiplier you want.