The system is based on the configs for the ammo, mainly indirectHitRange and indirectHit values. They are used to determine how far out the system should look for "targets" and how fast the chunks should be moving initially. Individual ammo types can have the system disabled or forced on (if they dont meet the base criteria for the system to automatically track them). Each type of ammo can have its own array of fragmentation ammo types that are spawned. Right now its uses 5.56 and 7.62 as well as 12 gauge slugs. These are not that great, but for now work until I add something better in. Again these can be changed on a per-ammo basis or affecting an entire class of ammo.
A multiplier value can increase or decrease the amount of fragmentation over all. The default value of 1 will throw around 0-3 pieces of fragmentation at a human sized target. A tank gets about 10 or so pieces. The amount is determined by the size of the object in cubic meters based off its bounding box. There is a hard limit of 10 per object. A random deviation is applied to the vector from the explosion to the target.
AI and vehicles are targeted. An empty vehicle will have very little fragmentation thrown at it because there is no AI or human players that would be affected.
There is a total hard limit right now of 120 pieces of fragmentation per explosion for performance reasons (and it is disabled on certain systems like FFAR and the Mk19/AGS-30, too much chance for desync).
In addition to the target hits it takes 10% of the remaining number of pieces available and randomly distributes them for effect.
Thin skinned vehicles are affected. The first time I tested it I was killed instantly in a BTR-70 at 120 some meters from one of the M109's 155mm shells going off. Thinking this was maybe too powerful I tried it a few more times and didn't get hit, so it seems like its pretty decent.
Its in the ACE repo now, enabled by default, and should be in the next release.
