Moving Char in World Model

pretty much it, they added WorldModels in viewport and I have no clue how to use it… there is no tutorial anywhere or nothing really to see how to script it here.
the closest I got is below and that still doesn’t play the animation, no errors in console just doesn’t work.

I want to set up a shop that displays a preview before purchase but need a moving player model to do this. how can I edit this?

function ang(x,y,z) return CFrame.Angles(math.rad(x),math.rad(y),math.rad(z)) end
local P = game:GetService('Players')
local p = P.LocalPlayer
local port = script.Parent.Parent:WaitForChild('Port')
local cam = Instance.new('Camera',script)
local anim = script:WaitForChild('Animation1')
port.CurrentCamera = cam
if not p.Character then p.CharacterAdded:Wait() end
p.Character:WaitForChild('HumanoidRootPart')
wait(1)
local c = Instance.new('Model')
for _,v in pairs(p.Character:GetChildren()) do
	if not v:IsA('BaseScript') then
		v:Clone().Parent = c
	end
end
c.Parent = port:WaitForChild('World')
c.HumanoidRootPart.Archivable = true
cam.CFrame = c.HumanoidRootPart.CFrame*ang(-10,180,0)*CFrame.new(0,0,6)
local idle = c.Humanoid:LoadAnimation(anim)
idle.Looped = true
idle:Play()
```lua

Having same problem I can move player’s char in world model when player moves but no animation ):