DirectX Errors When Trying to Play EA Game

Proton 8.0 has allowed me to get further in Madden NFL 23 so far on Lutris. It throws the DirectX Error in the screenshot below. I’ve attached my system information, the log for the flatpak verson of Lutris running Proton 8.0 and another log of the wine-ge-8-26-x86_64 (default) version in Lutris. My wine configuration is set to Windows 10.

System info: Ubuntu Pastebin

Proton 8.0: Ubuntu Pastebin

With wine-ge-8-26-x86_64, the game tries to launch but opens a black window which eventually crashes followed by the EA App crashing as well. Log for this is in the first reply to this post (new users limited to 2 links in a post).

I tried using PROTON_NO_D3D12=1 flatpak run net.lutris.Lutris -d as PROTON_NO_D3D12=1 worked for many on ProtonDB but still get the DirectX Error in the screenshot. I also tried PROTON_NO_D3D11=1 as this worked for one on ProtonDB but still no luck. Using -force -dx11 in Lutris under Configure → Game Options → Arguments didn’t work for me either but this was also on ProtonDB.

I tried many other Proton versions, env. variables, arguments, flatpak and package manager version of Lutris, flatpak of Bottles, flatpak of Heroic Games, looking up the specific DirectX errors I’m gettting, querying about different lines with err in the log, dxdiag, and a lot more.

In Bottles, with soda-9.0-1 (default runner), I get a DirectX Error as well but a different one:

DirectX function "GetDeviceRemovedReason" failed with DXGI_ERROR_DEVICE_REMOVED ("The video card has been physically removed from the system, or a driver upgrade for the video card has occurred. "). GPU: "Intel(R) UHD Graphics 630 (CFL GT2)", Driver #1 31.0.21902.5 08/31/2023 00:00:00. This error is usually caused by the graphics driver crashing; try installing the latest drivers.DeviceRemovedReason: DXGI_ERROR_DEVICE_REMOVED ("The video card has been physically removed from the system, or a driver upgrade for the video card has occurred. ").

I’ve tried many of the same things I tried in Lutris but in Bottles and still get this different DirectX Error.

Can someone guide me in the right direction here? I’m completely lost on what to do next and have spent well over 40 hrs. trying to diagnose. That might not be saying much though as the only game I’ve set up with Proton before was Skyrim (years ago) which is relatively easy.

Thanks for reading :slight_smile:

Flatpak Lutris with everything default (wine-ge-8-26-x86_64) log: Ubuntu Pastebin

Remember to launch lutris flatpak in debug mode. It is spammy, but sometimes worth the extra data.
flatpak run net.lutris.Lutris -d

ProtonDB - first lot say dialling back to Proton 7 works, the more recent posts say it now works under Proton - Experimental. If you’ve been through all that and its the exact same error, then you probably need to look at slightly different drivers, or try tweaking the DXVK version on launch.

Does everything else from the EA app itself launch without issues? Also try turning off the in-game overlay :slight_smile:

If there is any way to edit the actual game config, you could try forcing it to launch in windowed mode, or launching with a different renderer.

Lastly, the optimal place to add variables like PROTON_NO_D3D12=1 to the actual EA App “game configuration” in Lutris the place for app specific variables → configure → turn on advanced slider → system options tab, “Game execution” box. Adding both PROTON_NO_ESYNC=1 and PROTON_NO_FSYNC=1 is my other go-to for generic troubleshooting (and default in my WINE runner config now).

Thanks for the reply :smiley:

I have been launching in debug mode with the -d flag but still lost on where to begin in the log files.

I have been through the ProtonDB reports for Madden NFL 23 and Madden NFL 22 but no luck there. A lot of the other Proton versions I was seeing in those reports were causing the EA App to crash before I could test Madden. What different drivers are you referring to (complete noob here)? I know that I have mesa drivers installed but I’m not sure beyond that off the top of my head. I had thought of tweaking the DXVK version on launch when I noticed there were potentially different versions to choose in Bottles and then forgot as I was in the middle of many thoughts. Definitely going to give that a whirl in Lutris and Bottles!

Everything else launches great in the EA App as long as I’m using specific Proton versions. Proton 8.0 works in that regard and I think some others did too but I don’t remember which. I just know Proton 8.0 was getting me the farthest. I will look into turning off the in-game overlay too!

I have tried launching in windowed mode by simply hitting Alt+Enter upon launch and then subsequent launches would automatically open in windowed mode in Bottles but that may not work the same as editing the game config. I’ll try this in Lutris next and look into the game config to see if it’s editable. I will also look into a different renderer, if so. I have no idea what renderers are but will look into it :joy:

