Open thaleslimao opened 6 years ago
Hello @thaleslimao, please copy your system information from steam (Steam
-> Help
-> System Information
) and put it in a gist, then include a link to the gist in this issue report.
Most likely the same issue as other uplay games.
Does game works without uplay login?
@thaleslimao It is known that Proton does not contain a certain patch that is included in the current wine-staging, it fixes this Uplay bug.
@lieff No, Uplay also don't allow offline use of Uplay until you are logged in once.
@kisak-valve is there any plan to include the Wine Patches in question to make Uplay login possible?
Is there a current workaround (force use of wine patches?)
@simpleauthority For this, you would need to apply the patches to the source code and compile it yourself.
Today Proton 3.16 got released. Uplay now let you log in but fails at the "initialize" part were it once again tells you that it is unable to connect to Ubisoft Servers. @kisak-valve are there any patches of 3.16 not included?
@Alexmitter You may need to do this to get it to fully work: https://github.com/ValveSoftware/Proton/issues/162 and then once that's done, uplay may ask you to install steam. If you let it (and in a different directory), the rest should work as expected.
@d10sfan yes i can confirm those symlinks do help.
Symlink a recent libgnutls version solves the problem initializing Uplay, but when launching Origin is trying to find a Steam installation in Windows.
I have tried to bypass it by deleting Steam folder already exists under Program Files directory and installing the one Uplay trying to install.
After this Uplay can continue, download savedata on cloud and initialize the game. I can see the AC Origin process in processes tree using 6-10% CPU during 10 sec, so it seems is trying to load, but after these seconds, the process is killed.
@hsanchezv to work around Uplay looking for Steam - just pass some new directory to Windows Steam installer, DO NOT launch Steam automatically (just let Uplay put files in there) and it's enough - game will work. It's kind of stupid, that we're wasting ~400 MiB to download Windows Steam inside Windows Uplay inside Linux Steam, but at least it doesn't need to be started.
It would be interesting to know how Uplay checks if Steam is installed. Then it could be integrated into proton, thus removing this work around and lead to less confusion to users.
If Uplay was checking the Windows registry, I'm sure Proton could add a registry entry to the default prefix.
I have a better workaround which costs no disk space : I launch the game once so that Steam Play creates the prefix, Uplay updates and all that then I close everything (closing Steam is not necessary) and I symlink an already existing Steam Wine installation I have installed with Lutris within the game's prefix. (Something along : rm -rf $STEAM_LIB/compatdata/xxxxx/pfx/drive_c/$PROGRAMFILES/Steam ln -s $HOME/.wine/drive_c/$PROGRAMFILES/Steam $STEAM_LIB/compatdata/xxxxx/pfx/drive_c/$PROGRAMFILES/Steam ) I launch the game again and Steam doesn't complain being installed in a non-empty directory (you effectively just reinstall your Steam Wine, register keys will be created in the game's prefix and Uplay will be happy and Steam seems to not care to reinstall on top of itself).
I have seen Uplay log and I think that is the error:
[1025/202256.590:ERROR:network_change_notifier_win.cc(157)] WSALookupServiceBegin failed with: 8 [1025/202256.890:ERROR:viz_main_impl.cc(201)] Exiting GPU process due to errors during initialization [1025/202257.151:ERROR:viz_main_impl.cc(201)] Exiting GPU process due to errors during initialization [1025/202257.163:ERROR:browser_gpu_channel_host_factory.cc(119)] Failed to launch GPU process. [1025/202257.164:ERROR:gpu_process_transport_factory.cc(1026)] Lost UI shared context.
I still investigating.
I've managed to re-compile the Proton from official source repo (along with the Wine, FAudio, lsteamclient, vrclient, dxvk) in my Ubuntu:Bionic docker container. I haven't changed anything, except that I did not use Steam Runtime when compiled the Proton. Then, I used GCC/G++ v8 instead of v5 as in the docs, libgnutls
v30 instead of v26. And I've also gotten additional libs opencl.dll.so, winegstreamer.dll.so, wineoss.drv.so
under lib64/wine
(for some reason these aren't in the Proton 3.16 Beta
). Otherwise, I've got nothing missing from my build. DXVK v0.90-206-g3b3ccc8
.
The UPC.exe
(Uplay) is now finally working (I can login there and see games in the Uplay UI). Unfortunately ACOrigins.exe
is just running for ~10 seconds and quits. Nothing interesting is in the logs at a quick glance. (PROTON_LOGS=1 %command%
). Additionally I've seen in the debug logs it was trying to load msmpeg2adec.dll, msmpeg2vdec.dll, sqmapi.dll
so I've taken those from my Windows 7 and registered them, they got loaded with no issues, but that did not help the game to start.
Digging deeper, it appears like the game has the DENUVO
DRM protection which is probably preventing the game from running in Proton/Wine. I am not 100% sure if it is because of that and whether this can be worked around.
$ grep DENUVO /home/user/.local/share/Steam/steamapps/common/Assassins\ Creed\ Origins/Support/License/lic_en-US.txt
3.1 THE PRODUCT IS PROTECTED BY DIGITAL RIGHTS MANAGEMENT SOFTWARE (“DRM SOFTWARE”) AND DENUVO ANTI-TAMPER PROTECTION TECHNOLOGY (“ANTI-TAMPER TECHNOLOGY”).
I am going to try rebasing my Proton over the latest wine-staging 4.0-rc4
and DXVK v0.94
and see if things get better. Will post in case if I find it starts the ACOrigins.exe
.
@arno01 I don't have Origins, but I wonder what the differences are in DRM between all the AC games. Apparently, Unity works, and Odyssey does not show this issue, so where does Origins fit in? Also, could it perhaps be a 'simple' connection issue, where it fails to check the game with the server?
@1202software I haven't been digging into any DRM module, so no clue whether it is a culprit. Just speculating.
Meanwhile I have built Proton with wine-4.0-rc4
(plus wine-staging 4.0-rc4
patches except: xaudio2_7-CreateFX-FXEcho
, xaudio2_7-WMA_support
as they were drastically breaking some of xaudio2 commits that I have incorporated https://github.com/ValveSoftware/wine/commit/967f095438, https://github.com/ValveSoftware/wine/commit/ce7cacbbf7, https://github.com/ValveSoftware/wine/commit/0d66671809, https://github.com/ValveSoftware/wine/commit/478f3c4a2c)
Plus these Valve patches to make Wine work with Steam and enable Liberation fonts so Uplay window won't go transparent/black (with the xaudio2 patches along as FAudio is what we want, IIRC by looking at https://github.com/ValveSoftware/wine/issues/2 , https://github.com/FNA-XNA/FAudio/pull/46):
user@proton:~/proton/wine$ git log HEAD...wine-4.0-rc4 --pretty='%C(blue)[%ai] %<(8)%C(green)%h %<(70,trunc)%s %<(15,trunc)by %an %ar'
[2018-12-18 11:44:49 -0500] a2c8f63fed xaudio2: Rewrite I/O for new FACTFileIOCallbacks support by Ethan Lee 13 days ago
[2018-12-17 17:35:11 -0500] 8221ad992a xaudio2: Unwrap XAudio2 pointers, ReadFile needs OVERLAPPED, unwrap_.. by Ethan Lee 2 weeks ago
[2018-12-17 09:54:30 -0500] c4f43b9744 xaudio2: XACT CLSID fixes by Ethan Lee 2 weeks ago
[2018-12-10 12:48:41 -0600] 6cf2333bd8 xaudio2: Set PulseAudio application name property in the environment by Andrew Eikum 3 weeks ago
[2018-12-06 11:26:50 -0600] f0045124b8 xaudio2: Consistently prefer native on 32-bit by Andrew Eikum 4 weeks ago
[2018-11-27 12:04:24 -0600] 6e83192c22 xaudio2: Wait for engine thread to be ready by Andrew Eikum 5 weeks ago
[2018-11-16 15:41:22 -0500] cae84b0a3c [xaudio2] Add support for xactengine3 by Ethan Lee 6 weeks ago
[2018-11-16 15:39:10 -0500] 23569e587e [xaudio2] Rewrite to use FAudio by Ethan Lee 6 weeks ago
[2018-03-19 11:34:35 -0500] 6f36b4a13c kernel32: Don't force-load Steam.dll by Andrew Eikum 10 months ago
[2018-01-19 14:01:07 -0600] 8251e80e29 HACK: advapi32: Use steamuser as Wine username by Andrew Eikum 12 months ago
[2017-12-28 09:43:36 -0600] 1ee8861593 kernel32: Support steamclient64 by Andrew Eikum 1 year ago
[2017-12-27 13:31:59 -0600] 751ebb13d9 loader: Set up Steam stuff in the registry by Andrew Eikum 1 year ago
[2017-06-13 12:35:56 -0500] 35345f0566 HACK: kernel32: Put Steam program files dir into PATH by Andrew Eikum 1 year, 7 months ago
[2017-06-09 10:31:27 -0500] 2ac8a7a5af HACK: kernel32: Return steamclient instead of lsteamclient during Ge.. by Andrew Eikum 1 year, 7 months ago
[2017-06-05 14:41:28 -0500] 438186eca7 HACK: kernel32: Load hard-coded Steam.dll path if relative load fails by Andrew Eikum 1 year, 7 months ago
[2017-05-11 10:50:08 -0500] 6184c9c256 HACK: kernel32: Swap requests for steamclient.dll with lsteamclient by Andrew Eikum 1 year, 8 months ago
[2017-04-27 13:25:04 -0500] d7df85e2bc HACK kernel32: Substitute the current pid for the Steam client pid by Andrew Eikum 1 year, 8 months ago
[2018-10-23 16:18:20 +0300] d6762eac0b wine.inf: Add font registry entries. by Nikolay Sivov 10 weeks ago
[2018-12-31 19:23:45 +0100] 539c4d18cc apply wine-staging 4.0-rc4 patches (-2) by Andrey Arapov 34 minutes ago
So not much of a progress with the game... ;-/
Here is the maps for ACOrigins.exe
running for ~10 seconds:
https://0.nixaid.com/?3d13a180a2b8d990#WWxatWE8+WoNPgAKKzNhwYx3ySgjiGDxIorx3/3FvzQ=
The good point is that with Proton based off wine-stg-4.0-rc4
I can finally set 240Hz
screen refresh rate in Call of Duty 4: Modern Warfare
And the game picks own screen resolution now (I can see it when I do Alt-Tab). I am not sure whether this is something new that comes with >= wine-3.16
or maybe it is something that should have been dropped by the Valve patches from proton_3.16
branch? In the default Proton 3.16 when any game is running it feels like it isn't running in its own resolution, but rather uses the current user's screen resolution. So in-game one can see (and set) max. of 60Hz
whilst the game is actually running 120Hz/240Hz
(of course only if the user sets such in his Xorg [xrandr] / nvidia-settings / .. and the monitor supports such, obviously).
Upd2 [31/Dec/2018]: played Broadcast map (CoD4 MW), got ~60-80 fps outside (in the street), up to 140 fps inside (in the building) on my GTX 1060 6GB; 16GB RAM; i7 2600 @3.40GHz.
Upd3 [1/Jan/2019]: actually the performance is much better with the Proton built off the bare proton_3.16
branch, most likely this is because I haven't merged all the Valve's patches as some of them improve the performance. If anyone is wondering, here is my build env. for building Proton in Docker https://git.nixaid.com/arno/proton/
When proton 4.11.1 and 4.11.2 was released this game finally works. It is still necessary to disable Uplay Overlay to the game start (or it will stall with a black window). Probably the VMProtect DRM now runs correctly with the last branch of Wine. The funny thing is the Uplay Overlay works partially (the game don't stall at beginning) when it runs the Windows version of Steam using plain Wine or running with Lutris with some games of Assassin's Creed saga.
I bought the game for me (Ubuntu 18.04, Ryzen 7 2700, 32 GB RAM, RTX 2070 SUPER) and my wife (Ubuntu 18.04, Ryzen 5 1500X, 8 GB RAM with 16 GB swap, GTX 1070). In my rig it starts correctly with the uplay overlay disabled, in my wife's rig, with the same configurations, it doesn't start: after the dialog box saying launching without uplay steam "is not recommended" is shown and she presses the green button to launch, the dialog box disappears, a new dialog seemingly appears and disappears very quickly and the game does not launch.
Hello @Patola, please add PROTON_LOG=1 %command%
to the game's launch options, reproduce the crash, and drag and drop the generated $HOME/steam-$APPID.log into the comment box.
Fixed. Noticed in steam play my wife's configuration pointed to proton 4.2-9. Changed to 4.11-2 and it played correctly.
Hi. I just tried to run AC Origins with Proton 5.0.4 and it fails to run. It was working fine with Proton 5.0.3. What happens is Uplay starts the game, a new window appears for less than a second and disappear, and then nothing. The ACOrigins.exe process remains alive, but it does nothing (0% cpu usage). I have to manually close Uplay to kill the process.
We have found a fix for this, which will be in the next Proton release. In the meantime, there is a new app branch for the Proton 5.0 app called "proton-5.0-3" which you can use to play the game. You can find it on the BETAS tab in the settings for the Proton 5.0 tool in your Steam client.
Hello. Assassin's Creed Origins should be playable again in Proton 5.0-5. Thanks for reporting the problem!
REMEMBER for each version of proton 5, for me i need to erase the appdata of this game and later play and later of recreate data, my save game, for me that no save in the cloud, but works very good, sometimes flawless and crash the game but i dont know why, if is for temperature, or ubisoft developments, because in windows also, i will try odyssey later of pass this game
Hi, Assassin's Creed Origins seems to be "broken" again with Proton 5.0.6 with UPLAY updater unable to find new updates, and potentially to update itself.
I used Proton-GE 5.5-GE-1 and it worked.
Hello @DistantThunder, please add PROTON_LOG=1 %command%
to the game's launch options, reproduce the regression, and drag and drop the generated $HOME/steam-$APPID.log into the comment box.
I play good in origins, i dont know what is the problem, with erase the comptdata folder i can play good
Unfortunately, successfully updating Uplay nullified the the chance of the bug happening.
It should be reproducible with a clean UPLAY install though, if it's indeed the problem I spotted.
This is why I insist that the Uplay client should have its own entry in the tools section, so you can install it only once, login to your uplay account and download your Uplay-Steam tied games.
Hi guys, Origins is working fine in regards to Uplay. I find the game very sluggish though compared to Windows, has anyone experienced this?
Basically I played the game for 5 mins, noticed that when the game is running at 60fps it FEELS like 30fps, moving the mouse or controller is very laggy/sluggish
No stutters that I observed just delayed response.
I copied the game files to Windows and launched it. Noticed an improvement straight away! even at 45fps on windows the game feels smoother than 60fps on Linux(!!!)
I tried a few different settings - windowed, vsync, etc. It seems if I turn the graphics down to low, im getting 80-100fps the controls do seem more responsive but still not "normal" like windows. I launched Shadow of Mordor and this game feels smooth, obviously its a native game though.
settings: 1440p fullscreen vsync off frame limit off dynamic res. off esync on/off gamemode on/off compositor on/off controller plugged/unplugged fsync is on because i have 5.7 kernel
Specs: Manjaro kernel: 5.7.14-1-MANJARO DE: Xfce 4.14 CPU: AMD Ryzen 5 2600 GPU: Radeon RX580 Driver: Mesa 20.1.5 with ACO enabled Screen: 1440p, 144hz, tearfree and VRR enabled Steam, Proton 5.0.9
@regulator-g Do you play with controller or mouse/keyboard?
It's very strange. For me the game is running without any problems at all. May be it's a Mesa problem? https://youtu.be/3FJtkJo77E4
I play with a controller but I've tried the keyboard and mouse too. I'm getting used to it playing on lower settings.. I'll try test another proton game between Manjaro and Windows and see if I can notice anything.
@regulator-g When playing with a controller, try disabling controller configuration support in Steam. I think you'll have to do it from big picture mode. Some people reported it introduces lag.
Is there any way to disable the "unsupported video driver" notification from Origin? Its extremely annoying, and I haven't found a way to close it.
No Uplay? Odd.. Try with Lutris
Hello,
Since today I can't play with Proton 5.0-10 (I can't use 5.13 with my Linux distribution for the moment). Uplay is failing to start and I can see a "Failed to connect to Uplay" in the logs steam-582160.log Did somebody else experienced this ?
Thanks,
Hello,
Since today I can't play with Proton 5.0-10 (I can't use 5.13 with my Linux distribution for the moment). Uplay is failing to start and I can see a "Failed to connect to Uplay" in the logs
worked this out for you..
5.13 = ass-creed works fine 5.0-10 = failed to detect uplay I went and deleted the compdata folder (/home/steam/steamapps/compatdata/582160/) then launched again and uplay was reinstalled game works again now
@regulator-g I already tried this, but I think the issue comes from my Linux distribution and some Steam update (the LD_LIBRARY_PATH "optimisation" might be the culprit)
Fixed by adding /run/opengl-driver/lib to the LD_LIBRARY_PATH
Hello,
Sometimes the game completely freeze, but this is not happening every time I play this game.
I managed to capture logs during a crash like this: steam-582160.zip
With a fresh install game complains that it cannot find Uplay. Manually installing Uplay fixes this: ... WINEPREFIX=/path/steamapps/compatdata/582160/pfx /path/steamapps/common/Proton\ 6.3/dist/bin/wine64 /path/steamapps/common/Assassins\ Creed\ Origins/Installer_Resources/UPlayInstaller.exe ...
After that game launches with Uplay. However, trying to switch to Steam overlay will freeze the game. Also game somehow does not detect gamepad on launch. Ubisoft overlay keeps on notice that drivers are not supported which is a small annoyance.
Disabling Steam input makes controller work again in the game. Game has decent framerate with Proton experimental too.
Since one of the more recent Proton Experimental updates, AC:O does no longer boot, it just hangs there. An interesting observation: If I force the re-installation of the uplay launcher via protontricks (which will be refused because a newer version is already installed), it just works. Other Uplay titles seem to be affected as well.
@kakra Assasins Creed: Origins. Runs perfectly. Proton GE 7.17 and Proton Experimental
Desktop
Kubuntu 22.04 - Ubuntu Kernel 5.15.0-30-generic ( Compositor disabled, Baloo disabled.)
Intel Core i7 w/ nVidia -GTX 1650 4GvRAM - 20G System RAM at 1333hz
X11 - nVidia-driver-510 (Graphics and Kisak PPA enabled)
Logitech Wireless Gamepad f710. In Xbox360 mode w/ Xbox360 support in Steam Client Enabled.
Start AC:O then when freezes or activation issue open terminal:
[ctl] [atl] [t] run [ killall steam ] in terminal. verifiy local files. This fixes activation issue.
Disable Steam Overlay in Game Properties. This fixes freezing / crashing.
In game if using LT f710 Gamepad switch to Playstation mode on gamepad. Gamepad now work flawlessly.
PROTON GE 7.17 and PROTON Experimental
To fix the In-Game Ubisoft " Unknown Graphics Driver " error add the Proton launch options below.
[ PROTON_HIDE_NVIDIA_GPU=0 PROTON_ENABLE_NVAPI=1 DXVK_ASYNC=1 %command% ]
Runs without any performance issue on highest settings with vsync disabled in game.
Latest Assassins creed origins (update 1.60?) from Ubisoft I think has broken the game, after a few mins of gameplay the game freezes. Making the game now unplayable when it used to work amazingly.
Tried Proton experimental and proton 7.02 still same happens.
Others reporting same issue here https://www.reddit.com/r/SteamDeck/comments/v6tt60/anyone_else_playing_assassins_creed_origins/ibhdeuz/?context=3
As requested;
https://gist.github.com/smintman/f9f3c7d46ef60f89a0eb75248b36b905
Hello @smintman, please add PROTON_LOG=1 %command%
to the game's launch options and attach the generated $HOME/steam-$APPID.log to this issue report as a file. (Proton logs compress well if needed.) Also, please copy your system information from Steam (Steam
-> Help
-> System Information
) and put it in a gist, then include a link to the gist in this issue report.
Added to my original comment
Under the games when clicking on play brings me the UPLAY login screen.
When adding my credentials always returns me error and I can not connect,
If anyone can simulate this scenario to see where exactly the error is, thank you.
Kubuntu 18.04