If you have a lot of Roblox instances in your UI system and have them all in StarterGui
then you’ll see a large increase in ping.
Reproduction (100% reproduction rate with enough instances).
- Insert 50,000 instances (over-blown, yes, but we have 8k in our production game)
- Play in production
- Join the game
- Have an alt join the game.
- Have the alt leave the game.
- Watch the ping spike each time the alt joins/leaves the game.
Monitor ping
REPRO PLACE HERE: Random Test - Roblox
Doing the same thing in ReplicatedStorage
and cloning on the client does not lead to other clients having this same issue.
Investigation notes
- Replicating 8k instances isn’t the issue, doesn’t reproduce in replicated storage
- Most top games appear to be doing a hack where they move all the stuff in startergui to replicatedstorage on the first frame, and then reparent that to the client, thus, bypassing this issue.
Root cause guess
Most likely caused by something in the replication of PlayerGui
or the fact we have to clone the whole server hierarchy of the instances each time a player joins.
Why this is a problem
While we have an easy work around, this is not the case for new creators. Also this is a silly work-around.