Release Notes for 454

Notes for Release 454

30 Likes

Client Difference Log

API Changes

Added Class ILegacyStudioBridge : Instance [NotCreatable] [Service]

Added Class ProximityPrompt : Instance
	Added Property string ProximityPrompt.ActionText
	Added Property bool ProximityPrompt.ClickablePrompt
	Added Property bool ProximityPrompt.Enabled
	Added Property Enum<ProximityPromptExclusivity> ProximityPrompt.Exclusivity
	Added Property Enum<KeyCode> ProximityPrompt.GamepadKeyCode
	Added Property float ProximityPrompt.HoldDuration
	Added Property Enum<KeyCode> ProximityPrompt.KeyboardKeyCode
	Added Property float ProximityPrompt.MaxActivationDistance
	Added Property string ProximityPrompt.ObjectText
	Added Property bool ProximityPrompt.RequiresLineOfSight
	Added Property Enum<ProximityPromptStyle> ProximityPrompt.Style
	Added Property Vector2 ProximityPrompt.UIOffset
	Added Function void ProximityPrompt:InputHoldBegin()
	Added Function void ProximityPrompt:InputHoldEnd()
	Added Event ProximityPrompt.PromptButtonHoldBegan()
	Added Event ProximityPrompt.PromptButtonHoldEnded()
	Added Event ProximityPrompt.PromptHidden()
	Added Event ProximityPrompt.PromptShown(Enum<ProximityPromptInputType> inputType)
	Added Event ProximityPrompt.TriggerEnded(Instance playerWhoTriggered)
	Added Event ProximityPrompt.Triggered(Instance playerWhoTriggered)

Added Class ProximityPromptService : Instance [Service] [NotBrowsable]
	Added Property bool ProximityPromptService.Enabled
	Added Property int ProximityPromptService.MaxPromptsVisible
	Added Event ProximityPromptService.PromptButtonHoldBegan(Instance prompt)
	Added Event ProximityPromptService.PromptButtonHoldEnded(Instance prompt)
	Added Event ProximityPromptService.PromptHidden(Instance prompt)
	Added Event ProximityPromptService.PromptShown(Instance prompt, Enum<ProximityPromptInputType> inputType)
	Added Event ProximityPromptService.PromptTriggerEnded(Instance prompt, Instance playerWhoTriggered)
	Added Event ProximityPromptService.PromptTriggered(Instance prompt, Instance playerWhoTriggered)

Added Class TracerService : Instance [NotCreatable] [Service] [NotReplicated]
	Added Function void TracerService:FinishSpan(string spanId) {RobloxScriptSecurity}
	Added Function string TracerService:StartSpan(string name, string parentId) {RobloxScriptSecurity}

Added Class LegacyStudioBridge : ILegacyStudioBridge [NotCreatable] [Service] [NotReplicated]
Added Class OutfitPages : Pages [NotCreatable] [NotReplicated]

Added Property Vector3 MeshPart.MeshSize  [ReadOnly] [NotReplicated]
Added Property bool PhysicsSettings.IsInterpolationThrottleShown
Added Property Color3 Studio.Luau Keyword Color [<📁> LoadOnly] [NotReplicated]
Added Property Color3 Studio.Ruler Color [<📁> LoadOnly] [NotReplicated]

Added Function bool AvatarEditorService:GetFavorite(int64 itemId, Enum<AvatarItemType> itemType) [Yields]
Added Function Instance AvatarEditorService:GetInventory(Array assetTypes) [Yields]
Added Function Instance AvatarEditorService:GetOutfits() [Yields]
Added Function void AvatarEditorService:PerformCreateOutfit(string name) {RobloxScriptSecurity}
Added Function void AvatarEditorService:PerformSaveAvatar() {RobloxScriptSecurity}
Added Function void AvatarEditorService:PerformSaveAvatarNew(Array addedAssets, Array removedAssets) {RobloxScriptSecurity}
Added Function void AvatarEditorService:PerformSetFavorite() {RobloxScriptSecurity}
Added Function void AvatarEditorService:PromptAllowInventoryReadAccess()
Added Function void AvatarEditorService:PromptCreateOutfit(Instance outfit, Enum<HumanoidRigType> rigType)
Added Function void AvatarEditorService:PromptSaveAvatar(Instance humanoidDescription, Enum<HumanoidRigType> rigType)
Added Function void AvatarEditorService:PromptSetFavorite(int64 itemId, Enum<AvatarItemType> itemType, bool shouldFavorite)
Added Function void AvatarEditorService:SetAllowInventoryReadAccess(bool inventoryReadAccessGranted) {RobloxScriptSecurity}
Added Function void AvatarEditorService:SignalCreateOutfitPermissionDenied() {RobloxScriptSecurity}
Added Function void AvatarEditorService:SignalSaveAvatarFailed() {RobloxScriptSecurity}
Added Function void AvatarEditorService:SignalSaveAvatarPermissionDenied() {RobloxScriptSecurity}
Added Function void AvatarEditorService:SignalSetFavoriteFailed() {RobloxScriptSecurity}
Added Function void AvatarEditorService:SignalSetFavoritePermissionDenied() {RobloxScriptSecurity}
Added Function Instance InsertService:CreateMeshPartAsync(Content meshId, Enum<CollisionFidelity> collisionFidelity, Enum<RenderFidelity> renderFidelity) {PluginSecurity} [Yields]
Added Function void MeshPart:ApplyMesh(Instance meshPart)
Added Function void UGCValidationService:SetMeshIdBlocking(Instance meshPart, string meshId) {RobloxScriptSecurity}
Added Function void UnvalidatedAssetService:AppendTempAssetId(int64 id, Vector3 lookAt, Vector3 camPos, string usage) {RobloxScriptSecurity}
Added Function bool UnvalidatedAssetService:UpgradeTempAssetId(int64 tempId, int64 assetId) {RobloxScriptSecurity}

Added Event AvatarEditorService.OpenAllowInventoryReadAccess() {RobloxScriptSecurity}
Added Event AvatarEditorService.OpenPromptCreateOufit(Instance humanoidDescription, Enum<HumanoidRigType> rigType) {RobloxScriptSecurity}
Added Event AvatarEditorService.OpenPromptSaveAvatar(Instance humanoidDescription, Enum<HumanoidRigType> rigType) {RobloxScriptSecurity}
Added Event AvatarEditorService.OpenPromptSetFavorite(int64 itemId, Enum<AvatarItemType> itemType, bool shouldFavorite) {RobloxScriptSecurity}
Added Event AvatarEditorService.PromptAllowInventoryReadAccessCompleted(Enum<AvatarPromptResult> result)
Added Event AvatarEditorService.PromptCreateOutfitCompleted(Enum<AvatarPromptResult> result)
Added Event AvatarEditorService.PromptSaveAvatarCompleted(Enum<AvatarPromptResult> result)
Added Event AvatarEditorService.PromptSetFavoriteCompleted(Enum<AvatarPromptResult> result)
Added Event ContentProvider.AssetFetchFailed(Content assetId)

Added Enum AssetTypeVerification
	Added EnumItem AssetTypeVerification.Default : 1
	Added EnumItem AssetTypeVerification.ClientOnly : 2
	Added EnumItem AssetTypeVerification.Always : 3

Added Enum AvatarPromptResult
	Added EnumItem AvatarPromptResult.Success : 1
	Added EnumItem AvatarPromptResult.PermissionDenied : 2
	Added EnumItem AvatarPromptResult.Failed : 3

Added Enum ProximityPromptExclusivity
	Added EnumItem ProximityPromptExclusivity.OnePerButton : 0
	Added EnumItem ProximityPromptExclusivity.OneGlobally : 1
	Added EnumItem ProximityPromptExclusivity.AlwaysShow : 2

Added Enum ProximityPromptInputType
	Added EnumItem ProximityPromptInputType.Keyboard : 0
	Added EnumItem ProximityPromptInputType.Gamepad : 1
	Added EnumItem ProximityPromptInputType.Touch : 2

Added Enum ProximityPromptStyle
	Added EnumItem ProximityPromptStyle.Default : 0
	Added EnumItem ProximityPromptStyle.Custom : 1

Added EnumItem StudioScriptEditorColorCategories.LuauKeyword : 14
Added EnumItem StudioScriptEditorColorCategories.Background : 17
Added EnumItem StudioScriptEditorColorCategories.SelectionText : 18
Added EnumItem StudioScriptEditorColorCategories.SelectionBackground : 19
Added EnumItem StudioScriptEditorColorCategories.FindSelectionBackground : 20
Added EnumItem StudioScriptEditorColorCategories.MatchingWordBackground : 21
Added EnumItem StudioScriptEditorColorCategories.Warning : 22
Added EnumItem StudioScriptEditorColorCategories.Error : 23
Added EnumItem StudioScriptEditorColorCategories.Whitespace : 24
Added EnumItem StudioScriptEditorColorCategories.ActiveLine : 25
Added EnumItem StudioScriptEditorColorCategories.DebuggerCurrentLine : 26
Added EnumItem StudioScriptEditorColorCategories.DebuggerErrorLine : 27
Added EnumItem StudioScriptEditorColorCategories.Ruler : 28
Added EnumItem StudioStyleGuideColor.ScriptLuauKeyword : 105

Added Tag [Deprecated] to Class AnimationController
	Added Tag [Deprecated] to Function AnimationController:GetPlayingAnimationTracks
	Added Tag [Deprecated] to Function AnimationController:LoadAnimation
	Added Tag [Deprecated] to Event AnimationController.AnimationPlayed

Added Tag [Deprecated] to Function Humanoid:GetPlayingAnimationTracks
Added Tag [Deprecated] to Function Humanoid:LoadAnimation
Added Tag [Deprecated] to Event Humanoid.AnimationPlayed
Added Tag [Deprecated] to Function StudioTheme:GetPath

Changed the memory category of Class Constraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class NoCollisionConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class WeldConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class AlignOrientation 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class AlignPosition 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class AngularVelocity 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class BallSocketConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class HingeConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class LineForce 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class RodConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class RopeConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class SlidingBallConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class SpringConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class Torque 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class VectorForce 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class VelocityMotor 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class CoreScript 
	from: "Instances"
	  to: "Script"

Changed the memory category of Class CylindricalConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class PrismaticConstraint 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class SpecialMesh 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class Status 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class WorldRoot 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class ScrollingFrame 
	from: "Instances"
	  to: "Gui"

Changed the memory category of Class TextBox 
	from: "Instances"
	  to: "Gui"

Changed the memory category of Class Workspace 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class WorldModel 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class FlagStand 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class Platform 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class Seat 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class SkateboardPlatform 
	from: "Instances"
	  to: "PhysicsParts"

Changed the memory category of Class SpawnLocation 
	from: "Instances"
	  to: "PhysicsParts"

Changed the parameters of Function Humanoid:ApplyDescription 
	from: (Instance humanoidDescription)
	  to: (Instance humanoidDescription, Enum<AssetTypeVerification> assetTypeVerification = "Default")

Changed the parameters of Function Players:CreateHumanoidModelFromDescription 
	from: (Instance description, Enum<HumanoidRigType> rigType)
	  to: (Instance description, Enum<HumanoidRigType> rigType, Enum<AssetTypeVerification> assetTypeVerification = "Default")

Changed the parameters of Function VirtualInputManager:SendKeyEvent 
	from: (bool isPressed, Enum<KeyCode> keyCode, bool isRepeatedKey, Instance pluginGui)
	  to: (bool isPressed, Enum<KeyCode> keyCode, bool isRepeatedKey, Instance layerCollector)

Changed the parameters of Function VirtualInputManager:SendMouseButtonEvent 
	from: (int x, int y, int mouseButton, bool isDown, Instance pluginGui, int repeatCount)
	  to: (int x, int y, int mouseButton, bool isDown, Instance layerCollector, int repeatCount)

Changed the parameters of Function VirtualInputManager:SendMouseMoveEvent 
	from: (float x, float y, Instance pluginGui)
	  to: (float x, float y, Instance layerCollector)

Changed the parameters of Function VirtualInputManager:SendMouseWheelEvent 
	from: (float x, float y, bool isForwardScroll, Instance pluginGui)
	  to: (float x, float y, bool isForwardScroll, Instance layerCollector)

Changed the parameters of Function VirtualInputManager:SendTextInputCharacterEvent 
	from: (string str, Instance pluginGui)
	  to: (string str, Instance layerCollector)

