ValveSoftware / Proton

Compatibility tool for Steam Play based on Wine and additional components
Other
24.39k stars 1.07k forks source link

Watch_Dogs 2 (447040) #172

Open NanoSector opened 6 years ago

NanoSector commented 6 years ago

When launching a Uplay-enabled game, for instance Watch_Dogs 2, Uplay initially displays just the window frames. When installing the corefonts package via winetricks, the window displays properly and shows that Uplay wasn't able to communicate with the servers.

This is a known Wine bug which is fixed in staging: https://bugs.winehq.org/show_bug.cgi?id=41652

Seeing as Watch_Dogs 2 works in Wine-staging 3.13 with DXVK, I'm confident that if this patch is merged or the Staging patches are put on top of Proton in general most Uplay games will start working OOTB.

tgm4883 commented 6 years ago

I can verify that this is a problem with Watch_Dogs as well. I tried to work around this by launching Uplay from a wine 3.14 staging install I have which allowed me to login to Uplay fine. However, even after telling Uplay to always start offline I'm still unable to get past the Uplay login screen using Proton.

I have not tried building Proton from source yet, but it's probably worth a shot

beniwtv commented 6 years ago

I today spent the day getting the Proton build set-up and patched it with the patch on the Wine bugreport. Good news: It allowed me to log-in, do two-factor authentication and everything. Bad news: It sits at "Initializing" and then complains about the connection being lost.

Not sure yet what's going on.

tgm4883 commented 6 years ago

Must be more missing patches I guess, launching it from my 3.14 install I get all the way into Uplay. Looking at Watch_Dogs though it doesn't appear to be installed.

I don't suppose you can just drop the wine-staging source into the build? It looks like the git repo is using Wine 3.7.

beniwtv commented 6 years ago

The problem with my build appears to be GnuTLS 2.6 which comes with the Steam runtime. Tyring to compile with a newer GnuTLS now.

HughPH commented 6 years ago

Isn't there a wider question with UPlay? Doesn't it currently need to be installed in each wineprefix individually?

tgm4883 commented 6 years ago

@HughPH Yes I think that is the case, however I think that's a smaller issue than "Cannot login to Uplay"

HughPH commented 6 years ago

