I remember something about an impact elasticity value of 50000 or more changing behavior, but it was a while ago since I tinkered around with that. Might be worth a shot if something doesn't behave right.
strain at yield > 50000 causes all of an attack's energy to be passed through to the next tissue layer automatically
What if there is no next tissue layer?
It does yield and fracture calculations as normal AFAIK. I really should've mentioned that in the first place.
I mean, I guess I should explain what that all means. A strain of 1 in Dwarf Fortress is equal to:
1. In tension, the material doubling in length.
2. In compression, the material halving in length.
3. In shear, the tangent of the change in angle of two formerly perpendicular lines in the material.
STRAIN_AT_YIELD is in strain/100000, and represents how much strain the materials is under at the relevant YIELD point (TENSILE_YIELD for TENSILE_STRAIN_AT_YIELD and so on).
1I seriously have no idea what IMPACT_STRAIN_AT_YIELD, TORSION_STRAIN_AT_YIELD and BENDING_STRAIN_AT_YIELD are, but I can try:
1. Bending is a mixture of tension, compression and shear: tension on the outer edge of the bend, compression on the inner edge and shear parallel to the direction of bending. Given the assumptions in Dwarf Fortress, Young's Modulus can be safely used for calculation of STRAIN_AT_YIELD. I actually don't know what STRAIN_AT_YIELD here is.
2. Impact is a mixture of compression at the point of impact and bending outside that point. I'm reasonably sure that Young's Modulus should be used. I think STRAIN_AT_YIELD here should be how far the material goes "in" due to the impact.
3. Torsion fails in tension or compression but the strain is entirely in shear modulus. It's probably the tangent of the change in angle of torsion, same as shear.
Dwarf Fortress ignores all of that and assumes bending equal to tensile (not a bad assumption usually, though), impact equal to compression and torsion equal to shear, though.
1 This is calculated, as seen in the raws, by taking yield/(elastic modulus)--for example, COMPRESSIVE_STRAIN_AT_YIELD/(bulk modulus) for iron, giving us 542500000/170000000000, or 0.003191. Since STRAIN_AT_YIELD is in parts-per-100000, we multiply it by 100000 and round the result to 319.