I finally managed to get the game to start on PC again to a point where I’m actually seeing the main menu (click to play). When I select my character the game goes to the loading screen and crashes shortly thereafter before getting into the actual game. The game used to work until about 6 weeks ago.
I have reinstalled the game, deleted cache folders, battle net cache, Nvidia cache, rebooted my PC, tried the newest Nvidia drivers, reverted to a September version, checked Windows updates, closed all programs, uninstalled Discord, uninstalled the Nvidia studio, etc. So basically I think I pulled every trick in the book.
Today I managed to actually get a crash with an error message:
“cannot allocate memory program is going to exit”
I was lucky enough to have my TaskManager open and saw that there was a memory spike to 16 GB when the game crashed. I have tried to replicate this since then and tried manually increasing the size of the page file - no luck getting into the game nor getting the error message again. Currently the RAM isn’t even spiking anymore before the crash.
Any ideas?
I’m running an i5-10400, RTX 3060, 16GB RAM, Win11 64 bit.
DXDiag shows a few entries for the game…
Diagnostics
Windows Error Reporting:
+++ WER0 +++:
Fault bucket 1972242528194115322, type 5
Event Name: BEX64
Response: Not available
Cab Id: 0
Problem signature:
P1: DiabloImmortal.exe
P2: 0.0.0.0
P3: 674c6dc6
P4: DiabloImmortal.exe
P5: 0.0.0.0
P6: 674c6dc6
P7: 000000000147390d
P8: c0000409
P9: 0000000000000007
P10:
+++ WER9 +++:
Fault bucket 1972242528194115322, type 5
Event Name: BEX64
Response: Not available
Cab Id: 0
Problem signature:
P1: DiabloImmortal.exe
P2: 0.0.0.0
P3: 674c6dc6
P4: DiabloImmortal.exe
P5: 0.0.0.0
P6: 674c6dc6
P7: 000000000147390d
P8: c0000409
P9: 0000000000000007
P10:
→ Event BEX64 is a buffer overflow.
Found entries in the Windows Event Viewer:
Faulting application name: DiabloImmortal.exe, version: 0.0.0.0, time stamp: 0x674c6dc6
Faulting module name: DiabloImmortal.exe, version: 0.0.0.0, time stamp: 0x674c6dc6
Exception code: 0xc0000409
Fault offset: 0x000000000147390d
Faulting process id: 0x4910
Faulting application start time: 0x1DB50BC07C74AFF
Faulting application path: C:\Program Files (x86)\Diablo Immortal\Engine\Binaries\Win64\DiabloImmortal.exe
Faulting module path: C:\Program Files (x86)\Diablo Immortal\Engine\Binaries\Win64\DiabloImmortal.exe
Report Id: 10b4a5ce-6c8c-44e4-89c8-00c6e72b98be
Faulting package full name:
Faulting package-relative application ID:
This was the only error remotely around the time of the crash so we can probably rule out a driver conflict or an incompatibility.
Edit
After tinkering with ProcMon I was able to find out pretty much what happened right before the crash:
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\38\386502bc-5f6a-4b81-a5b0-f660d7d1a0c7.6 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
---|---|---|---|---|---|---|
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources6.mpk | SUCCESS | Offset: 265,969,815, Length: 12,601 |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\7e\7e2e1978-7ecd-4e8c-b218-cda5f26c6fc7 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\23\23f3b6ba-915c-483b-bbba-a6bca70e145f | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources13.mpk | SUCCESS | Offset: 525,744,973, Length: 4 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources4.mpk | SUCCESS | Offset: 74,771,822, Length: 4 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources13.mpk | SUCCESS | Offset: 525,744,977, Length: 1,230 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources4.mpk | SUCCESS | Offset: 74,771,826, Length: 851 |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\a8\a83a1bcf-db14-418d-9153-8f5cdf6de5ff | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\e9\e94a41af-554c-4282-8d7e-554f9288267a | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources18.mpk | SUCCESS | Offset: 3,707,695, Length: 4 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources18.mpk | SUCCESS | Offset: 3,707,699, Length: 4,094 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources25.mpk | SUCCESS | Offset: 307,234,475, Length: 4 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources25.mpk | SUCCESS | Offset: 307,234,479, Length: 459 |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\38\38b08b90-146f-4358-bf62-7daf30d54a2f | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources6.mpk | SUCCESS | Offset: 285,824,260, Length: 4 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources6.mpk | SUCCESS | Offset: 285,824,264, Length: 592 |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\60\60428daa-10d7-4687-b95e-f011cf5570ba.5 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\60\60428daa-10d7-4687-b95e-f011cf5570ba.6 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\4e\4e590f69-9c2e-4f8c-b0e9-8153f69395e1 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources10.mpk | SUCCESS | Offset: 404,243,654, Length: 119,539 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources8.mpk | SUCCESS | Offset: 525,894,813, Length: 4 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources8.mpk | SUCCESS | Offset: 525,894,817, Length: 674 |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\3e\3eacf589-e8d9-4583-85b7-1aef738b5f4f.5 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\18\182c7a90-fbf0-4b0d-82f7-e32d4b2fefa1 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources2.mpk | SUCCESS | Offset: 727,796,452, Length: 4 |
39:25.2 | DiabloImmortal.exe | 19072 | ReadFile | C:\Program Files (x86)\Diablo Immortal\Package\MPK\Resources2.mpk | SUCCESS | Offset: 727,796,452, Length: 204 |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\3e\3eacf589-e8d9-4583-85b7-1aef738b5f4f.6 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.2 | DiabloImmortal.exe | 19072 | CreateFile | C:\Program Files (x86)\Diablo Immortal\LocalData\Patch\19\19d3f5e9-58a2-4925-92c8-465788f3d495.5 | NAME NOT FOUND | Desired Access: Generic Read, Disposition: Open, Options: Synchronous IO Non-Alert, Non-Directory File, Attributes: N, ShareMode: Read, Write, AllocationSize: n/a |
39:25.4 | DiabloImmortal.exe | 19072 | UDP Receive | JanGaming.fritz.box:54581 → 20.79.51.90:4030 | SUCCESS | Length: 39, seqnum: 0, connid: 0 |
39:25.4 | DiabloImmortal.exe | 19072 | Process Create | C:\WINDOWS\system32\WerFault.exe | SUCCESS | PID: 368, Command line: C:\WINDOWS\system32\WerFault.exe -u -p 19072 -s 4612 |
So basically it’s trying to read a bunch of patch files that aren’t there and then it communicates with the server, creates the dump report via WerFault.exe and ultimately closes all threads.
I have already tried to repair the client with no luck. As far as I can tell with my limited knowledge either the update isn’t downloaded in full or it isn’t applied correctly. The game then dumps because it’s trying to access a resource from the patch that doesn’t exist.
I have already temporarily turned off Windows Threat Protection. I don’t have any other protection software running. I checked any processes that might have a handle on DiabloImmortal.exe - none there, all clean.
If you’re curious as to what I have tried in detail, it’s documented here:
https:// chatgpt. com/share/67620aff-3ca0-8000-aed9-4f1b6a99811e