Whisky-App / Whisky

A modern Wine wrapper for macOS built with SwiftUI
https://getwhisky.app
GNU General Public License v3.0
12.32k stars 260 forks source link

Civilization VI Mouse Clicking Does Not Work (and also a possible fix) #1169

Open IdyllicHappiness opened 3 days ago

IdyllicHappiness commented 3 days ago

Description

Description

When Civ VI is booted up and you reach the main menu, mouse clicks are not registered in the game.

N.B. Issue creation page only allows me to select MacOS 14 and Whiskey 2.3.2 in the dropdowns. I'm actually using MacOS 15.0.1 and Whisky 2.3.3.


Possible Fix

Looking online, it seems to be a known problem.

https://github.com/Frogging-Family/wine-tkg-git/issues/1163 https://bugs.winehq.org/show_bug.cgi?id=51537

However, as mentioned on the winehq.org page, Valve did implement a fix into Proton.

https://github.com/ValveSoftware/wine/commit/ce0c255a1fd40bfa9a1de6f6765b83a4dcf9d0dd

In a fork, I implemented the core of that fix, and it seems to work! Civ now responded to mouse clicks, and I was able to run the game smoothly.

https://github.com/Whisky-App/wine/compare/7.7...IdyllicHappiness:wine-civ6-fix-test:7.7

Some caveats:

Steps to reproduce

My steps were

  1. On latest Whiskey (2.3.3 at time of writing) create a container and install Steam
  2. Install Civ VI
  3. Run Civ VI

Expected behaviour

Mouse clicks to be registered by the game.

Logs

Whisky Version: 2.3.3 Date: 2024-10-11T20:10:15Z macOS Version: 15.0.1

Bottle Name: Steam Bottle URL: /Users/user/Library/Containers/com.isaacmarovitz.Whisky/Bottles/F492A9E3-C23D-49E6-87DF-ED7BBA0099BB

Wine Version: 7.7.0 Windows Version: win11 Enhanced Sync: none

Metal HUD: false Metal Trace: false

Arguments: start /unix /Users/user/Library/Containers/com.isaacmarovitz.Whisky/Bottles/F492A9E3-C23D-49E6-87DF-ED7BBA0099BB/drive_c/Program Files (x86)/Steam/steam.exe

Environment: { "DXVK_ASYNC" = 1; "GST_DEBUG" = 1; WINEDEBUG = "fixme-all"; WINEPREFIX = "/Users/user/Library/Containers/com.isaacmarovitz.Whisky/Bottles/F492A9E3-C23D-49E6-87DF-ED7BBA0099BB"; }

wineserver: using server-side synchronization. 2024-10-11 21:10:18.303 wine64-preloader[95430:1653378] +[IMKClient subclass]: chose IMKClient_Legacy 2024-10-11 21:10:18.568 wine64-preloader[95426:1653361] +[IMKClient subclass]: chose IMKClient_Legacy 2024-10-11 21:10:18.941 wine64-preloader[95457:1653489] +[IMKClient subclass]: chose IMKClient_Legacy 0100:err:setupapi:SetupDefaultQueueCallbackW copy error 1812 L"@C:\windows\system32\drivers\wineusb.sys,-1" -> L"C:\windows\inf\wineusb.inf" 2024-10-11 21:10:20.754 wine64-preloader[95525:1653665] +[IMKClient subclass]: chose IMKClient_Legacy wine: configuration in L"/Users/user/Library/Containers/com.isaacmarovitz.Whisky/Bottles/F492A9E3-C23D-49E6-87DF-ED7BBA0099BB" has been updated. 012c:err:ole:com_get_class_object no class object {294935ce-f637-4e7c-a41b-ab255460b862} could be created for context 0x17 02bc:err:seh:call_stack_handlers invalid frame 000000000021F9E8 (0000000000022000-0000000000120000) "Failed to dlopen D3DMetal"), function D3DRMDispatch_Init_block_invoke, file shared.mm, line 800. 02d4:err:seh:call_stack_handlers invalid frame 000000000021F9E8 (0000000000022000-0000000000120000) 02d4:err:seh:NtRaiseException Exception frame is not in stack limits => unable to dispatch exception. "Failed to dlopen D3DMetal"), function D3DRMDispatch_Init_block_invoke, file shared.mm, line 800. 02f4:err:seh:NtRaiseException Exception frame is not in stack limits => unable to dispatch exception. _invoke, file shared.mm, line 802024-10-11 21:14:20.500 wine64-preloader[3402:1673826] +[IMKClient subclass]: chose IMKClient_Legacy 035c:err:kerberos:kerberos_LsaApInitializePackage no Kerberos support, expect problems 032c:err:ole:com_get_class_object no class object {aa509086-5ca9-4c25-8f95-589d3c07b48a} could be created for context 0x17

What version of Whisky are you using?

2.3.2

What version of macOS are you using?

Sonoma (macOS 14)

Issue Language

zote364 commented 1 day ago

do note that Civ 6 can run natively on macos