The finer details of the Ballistic Aiming System

For technical help, links and documentation specific to Ballistic Weapons.
Post Reply
User avatar
SgtKelly
Ballistic Weapons Content Producer
Posts: 18
Joined: Fri 04 Nov , 2011 7:25 am
Contact:

The finer details of the Ballistic Aiming System

Post by SgtKelly » Mon 23 Jan , 2012 2:06 am

I had to explain this stuff to some of the forum goers on my side, so I decided to share some of the knowledge here. This is for all of you who would like to know the intricacies of how the ballistic weapons calculate their weapon offsets, camera offsets, precision, and accuracy.

Now this might not apply to you guys 100% because the values I use follow the vanilla weapons, and I'm not sure to what extent Azarael has modified the hipfire system.


Wall of text inbound.
==========================================================

The ballistic aiming system is quite complex. All the guns have their own view/recoil/chaos/accuracy settings, and you have a decent amount of control over some of that via the mod's included mutator.


This is not some silly CoD game where guns only rely on little expanding circles where the bullets go. So let's get into the gritty details here:

ViewRecoilFactor and ViewAimFactor are float values that differ for every gun. The higher those values, the more the camera follows the gun's recoil displacement and chaos displacement. Most guns have this value from .1 to 1.0.

At 1.0, your camera will always follow the gun's barrel, which means your view will be flying all over the place while you fire.

At 0.1 your camera will not care about the gun's barrel, which means the gun will fly all over the place while you look straight ahead.

Those values can be universally increased or decreased via the mututor. The mutator will multiply the value by whatever you have it set to. Ex: 1.0 at 100% is 1.0. 1.0 at 150% is 1.5. If the gun is at 0.2 and you set it to 200% then you'll only have 0.4

AimSpread and ChaosAimSpread (X.Min, X.Max, Y.Min, Y.Max) dictate how far the barrel of the gun moves. This is similar to what Call of Duty and other shooters use in that they are circles for max and min accuracy, however the Ballistic system is far more advanced in that the barrel will point directly at the location the bullet will go, unlike in CoD and BF where bullets magically come out at 45 degree angles.
ChaosAimSpread holds the max values, and guns with high values will have much more chaos than those without.
AimSpread is the default accuracy of the weapon, and this is where the gun will move about when you're idle.
ChaosAimSpread can be modified via the mutator.
AimSpread cannot.

XInnacuracy and YInaccuracy additionally code how far the bullet can deviate from where the gun is pointing. You have absolutely no control over this, and some guns are accurate and some simply are not.


--------------------------------------------------------
Real Life Examples!

The AH104 has very low AimSpread AND ChaosAimSpread as well as very low X/Y Inaccuracy. This gun is extremely damn accurate. However, if you set all your values to 0 in the mutator, you will STILL be left with AimSpread, which means your gun will still move around in a circle with a radius of approximately 40 units.

The Bulldog has a very high AimSpread of -720, 720, -750, 750! This means that it will move around quite a bit at default accuracy settings! There is no BS about it not shooting 'straight' because it shoots with an X/Y Inaccuracy of only 10.

The MR-DR88 has horribly high AimSpread and X/Y Innacuracy, which means it will never be accurate no matter how much you change your settings. It also has ChaosAimSpread equal to its AimSpread which means it will never get more inaccurate than it already is. It effectively has 0 chaos. This is all by design and will not change.

--------------------------------------------------------
'User asks what happens if you set the mutator sliders to 100%'
--------------------------------------------------------

The BW sliders are multiplicative to whatever the gun naturally uses.
If you put your view sliders at 100%, your SRAC will stay at
ViewAimFactor=0.250000.

Bulldog will stay at
ViewAimFactor=0.300000

Your HMC will stay at
ViewAimFactor=0.650000.

So with your slider at 1.0/%100/default/whatever, your camera will only minutely follow the SRAC, though it will follow the HMC with a lot of precision.
ViewRecoilFactor will make your camera follow the gun's barrel as it kicks upward when shot. Higher values can make recoil seem more extreme, but can lead to headaches if improperly set.

