Quick answer: Open Physics Asset Editor. Select all bodies. Details → Collision Profile = PhysicsActor or BlockAllDynamic. Save.

Bullet trace passes through ragdoll. Mesh collision doesn’t catch it because trace target is per-body, and each body defaulted to NoCollision in the asset.

The Symptom

LineTraceByChannel returns false on ragdoll. SkeletalMesh visible; physics asset bodies invisible to traces.

The Fix

Physics Asset Editor:
  1. Ctrl-A select all bodies.
  2. Details panel → Collision → Collision Profile:
     BlockAllDynamic   // hits everything that traces dynamic
       // or PhysicsActor for finer control
  3. Save.

Per-channel custom (when needed):
  Collision Enabled:           Query and Physics
  Object Type:                 PhysicsBody
  Trace Responses:
    Visibility:                Block
    Weapon (custom channel):   Block
    Camera:                    Ignore

Per-body collision is independent of the SkeletalMesh component’s collision. Traces target the physics bodies during ragdoll; mesh-only collision queries hit the swept skeletal mesh.

Verifying

LineTrace at ragdoll: returns hit, BoneName = source bone (Head, Chest, etc.). Frame Debugger shows trace intersecting body shape.

“Body collision configured. Traces land. Bones report.”

Related Issues

For replication scope, see replication. For state alias, see state alias.

Body collision on. Traces hit. Bone known.