[!] Fixing Tool Alignment, Proper CFrame Positioning

i honestly have no clue whats going on…

the issue involves a cloned tool in Roblox appearing misaligned (specifically below the player’s hand) after equipping and playing animations.

Welding:

function ViewModelManager:WeldTool(realTool, cloneTool)
	local weld = Instance.new("Weld")
	weld.Part0 = cloneTool
	weld.Part1 = realTool:WaitForChild("Handle")
	weld.C0 = CFrame.new()
	weld.C1 = CFrame.new()
	weld.Parent = cloneTool
end

Cloning and Playing anims:

Tool.Equipped:Connect(function()
	
	local Player = game.Players.LocalPlayer
	local Character = Player.Character or Player.CharacterAdded:Wait()

	local ViewModel, Gunmodel = ViewModelManager:CreateViewModel("ViewModel", "Cart1")
	

	local animations = AnimationManager:LoadAnimations(ViewModel, { "Cartao" })
	animations.Cartao:Play()
	
	ViewModelManager:WeldTool(Tool, Gunmodel)
	ViewModelManager:BindViewModel(ViewModel, Gunmodel)
	ViewModelManager:DisableRightGrip(Character)
end)

A video of whats going on.

Initial Position:

Animation:

Disable Default Tool Grip (If Not Already Done)

Verify Animation Alignment
If the tool aligns correctly initially but misaligns after playing an animation, the issue might be with the animations

Adjust Weld C0 and C1 Properties
The C0 and C1 properties of the weld determine the offset and rotation from the weld’s Part0 to Part1. Since you’re currently setting both to CFrame.new(), which means no offset or rotation, this might be why the cloned tool appears misaligned.

Check Weld Attachments

Thanks will try when home, but what do you mean by checking weld attachments?

tried this and did not work

function ViewModelManager:WeldTool(realTool, cloneTool)
	local weld = Instance.new("Weld")
	weld.Part0 = cloneTool
	weld.Part1 = realTool:WaitForChild("Handle")
	
	-- Example adjustments
	local offsetPosition = Vector3.new(0, 1, 0)  
	local offsetRotation = CFrame.Angles(0, math.rad(90), 0)  
	weld.C0 = CFrame.new(offsetPosition) * offsetRotation
	weld.C1 = CFrame.new(0, 0, 0)  

	weld.Parent = cloneTool
end

Guys sorry for bumping but i really need a solution for this as fast as possible, I’d appreciate anyones help :slight_smile: