Whisky-App / Whisky

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

[Bug]: Risk of Rain 2 Multiplayer crashing #738

Open Ninjyy opened 7 months ago

Ninjyy commented 7 months ago

Description

I recently purchased Risk of Rain 2 for christmas, bc I found out I could run some windows games through whiskey. I played through the game's Singplayer with no issues whatsoever, it ran perfectly. However, whenever I hit multiplayer to play with my friend, the game freezes and is softlocked. I have tried lowering every graphic setting to as low as it possibly can, and trying to run it while having crossplay both enabled and disabled, but no matter what it will not let me play multiplayer

Steps to reproduce

Open RR2 Hit "Multiplayer"

OR

Open RR2

Accept invite from steam friend to join.

Expected behaviour

The game to put me into a lobby with my friend, so we can play the game together

Logs

Unhandled exception: page fault on read access to 0x00310031002d00b1 in 64-bit code (0x00000062bbe894).
Register dump:
 rip:0000000062bbe894 rsp:000000000010ab68 rbp:00000000217ed3d0 eflags:00000202 (   - --  I   - - - )
 rax:0000000100d7c9c8 rbx:0000000067816ed0 rcx:00310031002d0079 rdx:00000001672384a0
 rsi:0000000062bbe890 rdi:00000001672384a0  r8:0000000000000249  r9:0000000000357ee0 r10:0000000000250138
 r11:000000000010aba0 r12:0000000100d78a20 r13:0000000000000000 r14:000000000010ac60 r15:0000000100d789f8
Stack dump:
0x0000000010ab68 <wine-loader>+0x10ab68:  0000000062b32399 00000000217ed5a0
0x0000000010ab78 <wine-loader>+0x10ab78:  fffffffeba5cf338 00000001672384a0
0x0000000010ab88 <wine-loader>+0x10ab88:  0000000062e9954c 000000000010a990
0x0000000010ab98 <wine-loader>+0x10ab98:  0000004000000001 0000000100d7c9c8
0x0000000010aba8 <wine-loader>+0x10aba8:  0000000062b6b804 0000000100d78a20
0x0000000010abb8 <wine-loader>+0x10abb8:  00000001672384a0 0000000000000003
0x0000000010abc8 <wine-loader>+0x10abc8:  0000000062b6a31d 0000000067a42478
0x0000000010abd8 <wine-loader>+0x10abd8:  0000000000000039 0000000067a42448
0x0000000010abe8 <wine-loader>+0x10abe8:  0000000062bc635c 0000000100000000
0x0000000010abf8 <wine-loader>+0x10abf8:  0000000062bbcfb6 0000000000000000
0x0000000010ac08 <wine-loader>+0x10ac08:  0000000000000000 000000002183d0f8
0x0000000010ac18 <wine-loader>+0x10ac18:  0000000063727dec 0000000100d7cd70
Backtrace:
=>0 0x00000062bbe894 MonoFixupCorEE+0x402b4() in mono-2.0-bdwgc (0x000000217ed3d0)
  1 0x00000062b32399 in mono-2.0-bdwgc (+0x2399) (0x000000217ed3d0)
  2 0x00000062b6b804 mono_array_class_get+0x5234() in mono-2.0-bdwgc (0x000000217ed3d0)
  3 0x00000062b6a310 mono_array_class_get+0x3d40() in mono-2.0-bdwgc (0x00000000000039)
  4 0x00000062ba052e MonoFixupCorEE+0x21f4e() in mono-2.0-bdwgc (0x00000000000039)
  5 0x00000062b9feaa MonoFixupCorEE+0x218ca() in mono-2.0-bdwgc (0000000000000000)
  6 0x00000062ba0e4b MonoFixupCorEE+0x2286b() in mono-2.0-bdwgc (0x00000063727dec)
  7 0x00000062ba1bef MonoFixupCorEE+0x2360f() in mono-2.0-bdwgc (0x0000000a000a14)
  8 0x00000062ba188f MonoFixupCorEE+0x232af() in mono-2.0-bdwgc (0000000000000000)
  9 0x00000062c79b10 MonoFixupCorEE+0xfb530() in mono-2.0-bdwgc (0x0000000010b0b0)
  10 0x00000062c8d70d MonoFixupCorEE+0x10f12d() in mono-2.0-bdwgc (0x0000000010b0b0)
  11 0x00000062c70592 MonoFixupCorEE+0xf1fb2() in mono-2.0-bdwgc (0x000001677c13f8)
  12 0x00000062c6ce00 MonoFixupCorEE+0xee820() in mono-2.0-bdwgc (0x0000010522de40)
  13 0x00000062ca7502 MonoFixupCorEE+0x128f22() in mono-2.0-bdwgc (0x0000000010cb70)
  14 0x00000062c546e9 MonoFixupCorEE+0xd6109() in mono-2.0-bdwgc (0000000000000000)
  15 0x00000062c59301 MonoFixupCorEE+0xdad21() in mono-2.0-bdwgc (0x00000063372d20)
  16 0x00000062c5d722 MonoFixupCorEE+0xdf142() in mono-2.0-bdwgc (0000000000000000)
  17 0x00000062d399e6 MonoFixupCorEE+0x1bb406() in mono-2.0-bdwgc (0x0000000010e730)
  18 0x00000062d3ba04 MonoFixupCorEE+0x1bd424() in mono-2.0-bdwgc (0x0000000010e9c0)
0x00000062bbe894 mono-2.0-bdwgc+0x8e894: cmpq   %rax,0x00000000000038 <wine-loader>+0x38(%rcx)
Modules:
Module  Address                 Debug info  Name (111 modules)
ELF 0000000000000000-00000000001fc000   Stabs           <wine-loader>
PE  0000000020e10000-0000000020f9f000   Deferred        gameoverlayrenderer64
PE  0000000020fa0000-0000000020fb1000   Deferred        psapi
PE  0000000062b30000-000000006329e000   Export          mono-2.0-bdwgc
PE  0000000066610000-0000000066813000   Deferred        dxgi
PE  0000000066610000-0000000066813000   Deferred        d3d11
PE  00000000669c0000-0000000066a4d000   Deferred        iphlpapi
PE  0000000066a50000-0000000066a9c000   Deferred        dnsapi
PE  0000000066aa0000-0000000066ac0000   Deferred        nsi
ELF 0000000068036000-000000006803a000   Deferred        <wine-loader>
PE  0000000068094000-00000000680a0000   Deferred        libwine.1.0.dylib
ELF 00000000680b5000-00000000680c5000   Deferred        user32.so
ELF 00000000680db000-00000000681cb000   Deferred        ntdll.so
PE  000000006848d000-00000000684a9000   Deferred        libd3dshared.dylib
ELF 00000000686b7000-00000000686c7000   Deferred        ws2_32.so
ELF 00000000686ea000-0000000068702000   Deferred        bcrypt.so
ELF 0000000068717000-000000006872b000   Deferred        crypt32.so
PE  0000000068738000-000000006874c000   Deferred        libz.1.2.13.dylib
PE  0000000068767000-000000006877c000   Deferred        libbz2.1.0.8.dylib
PE  000000006879a000-00000000687a6000   Deferred        libbrotlidec.1.0.9.dylib
PE  00000000687c6000-00000000687f2000   Deferred        libpng16.16.dylib
PE  0000000068836000-0000000068845000   Deferred        libintl.8.dylib
ELF 0000000068869000-0000000068a71000   Deferred        win32u<elf>
  \-PE  0000000068870000-0000000068a2d000   \               win32u
PE  0000000068a71000-0000000068b18000   Deferred        libfreetype.6.dylib
PE  0000000068bf6000-0000000068c18000   Deferred        libbrotlicommon.1.0.9.dylib
PE  0000000068c20000-0000000068c30000   Deferred        libtasn1.6.dylib
PE  0000000068c52000-0000000068c84000   Deferred        libidn2.0.dylib
PE  0000000068c9c000-0000000068ca5000   Deferred        libffi.8.dylib
ELF 0000000068cc5000-0000000068e71000   Deferred        opengl32<elf>
  \-PE  0000000068cd0000-0000000068e21000   \               opengl32
PE  000000006b03e000-000000006b099000   Deferred        libnettle.8.6.dylib
PE  000000006b0f3000-000000006b143000   Deferred        libhogweed.6.6.dylib
PE  000000006b19b000-000000006b356000   Deferred        libgnutls.30.dylib
PE  000000006b54c000-000000006b6ae000   Deferred        libp11-kit.0.dylib
PE  000000006b825000-000000006b9c7000   Deferred        libunistring.5.dylib
PE  000000006ba38000-000000006ba50000   Deferred        libobjc-trampolines.dylib
PE  000000006bab6000-000000006bb34000   Deferred        libgmp.10.dylib
PE  000000006bc77000-000000006bcab000   Deferred        libdxccontainer.dylib
PE  000000006bcee000-000000006bdff000   Deferred        libiconv.2.dylib
ELF 000000006be3a000-000000006bf1a000   Deferred        winemac<elf>
  \-PE  000000006be50000-000000006bede000   \               winemac
PE  000000006e4e0000-000000006e8fc000   Deferred        d3dmetal
ELF 000000006f660000-000000006f670000   Deferred        dnsapi.so
ELF 000000006f679000-000000006f689000   Deferred        winspool.so
ELF 000000007060a000-000000007061e000   Deferred        secur32.so
ELF 000000007062f000-000000007063b000   Deferred        kerberos.so
PE  00000000713d8000-0000000073bd8000   Deferred        libmetalirconverter.dylib
ELF 0000000077522000-000000007753e000   Deferred        winecoreaudio.so
PE  00000000779b4000-0000000077b30000   Deferred        coreaudio
PE  0000000078c20000-000000007a272000   Deferred        steamclient64
PE  000000007a280000-000000007a558000   Deferred        dbghelp
PE  000000007a560000-000000007a626000   Deferred        wintrust
PE  000000007ac40000-000000007ac77000   Deferred        xinput1_1
PE  000000007b000000-000000007b558000   Deferred        kernelbase
PE  000000007b600000-000000007b7a4000   Deferred        kernel32
PE  000000007d400000-000000007d405000   Deferred        wine64-preloader
PE  0000000101ba0000-0000000101bd7000   Deferred        xinput1_3
PE  0000000103770000-0000000103aa5000   Deferred        aksoundengine
PE  0000000103ab0000-0000000103b2e000   Deferred        winecoreaudio
PE  000000010d630000-000000010d6a9000   Deferred        propsys
PE  000000013f000000-000000013f197000   Deferred        tier0_s64
PE  000000013f600000-000000013f6b2000   Deferred        vstdlib_s64
PE  0000000140000000-00000001400a3000   Deferred        risk of rain 2
PE  0000000170000000-0000000170333000   Deferred        ntdll
PE  0000000180000000-00000001819b4000   Deferred        unityplayer
PE  00000001c4ee0000-00000001c4fb3000   Deferred        winspool
PE  00000001c69e0000-00000001c7768000   Deferred        shell32
PE  00000001c8b40000-00000001c8bb8000   Deferred        msacm32
PE  00000001c8db0000-00000001c90c6000   Deferred        msvcrt
PE  00000001dd3f0000-00000001dd76c000   Deferred        crypt32
PE  00000001ec2b0000-00000001ec356000   Deferred        ws2_32
PE  00000001f51e0000-00000001f5213000   Deferred        hid
PE  000000021a380000-000000021a3b6000   Deferred        xinput9_1_0
PE  000000021a7e0000-000000021a9c4000   Deferred        setupapi
PE  0000000231ae0000-0000000231d71000   Deferred        rpcrt4
PE  000000023d820000-000000023df01000   Deferred        user32
PE  000000026b4c0000-000000026b756000   Deferred        gdi32
PE  00000002739c0000-0000000273ea5000   Deferred        oleaut32
PE  0000000274a50000-0000000274a7c000   Deferred        kerberos
PE  000000027ab80000-000000027ab91000   Deferred        cfgmgr32
PE  00000002bc640000-00000002bc67c000   Deferred        imagehlp
PE  00000002bcfe0000-00000002bcffc000   Deferred        mswsock
PE  00000002d4d40000-00000002d4d92000   Deferred        bcrypt
PE  00000002de970000-00000002dea2d000   Deferred        rsaenh
PE  00000002e3540000-00000002e3656000   Deferred        shlwapi
PE  00000002e8f10000-00000002e9495000   Deferred        ole32
PE  00000002f1fa0000-00000002f1fc0000   Deferred        version
PE  00000002f2ca0000-00000002f2cd7000   Deferred        xinput1_2
PE  00000002f7230000-00000002f72f0000   Deferred        uxtheme
PE  00000003126f0000-0000000312745000   Deferred        shcore
PE  0000000319900000-000000031999f000   Deferred        mfreadwrite
PE  000000031adf0000-000000031af25000   Deferred        xaudio2_9
PE  0000000327020000-00000003271af000   Deferred        combase
PE  000000032a700000-000000032a7c1000   Deferred        sechost
PE  0000000330260000-000000033038e000   Deferred        advapi32
PE  0000000335260000-0000000335297000   Deferred        rtworkq
PE  0000000336850000-00000003368f4000   Deferred        mmdevapi
PE  0000000346ba0000-0000000346bee000   Deferred        jsproxy
PE  0000000358120000-0000000358250000   Deferred        winhttp
PE  000000039adc0000-000000039addc000   Deferred        bthprops.cpl
PE  00000003a6d40000-00000003a6f35000   Deferred        mfplat
PE  00000003a93b0000-00000003a93e7000   Deferred        xinput1_4
PE  00000003af670000-00000003af9f8000   Deferred        ucrtbase
PE  00000003afd00000-00000003afd66000   Deferred        imm32
PE  00000003b8f00000-00000003b90b9000   Deferred        winmm
PE  00007ff001ae0000-00007ff001b21000   Deferred        steam_api64
PE  00007ff001b30000-00007ff001bd9000   Deferred        secur32
PE  00007ff819d66000-00007ff819da2000   Deferred        libsystem_kernel.dylib
PE  00007ff819da1000-00007ff819dad000   Deferred        libsystem_pthread.dylib
PE  00007ff819dd2000-00007ff819dde000   Deferred        libsystem_platform.dylib
Threads:
process  tid      prio    name (all IDs are in hex)
00000030 services.exe
    00000034    0     
    00000038    0     
    00000044    0     
    00000064    0     
    00000088    0     
    000000a0    0     
    000000dc    0     
