The StreamingEnabled property determines whether network streaming is enabled for the place.
This property is not scriptable, and therefore cannot be changed once the game has started. For this reason, it is advised it is set in Roblox Studio.
Since it is replicated, both client and server can access the property to determine, but not set, whether network streaming is enabled. As a result, both the code snippets below will print the same value when executed from a
Script in the same game.
-- LocalScript local isStreamingEnabled = game.Workspace.StreamingEnabled print(isStreamingEnabled)
-- Script local isStreamingEnabled = game.Workspace.StreamingEnabled print(isStreamingEnabled)
What is network streaming?
Streaming is an opt-in feature builders can enable for their places. It’ll allow places to have more
BasePart|BaseParts, faster join times, and allow more games to run on less powerful hardware. It does this by allowing games to be played whilst objects are still being downloaded, and removing objects that are no longer needed.
The downside of network streaming is it means the client can no longer rely on specific objects being available. Developers should not enable StreamingEnabled unless they understand its implications and have put processes in place to manage them. For example,
LocalScript|LocalScripts may have to use
Instance/WaitForChild in order to access parts of the game.
- Blog post: With streaming join, levels load as you play, an archived blog post demonstrating the property