RPCS3 Forums

Full Version: Diablo III: Reaper of Souls – Ultimate Evil Edition [NPEB02026]
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

dio

System info:
- Windows 10 version 1803 build 17134.228 (latest as of writing)
- RPCS3 version 0.0.5 build 7228 (latest as of writing) (clean install)
- NVIDIA Driver Version 398.82 (latest as of writing)
- CPU: i7-7700HQ @ 2.8 Ghz (4c/8t)
- RAM: 16GB DDR4
- GPU: GTX-1060M (6GB)

Abstract:
Tested it [NPEB02026] with the v1.03 game update applied. Goes Ingame and performs well on my machine between 35 and 60 fps in the starting area, might even be Playable. It's relatively stable, although some random race condition related hangs might still be present.
[attachment=9856]
One user reported on Discord that it doesn't work for him no matter the settings, so further investigation might still be needed.
[attachment=9857]

Game Notes:
- Default settings and Vulkan backend is recommended. (Vulkan performs significantly better for me, between +50% & +100% faster.)
- You'll need to force triple-buffered vsync from your driver to eliminate the heavy screen tearing.
- On the first launch of the game, performance will be abysmal, and upon reaching ingame, it'll hang due to the amounts of shaders needed to compile. It'll not come back and you will need to restart it. Works fine afterwards, with great performance. I couldn't reproduce it due to the driver also caching these shaders and me not knowing how to empty that cache.
- There's a short hang during the 'save icon screen' and when loading a save and switching to the 'game loading screen'.
- The game has sound issues if it's not reaching it's target framerate. (Turning off SPU loop detection doesn't solve this.)
- After spawning ingame, you will need to wait a little before the performance returns to normal. (about 6 seconds)
- The game is extremely RSX heavy, based on the Performance Overlay.
- Produces a 50K+ SPU Cache with the 'Safe' blocksize in the starting area (and around 16K with 'Mega', and around 1.2K with 'Giga').
- SPU blocksize 'Giga' requires SPU cache disabled and cleared. Might cause hangs, but still works better than SPU Mega.
- SPU blocksize 'Mega' doesn't require SPU cache disabled and cleared, but hangs easily.
- SPU blocksize 'Safe' doesn't require SPU cache disabled and cleared either, and seems relatively stable, but can still hang occasionally. Might be a race condition, needs further investigation. Also notable, that with both on my dirty and clean RPCS3 build, these hangs were only present with SPU loop detection enabled, and never with it disabled (might be unrelated).
- The game is not fully playable with mouse and keyboard yet, due to the difficulties of navigating some in-game menus.
- Resolution scaling works fine, though due to the low quality of the UI elements, the displayed HUD will look poor.
- Overriding the default 'Auto' preferred SPU thread settings is not necessary.
- The game doesn't support SPU LLVM, no matter the blocksize, as performance is too poor to go past the menus. I noticed that this might be due to the performance tanking heavily when a pattern of messages seem to loop infinitely, containing mentions of some "const SHUFB mask" present with all blocksizes. All logs attached.
- Accurate xFloat is needed for the game to render major parts of 3D stuff. (only tested in the menus, see the previous point about performance)

Files:
- 'NPEB02026_d3_ingame.png': Image proof of the game going ingame and performing well.
- 'NPEB02026_d3_discord_userCrash.png': Image proof of the Discord conversation of some user still having issues with the recommended settings.
inside NPEB02026__d3_logs1.7z:
- 'NPEB02026_d3_groundTruth.7z': A recommended settings short test with SPU Safe (ASMJIT). Works seemingly reliably.
- 'NPEB02026_d3_hangOnExitForcedClosed.7z': Playing with the recommended settings for 10 minutes, then trying to quit. Hung before it could quit, I had to force RPCS3 to shut down.
- 'NPEB02026_d3_spuMegaPurpleHang.7z': Tried playing with SPU blocksize 'Mega' (ASMJIT). While SPU Mega didn't need the SPU Cache disabled and cleared, it did crash on me after a minute or so gameplay. I could close the game properly, no crash.
- 'NPEB02026_d3_spuMegaPurpleHangOther.7z': Tried seeing if the SPU Mega hang is reproducible. It did hang on the same spot, but with a different error (memory access violation). I could close the game with some fighting, so I cannot really say it crashed.
- 'NPEB02026_d3_spuGigaCacheHang.7z': Going into menu with SPU Giga (ASMJIT) then relaunching without turning off and clearing the SPU Cache, then hanging before the 'save icon screen'. I waited for 30 seconds then quit. No crash.
inside NPEB02026__d3_logs2.7z:
- 'NPEB02026_d3_spuLLVMmsgLoopNoxFloatSafe.7z': Going into menu with SPU LLVM (Safe blocksize), with similar messages looping and tanking performance to dust. Accurate xFloats were not enabled, thus the 3D behind the 'press something to start' screen didn't render.
- 'NPEB02026_d3_spuLLVMmsgLoopNoxFloatMega.7z': Same as the Safe version, but with more closely looping SHUFB messages and still awful performance.
- 'NPEB02026_d3_spuLLVMmsgLoopNoxFloatGiga.7z': Peak SHUFB message spam and meltdown.
- 'NPEB02026_d3_spuLLVMmsgLoopGigaAccuratexFloat.7z': Same, but with proper 3D rendering in the menus due to xFloats.

PS.: Didn't know about the existence of separate SPU logs, might revisit this sometime and add some of those too if needed.