So I simply added a Variable called Random100 to all my animators that is, once per second, assigned a random number between 0 and 99, allowing my Mecanim state machine to transition (eg. with 30% likelihood it could transition to StandAround or LookBored, with 10% likelihood it could transition to Stretch, Yawn or ScratchHead.
It would be nice it I could make this Random100 a built-in feature of my controllers that, when present, gets fed a random number regularly. However, I couldn’t find a convenient HasInteger() or similar method to detect whether there is a variable called Random100 in my animator.
I don’t think this functionality has been exposed yet, not even in Unity 4.2. At least I don’t see it in any of the release notes or documentation.
I know it’s far from ideal, but what about adding a set of Boolean parameters guaranteed to exist on all of your animator controllers that indicate what the controller supports – for example, a hasRandom100 Boolean that you can check.