It might be @tgm4883 or it might not be. "Cannot login" could be a simple issue solved by updating a library (if it is as simple as a TLS compatibility thing), while putting in place a mechanism to share "packages" between many wineprefixes may be more complex. Many apps you can run by just copying the files (I've run Lotus Notes in wine by doing this - ugly as sin, so I still have a Windows VM, don't ask why I'm still using Lotus Notes) but others will expect their registry settings to be present - and anything being installed into a wineprefix can put its files anywhere in that prefix, so you may need a filesystem diff too, especially if the app doesn't have an unattended installer or if the unattended installer doesn't allow you to specify a custom location.

It might be worth considering overlayfs for Proton 4 to simplify this task and to reduce the amount of space taken by having a large number of wineprefixes.

Dexter9313 commented 6 years ago

Wouldn't it be as simple as having a symbolic link at drive_c/Program Files (x86)/Ubisoft that points to a common Ubisoft directory ?

HughPH commented 6 years ago

That could be part of the answer (being another way of injecting some files, other than overlayfs) but (as far as I understand from a bit of Googling) UPlay sticks a lot of stuff in the registry, so you'd also need to redirect its registry settings to a shared file so you get the more generalised UPlay stuff right all the time. It wouldn't make for a particularly elegant solution, though.

NanoSector commented 6 years ago

Fixed in Wine 3.15: https://source.winehq.org/git/wine.git/commit/a1e2c7fd2f7c4fb5377a0528bfcb03b3813747aa

beniwtv commented 6 years ago

@Yoshi2889 That's the patch I compiled into my own version of Proton, unfortunately, it's not enough on it's own to make it work. There are other patches in Wine 3.14/3.15, but I don't know which ones those are.

Dexter9313 commented 6 years ago

If it's worth anything I can launch the game with Wine 3.14 staging without patching.

NanoSector commented 6 years ago

@beniwtv the changelog for Wine 3.15 solely mentions this issue which links back to that specific commit: https://bugs.winehq.org/show_bug.cgi?id=41652

beniwtv commented 6 years ago

Yeah I know, and it allows logging in, but Uplay still can't start because it just fails on "initializing" and then times out.

So there's probably another patch needed, that was included somewhere between 3.7 - 3.14

romanstingler commented 6 years ago

All the listed games are affected

https://pcgamingwiki.com/wiki/The_Big_List_of_3rd_Party_DRM_on_Steam#Uplay

d10sfan commented 6 years ago

Tried this on proton 3.16 and still getting timeouts when trying to login.

d10sfan commented 6 years ago

Running the commands here: https://github.com/ValveSoftware/Proton/issues/162#issuecomment-425779454 fixed the issue with the internet connection. Although now running into an interesting issue, where uplay is trying to install steam (through wine). Letting it install steam inside the prefix did let it launch the game.

tgm4883 commented 6 years ago

I can confirm that running the commands from comment #162 that d10sfan linked above does allow Uplay to login and it does try to install steam. Once I let it install steam (had to install it to a different directory) it fired up Watch_Dogs, however I have the same issue in Proton that I had running it in Wine 3.17. Menu background music is fine, but no other audio works inside the game.

Dexter9313 commented 6 years ago

Running the workaround commands cited by d10sfan and tgm4883 didn't work for me : UPlay still can't connect to the servers. I'm running Kubuntu 18.04.

zaggynl commented 6 years ago

Getting the following error on launch: http://i.imgur.com/xINZmSM.png Uplay had detected an unrecoverable error and must shutdown. Crash dump create at "C:/Program files (x86)/Ubisoft/Ubisoft Game Launcher/crashes".

Proton log: http://paste.ubuntu.com/p/TPDnNv4MTQ/

Proton version: 3.16-3 Beta

zaggynl commented 5 years ago

Workaround to get Uplay to start, referring to: https://github.com/ValveSoftware/Proton/issues/1223#issuecomment-432924670

export WINEPREFIX="/mnt/DUMP3/steam_ubuntu1804/steamapps/compatdata/447040/pfx/" cd "/mnt/DUMP3/steam_ubuntu1804/steamapps/common/Proton 3.16/dist/bin" ./wine winecfg set Windows Version for Default_Settings to Windows XP, press OK.

Am now getting stuck on the part where Uplay wants to install Windows version of Steam, covered here: https://github.com/ValveSoftware/Proton/issues/1735#issuecomment-437677731

ah- commented 5 years ago

Installing steam worked for me by just letting it install it somewhere else, although that was for a different game.

kode54 commented 5 years ago

Please try the latest release of this custom Proton build, it may fix the in-game audio.

I would try this myself, but I don't own a single Uplay title, I'm just looking to buy in the future.

liberodark commented 5 years ago

same problem here for me on 4.2-6

NTMan commented 5 years ago

For now with Proton 4.2-7 I not having problem with Uplay. But the game are stuck after showing splash screen.

Screenshot from 2019-06-16 19-14-37

And "WatchDogs2.exe" process consume 100% CPU for infinite time after launch.

$ ps aux | grep \\.exe
mikhail  26237  0.0  0.0  42396 11684 pts/12   S+   18:47   0:00 python3 /home/mikhail/.local/share/Steam/steamapps/common/Proton 4.2/proton waitforexitandrun /home/mikhail/.local/share/Steam/steamapps/common/Watch_Dogs2/bin/WatchDogs2.exe -uplay_steam_mode
mikhail  26239  0.0  0.0 2658640 5932 pts/12   Sl+  18:47   0:00 steam /home/mikhail/.local/share/Steam/steamapps/common/Watch_Dogs2/bin/WatchDogs2.exe -uplay_steam_mode
mikhail  26246  0.0  0.0 2202112 23656 ?       Ssl  18:48   0:00 C:\windows\system32\services.exe
mikhail  26249  0.0  0.0 2139500 23736 ?       Sl   18:48   0:00 C:\windows\system32\winedevice.exe
mikhail  26258  0.0  0.0 2070788 23376 ?       Sl   18:48   0:00 C:\windows\system32\plugplay.exe
mikhail  26263  0.2  0.0 2151428 27252 ?       Sl   18:48   0:00 C:\windows\system32\winedevice.exe
mikhail  26273  0.0  0.0 2097032 25904 pts/12  Sl+  18:48   0:00 C:\windows\system32\explorer.exe /desktop
mikhail  26284  0.0  0.0 2703108 30984 pts/12  Sl+  18:48   0:00 C:\Program Files (x86)\Ubisoft\Ubisoft Game Launcher\UbisoftGameLauncher.exe -gamelauncher_wait_handle 188 -upc_uplay_id 3619 -upc_game_version 1 -upc_exe_path WjpcaG9tZVxtaWtoYWlsXC5sb2NhbFxzaGFyZVxTdGVhbVxzdGVhbWFwcHNcY29tbW9uXFdhdGNoX0RvZ3MyXGJpblxXYXRjaERvZ3MyLmV4ZQ== -upc_working_directory WjpcaG9tZVxtaWtoYWlsXC5sb2NhbFxzaGFyZVxTdGVhbVxzdGVhbWFwcHNcY29tbW9uXFdhdGNoX0RvZ3MyXGJpbg== -upc_arguments LXVwbGF5X3N0ZWFtX21vZGU= -uplay_steam_mode
mikhail  26299  5.8  0.6 3030528 224288 pts/12 Sl+  18:48   0:14 C:\Program Files (x86)\Ubisoft\Ubisoft Game Launcher\upc.exe -upc_uplay_id 3619 -uplay_steam_mode
mikhail  26398  1.5  0.4 2767540 143760 pts/12 Sl+  18:48   0:03 C:/Program Files (x86)/Ubisoft/Ubisoft Game Launcher/UplayWebCore.exe --type=renderer --no-sandbox --disable-features=TouchpadAndWheelScrollLatching --service-pipe-token=6631A79285F51BB3368D6E852F39FA29 --lang=en-US --locales-dir-path=C:/Program Files (x86)/Ubisoft/Ubisoft Game Launcher/locales/1/ --log-file=C:\Program Files (x86)\Ubisoft\Ubisoft Game Launcher\debug.log --disable-spell-checking --enable-system-flash --device-scale-factor=1 --num-raster-threads=4 --enable-main-frame-before-activation --service-request-channel-token=6631A79285F51BB3368D6E852F39FA29 --renderer-client-id=4 --mojo-platform-channel-handle=1088 /prefetch:1
mikhail  26500 97.3  0.7 2055940 237012 pts/12 R+   18:48   3:36 Z:\home\mikhail\.local\share\Steam\steamapps\common\Watch_Dogs2\bin\WatchDogs2.exe -uplay_steam_mode -launcher_restarted
mikhail  27146  0.0  0.0 216100  2132 pts/14   S+   18:52   0:00 grep --color=auto \.exe

steam-447040.log

$ inxi -bM
System:    Host: localhost.localdomain Kernel: 5.1.0-step5-3d21b6525cae+ x86_64 bits: 64 Desktop: Gnome 3.33.2 
           Distro: Fedora release 31 (Rawhide) 
Machine:   Type: Desktop Mobo: ASUSTeK model: ROG STRIX X470-I GAMING v: Rev 1.xx serial: <root required> 
           UEFI: American Megatrends v: 2304 date: 05/03/2019 
CPU:       8-Core: AMD Ryzen 7 2700X type: MT MCP speed: 3618 MHz min/max: 2200/3700 MHz 
Graphics:  Device-1: Advanced Micro Devices [AMD/ATI] Vega 20 [Radeon VII] driver: amdgpu v: kernel 
           Display: wayland server: Fedora Project X.org 1.20.5 driver: amdgpu resolution: 3840x2160~60Hz 
           OpenGL: renderer: AMD Radeon VII (VEGA20 DRM 3.32.0 5.1.0-step5-3d21b6525cae+ LLVM 8.0.0) v: 4.5 Mesa 19.1.0-rc5 
Network:   Device-1: Intel I211 Gigabit Network driver: igb 
           Device-2: Realtek RTL8822BE 802.11a/b/g/n/ac WiFi adapter driver: N/A 
Drives:    Local Storage: total: 11.57 TiB used: 8.66 TiB (74.8%) 
Info:      Processes: 579 Uptime: 5h 01m Memory: 31.37 GiB used: 29.96 GiB (95.5%) Shell: bash inxi: 3.0.34 
NTMan commented 5 years ago

With Proton 4.11-1 the problem still here steam-447040.log

TaiTair commented 5 years ago

Proton 4.11-2 Watch_dogs2 still fails to start.

lpicanco commented 4 years ago

Proton 4.11-8 still not working with Watch_dogs2

pencelguy commented 4 years ago

Hey there, If your game is still not working, I have a solution that fixed my game before Ubisoft Support could(they took a week and still didn't help), 1.) Open Window Settings 2.) Open Network and Internet 3.) On the left side/panel click on Proxy 4.) Find "Use a proxy server" under "Manual proxy setup" 5.) Turn "Use a proxy server" off 6.) Then start up the game

raulcraveiro commented 4 years ago

Hey there, If your game is still not working, I have a solution that fixed my game before Ubisoft Support could(they took a week and still didn't help), 1.) Open Window Settings 2.) Open Network and Internet 3.) On the left side/panel click on Proxy 4.) Find "Use a proxy server" under "Manual proxy setup" 5.) Turn "Use a proxy server" off 6.) Then start up the game

Where do I found this Window Settings? :thinking:

TaiTair commented 4 years ago

Hey there, If your game is still not working, I have a solution that fixed my game before Ubisoft Support could(they took a week and still didn't help), 1.) Open Window Settings 2.) Open Network and Internet 3.) On the left side/panel click on Proxy 4.) Find "Use a proxy server" under "Manual proxy setup" 5.) Turn "Use a proxy server" off 6.) Then start up the game

Where do I found this Window Settings?

I think he's in the wrong place. Doesn't look like he was using Proton. He's talking about settings in the windows control panel/settings. https://wiki.winehq.org/Control

raulcraveiro commented 4 years ago

Hey there, If your game is still not working, I have a solution that fixed my game before Ubisoft Support could(they took a week and still didn't help), 1.) Open Window Settings 2.) Open Network and Internet 3.) On the left side/panel click on Proxy 4.) Find "Use a proxy server" under "Manual proxy setup" 5.) Turn "Use a proxy server" off 6.) Then start up the game

Where do I found this Window Settings?

I think he's in the wrong place. Doesn't look like he was using Proton. He's talking about settings in the windows control panel/settings. https://wiki.winehq.org/Control

Maybe it's winetricks/protontricks? :thinking:

TaiTair commented 4 years ago

Hey there, If your game is still not working, I have a solution that fixed my game before Ubisoft Support could(they took a week and still didn't help), 1.) Open Window Settings 2.) Open Network and Internet 3.) On the left side/panel click on Proxy 4.) Find "Use a proxy server" under "Manual proxy setup" 5.) Turn "Use a proxy server" off 6.) Then start up the game

Where do I found this Window Settings?

I think he's in the wrong place. Doesn't look like he was using Proton. He's talking about settings in the windows control panel/settings. https://wiki.winehq.org/Control

Maybe it's winetricks/protontricks?

I doubt it. Maybe someone else can correct me.

kisak-valve commented 4 years ago

Access Uplay settings

Issue transferred from https://github.com/ValveSoftware/Proton/issues/4064. @teunissenstefan posted on 2020-07-13T21:16:27:

I recently bought Watch Dogs 2 and the game itself is working without any problems. I however have this in my screen and I can't get rid of it: image I also can't open the Uplay overlay. I know you can disable it in the Uplay settings, but how do I start Uplay without starting Watch Dogs 2 so I can go into the settings? I tried going into the Watch Dogs 2 C:/ drive and starting Uplay from there but it seems to not be the same as the one that actually launches the game because:

kode54 commented 4 years ago

Basically, for any of the Uplay titles, your only recourse is to link the title to your Uplay account, then install Uplay separately in a Wine prefix and launch the game there. Chances are, the copies that come from other services are already outdated anyway.

teunissenstefan commented 4 years ago

Basically, for any of the Uplay titles, your only recourse is to link the title to your Uplay account, then install Uplay separately in a Wine prefix and launch the game there. Chances are, the copies that come from other services are already outdated anyway.

So it's not at all possible to launch the Uplay that Steam uses to launch the game?

414n commented 4 years ago

but how do I start Uplay without starting Watch Dogs 2 so I can go into the settings? I tried going into the Watch Dogs 2 C:/ drive and starting Uplay from there but it seems to not be the same as the one that actually launches the game because:

* When I change a setting there, it doesn't translate into the Uplay that starts Watch Dogs 2

* It thinks Watch Dogs 2 isn't installed

Have you overridden the WINEPREFIX environment variable with the correct Proton prefix beforehand? If not, then the wine commands you've launched will reference the default prefix in ~/.wine or ~/.wine64, which will probably lead to missing things, as you experienced.

I created a little shell script to make these tasks a little easier, if you'd like to try: https://github.com/414n/protonsh

zeroedout commented 4 years ago

After you launch Watch Dogs, alt tab to the system tray window, you'll see the uplay icon. That's definitely easiest though the system tray window is a very tiny horizontal strip (in GNOME anyway). I think in KDE / Plasma is goes to the Plasma systray.

As 414n mentioned you can also start uplay from the correct prefix but I found for Proton, one needs the STEAM_COMPAT_DATA_PATH prefix instead. It's something like STEAM_COMPAT_DATA_PATH=/steamapps/compatdata/270880 /steamapps/common/Proton\ 4.2/proton run ~/Downloads/Install\ TruckersMP.exe replacing the requisite proton version and Uplay executable.

corsac-s commented 3 years ago

I tried to install and run Watch Dogs 2. The UPlay stuff and Ubisoft Connect launcher start fine, but there's apparently an issue when linking the Ubisoft Connect account with my steam account, because after logging in (which is successful) UPlay asks for an activation key (which I don't have).

When looking at the WD2 logs I have bits like: ERROR UplayConnection.cpp (562) Failed to initialize Steam API so maybe there's an issue in the communication between Steam (Linux) and UPlay.exe.

I tried Steam client beta and standard, I tried Proton 5.13 and Proton Experimental, I tried to set the Windows version to Windows XP, for now nothing worked.

kisak-valve commented 2 years ago

(447040) Watch_Dogs 2

Issue transferred from https://github.com/ValveSoftware/Proton/issues/5489. @elijahr2411 posted on 2022-01-09T04:54:34:

Compatibility Report

System Information

I confirm:

steam-447040.log

Symptoms

Splash screen opens and loads uplay, then screen goes black as if the game is going to launch but immediately closes. Steam still lists the game as running

Reproduction

Start the game

kisak-valve commented 2 years ago

Hello @elijahr2411, info: Driver version : 2.0.210 in your Proton log tells us that the game is trying to run with AMDVLK. Can you test if game behaves the same with mesa/RADV?

elijahr2411 commented 2 years ago

Hello @elijahr2411, info: Driver version : 2.0.210 in your Proton log tells us that the game is trying to run with AMDVLK. Can you test if game behaves the same with mesa/RADV?

@kisak-valve How do I switch it over? I even sudo pacman -R amdvlk and the game still crashes, and the log still reports the same version number.

Edit: Managed to switch to mesa but the problem still happens.

TheBill2001 commented 1 year ago

I got the crash with the following error:

realloc(): invalid next size

Might be related to doitsujin/dxvk#2504