Next week, we have a big physics update to the Part API, adding new properties and functions.
This new API will appear in next week’s release (10/14), but will not be usable until later when all clients have the update. (stay tuned for an announcement post in the next month or so!)
One of the new properties is BodyAngularVelocity
.
At next week’s release, this property may cause disruptions to your game if you have a BodyAngularVelocity
instance that you are accessing via index in scripts. For example:
workspace.Part.BodyAngularVelocity
Please note the BodyAngularVelocity
instance is a deprecated object, replaced by the AngularVelocity
Constraint.
The solutions are as follows:
- Rename your
BodyAngularVelocity
instance to something else. - Access your
BodyAngularVelocity
instance viaFindFirstChild
or similar function Replace yourBodyAngularVelocity
with anAngularVelocity
Constraint.
After considering your feedback we have decided to delay this change for now. You do not need to edit your games, and we are going to think about alternative names.
Otherwise, I’d like to clear up some confusion on BodyMovers vs Constraints:
Not all the BodyMovers are deprecated, nor do they all have total backwards compatibility with a Constraint counter-part. The only missing behaviors I’m aware of are:
- BodyVelocity → There is no LinearVelocity Constraint.
- BodyPosition → There is no way to limit to specific axes in the Constraint alternative, AlignPosition.
Otherwise, the AngularVelocity Constraint should have total backwards compatibility with the BodyAngularVelocity mover, plus more features. (The BodyAngularVelocity Mover does use a vector for MaxTorque rather than a scalar, though I’m not clear on what advantage that provides. It won’t actually let you prevent spinning on a particular axis.) There is also the AlignOrientation Constraint, and Torque Constraint for other rotational behavior. I mentioned that it was deprecated, since there is a compatible replacement, but this wasn’t reflected in the documentation, so we will try to get that all updated.
I’ve marked @ContextLost’s reply as the solution to elevated it up here to provide more context: