Roblox cover
Roblox screenshot
PC Mac Android iOS XONE
Genre: Platform, Simulator, Adventure

Roblox

Release Notes for 335

Fixes

Note Status

Fix AdvancedObjects sometimes inserting objects under Workspace instead of the selected object.

Pending

Do not disable View toggle actions on breakpoint encounter

Pending

Make GuiObject.BorderSize respect UIScale scaling.

Live

Improvements

Note Status

Added RunService:IsEdit() for plugins. Reliably returns true if and only if the DataModel is an edit mode DataModel, and will not be running for testing.

Pending

UI Corner Widget final style

Live

Updated resize and rotate cursors for UI Editor

Live

Insert Object button correctly is hidden when object is being renamed in Explorer Tree

Live

New character scaling options and properties under the Humanoids:
Adjust new variables under Humanoid to verify that they modify the scale of the character.

  • (NumberValue 0-1) BodyTypeScale : Controls percentage from short, wide form (0.0) to taller, narrow form (1.0)
  • (NumberValue 0-1) BodyProportionScale: Controls percentage from wider scale (0.0) to narrow scale (1.0). This setting only takes effect when the BodyTypeScale is not 0.
Pending

Allow CollisionGroupContainsPart, CollisionGroupsAreCollidable, GetCollisionGroupId, GetCollisionGroupName, and GetCollisionGroups to be used from clients.

Live

Reduce latency of PlayerScripts script startup

Pending

LocalizaitonTable CSV import now validates UTF-8 encoding

Pending

Support collision group APIs in Team Create and allow SetPartCollisionGroup from client.

Live

Release Notes for 334

Improvements

Note Status

Emulator button is centered when UI Editor button is not visible

Pending

Hit Ctrl-J (Cmd-J on Mac) to clear the current selection.

Pending

In properties filter you can type a semi-colon separated list of search parameters: you will see items that match any single item in the list.

So searching on
foo;bar
will return matches for either foo or bar.

Pending

Right click on a script tab and select “Close Other Scripts” to close all open scripts except the selected script.

Pending

Studio keeps a history of your most recent Script locations. Use the back/forward keys on the “Navigation” panel of the Script ribbon (or associated hotkeys) to quickly jump between locations.

Pending

“Find” and “Find in Files” now keep a history of your most recent searches.

Pending

Updated resize and rotate cursors for UI Editor

Live

Studio start page now shows the full path of games on your computer

Live

Focus is automatically switched to the graphics window when starting Play Solo mode, so you don’t need to click it to start moving around.

Pending

MicroProfiler can be turn on/off from Settings in game for Android and iOS.
And with the ip and port provided by turning it on, the developer can gain access to micro profiler using a web browser like Chrome to see the frame data.

Pending

LocalizationTable CSV import will ignore columns with empty headers.
Also made Key,Source,Context, and Example columns all optional. At least one of Source or Key is still required.

Pending

Local Simulation on parts you don’t know that are constrained to Anchored bodies or Terrain will become blocked to prevent Interpolation from fighting the Simulation. (Should fix some issues with Jailbreak Trains, and Cube Controller worlds)

Live

Fixes

Note Status

Fixed the IK dragger not being able to move some mechanisms correctly when they contained multiple anchored parts

Pending

You can’t insert GuiObjects from UI Editor tab into un-parentable objects

Pending

Hitting Ctrl+1 to select while using UI Editor will always turn it off

Live

Fixed a Studio crash when inputting an invalid number range into a number range property.

Pending

When dragging objects parented to ScrollingFrame in UI Editor, position is now scaled appropriately

Live

Fixed a physics synchronization issue for FilterEnabled games.

Live

Fix Humanoid.AutoRotate in some cases. Made HumanoidRootPart 10x more likely to be assembly root.

Pending

A fix reducing the occurrence of the problem where fast driving vehicles jump when driving over seams between baseplates or blocks.

Pending

Release Notes for 333

Fixes

Note Status

Ctrl/Shift is now properly synced and will not cause text to print inside a Lua Widget text box

Pending

Dragging GuiObjects from UI Tab will always insert into first ScreenGui Instance

Live

