Streaming Enabled by Default for All Templates

Doubling templates? I’m talking about a Studio setting. Just a simple “StreamingEnabled by default” setting is all I’m asking for.

16 Likes

It just makes more sense to use streaming. Most big games (GTA, Red Dead) use some sort of streaming to create their massive worlds.

13 Likes

Thats true, though most points everyone has here is that the streaming system we have is… not exactly great while games like GTA and Red Dead have streaming systems fully built from the ground up, designed for said games to work perfectly. On roblox this is sadly not the case.

15 Likes

It’s not great but it sure helps with creating bigger games, even smoother experiences. I’m sure there will be a big improvement to streaming in the future.

12 Likes

Not entirely the case, streaming does not help that much even with bigger games. It may actually be even worse to use in bigger games mainly because the server has to take all of said load of managing the streaming system to work in any way for each player. One example i have is one of my places with a “Truly massive world” that just so happens crash on server boot whenever streaming is enabled at all.

11 Likes

They have complete control over when things stream in and out.

Exactly.

10 Likes

ok cool now fix CSG so we can actually make these things

11 Likes

Roblox has continued to take the approach of treating devs as too stupid to give more advanced options.

The result of this is discouraging advanced and creative developers creating groundbreaking experiences.

Streaming needs more APIs so that devs can manage what is shown, and when it is streamed out. We can’t rely on Roblox’s systems to predict what we want.

This has been a common pattern across Roblox’s tools and features recently. I understand simplicity makes an easier entry point for new, young developers, but that doesn’t mean you shouldn’t give the option for those who are looking to push the boundaries and make something unique.

18 Likes

When I say, “bigger games” it does not necessarily mean “massive worlds”. It just simply implies that you can space things out instead of creating the typical lobby area with teleports to different places, because you are now streaming instead of having everything be persistent at all times.

Also, when it comes to streaming, it is not a “one size fit all solution”, it all depends on how you code around the technology. And when I say how well I mean knowing the stress involved for loading and offloading assets, your streaming setup because you may need to fiddle with it to get it right for your size world as well. If it’s crashing on boot that means you may not have it setup properly to load or the size of your world is just stupendously large (as large or larger than big game AAA worlds). I don’t think Roblox is ready for that right now as they are just now rolling out this by default, we are a long way away from the streaming to be improved for massive worlds. For instance, a truly massive world may need to have a smaller radius, Roblox may not be able to handle such a large radius (for viewing pleasure). Take a game like RuneScape, it’s streaming tech is probably better but the world is massive, and the radius of sight is by default a small range. You can adjust the setting to see further but by default it cuts off in a shorter range to reduce lag. All you see a black background outside the paused area, but it helped them build a massive world that can be explored without loading scenes.

10 Likes

Miscellaneous streaming fun fact:

If an exploiter equips an excessively large amount of items and walks/teleports into the stream radius of another player, they’ll corrupt their datastream due to the sheer packet load.

This is effectively a kick aura exploit. :+1::+1::+1:

As if we needed another reason as to why distance based streaming is awful.

12 Likes

What do you mean exactly?

Yeaaaa im not coding anything around some arbitrary automatic “technology” that i have 0 real control over. Roblox themselves also has to build “one size fit all” features every time just because they do somewhat understand that new games built around said features do take a while to release, so it’s probably best to just have the feature “just work”. The “just work” concept isn’t exactly bad by any means, but it DOES become an issue when theres 0 other alternatives along with said feature being more and more pushed in our faces.

What setup is there anyways? The whole place i have is just a giant baseplate. Still yeah it’s true, its pretty big! However simply dismissing the entire world or whatever else just because said hidden proprietary, automatic (crappy) tech does not handle it (and realistically will not be able to handle it in the future too) is not a good idea. I don’t think the current system roblox provides is just bad because is, i think its bad because theres 0 alternatives along with 0 way for me to create something on a deeper level that would actually work for my kind of places.

