Skip to content

Commit d825376

Browse files
update Open Source Docs from Roblox internal teams
1 parent 60e8f6b commit d825376

File tree

3 files changed

+71
-6
lines changed

3 files changed

+71
-6
lines changed

content/common/navigation/engine/guides.yaml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ navigation:
4343
path: /projects/activity-history
4444
- title: External Tools
4545
path: /projects/external-tools
46+
- title: Place Files
47+
path: /projects/place-files
4648
- title: Assets
4749
path: /projects/assets/
4850
section:
Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
---
2+
title: Place Files
3+
description: Learn how to manage and optimize your place files in Roblox.
4+
---
5+
6+
Each Roblox experience consists of one or more [places](index.md#places), and Studio uploads your place data to Roblox's servers whenever you save or publish to Roblox in the **File** menu.
7+
8+
You might also want to export local copies of places for use with a version control system or other [external tools](external-tools.md). To export your place in Studio, select **Save to File** or **Download a Copy** from the **File** menu. Studio offers two file formats:
9+
10+
- `.rbxl` is the binary place file format. This format is compact, but not human-readable.
11+
- `.rbxlx` is the XML-based place file format, which is quite a bit larger on disk than the binary format.
12+
13+
## Size Limit
14+
15+
Roblox supports places up to 100 MB (104,857,600 bytes). Beyond that limit, **Save to Roblox** and **Publish to Roblox** might fail. The data that Studio uploads to Roblox is slightly smaller than the `.rbxl` file format, so you can export your place to `.rbxl` to get a sense of its size.
16+
17+
Very few places, even the most complex ones, reach this limit, and when they do, it's often due to inefficiencies in the place. See [Troubleshooting](#troubleshooting-place-file-size).
18+
19+
### Auto-Recovery Files
20+
21+
If saving to Roblox fails due to the file size limit, Studio automatically generates a backup of your place called a **recovery file**. The frequency of auto-recovery backups depends on whether your experience has [Team Create](collaboration.md) enabled:
22+
23+
- If you have Team Create enabled and saving to Roblox fails, Studio backs up the last three save attempts as recovery files on your system.
24+
- If Team Create is disabled, Studio uses **Auto-Recovery** settings from **File** ⟩ **Studio Settings**.
25+
26+
On Windows, recovery files are located in `C:\Users\Admin\AppData\Local\Roblox\RobloxStudio\AutoSaves`.
27+
28+
On macOS, you can find them in `/Users/your-username/Library/Application Support/Roblox/RobloxStudio/AutoSaves/`.
29+
30+
## Troubleshooting Place File Size
31+
32+
If you reach the 100 MB limit on your place file, there's likely an underlying issue that you can troubleshoot. Try the following steps.
33+
34+
### Safety Check
35+
36+
Check the models in your place and their attached scripts for any obfuscated or unclear text. This text does not compress well and might even be a malicious backdoor into your place. Roblox moderation systems actively filter out these models, but if you happen to find one, delete the model from your place, find the model on the [Creator Store](https://create.roblox.com/store/models), and report it immediately.
37+
38+
### Redundant Parts
39+
40+
Unreferenced or hidden assets can accumulate over time and unnecessarily increase file size.
41+
42+
1. See if any models or groups of parts are taking up more space than others:
43+
44+
1. Export your place file and note its size on disk.
45+
1. Open the file in Roblox Studio.
46+
1. Copy and paste the models or groups of parts that you suspect are inordinately large.
47+
1. Save the file again and note its increase in file size.
48+
49+
1. Check for redundant parts (parts of the same size and shape with the same position) or instances (redundant `Class.SurfaceAppearance|SurfaceAppearances`, textures, etc.) and delete them. The Creator Store has plugins that can help you identify these cases.
50+
51+
### Simplifying Terrain
52+
53+
Reducing or simplifying terrain can significantly reduce place size and improve performance. Avoiding excessive terrain features like dense forests or complex hills helps make experiences run faster and more efficiently. Of course, the experience should match your artistic vision, but consider the following optimizations:
54+
55+
1. Horizontal layers of the same material/occupancy compress much better than sloped layers. If possible, try to limit subsurface detail to horizontal layers.
56+
1. Turn on [wireframe rendering](../studio/view-tab.md#grid-and-wireframe) and check for messy holes or misplaced water under the terrain surface. These mistakes can increase compressed size.
57+
1. There are community plugins that optimize non-visible blocks of terrain for better compression, such as [this one](https://create.roblox.com/store/asset/133396894381603/Terrain-File-Size-Optimizer).
58+
59+
### Collision Fidelity
60+
61+
`Enum.CollisionFidelity.Box|Box` and `Enum.CollisionFidelity.Hull|Hull` collision fidelity are more memory efficient than the default. Select your meshes, open the [Properties](../studio/properties.md) window, and change the **CollisionFidelity** values as appropriate for your use case.
62+
63+
### Teleports
64+
65+
If other size reduction strategies fail, you can break your place into multiple, smaller places and link them through [teleports](teleporting.md). Serialization and upload happen at the place level, so this approach lets you grow your universe place by place over time instead of trying to maintain a single, massive place.

content/en-us/reference/engine/classes/TextChatService.yaml

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -460,9 +460,8 @@ callbacks:
460460
returns:
461461
- type: Tuple
462462
summary: |
463-
If a `Class.TextChatMessage` is returned, those properties will be
464-
applied to the associated bubble, overriding
465-
`Class.BubbleChatConfiguration` properties.
463+
If a `Class.BubbleChatMessageProperties` is returned, its properties
464+
override the `Class.BubbleChatConfiguration` properties.
466465
tags: []
467466
deprecation_message: ''
468467
security: None
@@ -494,9 +493,8 @@ callbacks:
494493
returns:
495494
- type: Tuple
496495
summary: |
497-
If a `Class.TextChatMessage` is returned, those properties will be
498-
applied to the associated message, overriding
499-
`Class.ChatWindowConfiguration` properties.
496+
If a `Class.ChatWindowMessageProperties` is returned, its properties
497+
override the `Class.ChatWindowConfiguration` properties.
500498
tags: []
501499
deprecation_message: ''
502500
security: None

0 commit comments

Comments
 (0)