Fixed a bug where sounds would always play from a connected VR headset’s headphones even if VR was turned off in the settings menu.

Pending

Avatar Context Menu no longer erroneously opens while testing in Studio

Live

Should fix simulation issues with custom NPCs (Humanoids) when throttling due to performance issues.

Live

Improved character’s spawn location for streaming enabled games with moving spawn point.

Live

Improvements

Note Status

add a new API "Variant Player:GetJoinData()
“Player:GetJoinData().SourcePlaceId” return sourcePlaceId
“Player:GetJoinData().Members” return members in the teleporting group

Live

This change removes the ability to insert “#” – the url anchor delimiter – into content id’s. This should not affect developers unless they are misusing this.

Live

Release Notes for 332

Fixes

Note Status

Disallow invalid breakpoint condition entry

Pending

Fix UILayouts created on the first frame sometimes making their elements invisible.

Pending

Fixed an issue where invalid strings in a LocalizationTable could cause errors in property setters and break game loading

Pending

Release Notes for 331

Improvements

Note Status

new UI Editor Icons

Live

Adjustments and bug fixes with new UI Editor toggle button

Live

UI Editor toggle is moved to new widget in corner of 3D view

Live

You can now search for games on the studio start page

Pending

You can now sort games on the studio start page

Pending

Pressing the tab or down arrow key while using the explorer widget filter will set the user focus to the first item in the explorer tree, allowing for smoother workflow.

Pending

Add ScaleType.Fit and ScaleType.Crop to ImageLabel/ImageButton.

Pending

Add function: number Vector2:Cross(Vector2 other).

Live

… lua:function:: TeleportService:TeleportPartyAsync(
int64 placeId,
array players,
Variant teleportData = nil,
ScreenGui customLoadingScreen = nil)

Teleport a group of players to a new server in the specified place.

If a player leaves the game after the call is invoked, they will be not be teleported but the teleport call will still succeed.
If any of the players is unable to join the game, e.g. due to access restrictions, the entire teleport call will fail and the error message will include relevant information.
Will not work from Studio.

:summary: Group Teleporting will allow creators to quickly and reliably transport a group of players between different locations (or levels) in a game and ensure they arrive at the same destination game server. :param int64 placeId: the target placeId. :param array<Player> players: the players in the teleport group. :param Variant TeleportData: custom data to pass with the player :param ScreenGui customLoadingScreen: the client will show this ui as loading screen :return string: the destination ServerId :error: This method will error if called from a client :error: This method will error if the target PlaceId doesn’t allow the number of players in the party

… lua:property:: Player.JoinData
:summary: Provides information about the player joined the game
:type: PlayerJoinData
:tag: readonly

… lua:userdata:: PlayerJoinData
:summary: Contains information about the game join

… lua:property:: PlayerJoinData.SourcePlaceId
:summary: The PlaceId from which the player teleported
:type: int64
:tag: readonly
:default: 0

… lua:function:: PlayerJoinData.GetPartyUserIds
:summary: An array of UserIds of other players who the player joined with
:return: array

Live

Add NumberSequence Trail.WidthScale property.

Live

Fixes

Note Status

GuiObjects should be truly centered when inserted from UI Tab butons

Live

Fixed a case where autocomplete would crash Studio

Pending

Handle hit detection returns the closest handle, not the first detected.

Pending

Fixed in-game chat localization again.

Live

Scrolling with touch devices on SurfaceGuis is much smoother and intuitive.

Pending

When using double nested ScrollingFrames, fix inputs being ignored when you try to scroll the outer frame by tapping on the inner frame.

Pending

Constraints are now visible through Glass.

Pending

Fixes incorrect face normals after scaling Mesh Parts.

see: https://devforum.roblox.com/t/resized-meshpart-normals-are-incorrect/84884/4

Live

Improved security and reduced client workload during join time.

Pending

Release Notes for 330

Fixes

Note Status

Updated place close behavior. Now we avoid forcible closing of Studio on place close if multiple Studios are running.

Pending

Fixed Server/Player launch on Mac

Pending

Fix a minor CollectionService bug where GetTags() returned the wrong value inside InstanceAddedSignal() when the tag was added via replication.

Pending

Fix UIScale not applying to ScaleType.Tiled.

