Release Notes for 464

Notes for Release 464

52 Likes

Client Difference Log

API Changes

Added Class DataStoreIncrementOptions : Instance [NotReplicated]
	Added Function Dictionary DataStoreIncrementOptions:GetMetadata()
	Added Function void DataStoreIncrementOptions:SetMetadata(Dictionary attributes)

Added Class GetDataStoreOptions : Instance [NotReplicated]
	Added Property bool GetDataStoreOptions.AllScopes
	Added Function void GetDataStoreOptions:SetExperimentalFeatures(Dictionary experimentalFeatures)

Added Property bool NetworkSettings.RandomizeJoinInstanceOrder
Added Property float ParticleEmitter.TimeScale
Added Property bool PhysicsSettings.AreTimestepsShown {RobloxScriptSecurity}
Added Property int ReflectionMetadataItem.PropertyOrder
Added Property string Studio.DisplayLanguage {RobloxScriptSecurity}
Added Property Enum<PhysicsSteppingMethod> Workspace.PhysicsSteppingMethod [NotScriptable]

Added Function Vector3 BasePart:GetVelocityAtPosition(Vector3 position)

Added Event HeightmapImporterService.ColormapHasUnknownPixels() {RobloxScriptSecurity}

Added Enum PhysicsSteppingMethod
	Added EnumItem PhysicsSteppingMethod.Default : 0
	Added EnumItem PhysicsSteppingMethod.Fixed : 1
	Added EnumItem PhysicsSteppingMethod.Adaptive : 2

Added Tag [Deprecated] to Property Studio.Language

Added Tags [Hidden] [Deprecated] to Property BasePart.RotVelocity
Added Tags [Hidden] [Deprecated] to Property BasePart.Velocity

Changed the parameters of Event HeightmapImporterService.ProgressUpdate 
	from: (float progressRatio)
	  to: (float progressRatio, string operation)

Removed Function StudioService:DEPRECATED_ShowPlaceVersionHistoryDialog

Removed Tag [NotCreatable] from Class DataStoreSetOptions

(Click here for a syntax highlighted version!)

30 Likes

I do have a question about how this works though, will it keep track of what velocity a part had at a certain position? Can I do part:GetVelocityAtPosition(part.Position) to get the current one I am assuming? It’s not documented at all.

I will miss you part.Velocity

13 Likes

Yes, that’s exactly how you could replicate the old Velocity. It’s a bit awkward for it to take the argument in world space, but the consistency with ApplyImpulse and the other new functions which make much more sense taking a world space position is very beneficial.

However, that’s probably not what you want to do. What you should be doing, is just using the new AssemblyLinearVelocity property in the same places that you used to be using the Velocity property. Yes, AssemblyLinearVelocity has slightly different behavior, however, that behavior is what you probably wanted the whole time when you were using Velocity.

Specifically, AssemblyLinearVelocity has better behavior because it continues to work predictably even with a rotating object, while Velocity will wobble back and forth thanks to the rotation adding and subtracting from the effective velocity of the center of the object (objects tend to rotate around their center of mass, which is what AssemblyLinearVelocity is measured relative to, so rotation doesn’t affect it).

GetVelocityAtPosition is only for if you want to do something very niche like throw particles that you’re simulating yourself off of a potentially rotating object.

19 Likes

Can features be documented before they are released? This should be a part of QA. :GetVelocityAtPosition() does not appear at all on the devhub page for BasePart

10 Likes

@gillern
Usually, I think this is the case, but, it looks like since this was added to the engine this update it didn’t have enough time to get documentation.

Also, I am curious. RotVelocity was deprecated, but, there is no such thing as part:GetAngularVelocityAtPosition(). Is there going to be a function like this, or, am I misinterpreting its deprecation?

Overall though, being really involved in Roblox physics and such already, I’m really happy about this change! :smile:

I’ve already created some really really cool stuff with the new physics feature using RSMM, like fancier hover cars, and orbiting planets. Overall, this is really really cool.

Is AssemblyLinearVelocity enabled now? If not, I’m a little confused how Velocity got deprecated so fast.

2 Likes

Here, I’ll write the function for you right now:

function GetAngularVelocityAtPosition(part, position)
    return part.AssemblyAngularVelocity
end

The angular velocity of a body is position invariant :stuck_out_tongue:

14 Likes

:man_facepalming: Thanks, I’m really smart :smile:

7 Likes

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.