https://bugs.winehq.org/show_bug.cgi?id=56074
Bug ID: 56074 Summary: Klingon Honor Guard broken mouse input when running full screen. Product: Wine Version: 9.0-rc3 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: fuzzy987321@gmail.com Distribution: ---
Created attachment 75740 --> https://bugs.winehq.org/attachment.cgi?id=75740 Log when running the game in a clean prefix.
When running the game Klingon Honor Guard in full screen mode, the mouse input is broken and unusable. Moving the mouse seems to work for a second, then gets 'stuck': the game ignores all input from both keyboard and mouse for a few seconds, then all inputs from this time seem to come through all at once. Input remains frozen for a few more seconds, after this mouse input goes back to normal for a bit, only to get stuck again a few seconds later. If I don't touch the mouse at all, keyboard input seems to work fine and the game runs as normal. The game doesn't freeze when the input gets stuck - you can see the environment continue to move as normal, you just can't interact with it. If a movement button is held down while the input gets stuck because you move the mouse, the game behaves as if the button continues to be held down while ignoring new inputs.
If running the game in windowed and software mode by modifying the [Engine.Engine] section of the Khg.ini file and changing all of the *RenderDevice entries to say SoftDrv.SoftwareRenderDevice and then forcing to game to windowed mode by changing StartupFullscreen to False under the [WinDrv.WindowsClient] section the issue goes away. Even when setting a high custom resolution. Of course the game runs in a window without hardware acceleration then.
When using OGlDrv.OpenGLRenderDevice instead, the game seems to always run full screen and only accepts a few predefined 4:3 resolutions such as 1024x768 and 1280x1024. Depending on settings, the input can be made to work, but usually is broken as described above. Setting UseFullscreen to False under the [OGlDrv.OpenGLRenderDevice] section along with setting StartupFullscreen to False under the [WinDrv.WindowsClient] section and specifying a resolution this renderer is compatible with seems to make the input work sometimes, even though the game still runs full screen.
The D3DDrv.D3DRenderDevice option seems completely broken rendering the game stretched vertically or squished horizontally in the top left corner of the screen while ignoring all input. The game seems to open 2 different windows in this mode - a full screen one that the game renders in and a second transparent one with only the window decorations visible. Second one responds at least to keyboard input. If alt-tabing to this second one the game quickly refocuses the first, so this isn't at all usable. But this is likely a different issue.
There is a free demo of the game available and the issue can be reproduced there.
Link to free demo: https://archive.org/details/StarTrekTheNextGenerationKlingonHonorGuard_1020