This seems like a good idea, if implemented properly. Here's how I would do it:
Every time a creature moves, it has a chance of stumbling. Things that increase the chance of stumbling are:
- Moving over rough floors or stairs
- The presence of contaminants on the tile, especially liquid
- Moving over an item outside of a container
- Moving at a fast gait
- Carrying a heavy burden
- Dizziness, drowsiness, fever, nausea, or extreme hunger and thirst
- High levels of stress
- Being an unskilled crutch walker
This is weighed against the creature's agility, kinesthetic sense, and observation skill, which reduce the chance of stumbling. Stumbling also trains observation slightly.
Creatures attempting to move past each other may also collide with each other. This deals damage (as if one was thrown into the other, but much weaker) and has a chance to cause stumbling as well. For additional fun, the collision may be interpreted as a (non-lethal) attack by dwarves who are prone to anger or have other particular personality traits, which can potentially spark a brawl.
Stumbling deals minor impact damage to one of the creature's STANCE bodyparts. Upon stumbling, the creature also has a chance of tripping, which will be based on the same stats as the stumbling calculation, dealing further impact damage to another bodypart and causing them to fall to the ground. The chance of injury will be greatest for GRASP bodyparts and lowest for the creature's HEAD.
Creatures with more than two legs are (i.e. creatures that will not collapse if they lose the use of one STANCE part) or those who are able to fly are much less likely to trip even if they stumble, although it can still happen. Creatures with no functional legs will never stumble.
If the creature is carrying something when they trip, there is also a chance that they may injure themselves on a random body part with the item they were carrying. This is calculated as if they were attacked with the item using a basic strike attack. If the item is a weapon, a random attack with that weapon may be chosen, but the force behind the attack will be proportional to the severity of the trip instead of based on the creature's strength or skill.
A creature stumbling or tripping may also move one space in a random direction, potentially knocking them into a pit. The chance of moving in the direction they were trying to move is higher than the chance of moving in a different direction.
A creature that trips (or falls down for other reasons) while on a flight of stairs may continue to fall, dealing further injuries with each z-level down and also colliding with anyone else in their way. They have a chance of catching themselves each step, though, and the speed of falling is capped at a reasonable amount (so no falling all the way down the stairs and exploding).
Work-related injuries may also occur during regular workshop tasks. These injuries would be biased toward the hands (i.e. GRASP bodyparts) but could potentially occur anywhere on the body. They would typically be very minor though, and simulated by a weak edged or blunt attack toward the bodypart in question - for jobs that require fuel such as smelting or metalsmithing, burns may also be involved. The skill of the worker would prevent or mitigate these injuries.
The effect of this would be:
- An accumulation of minor injuries for training your doctors.
- Gradual training of the observation skill.
- Discouragement of lazy fortress design based around long up/down staircases.
- Further discouragement of crowded, narrow corridors and tiny meeting places.
- Small amounts of combat training if you do have crowded areas.
- More good reasons to smooth out your fortress floors and keep them clean and organized.
- An accumulation of scars on the hands of legendary craftdwarves.
- More potential for hilarity and !!fun!!