Crash fixes from Mevlock's dev builds (he works on the port with me, thanks a lot!), with a few from drakolordx7.
Fixes
- Uncharted 1 and 2: crash on
pAction != NULLat high frame rates (often in fights right after a jump). The game keeps Drake's moves in a list with room for 64; at 144 FPS it could fill up. Now there is room for 256. - Crash on
cmdBuf.m_bInUse == false/m_workerThreadIndex == GetCurrentWorkerThreadIndex()on CPUs with 4 to 6 cores (#620). A game job that was drawing could continue on another thread than the one it started on. It now waits a moment on its own thread first. This is on for CPUs with up to 12 threads (where the crash happens); bigger CPUs don't need it and would lose frame rate. With that fixed, "PS4 thread priorities" is off by default again (it only made the crash rarer). You can still turn it on in the Fixes page. - Uncharted 2 and 3: aiming blurred everything behind Drake at resolutions other than 1920x1080 (1440p, 4K, ultrawide). The aiming focus now looks at the middle of the screen at every resolution.
- Uncharted 3: rows of bright blue dots on the chateau walls with DLSS, FSR or XeSS.
- Uncharted 3: blotches in the bloom in some places.
- AMD Radeon RX 9070 XT: crash at start ("Failed to create graphics pipeline"). When the driver refuses a pipeline, it is now made again without the pipeline cache.
- Two more crash guards for broken texture and resource settings while a level loads.
Launcher
- The last 5 game logs are kept (
last_run.log,last_run.1.log...last_run.4.log), so starting again after a crash doesn't overwrite the log that shows it.
Update: the launcher offers it when it starts, or unpack uncharted-windows.zip over your old folder. Saves and settings are kept.
⚠️ Never paste "fix commands" from GitHub issues, those are malware.
SuperMedo