[Fixed, needs testing] Dying Light refuses to launch
Page: «16/16
  Go to:
diginferno Aug 29, 2020
OS: XUbuntu 20.04.1
CPU: Intel i7-10700K Comet Lake
Motherboard: Gigabyte Z490M Gaming
Systemmemory: 16 GB RAM
Graphics card: Gigabyte GeForce RTX 2060 Super 8 GB

Problem: Steam, the game won't load, it freezes on the black screen with a thin white progress bar at the bottom, when the progress bar is full. That happens while the Steam Linux Runtime is enabled in the game properties.

Solution: after sailing the Google seas for a while, I came across this forum topic. This is part of the solution, although I chose a different approach (not saying that there's anything wrong with the file that was shared here, but it's not safe in my book). There are other elements that made it work for me, one of them being Mesa override command line options for the game and the other being an oddball fix for the "no sound" problem. So here's what I did.

1. The libGL.so.1 file

I located this file on my system:

$ whereis libGL.so.1
libGL.so: /usr/lib/x86_64-linux-gnu/libGL.so.1


But that is a soft link:

$ ls -lA /usr/lib/x86_64-linux-gnu/libGL.so.1
lrwxrwxrwx 1 root root 14 Jun 16 12:10 /usr/lib/x86_64-linux-gnu/libGL.so.1 -> libGL.so.1.7.0


So I went to the game directory and I created a link to libGL.so.1.7.0:

$ cd ~/.steam/steam/steamapps/common/Dying\ Light/
$ ln -s /usr/lib/x86_64-linux-gnu/libGL.so.1.7.0 libGL.so.1


2. Command line options in Steam

Those options tell the game to use a specific MESA version. To set those correctly, you need to find the OpenGL version your system is using.

$ glxinfo | grep "OpenGL"
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce RTX 2060 SUPER/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 435.21
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6.0 NVIDIA 435.21
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 435.21
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20


So I put this in the game's command line options in Steam:

MESA_GL_VERSION_OVERRIDE=4.6 MESA_GLSL_VERSION_OVERRIDE=460 %command%

3. No sound

At this point, my game started, but there was no sound. I dug up a Steam community post from 2015 (!) that said to have the pulseuadio volume control open before you start the game. So I did that and MAGIC HAPPENED! My game was running and I had sound!

Here's the Steam forum topic that taught me to do this weird thing: https://steamcommunity.com/app/239140/discussions/0/604941528493172839/

Epilogue:
That was my personal adventure with the Linux native version of Dying Light (Chrome Engine 6). I would speculate that the same workarounds might also work for Dead Island and Dead Island: Riptide, those games are built on the same engine but on a lower version (Chrome Engine 5). I tried the game with Proton, as well, and I was impressed by the performance and the extra graphics options. However, I might want to play coop once in a while, and I wouldn't go there under Proton - Dying Light is using VAC. I hope that this will help others.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: 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


Or login with...
Sign in with Steam Sign in with Google
Social logins require cookies to stay logged in.