I’m almost certain I tried adding Proton environment variables and other env. variables to the “Game execution” box but I will try Proton again there. I haven’t tried PROTON_NO_ESYNC=1 or PROTON_NO_FSYNC=1 in that location so I’ll give that a try. I did try turning off Esync under configure → turn on advanced slider (if needed) → toggle Enable Esync. I don’t think that got me any further in the game but I’ll try again. If I turned off Esync with that toggle switch as well as everything under configure → turn on advanced slider (if needed) → Graphics except for DXVK then the game would launch into the opening game at least but would freeze shortly after with the audio continuing to play. I don’t think that is the way to go though.

Greatly appreciate your insights! I’ll report back on how all of this went in Lutris as well as trying some in Bottles.

I tried at least half a dozen of the newest versions of DXVK in Lutris with no success.

I also turned off the in-game overlay but that didn’t help unfortunately.

I found a key value pair for configuration at https://steamdb.info/app/1760250/config/ but looks like this is only for Steam and I haven’t found anything about the path to the config if I even have it after adding this key value pair to configure → turn on advanced slider → system options tab, “Game execution” box. I tried using grep -iIr "<keyword>" recursively in the ea-app directory with different keywords I thought might turn something up but nothing so far. Because of this I haven’t been able to launch in windowed mode or launch with a different renderer in Lutris. I did try GL (default), GDI, and Vulkan as renderers in Bottles but still getting the Bottles DirectX Error I included in the original post. I will continue to look for this config online.

Adding both PROTON_NO_ESYNC=1 and PROTON_NO_FSYNC=1 as key value pairs under configure → turn on advanced slider → system options tab, “Game execution” box launched the EA App but I received: Communication error\n The app couldn't connect to port 3216, and this may block game launches. You can continue to use the app with limited features, or check out our help article for troubleshooting tips.\n Error code: EC: 10701. That help article is pasted here: https://help.ea.com/en/help/ea/ea-app/error-codes/. It didn’t matter if I used Proton 8.0 or wine-ge-8-26-x86_64. It did indeed prevent game launches lol. I can attach the log for that behavior if it’s helpful. Following the help article under the Mac solution for that error I ran sudo lsof -i -P | grep LISTEN | grep :3216 and the output was:
wineserve 20187 windwalkin 1307u IPv4 115702 0t0 TCP localhost:3216 (LISTEN)
I simply sent a SIGTERM to this process which ended it and then Madden launched but again I got the DirectX Error in the screenshot above when loading into the introductory pro bowl game.

I am beginning to wonder if part of the issue might be I am using a laptop with a monitor plugged into it. I shutdown and unplugged the monitor before booting again but I am still seeing the same results so far. The DXGI_ERROR_DEVICE_REMOVED ("The video card has been physically removed from the system, or a driver upgrade for the video card has occurred. "). DirectX error I was getting in Bottles and this post made me wonder: Solved: DirectX 12 Error in Madden NFL 25 - Answer HQ. Maybe I should ask why I’m getting these DirectX errors on the EA forum but I kind of doubt they’ll be much help since I’m on Linux. Might be worth a try though.

I received the “Too many computers have tried to access this accounts version of Madden” message again so I won’t be able to test again for at least 24 hrs. but I will update with more when I can.

With regards to drivers, it is an Intel chipset, using the open source driver. There may be other options available - from intel, or some intelligent soul who decided the Linux world needs more “fixed” drivers. Worth a few internet searches, at least.

Flatpak (a sandbox) is usually able to access the driver, but some cards may have located their files in places it cannot acccess, so instead of being able to use DXVK, drops back to DirectX->OpenGL, which can be the source of DirectX errors. You should see messages in the debug logs if that was the case.

Heck, maybe you should try turning off DXVK/VKD3D and D3D extras with the default wine-ge-8-26 runner, and see if it runs (maybe poorly, but hey, at least running :slight_smile: )

Those variables cannot affect networking, they are only variables used when running Protons. Also, if it is was not clear, the settings are here (columns without the = obvs)
image

For Proton, and in Flatpak, variables should be set in the above section on the EA App, and they only “work” when you change the runner for the EA App to a Proton runner. Also, there is a PROTON_LOG variable that will output extra data.

Just for info - the default pre-built runner (wine-ge-8-26) is a full fat WINE (if a little old, being WINE 8) with support for Lutris options built into it, so all the regular switches and toggles (turning off ESYNC/FSYNC etc) work with it.

Thanks for clearing up drivers. I’ll take a look at those offered by Intel if any and other options on Linux. :slight_smile:

