Issues with Motor6D not animating tool

This is probably very simple but I have looked at several threads and I have yet to find a solution that works

I have been trying to animate a torch while following this tutorial:

Everything works fine except when I try to run the animation the torch doesn’t move and is stuck in the center of the player torso

No parts are anchored and there are no problems with the Motor6D I am using

I have tried to use the arm as Part0 but the torch still doesn’t play the animation properly

It looks fine on the animation editor and it gives me no errors in terms of output

Here are the scripts I’m using in case it matters

-- local script
local WeaponTool = script.Parent
local LocalPlayer = game:GetService("Players").LocalPlayer
local char = LocalPlayer.Character

if not char or not char.Parent then
	char = LocalPlayer.CharacterAdded:wait()
end

local TorchIdle = script.Parent.TorchIdle
local TorchShine = script.Parent.TorchShine

script.Parent.Equipped:Connect(function()
	
	local Animator = script.Parent.Parent:FindFirstChild("Humanoid"):FindFirstChild("Animator")
	local TorchIdleTrack = Animator:LoadAnimation(TorchIdle)
	TorchIdleTrack.Looped = true
	TorchIdleTrack.Priority = 1
	
	game.ReplicatedStorage.ConnectM6D:FireServer(WeaponTool.BodyAttach)
	char.Torso.ToolGrip.Part0 = char.Torso
	char.Torso.ToolGrip.Part1 = WeaponTool.BodyAttach
	
	TorchIdleTrack:Play()
	
end)

WeaponTool.Unequipped:Connect(function()
	game.ReplicatedStorage.DisconnectM6D:FireServer()
end)
--server script
game.ReplicatedStorage.ConnectM6D.OnServerEvent:Connect(function(plr,location)
	local char = plr.Character
	char.Torso.ToolGrip.Part0 = char.Torso
	char.Torso.ToolGrip.Part1 = location
end)

game.ReplicatedStorage.DisconnectM6D.OnServerEvent:Connect(function(plr)
	plr.Character.Torso.ToolGrip.Part1 = nil
	
end)

I have reuploaded the animation to roblox and that was not the issue, I have remade it in a new place incase I had conflicting scripts or something, it was not the case.

Explorer pictures for reference ig
image

image

image

Welds and Motor6Ds need a Part0 and Part1.
They also need a C0 and C1 for offset.
If you don’t have the last 2 then the two Parts will be welded at their centers.

I’ve also seen warnings about loading the animation just when it’s being played. You should probably load the animation at the beginning of the script, not inside the Equipped function