Not long ago I was strugling with the crash that sends you back to windows with the message "Problem reading game content. Please close Destiny 2, run Scan and Repair in Blizzards Battle.net then restart Destiny 2 to try again."
I finally found out it wasn't an issue with my SSD but with my RAM, somehow it became faulty after 30 days of so playing destiny so at first I honesly though it was not an issue with my hardware. Recently someone contacted me asking how I managed to fix that so I decided to put this guide here for him/her and anyone who might need it in the future.
After pinpointing the issue I realised that only the equivalent of some KB was faulty so instead of replacing the faulty stick I looked for solution similar to Linux where I could "block out" that sectors. At first searches pointed out that windows does not have that functionality but with some digging I found out there is a workaround for it hidden in windows (windows 10 at least).
Method inside the spoiler:
[spoiler]1. First we need to identify the faulty sectors, probably more than one way to do this but I would recomend not even trying any software claiming to be capable of this while running windows.
In my case I used Memtest86 which creates a bootable pendrive so you boot into Memtest instead of windows and run its scan (you might need to change your motherboard boot sequence options).
It runs up to 4 times and takes quite some time so be patient, if the issue is with your ram you should see repeatedly errors for the same sectors, write those down.
2. Once you identified the sectors "translate" them into "windows memory pages". this is as simple as removing the last 3 digits and adding 0x infront, for example 5C4BA400 becomes 0x5c4ba.
3. Afterwards turn of the PC remove the pendrive and boot into windows normally. We are now gonna use something called BCDEdit. for that run the "Command Prompt" as admin and type in the following commands:
3.1 First run this command to make a backup file just in case
[i]C:\WINDOWS\system32>bcdedit /export C:\exportBCDfile[/i]
3.2 Check if your windows already has some memory blocked just in case
[i]C:\WINDOWS\system32>bcdedit /enum {badmemory}[/i]
3.3 Then type in the following command with the memory pages you wrote down (in this example you can see my 2 faulty sectors, replace them with yours, the list can be way longer (Someone did 4096 pages at once).
[i]C:\WINDOWS\system32>bcdedit /set {badmemory} badmemorylist 0x5C4BA 0x5C5AA[/i]
Finally you can repeat the command in step 3.2 to check if the list is stored properly. Then restart windows and try destiny long enough to confrim it worked which I hope so cause this drove me nuts :S[/spoiler]
-
So what if I have hit the max amount of errors in memtest86. Kinda -blam!-ed up but idk what to so
-
Edited by CJ WILKINS: 1/11/2019 2:36:18 PMI was getting the same error message and crash earlier this week and was stumped after finding my SSD and RAM were fine (according to SMART diagnostics and Memtest). Before all of this I had been playing Destiny 2 for over a year with almost no crashes. If a Scan & Repair (or even reinstall) doesn't work, and your drive/RAM appears to be fine, then I'd recommend trying Windows built-in System File Checker and DISM to see if they are able to fix any corrupt system files. If it is unable to repair files, a reinstall of Windows would have the same effect (although these particular tool can end up with false positives sometimes, so reinstall would be a last resort). For me, this appeared to fix the issue with games (namely Destiny 2 and Battlefield V) frequently crashing on my system. On my system it found some corrupt files which I assume got corrupted because of a random bluescreen and forced shutdown the day before all the crashes. Anyways, thank you for making this post, hopefully it helps some other people with troubleshooting this specific error message since it seems like it can come from many sources (corrupt game files, faulty drive or RAM, or in my case, corrupted Windows files)