How can I get direct access to location of Bones or Vertex Groups in GE Python?

I have a rigged character that I’m shooting arrows at. I want the arrows to stick in (arms, legs, w/e) and move around with the character. When an arrow hits the character, I set the arrow’s parent to be the collision box (so they move together), but obviously the arrow moves with the collision box, not with the armature.

So I created a bunch of shapes (“ragboxes”) for the arrow to collide with, and parented them to the bones. Now the arrow can be parented to those, and since they move with the bones, the arrow looks like it’s stuck in the character. However, that solution is incredibly slow while the game’s running (i.e. I can only have one of these characters active; any more and framerate plummets, and I haven’t even built the world yet)

The ragbox settings are: Static, not Actor, Ghost, Invisible, Sphere bounds What I’m wondering is -

  • Can I directly set the arrow’s parent to be one of the bones in the armature (how)? This way I wouldn’t need all the individual objects.

  • Is there a more efficient way to detect individual bone collisions with those objects? Some magic setting that adds 10fps?

You guys are not using the ‘search’ option in this forums:

That’s not an armature :stuck_out_tongue:
I already have that part working.

I have a character with multiple bones. The arrow should stick to a bone, then rotate and move around with that bone separately from the other bones.