In addition to the GPU check, RoTTR checks for D3D11 DLSS support as well (regardless of chosen graphics API). Basically, it checks if D3D11 DLSS functions exist, gets parameters from GetParameters and shuts down DLSS. So stub functions for Init, GetParameters and Shutdown is enough (unfortunately, I couldn't find a better way to bypass this check). While Init and Shutdown functions can just return success, GetParameters has to create the parameters object, since the game tries to get some parameters and otherwise there will be an exception. So the file CyberFsrDx11.cpp (or you can choose any other name, it doesn't matter) may look like this:
To bypass checking for other D3D11 DLSS functions, address 0xCE0768 needs to be patched with 00 00 which basically allows to return success in case of error.
Bypassing GPU check can be done by patching 0xC846D8 with EB.
In addition to the GPU check, RoTTR checks for D3D11 DLSS support as well (regardless of chosen graphics API). Basically, it checks if D3D11 DLSS functions exist, gets parameters from GetParameters and shuts down DLSS. So stub functions for Init, GetParameters and Shutdown is enough (unfortunately, I couldn't find a better way to bypass this check). While Init and Shutdown functions can just return success, GetParameters has to create the parameters object, since the game tries to get some parameters and otherwise there will be an exception. So the file
CyberFsrDx11.cpp
(or you can choose any other name, it doesn't matter) may look like this:To bypass checking for other D3D11 DLSS functions, address
0xCE0768
needs to be patched with00 00
which basically allows to return success in case of error. Bypassing GPU check can be done by patching0xC846D8
withEB
.Game version: v1.0 build 1027.0_64 from EG