10 Likes

The streaming game is on top!!! I love server sided streaming systems and not client ones! I love reduced server performance on average!

11 Likes

Precisely. The funny thing is this shows how tonedeaf streaming’s implementation is, it literally will ddos the client with packets just so they have a “better”, more “memory performant” gameplay experience.

11 Likes

My issue is scripts. If you have a script parented to anything inside of the blocks being streamed in/out, it will just delete. It should have been patched before this is forced on everybody…

I’m fighting a losing battle here, everybody seems to agree with this change. My idea of just a toggle to turn it off is unlikely at this point

10 Likes

Don’t worry bro, you can just buy gigabit ethernet! Perhaps tape a bunch of nvme ssd’s to your routers antena’s (they have big writes/reads!!!) so you can simply just negate whatever connection issues and have a better overall experience!

Server memory lives matter! I’m really not sure if even in the future (after lots of optimizations i guess?) how it would even be able to handle actually “Massive Worlds” due to server memory. Last time i checked, im pretty sure servers don’t exactly have a lot of breathing room when it comes to memory intensive situations considering the fact they don’t exactly have any sort of disk space to back them up. Personally would not want 3/4 of my game’s server memory to just be used up by the streaming system.

8 Likes

My Kubla Khan Hotel and Resort is by definition incompatible with streaming (at least as of 2021). The main space is a large indoor atrium, so enabling streaming will cause the walls to clip off and break the immersion.

For this reason, I’ve opted for my own integrated region-loading system

11 Likes

Streaming or no streaming, Byfron are always there to obstruct.

8 Likes

I refuse to use streaming because it’s yet another blackbox ‘just trust us!!’ solution where instead of giving us precise control over everything (like a ReplicationService) they instead make “we know better than you” assumptions about our games to where even getting Atomic/Persistent added was like arguing against a brick wall. Every 2 weeks or so I see people still reporting strange issues with how Streaming handles constraint contraptions.

I enabled streaming once and it shot up the ping to the thousands due to 64 players moving at high speed over a massive terrain map. I can only assume it’s because the constant streaming in/out of terrain chunks and other props. Roblox is treating Streaming like it’s the definitive “you need to use this” option like FilteringEnabled when in reality there are still tradeoffs and it’s not a definitive upside.

I said this in another topic but one major performance improvement would be to be able to load Terrain from a seperate CDN server and and have the game’s server only send modified changes. Imagine a game like Fortnite having to send the entire terrain vertex data every time someone connected. You’re sending tons of megabytes of mostly static data from the same server that’s used to process gameplay code. I can’t confidently enable Streaming if I don’t know exactly how it’s managing everything and what the server performance cost is. There is a lot of talk about how much better it makes the client run but nothing about if it makes the server slower, consumes more bandwidth, or uses more CPU.

21 Likes

Not a big fan. I always saw streaming enabled as a solution to network management for toddlers. It gives results, but they are inferior to any well implemented replication system and the API is very primitive. I just hope this feature won’t be forced at any point in time. Honestly, just add a replication modifier instance already and let us do it all ourselves instead of forcing us to use absurd hacks like parenting everything to the camera.

13 Likes

This is another punch into the face of developers.

Roblox constantly treats us as if we are children, and don’t know what’s best for our own games. This is like teachers telling you you will never amount to anything, just stick to doing what we’re telling you.

We have exactly 0 control over how streaming works, it breaks our code that we wrote, and issues that have been known for months, hell, years still haven’t been fixed. And let’s not even start talking about documentation, complete lack of transparency and how it actually works.

This just again shows the complete lack of respect on the side of roblox it’s developers that created this platform.

This change is absolutely ridiculous, and just another band-aid solution to an issue that requires more than just enabling this broken mess by default.

I’m getting sick of being treated as if I don’t know what’s best for my game, that’s all I’m going to say.

13 Likes