Changed the value of EnumItem StudioScriptEditorColorCategories.FunctionName from 16 to 15
Changed the value of EnumItem StudioScriptEditorColorCategories.TODO from 17 to 16
Changed the value of EnumItem StudioStyleGuideColor.ScriptKeyword from 52 to 51
Changed the value of EnumItem StudioStyleGuideColor.ScriptBuiltInFunction from 53 to 52
Changed the value of EnumItem StudioStyleGuideColor.ScriptWarning from 54 to 53
Changed the value of EnumItem StudioStyleGuideColor.ScriptError from 55 to 54
Changed the value of EnumItem StudioStyleGuideColor.ScriptWhitespace from 56 to 55
Changed the value of EnumItem StudioStyleGuideColor.ScriptRuler from 57 to 56
Changed the value of EnumItem StudioStyleGuideColor.DebuggerCurrentLine from 58 to 57
Changed the value of EnumItem StudioStyleGuideColor.DebuggerErrorLine from 59 to 58
Changed the value of EnumItem StudioStyleGuideColor.DiffFilePathText from 60 to 59
Changed the value of EnumItem StudioStyleGuideColor.DiffTextHunkInfo from 61 to 60
Changed the value of EnumItem StudioStyleGuideColor.DiffTextNoChange from 62 to 61
Changed the value of EnumItem StudioStyleGuideColor.DiffTextAddition from 63 to 62
Changed the value of EnumItem StudioStyleGuideColor.DiffTextDeletion from 64 to 63
Changed the value of EnumItem StudioStyleGuideColor.DiffTextSeparatorBackground from 65 to 64
Changed the value of EnumItem StudioStyleGuideColor.DiffTextNoChangeBackground from 66 to 65
Changed the value of EnumItem StudioStyleGuideColor.DiffTextAdditionBackground from 67 to 66
Changed the value of EnumItem StudioStyleGuideColor.DiffTextDeletionBackground from 68 to 67
Changed the value of EnumItem StudioStyleGuideColor.DiffLineNum from 69 to 68
Changed the value of EnumItem StudioStyleGuideColor.DiffLineNumSeparatorBackground from 70 to 69
Changed the value of EnumItem StudioStyleGuideColor.DiffLineNumNoChangeBackground from 71 to 70
Changed the value of EnumItem StudioStyleGuideColor.DiffLineNumAdditionBackground from 72 to 71
Changed the value of EnumItem StudioStyleGuideColor.DiffLineNumDeletionBackground from 73 to 72
Changed the value of EnumItem StudioStyleGuideColor.DiffFilePathBackground from 74 to 73
Changed the value of EnumItem StudioStyleGuideColor.DiffFilePathBorder from 75 to 74
Changed the value of EnumItem StudioStyleGuideColor.ChatIncomingBgColor from 76 to 75
Changed the value of EnumItem StudioStyleGuideColor.ChatIncomingTextColor from 77 to 76
Changed the value of EnumItem StudioStyleGuideColor.ChatOutgoingBgColor from 78 to 77
Changed the value of EnumItem StudioStyleGuideColor.ChatOutgoingTextColor from 79 to 78
Changed the value of EnumItem StudioStyleGuideColor.ChatModeratedMessageColor from 80 to 79
Changed the value of EnumItem StudioStyleGuideColor.Separator from 81 to 80
Changed the value of EnumItem StudioStyleGuideColor.ButtonBorder from 82 to 81
Changed the value of EnumItem StudioStyleGuideColor.ButtonText from 83 to 82
Changed the value of EnumItem StudioStyleGuideColor.InputFieldBorder from 84 to 83
Changed the value of EnumItem StudioStyleGuideColor.CheckedFieldBackground from 85 to 84
Changed the value of EnumItem StudioStyleGuideColor.CheckedFieldBorder from 86 to 85
Changed the value of EnumItem StudioStyleGuideColor.CheckedFieldIndicator from 87 to 86
Changed the value of EnumItem StudioStyleGuideColor.HeaderSection from 88 to 87
Changed the value of EnumItem StudioStyleGuideColor.Midlight from 89 to 88
Changed the value of EnumItem StudioStyleGuideColor.StatusBar from 90 to 89
Changed the value of EnumItem StudioStyleGuideColor.DialogButton from 91 to 90
Changed the value of EnumItem StudioStyleGuideColor.DialogButtonText from 92 to 91
Changed the value of EnumItem StudioStyleGuideColor.DialogButtonBorder from 93 to 92
Changed the value of EnumItem StudioStyleGuideColor.DialogMainButton from 94 to 93
Changed the value of EnumItem StudioStyleGuideColor.DialogMainButtonText from 95 to 94
Changed the value of EnumItem StudioStyleGuideColor.InfoBarWarningBackground from 96 to 95
Changed the value of EnumItem StudioStyleGuideColor.InfoBarWarningText from 97 to 96
Changed the value of EnumItem StudioStyleGuideColor.ScriptEditorCurrentLine from 98 to 97
Changed the value of EnumItem StudioStyleGuideColor.ScriptMethod from 99 to 98
Changed the value of EnumItem StudioStyleGuideColor.ScriptProperty from 100 to 99
Changed the value of EnumItem StudioStyleGuideColor.ScriptNil from 101 to 100
Changed the value of EnumItem StudioStyleGuideColor.ScriptBool from 102 to 101
Changed the value of EnumItem StudioStyleGuideColor.ScriptFunction from 103 to 102
Changed the value of EnumItem StudioStyleGuideColor.ScriptLocal from 104 to 103
Changed the value of EnumItem StudioStyleGuideColor.ScriptSelf from 105 to 104
Changed the value of EnumItem StudioStyleGuideColor.ScriptFunctionName from 108 to 106
Changed the value of EnumItem StudioStyleGuideColor.ScriptTodo from 109 to 107

