Skip to content

SPT-SWAY 2.0.0

Choose a tag to compare

@savannt savannt released this 18 Aug 14:07
· 7 commits to main since this release

Weapon sway rebuilt from the physical sources that actually move a rifle, rather than one wobble scaled by ergonomics.

Five independent sources, each on its own timescale and each separately configurable:

  • Respiration — an asymmetric inhale/exhale/pause waveform instead of a sine, so there is a genuine still window at the bottom of the breath to fire in. Rate and depth follow stamina and oxygen. Holding your breath quiets it rather than freezing it, and you pay for the hold with an overshoot afterwards.
  • Cardiac — a sharp systolic spike plus the smaller dicrotic bump where the aortic valve closes. Heart rate climbs faster than it falls, and firing raises it.
  • Physiological tremor — layered detuned value noise in the 8–12 Hz band. Never repeats, never parks at zero. Fatigue, weapon weight and arm injuries all widen it.
  • Postural drift — sub-hertz balance wander that mostly disappears once you go prone or rest the weapon on something.
  • Weapon inertia — a real damped harmonic oscillator driven by turn rate, so a heavy weapon does not merely move less, it moves later and settles for longer. Natural frequency and damping ratio are exposed separately.

Every source is DC-blocked, so no waveform can quietly walk your point of aim off centre over time.

State is read from what the game actually knows: stamina, oxygen and arm stamina as three separate drains, pose level blended rather than snapped, mount/bipod/lean, arm fractures and blacked limbs, weapon ergonomics, weight and recoil stat.

Also in this release

  • Six presets — Realistic, Vanilla, Arcade, Hardcore, Marksman, Cinematic
  • Around 150 config entries, ordered the way the signal actually flows
  • Sections 12 and 13 expose BSG's own springs and effectors, scaled against the values captured at weapon init so the scaling stays idempotent
  • F11 overlay showing every live value the model is using
  • F10 toggles the whole mod mid-raid

Install

Drop SptSway.dll into BepInEx/plugins/SPT-SWAY/, or unzip SPT-SWAY-2.0.0.zip over your SPT install.

Built against SPT 4.x.

A note on the defaults

The physiological numbers are drawn from how those systems behave. The amplitudes are a judgement call — "how many degrees should a heartbeat move a rifle" has no correct answer, only a good-feeling one. They are a considered starting point. If the overall strength feels off, Master Intensity is the first knob; Camera Coupling is the one to reach for if it feels nauseating rather than merely strong.


Join the Discord: https://discord.gg/nxa3W7w4rJ

All updates, fixes and early builds are announced there first.

Coming next: a post-1.0 patcher and backend, written from scratch and built to be very performant. All of these mods will shortly be merged into that new system. The Discord is where it will be announced.