I’ve been playing Warframe on an old I7 machine with GeForce 740m for a while with a working 64-bit installation with the latest wine-staging and DXVK.
I recently upgraded to Ryzen 5 2400G, but I can’t get the same setup to work. I’ve installed the typical Standalone version of the installer (because 64-bit client test version does not seem final NOR installs) and did manual modifications to make it work on 64 bit.
I changed the WARFRAME_EXE on the script to the .x64 version, set Lutris to work with staging 3.11 and DXVK 0.61 and ran the game.
The game load fully, but as soon as the Login Screen would pop up, an “evolution engine” error appears, with nothing else to be said. I changed the game log from Preprocessing.log to actually game.log and the last things output are these
15.409 AI [Info]: ENCMGR: FinalizeHostMigration - no encounter info for migration!
15.409 AI [Info]: AIDIR: FinalizeHostMigration - complete
15.409 Sys [Info]: Server::OnData(CMSG_PREFETCH_COMPLETE) setting connection 0 timeout to 7.5
15.409 Sys [Info]: NetDriver::SetConnectionTimeout setting connection 0 timeout to 7.5 * 1
15.409 Sys [Info]: Finished UpdateNavLinksJob for 9 boxes
Error [Debug]: Loaded unexpected version of dbghelp.dll from C:\windows\system32\dbghelp.dll
The same steps described before worked for the old machine, so I don’t think I’m breaking the install script with these custom modifications to get DXVK to work.
Sometimes there’s an error mentioning “audio stream underrun”. It usually happens when I hear the login screen’s audio a little bit, and then the game crashes.
I’ve got a fork of the warframe-linux cript with an ‘all-in-one’ script. With this I can switch between dxvk enabled and disabled and also between 32bit and 64 bit. Here is the link to the script
Update the downloaded folder variable and start it with
./warframe.sh --install
The most important commandline flags are the following
–install - setup the wineprefix with winetricks and configurations
–install-dxvk - download and install dxvk binary into dxvk prefix
–32bit - start Warframe.exe instead of Warframe.x64.exe
–dxvk - start warframe in the dxvk wineprefix
For me the most stable version is 32bit without dxvk (Ryzen 5 1600, AMD RX570). To install and then start the 32bit version use the following two commands
./warframe.sh --install
./warframe.sh --32bit
Thank you for the tips, I’ll look into it and try getting it to work over here. Can you tell a bit more about 32bit without dxvk being more stable? Just recently, using intel/nvidia, I had great results with DXVK to improve framerate.
The first question is: with what options can you currently run warframe? (32/64, dxvk ON/OFF?)
That script seems great for standalone use, but for the recent Lutris, you can probably omit the DXVK part, because we now have a sweet toggle. We can also add our own DXVK versions.
EDIT: I’m extremely impressed the script DID run. the main difference I can spot right now is that it installed the directx packs where I might have not been able to. In your script, it tries to get to drive_c/dx9/dx9, but when you download and execute the redist.exe package, it puts the /dx9/dx9 in that folder (in my case, in drive_c/program files/warframe). So, to easily fix that, I just cut and pasted those folders to drive_c/dx9/dx9, it installed the packages and… the game ran o_O thanks!
Now I just gotta fix all my settings because it’s blinking a lot (it wasn’t even going through login, though!!)
It’s the same thing as mine, probably. That file and the following dx9/dx9 folder that line will generate will be placed on your game folder (or wherever you opened your terminal) and the script will run somewhere else. Just move the downloaded file to the appropriate place and run it again. OR start your terminal in the appropriate place (I don’t know, same folder as wineprefix? the game’s folder, right next to Downloaded?)
the installlation of directx seems to be because of missing download or wineprefix directories. I’ve pushed a fix for that (hopefully )
@dan1lo_bc 64bit with DXVK runs very fast and mostly stable. Only on the Planes of Eidolon the game crashes with the evolution error message (randomly, mostly when engaging the first fight)
@dan1lo_bc could you elaborate on the DXVK toggle and ability to add your own DXVK versions? Is there documentation on how this works? Are 32 and 64bit versions of DXVK handled? Is the wineprefix modified? If yes how is DXVK enabled and later disabled?
The last tiny thing you need to add in your script is removing the executables every time you want to run the game. I tried running your game a couple times and it didn’t work. I manually removed Warframe.exe and Warframe.x64.exe and they started running again. DXVK works and I’ll hopefully be able to help.
I still can’t identify what your script has differently from the standard script (I experimented a little bit over here) but it certainly works!
I’ve already changed it to be my main Lutris starter by renaming it to updater.sh.
If I’m not mistaken, it should do the updates with no trouble as well, right?
Thanks again! cheers!!
EDIT for DXVK info:
Lutris has a toggle in runner options saying “Enable DXVK”. There’s also a dropdown menu with “DXVK version”. You can either pick it up to 0.52 (kinda old) OR you can download your own DXVK, add it to ~/.local/share/Lutris/runtime/dxvk and then you manually input the name yourself. In my case, I downloaded the last Release from Git and renamed it to “0.61_custom”. I typed 0.61_custom in DXVK version and it works!
yes, updates are handled. If the updates won’t work for whatever reason (maybe new files not downloaded by warframe.exe itself) you can use the option --full-update
This downloads EVERYTHING from the Warframe servers. Otherwise only Warframe.exe, Warframe.x64.exe and Launcher.exe are updated by my script. Then Warframe(.x64).exe is used to update the gamefiles
The manual deletion of Warframe.exe should not be needed. They are updated as soon as new Warframe.exe files are available at the Warframe servers. Maybe there was an error when downloading and so your warframe.exe did not work
As the main maintainer of the script mentioned (GloriousEggroll) “files become corrupted after running the game, for some reason”, thus he had to download it all again in each run.
I’ll add rm Warframe.exe Warframe.x64.exe (with the proper pathing) to the script over here.
EDIT: it doesn’t feel like it’s necessary ALL the time, so whenever I have any trouble launching the game, I’ll delete the binaries and let the script download them by itself
Warframe.exe is a bit more sophisticated in updating the game files than our little script
in --full-update mode our script downloads all the assets from the server and stores the md5sum of the downloaded files in Download/Public/local_index.txt. The file index.txt contains all the filenames and their hashes (provided by the warframe server). If a hash in index.txt is different to the one in local_index.txt (or there is no entry in local_index.txt for the file) the script downloads the file from the warframe server and adds an entry to local_index.txt with the newest md5sum.
This requires to download all the files from the server (which are about 20GB I think)
Warframe.exe on the other hand can download only the parts it knows needs to be updated and then modify the local game files with those updates. With this the local gamefiles get “corrupted” because they don’t have the md5sum as indicated in index.txt. But they are nevertheless up to date
That’s why I chose to just download Warframe.exe and let Warframe.exe do the updates (except in the rare exceptional cases)
If anything is unclear just let me know
I have to look into how Lutris is doing the enabling of DXVK. Sounds very interesting. I’m now using a separate wine_prefix with DXVK installed (./warfame.sh --install-dxvk)
@dan1lo_bc FYI: I’m a bit of a commandline junky. I let warframe.sh install itself as /usr/bin/warfame using the command ./warframe.sh --install-bin
With this I can start a commandline and just type warframe or warframe --32bit or warframe --dxvk to start the game
@Pyro4Hell no problem “to each its own”! I like taking these extra steps and settings things up on Lutris’ graphical interface because it lets me easily put or take away options, staging versions and enhancements (DXVK).
I had to add the “rm” line to make the script always re-download warframe.exe and warframe.x64.exe and things look great! DXVK works, I can get 40+fps on 720p settings… I can’t thank you enough right now lol.
Now the big question is… If you’re a commandline junky, why are you on Lutris’ forum helping me out o.O? (I mean, thanks, but, why?!)
I first tried to use WineHQ to setup Warframe, but didn’t succeed. Then I found Lutris with GloriousEggroll’s Warframe launcher https://lutris.net/games/warframe and then warframe LAUNCHED! It was AWESOME!
That was the days with the wget.exe and black commandline-window.
I still had some minor stability problems. So I created the all-in-one script (and updated it following GloriousEggroll’s main repo). With the script I had more control to test single winetricks packages, create wine-prefix for 32/64, start winecfg inside the specified prefix and more). I also helped with th local_index.txt update mechanism (but the idea is from GloriousEggroll, can’t thank him enough!)
And then DXVK came along and it was GLORIOUS! (pun intended).
I’m still having slight stability issues with 64bit or dxvk enabled, but as long as I have a way (ONE way) to play warframe I am happy
And I’m really happy that someone is using the stuff I’ve created. “Sharing is caring” Happy it works for you
Awesome! I’m always happy to hear these stories of things working out ^^
Your script does seem very complete to fulfill all the tasks this game requires. I’m glad I could wrap it up under Lutris and I hope that a newer version (probably incorporating your solution) comes up.
interestingly if i use 64bit and/or DXVK warframe usually freezes or crashes randomly between “before even showing the login screen” and “about 5 minutes into the game” for me, so currently i have to use 32bit and CSMT without DXVK while having ~10-20fps on a bleeding edge gpu and minimal settings (which is a giant pain in the behind)…
i suspect something about the textures being off because if it lets me play for a few minutes on dxvk i can see the (very nauseating) effect of pretty much every texture being reloaded every few seconds, flashing to a base color (or extremely lowres texture), then slowly getting more detailed until it matches what the non-dxvk version looks like and instantly flashing back to the base color/lowres cycling like this over and over again
if you have any input on how i could fix (or even debug, because dxvk doesn’t seem to say anything out of the ordinary) this, or could use any input i can provide, please tell
i’d love to be able to play warframe on both 60fps AND without crashes and endless freezes for a change
EDIT: dxvk versions i tried: pretty much every one from ~0.50 to 0.70, since I just keep retrying it every time they release a new one, hoping it fixes itself somehow
More edit: some basic system info (glx-/vulkaninfo and uname):
other games using DXVK in wine or vulkan (both wine and native) work fine.
aaaand another EDIT: i just reinstalled it completely and after winetricks barfed up trying to install vulkan-1.dll (it installed vulkan-1.999-0.dll or something instead, just copying it over the stub fixed the inevitable evolution crash) it works perfectly on high settings at 60fps, doesn’t seem to recognize some dx11 features though like runtime tesselation and some advanced shader magic, but i don’t need those anyway.
You might want to update your GPU driver to 396.51. Although 390 is stable it doesn’t quite meet the requirements for DXVK. Especially for versions after 0.54.
will do, as soon as my distro has it (which should be soon), but actually your idea with 64bit seems to have improved it a lot already. dunno why it kept crashing on 64bit before, but for now it looks pretty stable
edit: after about 3 missions i got an evolution error and nothing on stderr though, when loading into a mission (right after the “flying towards it” cutscene). aaaaand again now. same mission too, this time instantly crashed…
just remembered i forgot to relogin after setting the ulimits for ESync, trying again now, maybe the kernel just forbid it from doing its thing.
aaand nope, instantly crashed again. can’t get further than the first room on uranus/caliban with a 4player squad. dunno if it’s the players or the map (it’s pretty shiny hand has some graphics glitches on its shinyness) but always drops me into the evolution error handling thing that doesn’t show anything useful
aaand another update: this is the 4th time in under an hour the 64bit dxvk version crashes for no reason, doesn’t look like it’s gonna work
more update: the crashes are directly related to my usage of dxvk, without it i do get >30fps now though thanks to ESync, so it’s not THAT horrible (i had <20 before) and i guess i’ll try dxvk again as soon as my distro updates the nvidia driver (the newest one they currently have is 390.77).