I don’t think the flatpak versions of both Lutris and Bottles wouldn’t be able to access the driver because I have the flatpak of Steam and am able to run Skyrim Special Edition, Tomb Raider (from 2013), Easy Red 2, Left 4 Dead, Left 4 Dead 2, and Firewatch without any issues that are obviously only on Linux. I would guess it’s possible still though? Madden NFL 23 is the most graphics intensive game I’ve tried to run yet.

I did try adding the EA App to Steam in hopes that would be easier but no success so far after trying around 10 of the latest Proton versions. I might look back into this some more. Maybe it would have been easier if I bought a Steam Key rather than buying an Origin key. I could only find Madden NFL 22 as a Steam key though so I went with the newer version (23) because it was also rated highly on ProtonDB. :slight_smile:

Tomorrow I will try turning off DXVK/VKD3D and D3D extras with the default wine-ge-8-26 runner, and see if it runs. I’ll also get back to you on some of the other things I couldn’t finish because EA thought I was using too many computers.

When adding the environment variables to the Key, Value table I was doing it just like that screenshot, ie, without the =. But I’ll get back to you on a few I couldn’t try yet, and try PROTON_LOG.

What do you mean by ‘the default pre-built runner (wine-ge-8-26) is a full fat WINE’? I will test the env. variables again with that new info about ‘the switches and toggles will work with wine-ge-8-26 and the env. varialbes only “work” when you change the runner for the EA App to a Proton runner’. My tests weren’t consistent with that info. Do you know if those switches and toggles will work with other versions of Wine? If not, would I change them in the terminal when launching Lutris from there? If you think that might be worth trying and know of a good link for the variables to change and how to do it I’d appreciate it.

I’ll try and keep this short, but it involves WINE so it’s not gonna be that short, sorry :slight_smile:

wine-ge-8-26 is a build of WINE for Lutris with fixes in it. It is the last version, as it was decided to just use Proton instead. Proton is a highly optimised WINE focused on games with lots of tweaks in it, so duplication of effort etc.

Including PROTON_LOG=1 when you launch a Steam game with Proton will produce a steam-ID.log in your home directory, and now, we can do the same using a Proton runner in Lutris.

With Lutris, it knows where Steam keeps its Protons, and uses umu-run to use them. E.g. Lutris runner:
image

…and the variables
image

…and it will create a Proton log - “steam-0.log” - in your /home directory with the runtime details in the same way.

The command line equivalent (more or less) to what Lutris is running there: -

export WINEPREFIX=~/games/lutris/ea-app
PROTON_NO_ESYNC=1 PROTON_NO_FSYNC=1 PROTON_LOG=1 GAMEID=0 PROTONPATH=~/.steam/root/compatibilitytools.d/GE-Proton9-22 ~/.local/share/lutris/runtime/umu/umu-run "${WINEPREFIX}/drive_c/Program Files/Electronic Arts/EA Desktop/EA Desktop/EALauncher.exe"

As I said, using variables starting PROTON* with regular WINE runners has no effect, since it isn’t Proton. A list is in the Readme.md on the Valve Proton GitHub page

Great, thank you for all the info!

Do you think an easier fix would be to just buy a GPU that’s meant for gaming more? I’m not planning on gaming that much so I could probably pick up a relatively cheap one for about $100 or less and make sure it’s returnable if things don’t work out. I was looking at some GeForce GTX 1070 8GB GPUs that would run this game and better than my Intel integrated card. I don’t really want to buy one though, since I’m not gaming much, if there’s a good chance I can fix these problems I’m having without too much effort. Definitely don’t want to dual-boot Windows 11 for just one game. Even though I somehow have a free license after they tried to remove my trial of it and were unsuccessful! :slight_smile:

I read through those Proton environment variables a few days ago and didn’t see any others worth trying that I haven’t already tried. But might be worth coming back to as I gain some knowledge which I am thanks to you.

Do you know where I could find launch options that aren’t Proton environment variables, such as -force -dx11?

So if I were testing with a different Wine version than the default in Lutris, I would put that export in my .bashrc right? It seems I should just use the default Wine in Lutris or a Proton version though if Proton is where Lutris is moving and maybe easier to find info on Proton than Wine online especially for a rookie.

I’ll get back later today hopefully after I test some things out!

Tried turning off DXVK/VKD3D and D3D extras with the default wine-ge-8-26 runner and the EA App launched in offline mode. I reconnected by clicking a button this time but Madden launched to a black screen and crashed. The EA App didn’t crash though.

That’s about as far as I got as I received another “Too many computers” message from EA. It seems I need to wait much longer than 24 hrs. this time. Maybe 48 hrs. lol idk. I waited about 36 hrs. so thought I’d be good. Way to end my trains of thought EA. If a GPU can end this nightmare I’m more than willing to shell out some money :rofl:

