Character BP won't ragdoll but Pawn BP will

I’m having an issue with ragdolls that I can’t quite make sense of.

I’ve got an NPC that I’d like to have ragdoll a specific way (it takes X amount of damage and the arm goes ragdoll, takes an additional Y amount of damage and it goes completely ragdoll).

I’ve set this all up in a character blueprint and nothing I can do will make this dude go ragdoll. I’ve even tried putting Set all Bodies Below Simulate Physics and Set All Bodies Below Physics Blend Weight nodes in BeginPlay and it still won’t ragdoll.

I’ve made an exact duplicate of this NPC as a Pawn blueprint instead of a Character. Same Skeletal Mesh, same node tree, same animation blueprint, etc. And it works exactly how I would want.

My problem is that I need get root motion from the animations, and the Pawn BP Class doesn’t do that. I’ve tried adding the FloatPawnMovement component and that did nothing.

I can sort of fake the root motion with timelines, but that causes problems with interrupting the forward motion when it goes into non-walking animations.

I’ve tried the Third Person template and the ragdolling works properly there, so this doesn’t seem to be an engine bug.

Are there any ‘gotchas’ that I might be missing?