Welding a part to player causes it to interfere with movement

Helloooo!

So basically, in my swinging game, there is a rope that is then attached to the player. However, first, it was attached to the HumanoidRootPart, then I wanted it to be attached to the RightHand, which I had some help on from a person. It used a part in ReplicatedStorage that is then welded to their hand, and the rope is then attached to that fakeHand.

The problem is, is that the fakeHand seems to be interfering with the players’ movement. A video of it interfering:

You can see that the player is glitching and even in mid air, it turns to the side a bit which messes up their WASD keys.

Can anybody help?

Here is my current code:

local fakeHand = game:GetService("ReplicatedStorage"):WaitForChild("fakeHand")

function MakeFakeHand()
	local newHand = fakeHand:Clone()
	newHand.Parent = player.Character
	newHand.CFrame = player.Character:WaitForChild("RightHand").CFrame

	local weld = Instance.new("WeldConstraint", newHand)
	weld.Part0 = newHand
	weld.Part1 = player.Character:WaitForChild("RightHand")
end

MakeFakeHand()
Extra Details

The fakeHand is a 1 by 1 stud in ReplicatedStorage.

This is a local script within StarterGUI.

Is the fakeHand set to massless?

1 Like

No, I will try that though and let you know.

edit: It still does not work.

is cancollide on?

Nope. CanTouch, CanQuery (for good measure) and CanCollide are off.

Does anyone have the answer to this? I’m encountering the same problem.

It could probably be because one of the parts that are connected to the weld are anchored. The simple fix should be to unanchor all of the parts used in the process.

Sorry about the bump, but it doesn’t look like anyone has found a solution to the problem yet.
Giving the parts CustomPhysicalProperties and setting their density to 0 (clamped to 0.0001) should fix it.

4 Likes

Thank you wow this is a huge help