VectorToObjectSpace not working correctly

tryna move a char with alignPosition and so im setting the position to this

AlignPos.Position += cam.CFrame:VectorToObjectSpace(char.Humanoid.MoveDirection)

but instead of being relative to the camera it just stays in world space??

AlignPositions work with world space, so there should be no need to convert the vector.
The move direction of the humanoid is also already dependent on the camera direction, so you really don’t need to do anything special here.

This should work just fine.

AlignPos.Position += char.Humanoid.MoveDirection