Pending

Fixed bug where LineHandleAdornment would use the wrong near plane distance.

Live

[Method] bool UserInputService:IsGamepadButtonDown(Enum.UserInputType, Enum.KeyCode)

returns true if the gamepad has the specified button pressed down, otherwise it returns false.

UserInputType should be Enum.UserInputType.Gamepad1-8.
KeyCode should be one of the following:
Enum.KeyCode.ButtonX
Enum.KeyCode.ButtonY
Enum.KeyCode.ButtonA
Enum.KeyCode.ButtonB
Enum.KeyCode.ButtonR1
Enum.KeyCode.ButtonL1
Enum.KeyCode.ButtonR3
Enum.KeyCode.ButtonL3
Enum.KeyCode.ButtonStart
Enum.KeyCode.ButtonSelect
Enum.KeyCode.DPadLeft
Enum.KeyCode.DPadRight
Enum.KeyCode.DPadUp
Enum.KeyCode.DPadDown

Live

Improvements

Note Status

Dragging cursor will update when dragging GuiObjects from Ribbon Bar

Live

Close existing Studio instance when opening a new Studio instance from Captcha site

Pending

Can now share games from the Studio start page to your friends on Roblox, Twitter and Facebook

Live

Unclamp ZIndex to allow values less than 1.

Pending

debug.traceback now adheres to the behavior specified for Lua 5.1: https://www.lua.org/manual/5.1/manual.html#pdf-debug.traceback

Namely, it takes an optional coroutine argument whose trace will be returned. If no coroutine is provided, the trace of the calling coroutine will be returned (as happens currently). An optional message argument will be pre-pended to the trace. If a message argument is provided, a level argument can also be provided, specifying how far back in the trace to report from.

Live

Developers have an option to force equal collision shapes for all character types. (Wing’s will not get stuck on objects)

Live

Reduce server-side CPU overhead of StreamingEnabled for large worlds.

Pending

Release Notes for 329

Fixes

Note Status

Fixed issue with Studio prompting for save every time

Pending

Increased visibility of Script Recovery widget to improve awareness of saved script progress.

Live

Disallow invalid breakpoint condition entry

Pending

… lua:property:: ScrollingFrame.ScrollDirection

The direction scrolling is allowed in this scrolling frame. :summary: The direction scrolling is allowed. If scrolling is disallowed in a direction, the scrollbar will not appear. :type: enum :values: XY (default), X, Y

… lua:property:: ScrollingFrame.ElasticBehavior

How elastic scrolling behaves for touch input. :summary: When elastic scrolling is allowed. Always means regardless of scrolling, you can always move the canvas a bit outside the bounds. Never means you can never move the canvas outside the rect bounds. WhenScrollable means when canvas size is larger than the rect size, elastic scrolling is allowed. :type: enum :values: WhenScrollable (default), Always, Never
Pending

Fixed PlayerGui.CurrentScreenOrientation

Live

Fix MouseLeave not firing in certain cases.

Pending

Disabling creation of Chat.ChatLocalization unconditionally on DataModel startup. It will now be created only if an instance of the same name does not exist under Chat, similar to the rest of the default chat scripts.

Chat.ChatLocalization replicates to clients from the server instead of being created on the client. Scripts acquiring a reference to this table must now use WaitForChild instead of assuming it already exists.

Pending

Remove redundant terrain geometry that was generated twice in some cases, leading to ~2x faster terrain rendering for large terrain baseplates depending on voxel alignment.

Pending

Fixed an issue where join can be unsuccessful on an unstable network.

Pending

Improvements

Note Status

Finished syncing drag and drop from UI Editor

Pending

Remove address bar from plugins management tab

Pending

Added emulator button in UI editor mode

Live

Drag and Drop will work. Still need to sync up with plugin drag enter

Live

Added a keyboard shortcut (Ctrl+K is default) for clearing the output widget.

Pending

Can now share games from the Studio start page to your friends on Roblox, Twitter and Facebook

Live

Moved ResetOnSpawn to the base class of ScreenGui, so that BillboardGui and SurfaceGui also have it.

Live

Add bool MarketPlace::UserOwnsGamePassAsync(userId, gamePassId) API for new GamePassId query.

