Just released a new project. I’m not using any new or crazy tech in it so I didn’t expect performance and crashes to be an issue. However, it seems like alot of users are crashing randomly due to “Pure Call Error” in the log. Even on my beefy machine, I crashed due to the same thing.
I’ve attached the log file, but I’m not 100% sure what would be causing the crash. Any ideas?
Thank you for reporting this issue!
Unfortunately, we couldn’t reproduce the crash in our environment and the log doesn’t provide enough information.
Could you please answer following questions and provide more information about this crash? It will be very helpful for us to solve this crash problem:
When did the crash happen?
a. When game starting
b. When game quitting
c. Playing the game
d. Any time during game session
Do you see this crash problem when you play other game? Or it only happens in this specific game?
How often you see this crash when you play this game?
If possible, could you please upload the crash dump file? (The “*.dmp” files under C:\Users<name>\AppData\Local\Roblox\logs\crashes)
The crash occurs during the game session. For me it happened when the game changed maps (unloads a bunch of models in workspace, loads in some new ones, calls :LoadCharacter() for every player.)
I do not get the same crashes on other games, and our game’s crashrate right now is 40% on PC… very bad
I get crashes often playing the game, but the Pure Call Error occurred only once, the other crashes leave no errors, it just closes roblox entirely. The no error crashes occur when you kill a player, there could be any number of reasons that might be an issue.
Thank you for the information!
We will do more investigation and update in this thread when we get any progress.
For the crash dump, can you search “*.dmp” file under logs folder (and its sub folders)?
Looked for dmp files under all of Roblox. None exist. This is very typical of Roblox these days though, the dmp file exists under logs, and deletes itself when the application closes (or in this case crashes).
Update, just happened a third time. Was able to record it.
The Pure Call Error crash occurs when :LoadCharacter() is called from the server. I will look to see what code on my end runs when that happens. But LoadCharacter is called alot so it’s odd to not have it crash on that condition most of the time.
Found the issue. Or at least, I’m pretty sure I’ve found it.
It seems when Roblox would crash both due to Pure Call Error and without an error at all, it was related to the same issue.
I was using the server to put IKConstraints in characters. If the attachments of the IKConstraints are destroyed, or the character is destroyed, without first destroying the IKContraints themselves, clients within physics range have a high risk of crashing.
With that having been fixed, there’s still quite a few crashes that occur when a new map loads in. So I’ll keep looking into it.
UPDATE:
I’ve gotten the crash rate to 0%, the reason for the remaining crashes was due to the order of my code. It’s imperative that you specifically destroy the IKContraints first BEFORE destroying anything they’re attached to. Otherwise clients will crash.
UPDATE #2:
Removed IKConstraints from the game entirely, and now the crash rate is rising again…
Ok so here’s where I’m confused. I’ve fixed the crashing on PC and mobile to the point where it’s 0% most of the time… For an unknown reason, the crash rate sometimes spikes for about 10 minutes, and then goes back to zero.
Despite this, the “Total Crash Rate” baseline remains exceptionally high at 10%. Does this mean console is crashing 10%? How can I get any kind of crash log information from console?
Well, the total numbers for Tablet and Phone have dropped off the chart as well. Leading me to believe it’s console only. Regardless, how would I find out the causes of these crashes? I can’t run a successful games at a 10-20% crash rate and if it doesn’t crash on PC/Mac I have no way of getting any log information about it.
I do see xbox crash spike during 9/15 and 9/16 in your game place (Gunfight Arena - Roblox), but no more crash after that.
Do you still see the crash problem from xbox?
I haven’t had the opportunity to test on xbox myself, but I will today. I’ve been making strides at bringing the crash rate down, but everyday when I wake up it’s spiked back up again for no apparent reason.
So far I’ve lowered the crash rate little by little with:
Removing all highlight objects
Shortening the script length of the main engine code (this script is disabled/enabled often)
Removing all uses of PreloadAsync
I’m now down to below 10% on average, but it still spikes up to 15% sometimes. On an hour by hour basis I can see a really high crash rate, with no platform attributed:
I’ve dropped the crash rate again, now down to 5% on average. Still pretty high, but better. This time I removed almost all of the viewportframes in the UI.
Still have some because the image assets I was replacing them with were moderated inexplicably. This might be why it’s still not 0.
Ok so I’ve gotten some really interesting information related to this problem.
First, we privated the game to try and get a closer grasp on the crashing issue. Immediately after doing so the crashrate hit 100%. So clearly it considers server shutdowns and disconnects as crashes.
Then a couple hours later we opened the game to a very small group of testers. During that time our crash rate jumped around again:
But not a single one of the testers reported a crash. They all said they just disconnected normally.
So clearly the client crash rate reporting is just completely wrong, but the question is why does it report higher on this game than other games?
Also I assume this crash rate stat has a direct impact on our performance in the algorithm. So if it’s just wrong, that needs correcting immediately.
UPDATE:
Found one of the reasons. If a user disconnects on PC by closing the roblox window (a very common disconnect method). It contributes toward the “Total” crash rate, and not the PC category. I will make a separate bug report for this issue.