Game disconnects me but works fine on local server?

When I join the game on Roblox’s server, I disconnect within a minute. Some of my friends are having the same problem. However, when I run a test server in studio, it works just fine. If a game works fine in a test server with API services enabled, it should work fine on a live server, so I presume it’s a bug.

I solved it by getting a new datastore. Weird but I guess it’s fixed now.

Nvm, the problem is back.

Are you experiencing the issue in any of your other games? If not it’s probably something specific to your game that’s causing the disconnect. Try duplicating the studio file and disabling things like scripts etc until the game stops disconnecting. Whatever you disabled/removed last was probably the cause.

2 Likes

I figured it was a problem with DataStores since they’ve been giving me weird behavior. When I disable all DataStore use in my game like this:
image
and I’m not getting disconnects anymore. Also some more detail about the disconnects. When I join the game alone, it runs fine (and likewise for a local server), but when one of two specific people joins, it disconnects everyone. It seems like the server’s crashing.

Also, this started happening at a time when I wasn’t touching any code involving DataStores at all.

Since the server is crashing instead of throwing an error and there’s no crash-worthy code from me (i.e. infinite loop) running on the server, I don’t think it’s my code that’s causing the problem.

What are you saving to that data store? Could it be a similar problem to what berezaa had - not compressing floats or any data for that matter? No one else is reporting anything like this so I find it hard to believe that it’s a Datastore problem, I may be wrong.

A table with ints. No floats.

Sounds like a very odd situation, is there any way of you viewing the data stored for either one or both of these two specific people? I can’t imagine a list of integers should cause a crash like this but it’s always worth checking everything before reporting it as a bug to later find it was a mistake.

The only DataStore method my game uses is UpdateAsync. When a player joins, I get their save file using:

local manifest;
mainDS:UpdateAsync("182345000m", function(old)
	manifest = old or getDefaultManifest();
	return manifest;
end);

(182345000m is just [userId]m). I tried running this on a local server of my game and I found that this certain player didn’t have any save data the first time I ran it. No crashing. Then, the next time I ran it, they had the default save file returned by getDefaultManifest() stored. After that, the server no longer crashes when this player joins the game. Also mind that this code snippet has been working fine for months up until 3 days ago.

Update please? I’ve got alpha on 2/25.

1 Like