Release Notes for 464

Notes for Release 464

53 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

12 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.

Keep in mind that for almost all use cases where you used Velocity before you really want AssemblyLinearVelocity.

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

15 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

https://developer.roblox.com/en-us/api-reference/class/BasePart

9 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:

13 Likes

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

5 Likes