The second system is indeed by far the simplest. To begin with, you could take a generic soldier (one from each side) that represents a catch-all model for ANY soldiers on that side. (No need to make lots of models for the initial proof-of-concept phase.)
Then, from that soldier make 5 different models:
Torso & head. (or subdivide that into 2 more models if you're feeling particularly gruesome
)
Left arm.
Right arm
Left leg.
Right leg.
When you make an arm or leg (by selecting everything else & deleting it) make sure you reposition it so that the "joint" is at model space [0,0,0]. Also, while you're at it, make sure all the body parts are rotated so they're aligned to the ground already, will make things easier later.
Lose all the unnecessary geometry, memory points etc.
Then you should have the necessary parts to be able to randomly "stitch" together various combinations of injury. You can randomise each limb's orientation around the ground plane, let's say 0-45 degrees for legs, 0-180 degrees for arms. There are some limitations obviously (as we discussed at BIS):
Only dead units can be gibbed.
Probably best to have gibbed units either face up or face down for simplicity.
Then I guess you'll need some code to decide how "damaged" units are when they've been killed, so you don't get unrealistic amounts of gibs all over the place at the slightest provocation
my own feeling is that only the most violent injuries should need gibbing, say a very close explosion, of a hammering from some high impact & high caliber machine gun, like a mini-gun.