In my game (BrawlR), there is a notorious problem with UnreliableEvents, which appears to cease reading any new packets delivered from the server whenever a Mesh or Texture needs to be loaded on the Client for the first time.
I run a custom engine through which we send the state of the game [Server->Client] 20 times a second. It works flawlessly; However, In this clip you can see a bit of lag (it varies depending on internet speed) when the teapot is being loaded for the first time. It doesn’t happen the second time.
The workaround for this would be to “preload everything you’d expect to show-up” but that isn’t scalable and hard to predict exactly.
Expected behavior
Mesh/Texture loading would work asynchronously and no UnreliableEvent packets would be dropped.