this is my code if you need it
game.Players.PlayerAdded:Connect(function(player)
player.CharacterAppearanceLoaded:Connect(function(char)
local h = game:GetService("ServerStorage"):FindFirstChild("KatanaModel"):Clone()
if not char:IsA("Model") then return end
local rHand = char:FindFirstChild("RightHand")
h:SetPrimaryPartCFrame(rHand.CFrame * CFrame.Angles(math.rad(-90), math.rad(0), math.rad(0)))
local weld = Instance.new("Weld")
weld.Part0 = rHand
weld.Part1 = char
weld.Name "HandleWeld"
weld.Parent = rHand
h.Parent = char
end)
end)

1 comment
char is the player's Character, a Model, Part1 of a Weld needs to be a Part Instance