Please note: Although we may stop by occasionally, this is not a developer Q&A.

Unofficial Linux Support Thread

Alakad
Alakad Member Posts: 30
edited April 2023 in Ask the Community

Hi all! So if you're a Linux gamer you may have heard that DBD is partially working on Linux. To be clear, it's only currently working through the Epic Games Store version of the game. So if you don't own that version, you can buy it but it's no longer available for free unfortunately. I'll try to respond to anyone having support issues in this thread, and I'll also edit this top-level post with new information as it comes out.

Important Note: BHVR has not made any official announcement regarding Dead By Daylight on Linux. They have said they will launch for Steam Deck at some point but have given no timelines. Just because this method is working now does not mean that it always will. Please don't bother BHVR with support issues as they are NOT currently supporting Dead By Daylight on Linux.



Please, if you have support issues, post them here and I will try to help!



DO NOT ASK BHVR FOR HELP ON LINUX RELATED ISSUES


Note: I have heard anecdotally that DBD is working now on Steam (as of 2023-04-30) but I have not tested it yet. Some steps may still be necessary to get DBD working on Steam, but I'm not sure yet what those are. I'll update this guide when/if those steps become apparently and/or necessary.

So anyway, now that that's out of the way, here are the guides:

How to get Dead By Daylight working through the Epic Games Store on Linux

First of all, you need Heroic Games Launcher to run the Epic Games Store on your Linux system.

NOTE: Linux is case sensitive and also doesn't like spaces, so you might want to copy this folder somewhere else easier to remember, and remove spaces and capitalization from the folder's name -- but you shouldn't necessarily have to do this, it's just easier in my opinion.

