Since Blender allows programmers access to a model’s armature system, via python scripting, would it be possible to dynamically move the bones based on collision with other objects?
Would you recommend programming this physics simulation in Python or extend Python with C/C++ to handle the computations?
ODE is a physics library [it doesn’t have much in the way of collision detection tho, as in it uses another library for trimesh collisions], with suport for constraints and stuff
it can do ragdolls [last I saw none of the demos had this, but search for stair dismount online if you want an entertaining example]
so, blode should simply allow you to use python to control the armature, but let ODE handle the physical responses and collision [ode is c/c++]