In layman's terms, ViewAimFactor scales how much your camera follows chaos, and ViewRecoilFactor scales how much your camera follow recoil. At 1.0 for both your camera and the gun's barrel will be one and the same.

--------------------------------------------------------
More fun facts:

As soon as you go into sights, ALL your weapons go to
ViewAimFactor=1.000000
Which means in sights your camera will follow the weapon 100%.

SightAimFactor and CrouchAimFactor actually reduce the AimSpread/ChaosAimSpread of your weapons! This means sighting and crouching will keep your guns under control! All guns have their own values for these and you can't modify them. Some guns benefit from sights more than others.

The X83's AimSpread is (-/+) 0.125, which means it is arguably the most accurate rifle in the entire game.
The Bulldog's AimSpread is (-/+)750, which means you better crouch and use sights.
The X83's ChaosAimSpread is (-/+)3840 and the Bulldog's is (-/+)3824, which means running and gunning will send both barrels pointing in ridiculous directions.
The LS14's ChaosAimSpread is (-/+)1200, which means the LS14 will always remain generally on target even if you're jumping off cliffs and sprinting around. The LS14 is almost as controllable as the handguns.

The M75, M50, M46 and SAR-12 all have ChaosAimSpreads of (-/+)2048.
The M75 has a lower ChaosAimSpread than the SRS-900 and R78. The SRS900 and R78 can go to 3072, which is almost as bad as the X83 and Bulldog.

User avatar
Azarael
UT2004 Administrator
Posts: 5365
Joined: Thu 11 Feb , 2010 10:52 pm

Re: The finer details of the Ballistic Aiming System

Post by Azarael » Mon 23 Jan , 2012 4:06 pm

The extent of my aim system modifications:

X/YInaccuracy for most non-shotgun weapons are both 0.
ViewRecoilFactor is always 1 (camera always follows recoil).
ViewAimFactor is 0 from the hip and 1 from sights to prevent drunken view, as some users complained of motion sickness.
AimSpread and ChaosAimSpread are worked out on a weapon class basis. Generally:

Pistols 32/512
SMGS 32/1024
ARs 32/1024
MGs 128/1536
Ordnance 128/1536
Snipers 32/1536
Shotguns 32/1024

SightAimFactor and CrouchAimFactor work as advertised. Note that my version of SightAimFactor does not reduce recoil, but CrouchAimFactor does. For most weapons, CrouchAimFactor is 0.8 and provides a 20% recoil and sway reduction.

My hipfire system is in two parts:

1) There's a variable called ChaosSpeedThreshold - the player's movement speed divided by this determines how inaccurate the weapon will be while moving. I refer to this as the "movement penalty" and it's implemented in the normal Ballistic way, via the aim system - where the weapon mesh points is where you'll shoot. For most weapons this is 3000, producing a movement penalty of 12% when moving at full run speed (350). Some weapons like the E-23 and shotguns have large movement penalties and cannot be relied upon for accurate hipfire when moving at all.

2) The other part of the aim system is simplified expanding hipfire. As you fire, your weapon becomes more inaccurate until the spread reaches the value determined by ChaosAimSpread. The first shot will travel wherever the weapon was pointing at the time. The implementation of this section of the spread is done by random conefire - the reason for this is that in previous hipfire engagements, the winner was determined by whoever was lucky enough to have their weapon pointing in the correct place as opposed to whoever shot first. Expanding hipfire also gives more hipfire options - all-out spam at close range, or short bursts aiming for the head? Use sights, or take the damage penalty (in terms of having to stop and wait for the spread to come down) in exchange for freedom of movement?

The movement penalty section, which moves the gun rather than using random conefire, is kept to help mask the fact that the bullets don't line up with the barrel when the random conefire takes effect. Many weapons with wide spreads have large movement penalties, partly for balance reasons and partly to cover up the system.

The conefire is calculated with reference to the weapon's current ChaosAimSpread setting, so using the sliders in the menu to configure the weapons for lower spread should work fine, although if you choose to do so I make no guarantees that the result will be as playable as the game under stock settings. BallisticPro also includes configurable walk speed, which affects the speed at which players move with their weapon raised.

Post Reply

Who is online

Users browsing this forum: Google [Bot] and 9 guests