So I made a GUI when you press it the GUI would put a model on the player's character. But every time I would click the button the model would spawn on the player but then the WHOLE model would just fall right through the base plate, I even tried making the model collide able but the model would spawn and just break apart even though there is a weld script inside of it.

Here is my script, I have no clue what to do.

button = script.Parent.TextButton
local vc = game.ReplicatedStorage["Rig BP"]
local plr = script.Parent.Parent.Parent
local char = plr.character or plr.CharacterAdded:Wait()

button.MouseButton1Down:Connect(function()

        local Clonedvc = vc:Clone()
        Clonedvc.Parent = char

        Clonedvc:SetPrimaryPartCFrame(char:WaitForChild("UpperTorso").CFrame)

        Clonedvc:SetPrimaryPartCFrame(Clonedvc:GetPrimaryPartCFrame() * CFrame.new(0,-.84,.02) * CFrame.Angles(6.28,3.14,0))
        local Weld = Instance.new("WeldConstraint")
        Weld.Part0 = Clonedvc.Main
        Weld.Part1 = char:WaitForChild("UpperTorso")
        Weld.Parent = char:WaitForChild("UpperTorso")
    end)