Attach to Component (socket) causes player to move

Hello,

I am making a VR project using the Vive and Motion Controllers.

I made some blueprint functionality to spawn and attach a “sword” to the player’s Right Hand at a socket. However, when the sword is spawned in and attached, it sometimes causes the player to bounce into the air or sideways. If I move my hands into a certain pose, I can sometimes make myself indefinitely float higher into the air.

Also, I created blueprint functions to allow my character to walk based on the forward vector of my Left Hand. I noticed that if I spawned in the sword during movement, my movement direction will suddenly change, even though the Forward Vector of the Left Hand being logged does not appear to be affected.

I read through the links below and tried out their solutions, such as changing collision types of the Player, Motion Controllers, and Sword to different combinations of No Collision, Ragdoll, Query Only Collision, and I’ve tried setting Weld Simulated Bodies to true, but none of these seem to help the situation at all. I also tested moving the socket location to way off of the hand so that there is no possibility of collision with the hand or the player, but I still get the same issue.

I have also tried testing the Location/Rotation/Scale Rules for the AttachToComponent Node and Collision Handling Override of the SpawnActor Node with all of the options, but that also does not help.

Links to related threads:

[Link 1][1]

[Link 2][2]

Any help would be greatly appreciated!

Is this sword mesh have any collisions?

Hi redbox, I have tested turning off Collision Responses on the sword actor by changing collision to Ignore or Overlap all types.
(The static mesh does have a collision mesh, but all collision responses are disabled, so it’s basically like it doesn’t have a collision mesh).

I verified that the sword is not sending back any Hit or Overlap events by using Print String to Screen/Output Log. So there doesn’t appear to be any actual Collision, but this weird issue keeps happening regardless.

I’m such a dummy! I’m pretty sure I found the source of the problem. I started my project from a VR template and forgot about some of the blueprint functionality that came with it… one of them includes turning on collision of the hands under gripping conditions. The hands were probably colliding with each other and/or the player’s body. I don’t seem to have the problem anymore after disconnecting the node below.