Once Heroic is installed you need to configure a few things:

  • On the left-side menu bar click Wine Manager
  • Download a version of Wine-GE-Proton or Proton-GE-Proton, the higher in the list the newer it is, so the top option is a good choice.
  • Now make sure you're logged in to the Epic Games Store, if you're not, click Manage Accounts and follow the on-screen prompts. You may need to use the Alternate Login which requires you to login and then copy just the part after authenticationCode
  • Now that you're logged in, click Library in the Heroic menu and search for Dead By Daylight (you might have to select Epic or All from the options in the top bar for it to show up)
  • Once Dead By Daylight is installing, click on the picture of the game (not the gear icon) to go to the Game Page, you should pretty much always do this since there are some settings available in the Game Page that are not accessible otherwise.
  • Now click Settings. In the settings make sure that a Wine Version is selected (the box will be empty if Heroic can't find any Wine versions). Make sure all the boxes are NOT ticked, all options OFF. You can adjust settings under Other to your liking after successfully launching the game for the first time.
  • You're almost there, just one more thing we need to do. Go back to the Game Page (click the back arrow, or from your library click the picture of the game NOT the gear icon). Either click on Install Path to open the path to the game files or navigate there yourself if that doesn't work.
  • Open a terminal window and navigate to ~/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries/EGS and type the following command: ln -s ../../../EasyAntiCheat/
  • This creates a linked directory to the EasyAntiCheat folder in the game's root directory. So any changes from the game updating will automatically be copied to the linked folder here in the EGS directory.
  • Go back to your library and launch the game! You should successfully make it to the menu screen! Congratulations! Enjoy!

If you get an error saying EAC client cannot be instantiated

In Heroic go to your Library and then click the Dead By Daylight game picture NOT the gear icon. From the Game Page click the three vertical dots in the top right corner and select Force Update If Available then re-launch the game and it should be fixed.

If that still doesn't fix it, go back to the Game Page and click the three dots and this time select Verify and Repair. I find sometimes Heroic glitches out and won't actually run the Verify and Repair command properly. If that's the case, exit Heroic by clicking the tray icon and select Quit. When you launch Heroic and try the above instructions again it should have some green text saying Repairing Game, please wait.

I don't want to play on the Epic Games Store version, I'll lose all my progress because I've only ever played on Steam!

Well then you're in luck! Go create a BHVR Account here: https://account.bhvr.com/

Once you're there, you'll see three cards on the right side for Epic Games Store, Steam, and Stadia. Just link your accounts following the on-screen instructions.

Note: It can take a little while before your accounts are linked so be patient, it'll happen eventually.

How do I increase my FPS from 60 to 120 on Linux?

In Heroic either click on or navigate to the path in the DBD Game Page (click the picture, not the gear icon). The default path for it is ~/Games/Heroic/Prefixes/Dead by Daylight/

From that folder navigate the following folders: Dead by Daylight => pfx => drive_c => users now at this point it might differ, it will either be "steamuser" or the name of your home directory on your system but it won't be the "Public" folder that's in there, so open whatever folder isn't called "Public".

Continuing from there: users => <<your username or steamuser>> => AppData => Local => DeadByDaylight => Saved => Config => EGS

Phew, that was a long journey but we're there. Now open Engine.ini in any text editor and add this text to the bottom:

[/script/engine.engine]

bSmoothFrameRate=false

MinSmoothedFrameRate=5

MaxSmoothedFrameRate=120

bUseVSync=false

Close that file and now open GameUserSettings.ini and search for "vsync" it's on line 79 for me and change the value from True to False so the line looks like this:

bUseVSync=False

That's it, now you should be capped at 120 FPS instead of 60 FPS. Enjoy being able to actually hit a great skill check every time with that buttery smooth framerate!

Post edited by Alakad on
«1

Answers

  • jomarocasout
    jomarocasout Member Posts: 8

    thanks to you, finally i can play dbd in linux, I can play version, only I cannot link my account of steam to epic, but you tell patient, thanks again

  • edgarpoop
    edgarpoop Member Posts: 8,346
    edited January 2023

    Anyone else having issues with EAC since the update on Tuesday? I was playing fine last weekend. I'm getting an EAC cannot be instantiated error. I've tried forcing an update and repair of DbD through Heroic Launcher and re-copied the EAC folders. The log file isn't telling me much, just throwing a generic "EAC NOT INSTANTIATED" error. But it looks like it's finding the PROTON_EAC_RUNTIME variable earlier in the process, it just doesn't like what it's seeing, so I'm kind of stumped. I'm on Pop!_OS 22.04 for what it's worth.

    SOLVED:

    For anyone else experiencing this issue, there seems to be a weird de-sync that took place for me within the EAC folders. Steps to resolve.

    1. Update EGS version
    2. Force update, verify and repair Heroic version
    3. Redo the process of copying your EGS folder, select merge and replace when applicable
  • Alakad
    Alakad Member Posts: 30

    Thanks! I'll add this to the guide for anyone else looking for this answer.

  • jomarocasout
    jomarocasout Member Posts: 8

    thanks to you is good performance, minor issue related to performance but is nothing to play in Linux finally, bhvr can release this game finally for Linux, but they don't want

  • edgarpoop
    edgarpoop Member Posts: 8,346

    No problem. After some more tinkering, I've found that I just have to re-do the EAC folder copy process after every DbD update. Always merge and replace when prompted in the terminal/file manager.

  • edgarpoop
    edgarpoop Member Posts: 8,346
    edited February 2023

    Script for quickly copying the EAC folders to the correct places. Create this script in a text editor of your choice and name it whatever you'd like. I call my mine dbdeac.sh. It's easiest to save it in your home directory. Each cp command should be on one line, but the forum formatting won't let me paste it that way. The syntax is (command) (argument) (target) (destination) all on one line with a single space in between each:

    #!/bin/bash

    cp -rf /home/(yourusername)/Games/Heroic/DeadByDaylight/EasyAntiCheat /home/(yourusername)/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries

    cp -rf /home/(yourusername)/Games/Heroic/DeadByDaylight/EasyAntiCheat /home/(yourusername)/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries/EGS

    After you create the script, you need to make it executable. In your terminal run:

    chmod +x (scriptname).sh

    To run the script (assuming it's in your home directory), simply type this in the terminal whenever you need to re-copy your EAC folders to the correct places:

    ./(scriptname).sh

  • Alakad
    Alakad Member Posts: 30

    Nice one! Thanks again edgar!

    Btw, you can use $USER instead of (yourusername) so it will pull the username from the system's environment variables so that it's truly an automated script and doesn't require any editing. I'll edit it a bit and add it to the guide.

  • edgarpoop
    edgarpoop Member Posts: 8,346

    Oh nice! I appreciate it. I'm still very much learning. Never thought to do it your way.

  • omano
    omano Member Posts: 66
    edited March 2023

    Wouldn't that work and be maintenance free?

    ln -s $EAC_DIR $BIN_DIR
    ln -s $EAC_DIR $EGS_DIR
    

    instead of copying over and over the EasyAntiCheat folder when it needs to be. Just make a link to the source folder.

    //EDIT: also ticking the EasyAntiCheat Runtime box in Heroic game settings is basically the same as defining the variable manually for the Steam EAC Runtime, it uses Heroic provided one though I think, so both methods have their "pros and cons" I guess.

    //EDIT2: yes it works, I think it is better, no need for Steam EAC Runtime, no need to copy over and over the folder on updates.

    Post edited by omano on
  • Alakad
    Alakad Member Posts: 30
    edited March 2023

    Oh yeah I forgot about Symbolic Links... lol

    Thanks! I'll update the guide

    Oh and also you're right that it using Heroic Easy Anticheat Runtime works now. I had tested it in the past and it hasn't worked until recently as far as I know. Maybe I did something wrong in the past.

  • nikodemo
    nikodemo Member Posts: 784

    ... fine. i give in. XD

    the mid-chapter patch changes are too tempting for me to resist. XD

    i STILL want it to work in Steam properly though! all my chieves are there!

    but this will have to do for now. thanks for all the work you all and the community have put into this workaround.

  • Pyc
    Pyc Member Posts: 97

    heroic no longer work?

  • axeldu66
    axeldu66 Member Posts: 1

    Heroic ne fonctionne plus


    Error : in order to access this content a network connection is required

  • Pyc
    Pyc Member Posts: 97
    edited April 2023

    now it work

    Post edited by Pyc on
  • omano
    omano Member Posts: 66

    It never broke since I installed the way it is explained in the thread. So far really great experience!

  • Alakad
    Alakad Member Posts: 30

    Do you have any suggestions on how to improve the guide? It works well for me, but there are always edge cases. Share your experience to help improve the guide please!

  • CrypticGirl
    CrypticGirl Member Posts: 656

    I'm trying this again (last time I couldn't get past the "EAC cannot be instantiated error), and I'm lost at this step...

    • "Copy the EasyAntiCheat folder -- the entire folder, not it's contents -- and navigate to DeadByDaylight => Binaries => EGS and then paste the EasyAntiCheat folder in there.

    I don't see Binaries in the DeadbyDaylight folder. Do I create one?

  • Alakad
    Alakad Member Posts: 30

    It's a bit confusing but the root directory of the game is called DeadByDaylight but there's also a DeadByDaylight folder in the root directory. I think it has to do with the way EasyAntiCheat and Unreal Engine work as to why it's setup like that, but anyway, here's a more thorough explaination...

    For example, your folder structure probably looks like this to get to the EGS folder:

    Heroic => Games => DeadByDaylight => DeadByDaylight => Binaries => EGS

    If it's on Steam it would be:

    Steam => steamapps => common => DeadByDaylight => DeadByDaylight => Binaries => Win64

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Ah. Now I see the folder, but the game still isn't working for me. The EAC splash window will appear, and then it will give me a black screen. After a few minutes, the game stops and I'm back in the Heroic Games Launcher. No error messages at all, so I have no clue what I'm doing wrong here...

  • Alakad
    Alakad Member Posts: 30

    That's odd. Maybe try deleting this prefix folder. It should be in Heroic => Games => Prefixes => DeadByDaylight. And then afterwards try "Force Update" and/or "Verify and Repair" from the game's settings menu in Heroic.

  • CrypticGirl
    CrypticGirl Member Posts: 656

    So when you say delete "this" prefix folder, is there a certain one? I'm in Games => Heroic => Prefixes => Dead by Daylight. In there, there are three folders: pfx, drive_c, and then dosdevices. Do I delete the pfx then?

  • Alakad
    Alakad Member Posts: 30

    Just delete the entire DeadByDaylight folder inside Prefixes. It'll make a new prefix the next time you launch the game. The prefixes are essentially just the fake windows drive that Wine uses for compatibility with Windows programs

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Okay, now I've tried it, but it's still not working. 😭

  • omano
    omano Member Posts: 66
    edited April 2023

    Follow my steps:

    • Install the game in Heroic (from this step I'm assuming a CLEAN game folder, without anything copied here and there)
    • In the game settings, tick the EasyAntiCheat Runtime box
    • Install a Proton GE version (I use 7-49) in Heroic
    • In the game properties select the Proton GE version
    • Now in terminal execute these two commands, by replacing the username in the path (or by completely modifying the path to match your system, here it is default folders, but you need to have the real path from your system), this is assuming default path here with a user called USERNAME so change all USERNAME to your user name

    ln -s /home/USERNAME/Games/Heroic/DeadByDaylight/EasyAntiCheat/ /home/USERNAME/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries/EGS/

    • Start the game
    • Enjoy
    Post edited by omano on
  • CrypticGirl
    CrypticGirl Member Posts: 656

    Now I get the error: "EAC has detected that game files have been modified (error code 4). To resolve this, please verify the integrity of the game cache (found under the Local Files section of the game's properties).

    Additional info: Unknown file version (DeadbyDaylight/PluginsWwise/ThirdParty/x64_vc160/Release/bin/AkSilenceGenerator.dll)."

    I have tried forcing the update and the verify and repair option, but neither has resolved the issue. Do I just delete that file version mentioned in the error?

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Now I get the error: "EAC has detected that game files have been modified (error code 4). To resolve this, please verify the integrity of the game cache (found under the Local Files section of the game's properties).

    Additional info: Unknown file version (DeadByDaylight/Plugins/Wwise/ThirdParty/x64_vc160/Release/bin/AkSiolenGenerator.dll)"

    I have tried both the force update and verify and repair options, but neither has resolve the issue. Do I just delete that file mentioned in the error?

  • omano
    omano Member Posts: 66
    edited April 2023

    Verify game files again from Heroic. If it still doesn't work, delete the file, verify files again, and see if it fixed it.

    On my side I have multiple files corrupted/not downloaded properly, verifying files is currently downloading files, specifically:

    • DeadByDaylight/DeadByDaylight/Content/Paks/pakchunk0-EGS.pak
    • DeadByDaylight/DeadByDaylight/Content/Paks/pakchunk1-EGS.pak
    • DeadByDaylight/DeadByDaylight/Binaries/EGS/DeadByDaylight-EGS-Shipping.exe


  • omano
    omano Member Posts: 66
    edited April 2023

    Reinstall the game then I don't know. Are you using the latest Heroic update? I have Heroic 2.7 on my side.

    It works, I had a completely messed up update in the end it ended up downloading the whole game.

    Post edited by omano on
  • juju424
    juju424 Member Posts: 2

    I have this same problem after new update via Heroic. I tried verifing game files, it doesn't work. Now I try uninstalling all the game files and downloading again. I hope it works.

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Where do you get that version from? I only have 2.5.2 and I don't see any options to update it.

  • omano
    omano Member Posts: 66

    I installed it from the AUR (I'm on Manjaro, an Arch Linux derivative), here is the release page https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases (I highly recommend not to use these containerized version like FLATPAK, it adds a layer of issues depending on the system).

    PS: the 2.5.2 version of Heroic is from December 2022... Maybe you have old tools included in it and it messes up the download somehow?

    PS2: they officially provide a containerized AppImage version if that's what you want here https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v2.7.0/Heroic-2.7.0.AppImage or they distribute simply the application in a compressed file here https://github.com/Heroic-Games-Launcher/HeroicGamesLauncher/releases/download/v2.7.0/heroic-2.7.0.tar.xz where you could just extract it in a folder you can access, and run the Heroic executable in it.

  • Pyc
    Pyc Member Posts: 97

    no longer work

    unknow version deadbydaylight/plugins/wwise/thirdparty/x64_vc160/release/bin/aksilencegenerator.dll

  • omano
    omano Member Posts: 66
    edited April 2023

    If none of you can bring something relevant, no one will help you. System info? Heroic info? Logs? How you set everything up? the problematic file info (exact size to compare)?

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Do I have to redo all the steps with copying and pasting those folders, or executing those commands in terminal?

  • omano
    omano Member Posts: 66
    edited April 2023

    I recommend NOT copying the folder, just create a symlink with the command in terminal, so when the real folder updates, you don't need to copy the files again, as it is simply a link to the real folder.

    If you did copy the folder before, I recommend deleting it, and creating the symlink.

  • CrypticGirl
    CrypticGirl Member Posts: 656

    I think I'm officially a lost cause. First I tried this method described above...

    #!/bin/bash

     cp -rf /home/(yourusername)/Games/Heroic/DeadByDaylight/EasyAntiCheat /home/(yourusername)/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries

     cp -rf /home/(yourusername)/Games/Heroic/DeadByDaylight/EasyAntiCheat /home/(yourusername)/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries/EGS

     After you create the script, you need to make it executable. In your terminal run:

     chmod +x (scriptname).sh

     To run the script (assuming it's in your home directory), simply type this in the terminal whenever you need to re-copy your EAC folders to the correct places:

     ./(scriptname).sh

     ^ This didn't work. Then I tried this in terminal...

    ln -s $EAC_DIR $BIN_DIR

    ln -s $EAC_DIR $EGS_DIR

    And I get "ln: missing file operand."

  • omano
    omano Member Posts: 66

    Where is your game installed exactly? copy/paste the path here.

  • CrypticGirl
    CrypticGirl Member Posts: 656
    edited April 2023

    /home/deck/Games/Heroic/DeadByDaylight

    I forgot to mention, yes, I did change the (USERNAME) part to my actual username in the scripts and such, which would be "deck."

    Post edited by CrypticGirl on
  • Pyc
    Pyc Member Posts: 97

    after last dbd update I have in-game error "unknow version deadbydaylight/plugins/wwise/thirdparty/x64_vc160/release/bin/aksilencegenerator.dll"

  • Pyc
    Pyc Member Posts: 97

    now i have loop in-game error "profile state change"

  • omano
    omano Member Posts: 66
    edited April 2023

    Do you all have issues on the SteamDeck? I play on PC with Heroic, no issues at all besides the messed up update, fixed after using the Repair functionality.

    @CrypticGirl so first things first you said it didn't work you didn't say why you think it didn't work. Also, the proper command for you would be :

    ln -s /home/deck/Games/Heroic/DeadByDaylight/EasyAntiCheat/ /home/deck/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries/EGS/

    If you have an error post it here.

    before you issue the command, make sure you do NOT have a folder EasyAntiCheat inside the path /home/deck/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries/EGS/

    After you issue the command, a symlink called EasyAntiCheat will appear in /home/deck/Games/Heroic/DeadByDaylight/DeadByDaylight/Binaries/EGS/ at this point there is nothing to do regarding the EasyAntiCheat folder, game or EAC updates will be reflected to this symlink as it points to the real folder.

    For the other issues regarding this file error, again, do all the people have the issue on SteamDeck?

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Oh yeah, I think it didn't work because I still get the "EAC client cannot be instantiated" error. I'll let you know when I try your latest tip.

    And yes, I was having the issue on the Steam Deck regarding that unknown "aksilencegenerator" error. Updating the Heroic Launcher on the Steam Deck fixed it for me. Now it's just the "EAC client cannot be instantiated" error that I can't seem to get past.

  • omano
    omano Member Posts: 66
    edited April 2023

    Are you sure you ticked to box in Heroic for EasyAntiCheat Runtime in the game properties/settings (and do not set the environment variables, you just need to tick the box).

    To run the game it is as simple as ticking the box in game properties, and creating the symbolic link in the proper place. That's all, if everything is up to date it should work.

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Yes, the EasyAntiCheat Runtime box is ticked. I put in the command you posted above, and it created the file (I assume the symlink you mentioned) in the EGS folder. However, I'm still getting the "EAC client cannot be instantiated" error. I have Heroic version 2.7.0, so I don't know what else could possibly be out of date.

  • omano
    omano Member Posts: 66

    Without having the computer on hand I can't help more if you're sure everything is done as it should. Sorry. One possible thing is that you use an old Proton version. For EAC to work you need to use a recent Proton version in Heroic (or game settings). Old Proton version can not have the EAC Runtime to work.

  • CrypticGirl
    CrypticGirl Member Posts: 656

    Well, I went in to make sure there weren't any more updates to Proton. I was using 7-49, but then found Wine-GE 7.0-GE-8-LoL and then lutris-ge-lol-7.0 8-x86_64.

    Then in the Wine/Proton Installer, I saw that there was a "Install for" field with the options Steam, Heroic Wine, Heroic Proton, Heroic Wine Flatpak, and Heroic Proton Flatpak. I wasn't sure which one to choose, but I tried the lutris-ge one on Heroic Wine. Still getting the same error.

    I clicked the "Report a problem running this game" and saw a log, but I don't know about copying it...

  • omano
    omano Member Posts: 66
    edited April 2023

    I said Proton, not Wine-GE, not Lutris-GE and where are you getting these Flatpak things? Something is weird here.

  • CrypticGirl
    CrypticGirl Member Posts: 656

    I'm just looking at the "Install for" options in the ProtonUp-QT - Wine/Proton Installer, and it lists a Steam, Wine, Proton, Wine Flatpak, and Proton Flatpak.

    In the DBD settings in Heroic, it asks for a Wine version, and a WinePrefix folder. I've tried different Proton versions for the Wine version, but I haven't touched the WinePrefix folder path. I don't know if that's where the issue is or not.