Silent crash/disconnect bug? We genuinely have no idea what's going on

Hi there. I hate that we have to make this post but we are… quite literally stumped and we have no idea what to make of what’s happening here.

We’ve been observing a pattern in our game MURDER LABS, where people connect to our game, and then disconnect almost immediately after, seemingly from some lost connection or a crash.

We have been trying an assortment of things over the past month to try and diagnose/troubleshoot this issue ourselves, including:

  • Completely cutting the custom character physics engine from our game in favor of using Roblox’s physics engine. This was more of a long term performance measure necessary for the long run, but we were still observing the same traffic patterns as before.
  • At one point we completely cut out the exterior of our game’s lobby to see if it was just something to do with the map being too detailed or something, but that had no effect.
  • Removing usage of loleris’ ProfileService module for handling our Data Stores. For some reason we thought maybe that had something to do with it, since other games that we launched using it had problems too. No effect.
  • Disabling the entirety of our React UI to see what would happen. No effect.
  • Optimizing our game’s outgoing network traffic. No effect.

With no luck, we tried some more drastic experiments:

  • We disabled every server script in the game and put up a maintenance label while we observed join patterns. No effect.
  • We disabled every client script in the game. No effect. People were still randomly disconnecting.
  • We deleted everything in ReplicatedFirst, ReplicatedStorage, ServerStorage, etc. It was just the lobby map. Still, people were randomly disconnecting.
  • We deleted custom materials. No effect.
  • We turned off future lighting. No effect.
  • We literally turned the game into an empty baseplate… and yeah. No effect.

I feel like we’re gaslighting ourselves with some sort of placebo here, but we’ve observed this pattern frequently enough (several cases with each bullet point here) that I genuinely have no idea what to make of this. We don’t know if it’s kneecapping our game’s growth due to the short session times, we don’t know if it’s even being recorded as a crash. We speculated that maybe people were just being impatient and leaving before the game could load, but even with all of the game’s code and content removed this issue still seemed to be happening.

Can anyone help us make sense of this? I want to believe this is all just a wild goose chase, but given what I’ve personally observed, I’m not sure what’s going on anymore.

6 Likes

We checked for any significant client crashes and we are not finding any. Are you still experiencing this issue?

Appreciate you guys taking a closer look, apologies I haven’t followed up on this sooner. I feel this whole investigation on our part was hasty and filled with a lot of confirmation bias, frustration, and general paranoia.

The working hypothesis I have now is that it has something to do with slow initial content delivery to people not in the same country as the host server (and impatience as a result of that), combined with poor on-boarding on our part (especially for mobile audiences).

Suffice it to say, there has been a lot of pressure on us to figure out what’s happening as soon as possible since we’re currently running on fumes. I desperately try to steer away from conclusions like this because I don’t like wasting engineer time. We just thought… maybe, if there’s any chance that it could be the case, that it might be worth investigating, just given how many patterns we had been observing. I wouldn’t be going to this measure if I wasn’t pinned against a wall here.

THAT SAID, I do have a log file from an attempt I made to join the game last night where Roblox just gave up and softlocked in the background instead of actually showing the game window. I don’t know if this is a lead on anything but maybe it’s something to go off of:

