I've been trying to make a script that puts a part at the edge of the arms of the character, and have it pivot on that same point. No matter how I script it, the join always end up anywhere but where I desire it. Image of what I mean by going in the wrong places.
game.ReplicatedStorage.HandFE.OnServerEvent:Connect(function(plr, char)
local bruh = Instance.new('Part')
local hurb = Instance.new('Part')
local armDes = char['Right Arm']
local armDis = char['Left Arm']
bruh.Parent = char
hurb.Parent = char
bruh.CanCollide = false
hurb.CanCollide = false
bruh.Massless = true
hurb.Massless = true
bruh.Size = Vector3.new(0.5, 0.5, 0.1)
hurb.Size = Vector3.new(0.5, 0.5, 0.1)
bruh.Transparency = 1
hurb.Transparency = 1
bruh.Name = 'RightGrip'
hurb.Name = 'LeftGrip'
bruh.Anchored = true
hurb.Anchored = true
armDes.Anchored = true
armDis.Anchored = true
bruh.CFrame = armDes.CFrame
hurb.CFrame = armDis.CFrame
local weld = Instance.new('Motor6D')
local wield = Instance.new('Motor6D')
weld.Part0 = armDes
weld.Part1 = bruh
weld.C0 = armDes.CFrame * CFrame.new(0, -1, 0)
weld.C1 = bruh.CFrame
weld.Parent = armDes
wield.Part0 = armDis
wield.Part1 = hurb
wield.C0 = armDis.CFrame * CFrame.new(0, -1, 0)
wield.C1 = hurb.CFrame
wield.Parent = armDis
bruh.Anchored = false
hurb.Anchored = false
armDes.Anchored = false
armDis.Anchored = false
end)

2 comments
You have amazing variable names.
Thats true