for example would you set up a human to react properly to getting shot in different places.
lol - First of I would tell him to stop visiting those neighbourhoods and then I would say to him that as long as he has one leg left he can still hop to safety.....
Sorry - couldn't resist.
Every joint is represented by a rigid body. You can apply a force or torque to any joint to simulate an impact.
How realistic the movement is depends on what the joint type and limits are.
A possible method - If you know the vertex/joint assignment then you can check the nearest vertex to the picked/collision coordinates. You can then find the joints that need to be manipulated. You could even distribute the force between several joints if the vertex was assigned to more than one joint according to its weighting values.
You could also just simply find the nearest joint to the picked/collision coordinates ,that would be less accurate but would probably be sufficient in most scenarios. Calculate force direction using collision/picked normals.
Something along those lines .....
I hope to be adding a library of functions for parsing .b3d files and creating Type structures of useful information not available at run-time - there are some good ones in the code archives however none of them deal with animation data.