Explosion Balancing and Configuration Improvements
In Arma Reforger, all explosions are equal, but some are more equal than others. Rather than maintaining each attribute separately in sync with balance adjustments, there is a common way of defining them based on real-life data. This solution has been in effect since Early Access (0.9.5); however, it needed some improvements.
Basic Charge Data
In real life, explosives are commonly defined by two attributes:
Charge Weight [g]
Relative Effectiveness [% of TNT]
These define charge's TNT Equivalent and are split mostly so that reference data can be kept directly in configs.
The ExplosionDamageContainer allows you to configure these, although the Relative Effectiveness attribute is misnamed as TNT Equivalent. This is a common mistake, and we made it ourselves, but for the sake of backward compatibility, we have decided to keep it as is.
Blast Firepower
Three parts define explosion firepower:
Damage Value [hp]
Damage Distance [m]
Damage Falloff Curve
The TNT Equivalent influences Damage Value and Damage Distance. Up until 1.2.0, explosives used cube root scaling for distance and damage. Due to this, large explosives were noticeably underpowered. This was mostly visible with mods adding large explosives, like aerial bombs. To solve this issue, the scaling values for damage and range have been separated by attributes: Explosion Damage Power and Explosion Range Power.
Damage is also scaled by the angular size of the hit zone's geometry exposed to the explosion. Limits keep the damage reasonable when the target is close to the epicenter, and hit zones offer the possibility of overriding the target area to make outcomes more predictable. This is important for parts that may change their shape or orientation often, like the human body or rotors. The angular size also determines the amount of fragmentation.
Recommended Values
Explosion Damage Power: 0.64.
Explosion Range Power: 0.33333.
The Damage Power has been selected empirically to fulfill these conditions:
1000kg TNT blast kills characters ~40m away
1kg TNT kills characters ~4m away
400g TNT firepower should remain similar as in 1.2.0
As a side (and expected) effect, anti-tank mines will become significantly more powerful, but their lethal range will remain limited.
Traceless Damage
Before 1.2.1, the mines and explosives did not use traces at all. It caused them to be significantly overpowered against occupants of vehicles or bunkers.
This solution has been replaced with an additional tracer-less effect with reduced damage and range. Thanks to this, all explosives still threaten nearby characters or if attached directly to a vehicle, but at longer distances, hiding behind cover can prevent damage.
Penetrable Materials
Game materials (.gamemat) have received a new simple attribute that makes them transparent to explosives when disabled: Stop Explosion Trace. This attribute works on all explosive damage effects and is used on materials for surfaces that are not supposed to stop explosions—for example, cloth, thin glass, or weapon parts.
Thanks to this, tents, truck canopies, and guns will no longer protect against explosions and fragmentation.
In order for penetrable materials to be functional, the modder has to set the attribute Layer Preset of the ExplosionDamageContainer to Projectile. Due to a technical issue, setting it as default in C++ does not yield expected results, so it has to be done in data. To simplify rectifying this issue, explosion container templates have been established.
Explosion Container Templates
In order to quickly create a new warhead aligned with Arma Reforger's balancing, the modder should inherit from either the base warhead prefabs or explosion container templates inside its trigger component.
ExplosionContainer_Base.conf
blast, incendiary, and impulse.
ExplosionContainer_Fire.conf
blast and incendiary.
ExplosionContainer_HEAT.conf
base + FragmentationDamageEffect_AT
ExplosionContainer_HEDP.conf
base + FragmentationDamageEffect_HEDP
ExplosionContainer_HE.conf
base + FragmentationDamageEffect_HE
ExplosionContainer_HEF.conf
base + FragmentationDamageEffect
Fragmentation Damage Templates
The fragmentation damage equations have been revised in 1.2.1. The names of ExplosionFragmentationEffect attributes have also been changed for two reasons:
Keeping them with values tuned to the old system would lead to unpredictable results if left unattended by modders.
To make them more specific and in line with what they represent.
The role of fragmentation attributes in damage output has been described in the ExplosionFragmentationEffect tooltips to make it easier to understand use cases.
Generic Balancing Attributes
These attributes control the final damage and range of fragments.
They will be renamed to invalidate legacy values. If left alone, the effect of these attributes will change significantly and could cause unpredictable issues.
Frag Damage Power ("Factor" in 1.2.0)
Frag Range Power ("Factor" in 1.2.0)
Generic Type Attributes
These attributes should be common for the general type of warhead. It is recommended to use the provided templates as they reflect the general purpose of the warhead:
Frag Mass Scale
Frag Range Scale
Unique Attributes
These basic attributes of the fragmentation damage effect should match the Gurney parameters of the warhead, according to real-life data.
Damage Fragment Count
Gurney Shape
Gurney Constant
Case Weight
In most cases, modders should use the config templates, set Charge Data, and then override unique attributes of fragmentation damage effects in their warheads.
FragmentationDamageEffect_AT.conf
range & mass scale 10%
FragmentationDamageEffect_HEDP.conf
range & mass scale 30%
FragmentationDamageEffect_HE.conf
range & mass scale 60%
FragmentationDamageEffect.conf
range & mass scale 90%