SOLVED [AC: Odyssey] Wrong graphics with bash script

Ok, what I want to do is play Assassin’s Creed: Odyssey on my Steam Deck. I know it can also run directly on the Steam Deck but I want to run it on my desktop computer and stream it to the Steam Deck. I have done this already with Windows as host for over 100h.
I already installed Ubisoft connect in Lutris and installed Odyssey in there. When I start it using Lutris it starts and runs fine. It also runs fine when I start it using the command line with:
env LUTRIS_SKIP_INIT=1 lutris lutris:rungameid/5
But because I want to play it on the Steam Deck, I have to include it in Steam. And I need Steam to catch the correct process, so I used lutris -b to create the batch script.
But now when I run Odyssey with the script the colors are broken, it is very slow and unplayable.

This is the json file:
In the json files are the links to the output and screenshot.

1 Like

One difference I have found by comparing the /proc/$PID/maps of ACOdyssey.exe run by lutris and from the bash script is that the d3d9.dll when it is not working is loaded from here:
And when it is working it is loaded from here:

This is the entire diff:

Ok, I found out the difference by looking at the output of:
cat /proc/46365/environ | tr ‘\0’ ‘\n’
46365 was the process id of ACOdyssey.exe

The WINEDLLOVERRIDES variable was missing the directx dlls.
With this line the bash script works:

Lutris should be fixed to set the variable correctly.

But for now my problem is fixed.

Seems it is this bug:

Seems it is not entirely fixed.

I’ve taken a pass at this one; it should be fixed harder now. 0.5.13 should fix this when released.

You can also try again with the latest master, if you know how.