Trying to make the tool weld to the torso but it just unequips and dosent do anything

  1. What do you want to achieve?
    Want to attach the clone to the torso of the player and then delete when equipped

  2. What is the issue?
    dosent clone, nor makes a new instance

  3. What solutions have you tried so far?
    changing the local script to script

local tool = script.Parent
local handle = tool.Handle
local torso = script.Parent.Parent:WaitForChild("Torso", 1)

tool.Unequipped:Connect(function(weld)
	local attachment = Instance.new("Attachment", torso)
	local weld = Instance.new("WeldConstraint", torso)
	local clone = handle:Clone()
	weld.Part0 = torso
	weld.Part1 = handle
	clone.Position = Vector3.new(attachment.Position)
end)

local tool = script.Parent
local handle = tool.Handle

tool.Equipped:Connect(function()
	local character = tool.Parent
	local handleClone = character:FindFirstChild("Handle")
	if handleClone then
		handleClone:Destroy()
	end
end)

tool.Unequipped:Connect(function()
	local backpack = tool.Parent
	local player = backpack.Parent
	local character = player.Character
	local torso = character:WaitForChild("LowerTorso")
	local handleClone = handle:Clone()
	local weld = Instance.new("Weld")
	weld.Part0 = torso
	weld.Part1 = handleClone
	weld.Parent = handleClone
	handleClone.Parent = character
end)

Server script inside the tool. To explain your issue, you forgot to parent the cloned handle.

oh, im so stupid. but thank you good sir!