2025-03-05T07:19:31.130Z,0.130456,356c,6,Warning [FLog::RobloxStarter] Starting module: Network
2025-03-05T07:19:31.132Z,0.132456,356c,6,Warning [FLog::RobloxStarterNetworkStarterModule] userAgent: Roblox/WinInetRobloxApp/0.662.1.6620540 (GlobalDist; RobloxDirectDownload)
2025-03-05T07:19:31.132Z,0.132456,356c,6,Warning [FLog::RobloxStarter] Roblox stage ReadyForFlagFetch completed
2025-03-05T07:19:31.133Z,0.133456,356c,6,Info [FLog::UpdateController] UpdateController: versionQueryUrl: https://clientsettingscdn.roblox.com/v2/client-version/WindowsPlayer
2025-03-05T07:19:31.133Z,0.133456,356c,6,Info [FLog::UpdateController] WindowsUpdateController: updaterFullPath: C:\Users\clone\AppData\Local\Bloxstrap\Versions\version-67acd0f240534e7b\RobloxPlayerInstaller.exe
2025-03-05T07:19:31.198Z,0.198488,7da8,6,Info [FLog::UpdateController] Update check thread started
2025-03-05T07:19:31.198Z,0.198488,3194,6,Warning [FLog::RobloxStarter] Starting module: FlagFetching
2025-03-05T07:19:31.198Z,0.198488,3194,6,Warning [FLog::FlagFetchingStarterModule] Starting FlagFetchingStarterModule
2025-03-05T07:19:31.198Z,0.198488,7da8,6,Info [FLog::UpdateController] Checking if updater exists at C:\Users\clone\AppData\Local\Bloxstrap\Versions\version-67acd0f240534e7b\RobloxPlayerInstaller.exe. Returning false
2025-03-05T07:19:31.198Z,0.198488,3194,6,Warning [FLog::FlagFetchingStarterModule] Fetching and loading flags from CDN
2025-03-05T07:19:31.198Z,0.198488,7da8,6,Warning [FLog::UpdateController] Updater not found. Skipping update
2025-03-05T07:19:31.198Z,0.198488,3194,6,Warning [FLog::FlagFetchingStarterModule] Fetching flags from CDN, attempt: 0
2025-03-05T07:19:31.198Z,0.198488,7da8,6,Info [FLog::UpdateController] Update check thread: updateRequired FALSE
2025-03-05T07:19:31.198Z,0.198488,3194,6 [FLog::Output] settingsUrl: https://clientsettingscdn.roblox.com/v2/settings-compressed/application/PCDesktopClient/0965cb7b761d401483379319469aaf8a9ab5d7f5ab0b524384d4b35d88d743b3.dcz
2025-03-05T07:19:31.294Z,0.294127,3194,6 [FLog::Output] Settings Date header was Wed, 05 Mar 2025 07:19:04 GMT
2025-03-05T07:19:31.294Z,0.294127,3194,6 [FLog::Output] Settings Date timestamp is 1741159144
2025-03-05T07:19:31.310Z,0.310213,3194,6 [FLog::Output] LoadClientSettingsFromLocal: "{
  "FFlagHandleAltEnterFullscreenManually": "False",
  "FFlagAXAccessoryAdjustmentIXPEnabledForAll": "True",
  "DFFlagDisableDPIScale": "True",
  "FLogNetwork": "7",
  "DFFlagUseVisBugChecks": "True",
  "FFlagEnableVisBugChecks27": "True",
  "DFFlagMicroProfilerFlamegraphs": "True",
  "FFlagAnimationLodBoneEnabled": "True",
  "FFlagMeshPartSetHasSkinnedMesh_PlaceFilter": "false;1",
  "FFlagDebugForceFutureIsBrightPhase3": "True"
}"
2025-03-05T07:19:31.316Z,0.316245,3194,6,Warning [FLog::FlagFetchingStarterModule] Successfully loaded flags from CDN
2025-03-05T07:19:31.331Z,0.331325,356c,6 [FLog::Output] DUAR is on.
2025-03-05T07:19:31.331Z,0.331325,356c,6,Warning [FLog::LogWin32BTId] LogWin32BTId, App, web launch, websiteBTId is 1718597460885011
2025-03-05T07:19:31.331Z,0.331325,356c,6,Warning [FLog::RobloxStarter] Starting module: AppRemoteCheck
2025-03-05T07:19:31.334Z,0.334341,356c,6 [FLog::WindowsLuaApp] (Win-AuthToken) loadAuthTokenFromDisk:
2025-03-05T07:19:31.350Z,0.350426,356c,6 [FLog::LogWin32BTId] LogWin32BTId, App, cookie Native => Engine set RBXEventTrackerV2 as CreateDate=02/27/2025 18:29:23&rbxid=2051313&browserid=1718597460885011
2025-03-05T07:19:31.350Z,0.350426,356c,6,Warning [FLog::AppRemoteCheckStarterModule] BTID is overriden to 1718597460885011.
2025-03-05T07:19:31.350Z,0.350426,356c,6,Warning [FLog::AppRemoteCheckStarterModule] AppRemoteCheckStarterModule started
2025-03-05T07:19:31.351Z,0.351432,356c,6,Warning [FLog::AppRemoteCheckStarterModule] AppRemoteCheckStarterModule finished: stage = 2, BTID = 1718597460885011, upgradeStatus = 3.
2025-03-05T07:19:31.351Z,0.351432,356c,6 [FLog::WindowsLuaApp] (Win-AuthToken) saveAuthTokenToDisk:size:1410.
2025-03-05T07:19:31.352Z,0.352437,356c,6 [FLog::LogWin32BTId] LogWin32BTId, App, cookie Engine => Native set RBXEventTrackerV2 as CreateDate=02/27/2025 18:29:23&rbxid=2051313&browserid=1718597460885011
2025-03-05T07:19:31.352Z,0.352437,356c,6,Warning [FLog::RobloxStarter] AppRemoteCheck module completed
2025-03-05T07:19:31.353Z,0.353442,356c,6,Warning [FLog::RobloxStarter] Starting module: GlobalInstance
2025-03-05T07:19:31.410Z,0.410328,356c,6 [FLog::Output] *******
** Validated reflection database in 7.960160 ms, found 5647 entries with the following skipped: 0 enums, 0 properties, 0 functions, 0 events, 0 callbacks, 0 classes.
*******

2025-03-05T07:19:31.411Z,0.411323,356c,6 [FLog::ClientRunInfo] RobloxGitHash: 3c209a19dab2f71f59d108980f9f5d9f9263fb46
2025-03-05T07:19:31.411Z,0.411323,356c,6 [FLog::ClientRunInfo] The base url is http://www.roblox.com/
2025-03-05T07:19:31.411Z,0.411323,356c,6 [FLog::ClientRunInfo] The channel is production
2025-03-05T07:19:31.412Z,0.412318,356c,6,Warning [FLog::RobloxStarter] GlobalInstance module completed
2025-03-05T07:19:31.412Z,0.412318,356c,6,Warning [FLog::RobloxStarter] All PreDM modules completed
2025-03-05T07:19:31.412Z,0.412318,356c,6,Warning [FLog::RobloxStarter] RobloxStarter destroyed
2025-03-05T07:19:31.438Z,0.438189,23b0,6,Info [FLog::CrashReportLog] added file C:\Users\clone\AppData\Local\Roblox\logs\0.662.1.6620540_20250305T071931Z_Player_400EA_last.log as attachment 0.662.1.6620540_20250305T071931Z_Player_400EA_last.log
2025-03-05T07:19:31.522Z,0.522691,3e4c,6,Info [FLog::WndProcessCheck] waitForNewPlayerProcess new waiting for mutex result is 0X000000, ERROR The operation completed successfully.
2025-03-05T07:19:31.658Z,0.658692,356c,6 [FLog::WindowsLuaApp] Set WebView linking marshaller
2025-03-05T07:19:31.658Z,0.658692,356c,6,Warning [FLog::RobloxStarter] Starting module: DataModel
2025-03-05T07:19:31.659Z,0.659693,356c,6,Info [FLog::PerformanceControlUtil] PerformanceControlUtil: registered single surface tunable (id=0)
2025-03-05T07:19:31.659Z,0.659693,356c,6 [FLog::SingleSurfaceApp] initializeWithAppStarter
2025-03-05T07:19:31.659Z,0.659693,356c,6 [FLog::SingleSurfaceApp] initializeSingleton
2025-03-05T07:19:31.660Z,0.660693,356c,6 [FLog::Output] Info: Exception thrown in loadState Invalid parent for Service. CollectionService cannot be parented to GlobalBasicSettings .
2025-03-05T07:19:31.660Z,0.660693,356c,6 [FLog::Output] Evaluating deferred inferred crashes
2025-03-05T07:19:31.679Z,0.679653,356c,6 [FLog::SingleSurfaceApp] setStage: (stage:Native)
2025-03-05T07:19:31.679Z,0.679653,356c,6,Warning [FLog::SingleSurfaceApp] instantiate controllers
2025-03-05T07:19:31.680Z,0.680653,356c,6 [FLog::SurfaceController] SurfaceController[_:1]::SurfaceController, count: 1
2025-03-05T07:19:31.680Z,0.680653,356c,6,Warning [FLog::SingleSurfaceApp] instantiate experience coordinator
2025-03-05T07:19:31.680Z,0.680653,356c,6,Info [FLog::PerformanceControlUtil] PerformanceControlUtil: registered single surface tunable (id=1)
2025-03-05T07:19:31.680Z,0.680653,356c,6,Info [FLog::CrossExperienceVoiceController] CrossExperienceVoiceController::CrossExperienceVoiceController() constructor
2025-03-05T07:19:31.680Z,0.680653,356c,6,Warning [FLog::DataModelStarterModule] Launching experience at 16111255094
2025-03-05T07:19:31.680Z,0.680653,356c,6 [FLog::SingleSurfaceApp] launchUGCGame: (stage:Native).
2025-03-05T07:19:31.680Z,0.680653,356c,6 [FLog::SingleSurfaceApp] launchUGCGameInternal
2025-03-05T07:19:31.683Z,0.683653,356c,6 [FLog::SingleSurfaceApp] applyLocale
2025-03-05T07:19:31.684Z,0.684653,356c,6,Info [FLog::UgcExperienceController] UgcExperienceController: initialize:
2025-03-05T07:19:31.688Z,0.688653,356c,100 [FLog::DataModelPatchConfigurer] [_DataModelPatch] Load configs for user key: app:13196999859127258880
2025-03-05T07:19:31.690Z,0.690652,356c,100 [FLog::DataModelPatchConfigurer] [_DataModelPatch] Retrieving patch
2025-03-05T07:19:31.690Z,0.690652,356c,100 [FLog::DataModelPatchConfigurer] getCachedPatch DataModelPatchConfig : type=1, assetId=5345954812, assetVersion=11123, maxAppVersion=662, localAssetURI=rbxasset://models/DataModelPatch/DataModelPatch.rbxm
2025-03-05T07:19:31.691Z,0.691652,356c,100 [FLog::DataModelPatchConfigurer] getCachedPatch : numAttempts=10
2025-03-05T07:19:31.691Z,0.691652,356c,100 [FLog::DataModelPatchConfigurer] getCachedPatch : contentId=rbxasset://models/DataModelPatch/DataModelPatch.rbxm
2025-03-05T07:19:31.691Z,0.691652,356c,100 [FLog::DataModelPatchConfigurer] getCachedPatch : get patch from content provider for Model
2025-03-05T07:19:31.699Z,0.699651,356c,100 [FLog::DataModelPatchConfigurer] deserializeAndVerifyPatch with blake3
2025-03-05T07:19:32.164Z,1.164641,356c,6,Warning [DFLog::BootcampCLI139439Log] Is Cholula a condiment or a sauce?
2025-03-05T07:19:32.249Z,1.249316,356c,6,Info [FLog::Audio] OutputDevice 0: Headset Earphone (2- CORSAIR HS80 RGB Wireless Gaming Receiver) [USB] 48000/2
2025-03-05T07:19:32.282Z,1.282791,356c,6,Info [FLog::Audio] InputDevice 0: Microphone (NVIDIA Broadcast)([97a2be2c-cdec-4aeb-8f9f16d9794d8f33]) 48000/2/4
2025-03-05T07:19:32.282Z,1.282791,356c,6,Info [FLog::Audio] InputDevice 1: CABLE Output (VB-Audio Virtual Cable)([095ad1e9-7412-4b66-a5230b58a098b54e]) 44100/2/4
2025-03-05T07:19:32.282Z,1.282791,356c,6,Info [FLog::Audio] InputDevice 2: Headset Microphone (2- CORSAIR HS80 RGB Wireless Gaming Receiver)([50a330ae-5b13-4e4e-a6054f87af15c21e]) 48000/1/4
2025-03-05T07:19:32.282Z,1.282791,356c,6,Info [FLog::Audio] InputDevice 3: Microphone (Logi C270 HD WebCam)([519259a7-9ac4-4099-87872380ece15df2]) 48000/1/4
2025-03-05T07:19:32.282Z,1.282791,356c,6,Info [FLog::Audio] InputDevice 4: Microphone (Steam Streaming Microphone)([ba1434aa-6b9a-4227-b2a70ea3e55f3d7b]) 44100/1/4
2025-03-05T07:19:32.283Z,1.283792,356c,6,Info [FLog::Audio] InputDevice 5: VoiceMeeter Output (VB-Audio VoiceMeeter VAIO)([fe860dd0-cdb8-46d8-8dbc76e29ca8f5e4]) 44100/2/4