Changed the value-type of Property Players.LocalPlayer 
	from: Instance
	  to: Class<Player>

Removed Property Studio.Maximum Table Depth
Removed Property Studio."export" Color
Removed Property Studio."type" Color
Removed Property Studio.Preprocessor Color

Removed Function DataModel:GetJobIntervalPeakFraction
Removed Function DataModel:GetJobTimePeakFraction
Removed Function DataModel:GetJobsExtendedStats
Removed Function UnvalidatedAssetService:AppendTempAsset
Removed Function UnvalidatedAssetService:RenameTempAsset

Removed EnumItem StudioScriptEditorColorCategories.Export
Removed EnumItem StudioScriptEditorColorCategories.Type
Removed EnumItem StudioStyleGuideColor.ScriptPreprocessor
Removed EnumItem StudioStyleGuideColor.ScriptExport
Removed EnumItem StudioStyleGuideColor.ScriptType

(Click here for a syntax highlighted version!)

12 Likes

Were these script editor beta features announced in the Luau recap? If it’s a different announcement, please reply with a link, and if there wasn’t any announcement for them, then I’ll check it out. Well obviously I will check it out!

1 Like

Hey @IAmPinleon! We’re updating the Script Editor Beta Feature and we’ll release a DevForum post next week to accompany the change :smiley:

8 Likes

chrome_5CjWSmymQu

Finally, this has been bugging me and an issue for some time now when typing and using Luau within my scripts in an upcoming project of mine, thank you for this.

May I ask what TracerService is and what’s the purpose of it in the Roblox Engine and development purpose in Roblox? It seems interesting and while noting documentation on what it does. :thinking:

chrome_Zj2NnxxfSM

Sweet that a Beta Feature for Script Editor functions/features have arrived in studio, and ProximityPrompt being added is a game-changer to developers to not use a long method of things, although, I would like to know what features are included for the Beta Feature if a post is out in #updates:announcements (Nice, there would be one above).

3 Likes

Added Property Vector3 MeshPart.MeshSize [ReadOnly] [NotReplicated]

Don’t know how this is getting calculated but I feel like I’m going to have a real fun time using this to ban oversized UGC accessories from my game with ease instead of resorting to weird tricks or creating giant lists to be manually maintained. My one pet peeve with UGC accessories.

Though actually now that I remember, not all UGC accessories use MeshParts, for some reason they’re handles with SpecialMesh instances and sometimes the sizes are not accurate. Whatever logic is going on here, I’d love and hope that something similar can be added for SpecialMeshes. Sounds like a potential feature request.

4 Likes

I heard it somewhere that all accessories were slowly being moved to MeshParts as Roblox prepared the deprecation of the old SpecialMesh class; although seeing as I’m unable to point to the source at this time, this is mere conjecture.

There’s certainly an argument to be had about the size of hats, and that a criteria for the limits of catalog UGC should be implemented. I’ve seen several game experiences being ruined by excessive hats.

2 Likes