Can't get AlignPosition to behave like BodyPosition

I’ve never really used constraints, since when I tried converting things that use BodyMovers over to them, they did not work the same way and when I tried to edit them, it became pretty apparent that the constraints aren’t as flexible as BodyMovers. That being said, BodyMovers are deprecated, and I have no idea if/when ROBLOX will totally stop supporting them, so I am trying to make the conversion slowly.

Anyway, for AlignPosition, it won’t let me use it the same way BodyPosition would. With BodyPosition, I could set the force to a specific axis, and make the other axis points be allowed to move around, like so.

With AlignPosition, it seems like I cannot set the force of the constraint to only one axis; it requires me to apply it to all axis points. When I try, I get [this]( more planes - Roblox Studio (gyazo.com)), or does nothing like this if I use the TwoAttachment mode.

I’m not sure if I’m doing something wrong, or AlignPosition is just not good for what I want to do. I can still use BodyPosition (and probably will), but with how ROBLOX tends to pull the rug out from under us sometimes, I am afraid that eventually they will 100% stop supporting it and any aspects in my game that use it will be pretty much broken.

1 Like

Unless someone can show/tell me otherwise, I think I will just continue to use BodyPosition for this.

1 Like

I recommend you use ‘VectorForce’ instead ‘AlignPosition’ to substitute ‘bodyPosition’.

Yep, that works. Not sure why the Developer Hub page for BodyPosition says to use AlignPosition instead of VectorForce…

EDIT: Doesn’t work. Just makes the part go off into oblivion.

Vector force is to fling the player not put them in a position…

Hi John,
I’m Nick one of the physics developers at Roblox. I’d like to understand a little bit about what you’re trying to accomplish with the AlignPosition constraint? Why do you want to limit the force differently along the 3 axes? I’m trying to see if there is combination of constraints you need or if we need to add something new to the AlignPosition constraint.

hey so i have had this problem with bodymovers being able to apply forces to specific axis essentially allowing u to lock a moving object to specific axis anyway im gonna make a wild guess and assume this is for locking the axis of movment on a boat to the x and z axis AND FORTUNATLY there is a solution.

a nice little constraint called the “plane constraint”:

unfortunatly there is no official documentation for this constraint but heres a little taste:

robloxapp-20220722-2337293.wmv (1013.3 KB)

note this constraint is rigid. u can see in the above video how when u tilt the plane constraint the part constrained to the plane slides down it so this will best be used with allign position

if any of this doesnt make sense feel free to ask questions

1 Like

Hello,

BodyPosition allowed us to lock movement on one or more axes, but allowed us to continue having movement on the unlocked ones. With AlignPosition, I cannot manipulate it so that it locks the positioning of one or more axes, but allows movement on others. This means I can’t use it for things like boats, where I want to allow free movement on the X axis, but don’t want to allow movement on the Y axis.

However, @S0MBRX has the solution, which is that PlaneConstraint is the true replacement for BodyPosition. In the developer article for BodyPosition, it says that AlignPosition is the replacement for BodyPosition, when it should also include PlaneConstraint.

1 Like