How to weld same position every time

blueSty.CFrame = RightHand.CFrame * CFrame.new(0,1,0)

I have problem when I need to weld the part to hand but sometime when player is jumping it not weld to the position that I want.

thank for helping!

You could use a loop to keep changing the CFrame, I’m not sure how good that would be latency wise though. Personally, I’d recommend actually welding the part to the RightHand.

local Weld = Instance.new("Weld",blueSty)
Weld.Part0 = blueSty 
Weld.Part1 = RightHand
Weld.C0 = CFrame.new(0, 0, 0) + Vector3.new(0,RightHand.Position.Y/2,0)

sometime it spawn too far how do I fix it

Experiment with the offset and position vars a bit.

Instead of using “Weld”, use “WeldConstraint” instead. You won’t need to update the CFrame manually as it will do it automatically.

blueSty.CFrame = RightHand.CFrame + RightHand.CFrame.LookVector
local Weld = Instance.new("WeldConstraint")
Weld.Part0 = blueSty
Weld.Part1 = RightHand
Weld.Parent = blueSty

Hope this helps! (Experiment with adding and subtracting LookVector, UpVector, and RightVector if +LookVector doesn’t work.)