Vehicles are unable to be loaded and unloaded correctly by Roblox when using streaming. This causes Parts welded to the chassis to not be removed when a vehicle exits streaming radius, and causes them to not stay attached to the vehicle when it enters again. Ideally vehicles should enter/exit streaming range and the model should be loaded as needed.
This bug can be reproduced 100% of the time. I have found that this issue mainly happens when a place has a lot of parts to stream, and on a device with a small amount of memory. Have been testing on a 2013 iPad Air 1st generation. In my test example, no script references are kept around on the test client.
Step 1. Join the place on two accounts. One account should be on a computer that can handle moving the car. The other should be on the lower memory device, this client should stay standing around.
Step 2. Get in the car and drive it out of streaming range of the lower memory device.
Step 3. Drive it back into range and you will see some welded parts get left behind and not stay attached to the chassis.
I have only discovered this bug recently (since a week or two ago) as that is when I have begun working streaming into Robloxian Highschool. This same issue is present in our development build of Robloxian Highschool with streaming enabled.
It seems like Roblox isn’t handling streaming welded parts into the world in the correct order. In Robloxian Highschool, the issue lies with wheels and the car body being left behind when streamed out (they are welded on the server). When a vehicle enters the streaming radius again, there is a good chance that most of the wheels will appear unattached.
Here’s the link to the place, which is set to allow copying. https://www.roblox.com/games/4643447250/Vehicle-Replication