As promised here's the design criteria for the suppression system, along with an overview of the implementation and some other useful info.
Suppression
The suppression system is designed to simulate one specific combat effect, suppressive fire, where the weight of incoming fire makes it impossible for the receiving side to return effective fire. It is the tipping point in a fire fight where the losing side is forced to withdraw or be neutralised.
This is not simulated at all in vanilla Arma, where no matter how much enemy fire is incoming, the effectiveness of outgoing fire remains unaffected.
There is no way in a video game to stimulate the mental state of a combatant and their desire to seek cover rather than risk injury/death. So we fake suppression by making it increasingly more difficult for a player to return effective fire from their current position, thereby requiring them to either seek cover or maneuver. This is achieved by making it more difficult for a player to identify the target (to simulate that as the incoming fire builds so does the willingness of the individual to stick their head up and observe the target) and by making their fire less accurate (to simulate the natural desire to point the gun in the vague direction of the enemy and fire, without taking the time to carefully aim and in the process expose themselves to the incoming rounds)
The tactical situation we’re trying to create is to force the player, when under heavy fire, to have to seek cover or withdraw. If you believe you should be able to fight through the effects, no matter the weight of fire, then you’re missing the entire point of the suppression system. Its meant to be extremely difficult to return effective fire when heavily suppressed, because you should be withdrawing / maneuvering / seeking cover and not being a stationary target.
Having said all that, it is certainly not a perfect system. We’re combining a number of visual, animation and ballistic effects in a hope of getting something that forces a player to withdraw, whilst remaining playable. The balance between these effects and even the effects themselves are fairly arbitrary. It’s entirely possible that there is a better set of effects and factors out there. Also, it has to be implementable within the current Arma system. Some effects available in other video games are just not achievable in Arma.
The mechanics:Each round that is fired towards the player, adds a little to the player’s suppression. The amount that is added is dependent on:
- The calibre of the round
- The velocity of the round
- How close the round passes to the player
- Whether the round explodes e.g. grenade
- Whether the player is prone, crouching, standing
- Whether the player is behind soft or hard cover
- Whether the player is in deflaide
- If the player is in a vehicle, then whether the vehicle is armour, fully enclosed etc.
Meanwhile the player’s suppression level is continually reducing, going from max suppression to no suppression in 12 seconds
The effects:As suppression builds, so does the following:
- The blurriness of the screen
- Weapon shake
- Weapon inaccuracy
- The level of adrenaline (a natural ephi)
Each incoming round, again dependent on distance, calibre, etc also creates camera shake.
Your ability to recover from fatigue improves when suppressed, so you can sprint further and recover from exhaustion quicker. This is due to the natural adrenaline
Known issues:
Suppression and vehicles is a little janky. In some armoured vehicles, the level if suppression builds too rapidly
Effects tried and discarded.Tunnel vision: The idea was to limit the amount the player is able to see, by an increasing black/dark border to the screen (in the same way as NVGs work). This was found to have zero effect on the effectiveness of outgoing fire, as the player only really needed a few pixels in the centre of the screen to accurately engage the enemy. So it became an ineffective annoyance and was discarded.
Tunnel vision in real life is when the viewer is fixated on an object and loses their awareness of their surroundings. This is impossible to simulation in Arma, as it would require fixing a player to look only at the enemy fire position. It would provide a horrid player experience.
AIVanilla Arma already includes a suppression system for the AI. When rounds pass close to an AI unit, their accuracy, rate of fire, reload speed and ability to take any action is adversely affected. When under fire, the AI regularly take cover and then refuse to move. Anyone who has Zeus’d will have experienced this, with AI becoming very uncooperative after they have taken incoming rounds.
Our suppression system, uses the same suppression values for the incoming rounds, as those used by the vanilla AI suppression system. In this way we get some level of equality. The difference between firing an AK compared to a PKM at players, will be similar to firing the same weapons at AI.
ZeusThe system has been recently updated to now effect zeus remote controlled units, so the zeus can now better appreciate the weight of incoming player fire.