VR Pawn collision?

I’m making a vr pawn that uses teleport ability with the right touch controller, and regular locomotion with the left stick.

the teleport is all figured out, but I can’t make collisions work properly when using the left controller locomotion.

I’m walking forward using a “AddActorWorldOffset” node (with sweep turned on) for the pawn’s scene root component, and getting the forward vector of the scene root, but that generates no collision, so I added a capsule component and set collisions to BlockAllDynamic.

If my capsule isn’t the root it doesn’t make any difference, so I have to switch the capsule as the root so the collisions work.

problem is, now I can’t offset my capsule’s position since it’s the root, and in VR it generates collisions with the floor in a way that moving forward looks like stuttering. If I disable the floor’s collision it works properly, but then what’s the point.

here’s a simplified version of the code: