I’ve been currently dealing with a problem in the game Super Animal Royal, which runs on Unity. I didn’t create the game, but I’ve been working with one of the head devs at Pixile studios to try and troubleshoot the crash, but so far early in the process, we’re both stumped.
I opened the dmp file in Visual Studio and ran the debugger to try and find the location of the problem. It comes up with an error, but the error page states “Source Not Available”. The dialog box shows “Unhandled exception at 0x00007FF916427A8C (UnityPlayer.dll) in crash.dmp: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF.”
I have very vague guesses as to what it might be with my limited knowledge, but with 0xC0000005 it seems to be some sort of memory problem, but whether it’s my RAM hardware or on the software end I do not know. Hopefully, this information will help us narrow down the problem.
This looks like a memory corruption… could you try running the game using “-debugallocator” cmd line parameter? Also, could you capture full memory crash dump using this method (use DumpType value of 2):
I apologize for reopening this thread. I have encountered a similar issue, but not during gameplay. Instead, the error occurs within the Unity editor itself. The error message is consistent, albeit with a slight variation: “Unhandled Exception at 0x00007FF7D82F1650 (Unity.exe) in crash.dmp: 0xC0000005: Access Violation reading location 0x000002C34A000000.” I have provided a link to the dump and log files I received.
My inquiry pertains to implementing the recommended command in the Unity editor, as suggested by Tautvydas-Zilys:
Additional context that may be pertinent:
The project I am working on is a Unity tool, which involves the use of internal Unity events and editor elements.
The crash seems to occur subsequent to recompiling scripts related to the core functionality of my project.
The crash specifically takes place when I have a loaded object within the tool, intended for editing. This object belongs to a custom, serializable class.
The issue manifested when transitioning from version 2022.X.x (Beta) to 2022.3.4 (LTS). It was also associated with the implementation of ASDMF in the project. Regrettably, I overlooked this error at the time, making it challenging to determine exactly when it was introduced.
It seems that keeping certain scriptable objects open in the inspector prevents the failure (though I cannot be entirely certain).
I have employed Visual Studio Code’s debug mode to scrutinize the code line by line, but the issue does not seem to materialize when I observe it in this manner, which is causing some frustration.
I am currently experiencing a degree of frustration, as this error consistently closes the Unity editor whenever I recompile any script tied to the core of my project. This results in lost changes to scriptable objects I was constructing at that moment. Furthermore, the dump provides the error details but does not pinpoint the exact location of this failure, impeding my ability to rectify it.
It seems it reads past the end of the buffer when deserializing some serialized property because it ingests the wrong string size. Debug allocator is doing its job: it makes it crash the moment buffer read goes out of bound. Unfortunately I cannot tell which serialized property that is as the dump you attached in a mini dump rather than a full dump. If you want, you can configure your machine to capture full dumps as outlined here: Collecting User-Mode Dumps - Win32 apps | Microsoft Learn. Then I could look at it and perhaps tell you which object is causing the issue.
In either case, this is worth a bug report, I think.
I followed the instructions provided here, and it generated this new file for me. I’ve left it at the following link. I opened it with Visual [Studio], but I still don’t understand how this can help me. For instance, I see the call stack, but there’s nothing related to my code showing up :C
It seems like it is trying to display a script in an inspector on a particular game object. Is this when it crashes? I cannot tell what the script name is, but it has a serializable field of type “LBSLayer” named “data”. It seems that the data for this particular game object is corrupted.
Unfortunately this is not my code area of expertise so that is all I was able to uncover. Did you manage to report a bug yet?
Precisely, that’s where the issue seems to be. I haven’t resolved it yet, but it appears to be related to object serialization within some internal Unity event. In this event, a property is requested from object A and a method is called on a null object. I’ve submitted an error report, but they informed me they couldn’t reproduce the error and asked for a video. Now I’m waiting for a new response.
Anyway, I appreciate your support, and I’d like to know if you could share how you managed to reach the point you mentioned. I was able to make progress on the problem mainly through trial and error, trying things blindly in my project’s code and observing which changes affected the likelihood of a crash.
I’ve never encountered a problem like this before, and all this talk of .dmp files is quite perplexing.
Can you share the bug number? They are probably asking for a video to make sure they are executing the same steps you are.
a lot of reading source code and trying to understand what various variables on the stack were pointing to… Unfortunately it’d be extremely hard to find that without source code.