Pending

Optimize terrain replication for bandwidth, improving join times for games that use a lot of terrain.

Pending

LocalizationTable: Normalize locale Ids to all lowercase with dash separators on import.

Pending

Stack traces in client/server logs will now be written as a single message with newlines, instead of multiple messages

Pending

We are trying to fix issues with services being placed in non-default locations. This has caused issues in the past with some code assuming that the services exist in specific locations. This change restricts everything except Lighting, Teams, and SoundService from having non-default parents. These three exceptions are common in old scripts.

Live

Roblox locale ID now initializes from user preferences instead of defaulting to system locale.

Live

Release Notes for 328

Fixes

Note Status

Studio start page now remembers where you last were when you restart studio

Pending

Fixes issue with Ctrl/Shift being synced between 3D view and explorer

Pending

Fixes a bug with WASD keys being registered multiple times

Pending

Debugging cyclic tables, instead of an error message now we show partially valid table

Pending

Keyboard input on windows now works when Discord overlay is engaged.

Pending

An error message no longer appears to a user if they are attempted to be teleported multiple times in a row

Pending

Fix UIScale not applying to descendants inside folders.

Pending

Turned PathWaypoint into a native type. Now it can be replicated between clients and server.

Live

Fixed a bug that sometimes caused the client log to spam “Remote event invocation queue exhausted for ReplicatedStorage.DefaultServerSoundEvent…”

Live

Fix FormatByKey for Translators obtained from LocalizationService:GetTranslatorForPlayer. They were totally broken and their lookups would always fail.

Pending

Fixed bug where RenderStepped event in Studio returned an incorrect delta

Pending

Improvements

Note Status

Deactivating a game on the studio start page now asks for confirmation

Pending

Added emulator button in UI editor mode

Live

Added UI toggle button to show/hide UI instances in 3d view

Live

Added a keyboard shortcut (Ctrl+K is default) for clearing the output widget.

Pending

You can now leave team create games from the Studio start page

Live

Automatically re-translate all auto-localized GUI elements when RobloxLocaleId changes.

Pending

Release Notes for 327

Improvements

Note Status

Improved the look and visibility of glass on low quality mode to be more consistent with medium quality.

Pending

When inserting Gui Objects, it will follow this behavior:
Insert Gui Object Behavior
If there is multiple selection, it will act on the first selected object.
If there is a selection that is ScreenGui, make it a child of ScreenGui.
If there is a selection that is any other GuiObject, make it a sibling of that GuiObject.
If no selection, insert it into first ScreenGui under Starter Gui

Live

UI Editor V1.0 button removed

Live

Added Camera.NearPlaneZ

Live

This change added attachment.CFrame property.
This is a read only property.

Pending

Significantly reduce amount of data that needs to be sent during join for terrain-heavy places

Pending

Text scraper re-uses the same GeneratedLocalizationTable over multiple runs.

Pending

Consolidating behavior of string.format across 32 and 64 bit applications (there are some combinations of format specifiers and values that are inconsistent at the moment). We will be gathering impact metrics to determine if it is safe to enable this before changing ANY behavior in game / studio, please follow posts on the dev forum for specifics.

Pending

Added a button to the localization tools plugin for toggling play mode to use Spanish

Pending

Added GuiBase.RootLocalizationTable and GuiBase.AutoLocalize. Deprecated LocalizationTable.Root, which will be disabled soon.

Any Gui under PlayerGui or Workspace can use any LocalizationTable that is a child of LocalizationService to translate. If RootLocalizationTable is set that table will be used to translate that object and it’s children instead. The RootLocalizationTable does not need to be a descendant of LocalizationService.

Pending

Fixes

Note Status

Fixed Server/Player launch on Mac

Pending

Fixed an issue where the sound cache would get incorrectly cleaned up, leading to errors when trying to play sounds.

Live

Fixes a crash when using a WeldConstraint that has at least one part not in the Workspace.

Pending

User input remote events should now work for FilteringEnabled games

Live

Big places should load faster. workspace::assemble should take less time.

Pending

Fixed a bug where dragging a model out of Workspace would cause joints to sometimes be deleted.

Pending