0000003c winedevice.exe
    00000040    0     
    0000004c    0     
    00000050    0     
    00000054    0     
    00000058    0     
    000000ac    0     
    000007b4    0     
0000005c winedevice.exe
    00000060    0     
    00000068    0     
    0000006c    0     
    00000070    0     
    00000074    0     
    00000078    0     
    0000007c    0     
00000080 plugplay.exe
    00000084    0     
    0000008c    0     
    00000090    0     
    00000094    0     
    0000010c    0     
    00000110    0     
    000001c0    0     
    000001c4    0     
    00000474    0     
    00000718    0     
    0000071c    0     
00000098 svchost.exe
    0000009c    0     
    000000a4    0     
    000000a8    0     
000000b8 steam.exe
    000000bc    0     
    000000fc    0     
    00000100    0     
    00000104    0     
    00000108    0     
    0000011c    0     
    00000120    0     
    00000128    0     
    0000013c    0     
    00000140    0     
    00000148    0     
    00000150    0     
    00000154    2     
    00000158    2     
    00000160    0     
    00000164    0     
    00000180    0     
    000001d8    0     
    000001dc    0     
    000001e0    0     
    000001ec    0     
    000001f0    2     
    000001f8    0     
    00000210    0     
    00000214    0     
    00000224    0     
    000002cc    0     
    000002d8    0     
    000002dc    0     
    000002e0    0     
    000002e8    0     
    000002f0    0     
    000002fc    0     
    00000304    0     
    000004b0    0     
    000004c4    0     
    000004c8    0     
    00000548    0     
    00000694    0     
000000c0 explorer.exe
    000000c4    0     
    000000c8    0     
    000000cc    0     
000000d4 rpcss.exe
    000000d8    0     
    000000e4    0     
    000000e8    0     
    000000ec    0     
    000000f0    0     
    000000f4    0     
    000002f4    0     
    00000310    0     
00000114 steamwebhelper.exe
    00000118    0     
    0000012c    0     
    00000130    0     
    0000016c    0     
    00000170    0     
    00000178   -2     
    0000017c    0     
    00000184    0     
    00000188    0     
    0000018c    0     
    00000190    0     
    00000194    0     
    000001a0    0     
    000001a4    1     
    000001a8    0     
    000001ac    0     
    000001b0    0     
    000001b4    1     
    000001b8    0     
    000001bc    0     
    000001c8   -2     
    000001cc    0     
    000001d0    0     
    00000204    0     
    00000218    0     
    0000030c    0     
    00000744    0     
    00000788    0     
00000208 steamwebhelper.exe
    0000020c    0     
    00000228    0     
    0000022c    0     
    00000234   -2     
    00000238    0     
    0000023c    0     
    00000240    0     
    000002b0    0     
    00000674    0     
