robloxWineBuildGuide icon indicating copy to clipboard operation
robloxWineBuildGuide copied to clipboard

Roblox cannot grab cursor on Wayland

Open Nolij opened this issue 2 years ago • 9 comments

Ironically the inverse of the original mouse issue exists on Wayland: the cursor will not be locked by Roblox under any circumstances. Right clicking will tell Roblox the cursor is locked but the cursor will continue to move around freely. It will be stopped by the edge of the monitor, and it will occasionally "warp" back to the locked position causing the camera to snap quickly in ways that make the game almost unplayable.

This likely requires a specific patch for Roblox. Notable details:

  • Using Proton version tested to confirmed be able to grab my cursor in SpyParty on Steam is not able to grab my cursor in Roblox. Vanilla Wine also behaves the same way
  • The Roblox mouse patch actually has no effect on any behaviour at all in Wayland
  • This happens both with and without staging
  • Using the experimental Wayland patch (with modified Grapejuice to apply custom environment variables to launch using the Wayland driver) does not fix the issue (also has other issues, but doesn't matter since it doesn't fix it).
  • Subscribing to the +cursor channel with WINEDEBUG shows no notable differences between X11 and Wayland on the same system and Wine build
  • Using _plain_version="wine-6.17" and _use_staging="false" for build (after much effort to fix errors during build) the issue still occurs, so it's unlikely an older Wine version will work (going much further back than 6.17 is difficult to get to build with TKG, and not long before this version Roblox itself would start having issues in Wine, so I don't see that as worth the time putting more effort in to. Someone else is free to though, would love to be wrong)
  • There are patches mentioning cursor grabbing in https://github.com/openglfreak/wine-tkg-userpatches, but I have yet to get this to build successfully, so I do not know if that will work. Attempting to just use all of the ones with grab and such in the name did not work. I am trying to filter through them to see which ones I can get working.

Nolij avatar Jun 07 '22 22:06 Nolij