LukeRoss00 / RVR

27 stars 2 forks source link

sending Ctrl+Num1 keystrokes? (C2077, RVR v11.0 early access) #2

Closed alaestor closed 5 months ago

alaestor commented 5 months ago

CTRL and Numpad 1 keystrokes are sent every few seconds when the Real VR mod's DLL is loaded in Cyberpunk 2077.

Workaround: unbind affected keys so there are no noticeable effects while playing.

I ruled out the possibility of it being one of my reshade FXs or another of my C77 mods; the behavior is specific to the dxgi.dll I got off patreon (but haven't ruled out conflicts). My subscription expired so I'm unable to check the discussions on the patreon post to see if this is a known issue, but my reddit post hasn't had any luck so I'm trying here.

I doubt this is a common problem given that CTRL is a common keybind, so I probably managed to break it some how... Any troubleshooting steps or ideas as to what may be causing this? Thanks for your time.

LukeRoss00 commented 5 months ago

Hi @alaestor

The behavior is by design and is intended to work around an issue in the Oculus runtime. For some reasons, the runtime insists randomly activating ASW even when it's been turned off explicitly by the user (see for example https://www.reddit.com/r/virtualreality/comments/17a3r98/how_do_i_completly_disable_asw/), and ASW is incompatible with my mods because it doesn't work with alternate eye rendering.

Also, the Oculus runtime doesn't provide any way to disable ASW programmatically (except by using the debug tool, which is hit or miss as described in the linked Reddit post).

So, when I detect that ASW is enabled, every 10 seconds I send the keyboard shortcut you detected, which is the only reliable way of forcing the runtime to disable ASW and allow for full frame rate.

For the vast majority of users the shortcut goes straight to the Oculus runtime and is never detected by the game (otherwise your character would be crouching all the time!). I don't know why in your case the keystroke leaks through to CP2077. As another workaround besides unbinding the keys, you might try disabling ASW in the Oculus debug tool (or with OTT which in turn uses the debug tool). If the mod sees that ASW is not available, it won't send the keystrokes.

alaestor commented 5 months ago

LOL awesome; I can appreciate having to implement weird fixes to problems that shouldn't exist. I'm pretty sure the leaking in my case is probably due to some random aspect of my rather insane Windows environment, so I'll close this.

Thanks for the explanation!