I’m very sorry if this is unrelated, but my game, Cavern Crusher, has been experiencing something eerily similar. I personally cannot recreate it, but friends of mine and the community have been able to reproduce the crash. It generates a memory dump crash file every time it occurs, however it appears that the .log file is entirely devoid of anything useful. This has only been happening recently.

If this is any more of a lead, my game uses Roblox’s new luau driven character controllers, and also has custom character spawning. The game also closes with no warning or pop up.

From the .dmp file and Visual Studio, I managed to get this, but I am more than happy to provide the memory dump and roblox log from my team member if needed. He has given me explicit permission to send the files to bug-files.

A few teams took a look at this from a few different angles to make sure there were no crashes or other failures. I took a detailed look at network connection level telemetry for this game and found that:

  • The game has a lower than average rate of failed network connections, which rules out Clients crashing or internet issues
  • The game also has a lower than average rate of players kicked either by Roblox or by you as the creator, meaning players are manually opting to leave the game
  • The amount of content loaded by the game is non-trivial, but in-line with other games
  • The time taken to load content is in line with other games

The same metrics show that play time is shorter than the average for other games, meaning your observation is correct that players are connecting then leaving soon after. However, this behavior seems to be organic, and is not related to any issues with the Roblox Engine.The soft lock issue and related logs you posted don’t seem to be related to your game specifically, though if you continue to experience them please open a separate bug report so we can investigate that behavior as well.

2 Likes

This checks out.

We added some portals to our existing popular games inviting people to try out the game, which would teleport you upon touching the portal, and a couple of them are in weird spots where you could easily run into it by accident. If the user immediately disconnects and there’s a pattern of their character trying to load on the receiving game server before it realizes they disconnected, then this makes perfect sense to me.

I’m surprised I didn’t consider this possibility, there was just so much fixation on the idea of this being a crash/issue with the game that we got tunnel vision.

I really appreciate you guys deep diving into it.