Ah, gaming hardware - a thing with many moving parts, and just as many opinions :slight_smile:

Yes, your choice of games should influence your hardware choice, and if a well maintained (is anything stable anymore?) driver is available for your Linux distro of choice should also be a factor. Nvidia would be my first choice, mainly for the driver support.

If Madden 23 is your main (field)goal, then find a willing friend with hardware to try it out for you first.

For testing problem games, I just duplicate the game configuration in Lutris (right click on the tile->duplicate,) then play around with the runner, variables and launch options in the copy. Rather that than putting variables anywhere I’m likely to forget.

Lastly flags like “-dx11” are game specific and are applied inside the launcher, for example (manage → view properties)
image

I am on Fedora Workstation 41 so I would think driver support would be good since it’s a popular distro but maybe not as much as some distros like Ubuntu and it’s derivatives, Arch, maybe Manjaro, etc. I really have no idea what I’m talking about here.

Nice tip duplicating the game configuration! I’ll be using that to lighten the workload physically and mentally.

Awesome, thanks for clearing up where to put the launch flags. I was putting them in the wrong place under Configure → Game options → Arguments.

I was doing many things incorrectly when I first posted here so I think I’ll start by starting over. This may take another week or two at this rate. But I will consider ordering a GPU if returns are free in the meantime. Nvidia brand will probably be more expensive than those I was looking at and I wondered if I should go with Nvidia instead for better support. Madden 23 is my main (field)goal for at least another year. After that maybe I would consider playing other games that are newer too. :slight_smile:

Again, I’ll update when I can. Thanks for the support, you’re a gaming superhero! :smiley:

1 Like

Hey so long story short I didn’t make any progress on Madden 23. I didn’t try everything you mentioned yet but I may at a later date. Honestly, I don’t have a lot of hope that I will figure it out being somewhere between a beginner and intermediate Linux user and knowing and experiencing bugs/difficulties on Linux (especially with gaming, which I’m a complete noob at). I’ve also put about 80 hours into this already. So I’m putting this project on the backburner and I may never return to it. I have a ton of stuff going on in my life right now so this just really isn’t that important. However, I greatly appreciate your help with everything and I couldn’t have made it this far without you! :grinning:

Now for some more of the things I tried if you’re still reading.

With Proton 8.0 in Lutris I get the following in my logs several times:
gamemodeauto: dlopen failed - libgamemode.so: cannot open shared object file: No such file or directory
But:
windwalkin@zapper:~$ gamemoded -s
gamemode is active
What gives, is this a red herring? I tried adding:
LD_PRELOAD="$LD_PRELOAD:/usr/\$LIB/libgamemode.so" to my .bashrc as well as adding export in front of that but no change as far as I can tell.
I also tried: LD_PRELOAD="$LD_PRELOAD:/usr/\$LIB/libgamemode.so.0 as well as export before that in my .bashrc but again I still get this message several times in my logs with Proton 8.0.

I tried duplicating the EA App like you said in Lutris to make it easier to test different combinations of options (Esync and Fsync only here), runners, environment variables, etc. I tested all combinations of env. variables (with and without -force -dx11 where relevant) and under Proton 8.0 since that was the runner getting me furthest in Madden 23. I verified I was putting the env. variables and the launch option -force -dx11 in the correct place in the EA App after you clarified the location to enter it. But still was getting the same DirectX Error I posted at the top of this thread at the same point in Madden 23.

With everything default in Lutris except disabling Esync and Fsync with the toggle switch:
When launching madden it crashes and I get the following message in the Problem Reporting App on Fedora:
wine64-preloader killed by SIGSEGV
But when generating a report it says reporting is disabled because the generated backtrace has low informational value.
I’ve seen a couple people have this problem on Fedora Workstation 38, 2 yrs. ago. at https://www.reddit.com/r/linux_gaming/comments/13ya082/wine64preloader_error_help/

I did not try a different GPU. I don’t know anybody to ask about borrowing one and when I looked at the prices of new GPUs it was about $200 for those that would run Madden 23 and some others with a little more graphics requirements. I was originally looking at used GPUs which were half the price but being security and privacy minded I quickly dismissed buying used after digging into GPUs more. For the amount I game, it just isn’t worth it to me to spend $200 right now when I’m low on cash.

I may try kvm to run Windows at some point on my Linux host as this seems like the best way to run Windows games in Windows on Linux. But I’m not sure of the difficulty to get this up and running. So probably would try some of the easier things you mentioned first like trying different graphics drivers from Intel if they offer others I can install.