Keeping the player upright at all times/while in the physics state

  1. What do you want to achieve? Trying to keep the player upright at all times without hindering any other form of movement

  2. What is the issue? When I use AlignOrientation to keep the player upright, it won’t work (while the humanoidstatetype is set to physics)

  3. What solutions have you tried so far? Setting the orientation (hinders movement), AlignOrientation

Disabling the physics humanoidstatetype is not something I’m going to do as it’s essential

turns out the solution was as simple as this:

local hrp = script.Parent:WaitForChild("HumanoidRootPart")
local attachment = Instance.new("Attachment")
attachment.Axis = Vector3.new(0,1,0)
attachment.Parent = hrp
local orientation = Instance.new("AlignOrientation")
orientation.Mode = "OneAttachment"
orientation.Attachment0 = attachment
orientation.AlignType = "PrimaryAxisParallel"
orientation.PrimaryAxis = Vector3.new(0,1,0)
orientation.Parent = hrp

AlignOrientation won’t hinder movement if set up correctly!

Create a new attachment in HumanoidRootPart and set its PrimaryAxis to [0, 1, 0].
Create an AlignOrientation, set its mode to OneAttachment, AlignType to PrimaryAxisParallel, PrimaryAxis to [0, 1, 0], Orientation to [0, 0, 90], and Attachment0 as the attachment you created.

Thanks a ton, this worked flawlessly. Knew it had to be an AlignOrientation but forgot to parent it to the HRP in previous tries.