Considering the level of detail that's already in the game, and the level that's set to go in, in the future, I wouldn't put it entirely past Toady to model the shapes and weights of weapons.
By being able to similate acute points, dull points, broad axe-heads, narrow pick-heads, and a plethora of blunt instrument shapes, and compare that to the bodypart struck, the armour and padding covering it, modified by materials used, and force behind the strike, the game would be able to produce near-realistic results for damage.
It could maybe be done by creating a size-related numerical grid for each bodypart, that the computer would use to figure out where the bodypart was struck, how large the wound was, and how deep, and whether there was enough force to break bone, sever a limb, destroy an organ, what have you.
A finger could be, for instance, 3 body z-levels deep, 2 spaces across, and 6 long. So an index finger-grid would be numbered from 1-24. 1-5 would correspond to the back of the hand, left side = 1 the left side of index tip, 2, the left 1st joint, 3, the middle left, 4, the left side of the middle joint, 5, the left base, and 6 would represent the left side of the knuckle. 7-12 would represent the same exact thing, only on the right side. 13-18 would be left palm side, and 19-24, the right palm side.
If the game determined that that index finger were damaged, it would do a simple random calculation to figure out what exactly was struck, and how hard, and then compare that information to the weapon that struck it. To sever a finger, the weapon would have to do damage to both sides of the finger, and both the palmside and the back, and have enough force to penetrate through flesh, and to break/destroy the bone.
Armour would add another (or several) z-level that would have to be destroyed, in order to sever that finger, and different types of armour may resist different types of damage in different ways.
This system could even represent "ablative" effects, since armour might add additional surface areas that, if they were targeted by a sharp weapon, would have little effect on the underlying flesh, any damage possibly even further reduced by padding.
Ofcourse, having these extra "ablative" areas destroyed, in the course of battle, would lead to more and more significant strikes.
Ablative armours would affect both Slashing and Piercing weapons, but Blunt instruments would ignore these areas.
Piercing weapons would do double damage to flesh, and also have the special ability to do damage at one extra depth, anytime they did any damage to flesh, and to do twice as much material damage to anything other than solid plates of material (like in plate armour), but to only do half damage to solid plates. Piercing weapons would also ignore cloth and leather armours.
Slashing weapons would be able to affect several grid spaces at once, in a straight line. That would allow them to sever limbs, etc, and to cut things.
Slashing weapons would do twice as much damage to leather and cloth items, and normal damage to other items.
Blunt weapons would affect all of the grid spaces of a given bodypart at once, but would only do half damage to flesh, leather, and cloth items. They would do double damage to chain maille items, and to bone. They would also ignore "ablative" armour.
Because blunt weapon damage would affect the *entire* bodypart, blunt weapons could be used to more safely stun or otherwise incapacitate enemies, with less risk of killing them.
Weapons themselves could also have numerical grid-shapes, which would be related to how many areas the weapon could potentially strike (how large the blade is), and what each specific area looks like, or could be used in combat for (blade, pommel, point, guard). Each grid-number would have a Sharp designation, and a Point designation, with an assigned value, which would tell the computer *how* sharp or pointy the grid-point on that weapon was. Low numbers for sharp/pointy would represent blunt, or blunted areas.
This would allow the game to simulate both extremely sharp areas (straight razors, compared to butterknives), and weapons which combine sharp, dull, and pointy features (like a halberd, or a spiked mace, the pommel of a sword, or even a scythe, which is mostly blade, but has a point on the end too).
It would also allow the game to keep track of things like nicks, scars, dents, spots of rust, etc. on weapons and armour, and whether or not a blade needs resharpening.
Certain areas of certain weapons could even be both sharp *and* pointy, like the pointy end of a sharp sword, or an axeblade that came to an accute point in the middle of the blade. In this case, each attack type would be calculated separately, as a separate attack, but with a reduction of overall force.
It's overly complicated, not really necessary, and an excuse for all manner of gruesome craziness, and pedantic attention to detail (in a good way!
), so it should be ideal for DF.