Im making a game where the players body needs to have complete 360 degree rotation in all directions, but due to some of roblox's default code the players character has a default "push" to stay standing up, and if forced over it does that ragdolling thing where you cant control your player for a few seconds.
game:GetService("RunService").RenderStepped:connect(function()
uis.MouseBehavior = Enum.MouseBehavior.LockCenter;
if character then
local root = character.HumanoidRootPart
if root then
root.CFrame = CFrame.new(root.CFrame.p,root.CFrame.p+Vector3.new(cam.CFrame.lookVector.X,cam.CFrame.lookVector.Y,cam.CFrame.lookVector.Z))
end
end
end
This is the code I have that makes the player character have the same rotation as the camera, and it works well but when i try and look up or down the players character has that default push back down so i cant look up or down.

3 comments
I dont quite understand, can you elaborate or make a video/gif to show what is happening further?
Use BodyGyro and set the BodyGyro's CFrame instead of the part's CFrame. Parent it to the part you want to affect. https://developer.roblox.com/en-us/api-reference/class/BodyGyro
Exert a greater force polar to where the player stands up, this will prevent them standing up.