How can i do this?

How can I lock the player in place. Like so he doesn’t move AT ALL whenever I want him to. And I can unlock him whenever I want him to. And I wanted to know if there is a better way then just to make walk speed 0 and jump power = 0.

Anchor the HumanoidRootPart

Character limit

i mean i have done that. but sometimes the player bugs

I assume by bugs you mean their limbs straighten out. That’s annoying.
I would anchor the entire model. I’m pretty sure that won’t do that.

Mabye try anchoring the entire character.

You can disable the controls with this script:

local plr = game.Players.LocalPlayer or game.Players.PlayerAdded:Wait()
local plrModule = plr:WaitForChild("PlayerScripts"):WaitForChild("PlayerModule")
local controlModule = require(plrModule:WaitForChild("ControlModule"))
controlModule:Disable()
-- if u want to enable it do: controlModule:Enable()

hmm ok ill try this. thank you

i would but if i did then the player cant play any animations

Your only option then would to set both the WalkSpeed and JumpHeight/Power to 0.