Patreon Logo Support us on Patreon to keep GamingOnLinux alive. This ensures all of our main content remains free for everyone. Just good, fresh content! Alternatively, you can donate through PayPal Logo PayPal. You can also buy games using our partner links for GOG and Humble Store.
Title: Yu-Gi-Oh! Master Duel is not working on Linux
Shades 1 May 2022
I used to play Yu-Gi-Oh! Master Duel on the same machine when I had Windows installed on it, but when I switched to Linux, it's not working anymore.

I'm using a laptop with the Optimus technology. optirun glxgears works fine with no errors. I even tried to install another game with steam, and it works with the optirun command fine, the game is called Tap Ninja

This is the log when I run the game with optirun and then primusrun
https://bpa.st/4WKQ

I tried the fix mentioned [here](https://github.com/amonakov/primus/issues/178#issuecomment-546686888) however it just showed a dark blank window
External Media: You need to be logged in to view this.

And this is the log it gave (line 274)
https://bpa.st/JJKA
mr-victory 1 May 2022
Try using prime-run instead of optirun/primusrun.
Shades 2 May 2022
Quoting: mr-victoryTry using prime-run instead of optirun/primusrun.
I can't use prime-run, it only supports versions from [version 435.17](https://wiki.archlinux.org/title/PRIME#PRIME_render_offload) and upwards. My driver is older, nvidia-390xx-dkms.

I tried installing the package anyways, nvidia-prime, but it gave an error, which is expected I guess.

 
❯ prime-run glxgears
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  25
  Current serial number in output stream:  26
mr-victory 2 May 2022
Oof. Then your best bet is nvidia-xrun or running your entire session on nvidia.
Shades 2 May 2022
Quoting: mr-victoryOof. Then your best bet is nvidia-xrun or running your entire session on nvidia.
I tried something similar, [optimus-manager](https://github.com/Askannz/optimus-manager), but the game didn't work either. It didn't show any particular error, it just didn't launch. Here's the log:
https://bpa.st/OCUQ
Shades 3 May 2022
Quoting: GuestSee the log:
 
primus: fatal: failed to load any of the libraries: /usr/lib/nvidia/libGL.so.1:/usr/lib32/nvidia/libGL.so.1:/usr/lib/libGL.so.1:/usr/lib32/libGL.so.1
/usr/lib/nvidia/libGL.so.1: cannot open shared object file: No such file or directory
/usr/lib32/nvidia/libGL.so.1: cannot open shared object file: No such file or directory
/usr/lib/libGL.so.1: cannot open shared object file: No such file or directory
/usr/lib32/libGL.so.1: cannot open shared object file: No such file or directory

It seems you're missing (32bit) nvidia glx libraries
I have lib32-nvidia-390xx-utils installed tho. And running glxgears32 works fine

❯ optirun glxgears32
287 frames in 5.0 seconds = 57.393 FPS
299 frames in 5.0 seconds = 59.744 FPS
Shades 4 May 2022
Quoting: Guest
Quoting: Shades
Quoting: GuestSee the log:
 
primus: fatal: failed to load any of the libraries: /usr/lib/nvidia/libGL.so.1:/usr/lib32/nvidia/libGL.so.1:/usr/lib/libGL.so.1:/usr/lib32/libGL.so.1
/usr/lib/nvidia/libGL.so.1: cannot open shared object file: No such file or directory
/usr/lib32/nvidia/libGL.so.1: cannot open shared object file: No such file or directory
/usr/lib/libGL.so.1: cannot open shared object file: No such file or directory
/usr/lib32/libGL.so.1: cannot open shared object file: No such file or directory

It seems you're missing (32bit) nvidia glx libraries
I have lib32-nvidia-390xx-utils installed tho. And running glxgears32 works fine

❯ optirun glxgears32
287 frames in 5.0 seconds = 57.393 FPS
299 frames in 5.0 seconds = 59.744 FPS
This could mean that "/usr/lib" is mounted over the real one, which point me to think to containerization which, in turn, blames steam pressure vessel/soldier.
Unfortunately my understanding stops there, but maybe you can try a (very) old proton version, one before steam introduced soldier and friends and try with it.
However it would not be a long term solution, but i'm confident the problem lies there, so you may have new search terms for bug hunting :)

-edit-
I assume none of your windows games runs under proton now, am i correct?
do you use some custom startup options for this game in steam?
You're right! Other Windows games didn't work either, but when I switched to Proton v4 it worked. I don't know if there's a fix for this new containerization issue tho :/ Is it because I installed the games and the libraries in another directory which is on my HDD not the SDD where my arch is installed?
External Media: You need to be logged in to view this.

All these games used to be on HDD, I tried moving them to /home, the default steam directory, but the problem remained the same as below.

Master Duel isn't working with Proton v4 tho I think, it gives this error every time I launch it, I tried to press Reboot, it just showed the same error :/
External Media: You need to be logged in to view this.


And yes, I use optirun %command% with all games to use the nvidia card instead of the intel one.

Last edited by Shades on 4 May 2022 at 12:46 am UTC
Shades 4 May 2022
Quoting: GuestYeah, older proton is not a long term solution, but just a way to isolate the problem,

Is it because I installed the games and the libraries in another directory which is on my HDD not the SDD where my arch is installed?
Please, elaborate "and the libraries".
If you mean Steam runtimes and proton as shown in the screenshot, I don't think so.

-EDIT-
Before going deeper, you have to verify that vulkan works.
I see you're on Arch, I never used bumblebee/primus so, please try to start vkcube from vulkan-tools package via primus and verify that it works and that it uses your nvidia gpu.
If it does, keep reading.
-/EDIT-

It is an interesting topic i'm exploring, here is [some background](https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/blob/master/docs/container-runtime.md) (also [this](https://gitlab.steamos.cloud/steamrt/steam-runtime-tools/-/tree/master/pressure-vessel)):

The core of all of these compatibility tools is pressure-vessel, which combines application-level libraries from the Steam Runtime with graphics drivers from the host operating system, resulting in a system that is as compatible as possible with the Steam Runtime while still having all the necessary graphics drivers to work with recent GPU hardware.
The Steam Play compatibility tools automatically run pressure-vessel when necessary.
...something is obviously not running good about mixing native gpu drivers and pressure-vessel filesystem. "Recent GPU hardware" may sound worrysome though.

Just some shoots in the dark:

  • Are you running steam from your distro package or through flatpak? My gut feeling smells troubles if the latter is true.

  • What if you run the whole steam through optirun and then try to start a game with and without optirun startup option with a newer proton, Something changes?

  • What if you use [Proton-Ge](https://github.com/GloriousEggroll/proton-ge-custom#installation) instead? I'm not sure at all, but it could be a way to skip pressure-vessel and a more robust alternative to proton 4, if it works.
    If you're not familiar with it, follow the installation "Native -> Manual" way.


[Other related things i found:](https://github.com/ValveSoftware/steam-runtime/blob/4af4a57f3c9394f610ce3d1664bd257450fc67f5/doc/steamlinuxruntime-known-issues.md)
Using Bumblebee and Primus (optirun, primusrun, pvkrun, primus_vk) adds an extra layer of complexity that does not work reliably with the container runtime. We recommend using NVIDIA Prime Render Offload or DRI PRIME offloading instead, if possible.
If you don't manage to solve the issue, i strongly suggest you to seek for help [here](https://github.com/ValveSoftware/steam-runtime/), by providing the output of /tmp/proton-issue.log after trying to start (and so fail) to run your game by starting steam as follows:PRESSURE_VESSEL_VERBOSE=1 PROTON_LOG=1 steam 2>&1 | tee /tmp/proton-issue.log

Quoting: mr-victoryOof. Then your best bet is nvidia-xrun or running your entire session on nvidia.
...Good luck!
Yes, I meant the ones in the screenshot.

Running optirun vkcube shows that it doesn't use the nvidia card, weird. Does vulkan run with optimus or does it have issues?
❯ optirun vkcube
Xlib:  extension "NV-GLX" missing on display ":0".
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
Selected GPU 0: Intel(R) HD Graphics 4000 (IVB GT2), type: IntegratedGpu

Idk why it chooses to run the integrated gpu
❯ primusrun vkcube
Xlib:  extension "NV-GLX" missing on display ":0".
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
Selected GPU 0: Intel(R) HD Graphics 4000 (IVB GT2), type: IntegratedGpu


❯ ENABLE_PRIMUS_LAYER=1 optirun -b primus vkcube
Xlib:  extension "NV-GLX" missing on display ":0".
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
PrimusVK: Searching for display GPU:
PrimusVK: 0x5646a9a2a3b0: 32902;358
PrimusVK: Got integrated gpu!
PrimusVK: Device: Intel(R) HD Graphics 4000 (IVB GT2)
PrimusVK:   Type: 1
PrimusVK: Searching for render GPU:
PrimusVK: 0x5646a9a2a3b0.
PrimusVK: No device for the rendering GPU found. Is the correct driver installed?
PrimusVK: VK_ICD_FILENAMES not set
vkEnumeratePhysicalDevices reported zero accessible devices.

Do you have a compatible Vulkan installable client driver (ICD) installed?
Please look at the Getting Started guide for additional information.


❯ pacman -Qs icd
local/lib32-ocl-icd 2.3.1-1
    OpenCL ICD Bindings (32-bit)
local/lib32-vulkan-icd-loader 1.3.208-1
    Vulkan Installable Client Driver (ICD) Loader (32-bit)
local/ocl-icd 2.3.1-1
    OpenCL ICD Bindings
local/vulkan-icd-loader 1.3.208-1
    Vulkan Installable Client Driver (ICD) Loader


❯ ENABLE_PRIMUS_LAYER=1 optirun vkcube
Xlib:  extension "NV-GLX" missing on display ":0".
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
PrimusVK: Searching for display GPU:
PrimusVK: 0x562ee24a03b0: 32902;358
PrimusVK: Got integrated gpu!
PrimusVK: Device: Intel(R) HD Graphics 4000 (IVB GT2)
PrimusVK:   Type: 1
PrimusVK: Searching for render GPU:
PrimusVK: 0x562ee24a03b0.
PrimusVK: No device for the rendering GPU found. Is the correct driver installed?
PrimusVK: VK_ICD_FILENAMES not set
vkEnumeratePhysicalDevices reported zero accessible devices.

Do you have a compatible Vulkan installable client driver (ICD) installed?
Please look at the Getting Started guide for additional information.


I tried this too
https://github.com/felixdoerre/primus_vk
❯ pvkrun vkcube
Xlib:  extension "NV-GLX" missing on display ":0".
MESA-INTEL: warning: Ivy Bridge Vulkan support is incomplete
PrimusVK: Searching for display GPU:
PrimusVK: 0x561ea197a730: 32902;358
PrimusVK: Got integrated gpu!
PrimusVK: Device: Intel(R) HD Graphics 4000 (IVB GT2)
PrimusVK:   Type: 1
PrimusVK: Searching for render GPU:
PrimusVK: 0x561ea197a730.
PrimusVK: No device for the rendering GPU found. Is the correct driver installed?
PrimusVK: VK_ICD_FILENAMES not set
vkEnumeratePhysicalDevices reported zero accessible devices.

Do you have a compatible Vulkan installable client driver (ICD) installed?
Please look at the Getting Started guide for additional information.


I think my card, NVS 5200M, doesn't support vulkan? Idk, couldn't find it in neither these websites:
https://developer.nvidia.com/vulkan-driver
https://vulkan.gpuinfo.org/

Last edited by Shades on 4 May 2022 at 6:00 pm UTC
redneckdrow 4 May 2022
User Avatar
The NVS 5200m is an entry level Fermi-based chip from 2012. The Fermi architecture does not support vulkan. Therefore, you're stuck with WINED3D, because you can't run dxvk.

In the launch options for the game, put

 
PROTON_USE_WINED3D=1 %command%

and it should work. But with that GPU, I doubt the performance will be great.
Shades 5 May 2022
Quoting: redneckdrowThe NVS 5200m is an entry level Fermi-based chip from 2012. The Fermi architecture does not support vulkan. Therefore, you're stuck with WINED3D, because you can't run dxvk.

In the launch options for the game, put

 
PROTON_USE_WINED3D=1 %command%

and it should work. But with that GPU, I doubt the performance will be great.
It still doesn't start, maybe it's an issue with the game's compatibility on Linux. Thank you, anyways!
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon Logo Patreon. Plain Donations: PayPal Logo PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register