0000021c steamwebhelper.exe
    00000220    0     
    00000258    0     
    0000025c    0     
    00000264   -2     
    00000268    1     
    0000026c    0     
    00000270    0     
    00000274    0     
    00000278    1     
    0000027c    0     
    00000280    0     
    00000284    0     
    00000288   -2     
    00000308    0     
    00000594    0     
    00000660    0     
    00000664    0     
00000360 steamwebhelper.exe
    00000364    0     
    00000370    0     
    00000374    0     
    0000037c   -2     
    00000380    1     
    00000384    0     
    00000388    0     
    0000038c    0     
    00000390    1     
    00000394    0     
    00000398    0     
    0000039c    0     
    000003a0   -2     
    000003c4    0     
    000003c8    0     
    0000076c    0     
00000678 (D) C:\Program Files (x86)\Steam\steamapps\common\Risk of Rain 2\Risk of Rain 2.exe
    0000067c    0 <== 
    000006a0    0     
    000006a4    0     
    000006a8    0     
    000006ac    0     
    000006b0   -2     
    000006b4   -2     
    000006b8   -2     
    000006bc   -2     
    000006c0   -2     
    000006c4   -2     
    000006c8   -2     
    000006cc   -2     
    000006d0   -2     
    000006d4   -2     
    000006d8   -2     
    000006dc   -2     
    000006e0   -2     
    000006e4   -2     
    000006e8   -2     
    000006ec   -2     
    000006f0   -1     
    000006f4    0     
    000006fc    0     
    00000700    0     
    00000714    0     
    00000720   -1     
    00000728    1     
    0000072c    1     
    00000730    0     
    00000734    1     
    00000738    1     
    0000073c    0     
    00000740    0     
    00000750    0     
    00000754    0     
    00000758    0     
    00000760    0     
    00000778    0     
    0000077c    0     
    00000780    0     
00000698 UnityCrashHandler64.exe
    0000069c    0     
    000006f8    0     
0000079c conhost.exe
    000007a0    0     
System information:
    Wine build: wine-7.7
    Platform: x86_64
    Version: Windows 10
    Host system: Darwin
    Host version: 23.2.0

What version of Whisky are you using?

2.2.2

What version of macOS are you using?

Sonoma (macOS 14)

Issue Language

noah-ku commented 6 months ago

any fixes? running into the same bug and it only starts working when I restart my Mac

dzshch commented 6 months ago

Changing game or bottle settings seems to do nothing. I was only able to run it with CrossOver.

Ninjyy commented 6 months ago

any fixes? running into the same bug and it only starts working when I restart my Mac

weirdly enough, there is a solution ive run into. if the game is left running for somewhere between 1-2 hours, the game will be able to load multiplayer. very strange, but works.

noah-ku commented 6 months ago

oh that's an interesting fix, I think it might be faster to restart your computer LOL

Cyberh0le commented 3 months ago

late but I found a way to work around this. If you have a friend make the lobby and have them send you an invite, and you accept the invite while in the intro cutscene, it does not crash the game and you can play. Hope this helps

Qiueyed commented 2 months ago

from my experience, i believe having any text saved in the clipboard will freeze the game when you click multiplayer or while in the lobby. This makes the in-game clipboard code unusable and sometimes crashes my mac. Then I need to enable DXVK to fix the steam overlay somehow to invite/join the friend lobby. But turning on DXVK will prevent characters from rendering. It will be playable but can be annoying sometimes with all the invisible enemies and chests. i think you can workaround using -disable-gpu-skinning in the steam launch option but the performance will be bad

noah-ku commented 2 months ago

hmm I tried both but it's not working, the clipboard and the friend invite

Qiueyed commented 2 months ago

hmm I tried both but it's not working, the clipboard and the friend invite

My only way is to invite friends with an in-game invite (that tiny square with a "+" sign within it). If you enabled Steam overlay, you should be able to see a list of friends you can invite. To enable Steam overlay you need to enable DXVK on whisky configuration, go to the Steam window left top, and navigate Steam > Settings > In Game, there you should see "Enable the Steam Overlay while in-game" on top then enable that. Just to make sure, right-click Risk of Rain 2 on your Library list and go to properties... > General then toggle "Enable the Steam Overlay while in-game". With that, you should be able to invite your friends in the lobby screen.

Also, make sure you don't have any texts copied into your clipboard. Try to copy some random images on google before going to the lobby.

0xneves commented 3 weeks ago

Working fine on Airbook M3 👍