Arthmoor Posted January 8 Posted January 8 Getting Bethesda Games To Work On Linux This guide is written with Fedora 43 in mind, but should generally work for other ones as well. Since I'm currently using Fedora 43, and have also used Bazzite, I'll make any notes about differences between them where applicable. It is strongly advised to install KDE Plasma as the desktop environment if you have that option since it seems to have more things in it that are helpful for gaming. Please don't bring the debates over KDE vs Gnome into this. It's not going to be helpful. If you are not planning to mod your games, then it would be highly recommended to use Bazzite as it has pretty much anything you may need to start installing and playing your games. Fedora 43 is only recommended if you need access to more advanced things like being able to run shell scripts from the file manager. You should also have a working backup of your Windows install if you're moving over from Windows. You'll be needing some of the data from it if you plan to bring over things like your load orders, installed mods, and saved games. Also, please be aware that in most cases, linux is a case-sensitive operating system. That means that "Skyrim" is not the same as "skyrim" like it is on Windows. This can lead to issues with some programs not recognizing files you have installed due to case. Installing Discord I know this is not directly related to getting Bethesda games to work in linux, but it's a valuable resource for getting help if you need it. Always good to have that lifeline ready early. Fedora 43 Using the Discover app (blue suitcase on the taskbar), search for Discord. It should come up as the first result with the familiar icon. On the top right side of the UI there should be a selector for you to tell it where you want to install from. Select the Flathub repository. Click install. Once done, it will be available in the Internet category of your start menu. Launch it and sign in as usual. You'll need to then configure it to your liking. Bazzite Using the Bazzar app (orange tag on the taskbar), search for Discord. It should come up as the first result with the familiar icon. Click install. Once done, it will be available in the Internet category of your start menu. Launch it and sign in as usual. You'll need to then configure it to your liking. Installing Steam Fedora 43 Open a Terminal window by clicking the start menu, go to System, and select "Konsole". Enter the following command: dnf install steam You may be prompted by the system to enter your password. You'll then be asked to confirm the packages it wants to install. Once it's done, Steam should be available in the Games category of the Start Menu. You will need one other thing in order to be able to set up modding tools later, called Protontricks. In the Discover app, search for "Protontricks". There should be a drop menu option on the top right of the UI to select where to install the package from. Make sure that says "From Flathub". Install it from Flathub. It will take care of any dependencies it needs when installing. Bazzite Steam already comes with the distro, as well as all of the required Protontricks support. To save time on installing games to whichever distro you end up using, you will want to have a copy of your Windows install handy. Either The following Prefix identifiers will be useful when copying your game data, such as your load order and save games, as well as for modding the games if you plan to do so: Skyrim SE: 489380 Fallout 4: 377160 Starfield: 1716740 Oblivion Remastered: 2623190 Installing Heroic Heroic is an open source launcher for games found on GOG.com, the Epic Games Store, and Amazon Prime Gaming. If you have no games on any of these platforms, you can skip this step. Fedora 43 Go to the Discover app (blue suitcase on the taskbar). Search for "Heroic". It should be the first result. Click on it and select the Flatpak installer, preferably from the Flathub repository, and install it. Bazzite Go to the Bazzar app (orange tag icon on the taskbar). Search for Heroic. Click on it and install it. Games Which Work on Steam It would probably be faster to specify what doesn't work instead, since so far every game in my Steam library installs and plays just fine. Games on GOG, Epic Games Store, or Amazon Prime Gaming Similarly, it would be faster to just specify what doesn't work. Morrowind GOTY [GOG]: The launcher applet comes up and you can set your graphics up with it. Clicking play crashes the game. Daggerfall Unity [GOG]: Crashes when launched. Worth noting this has been delisted from GOG.com because the developers no longer wanted to support it. That's a discussion for another place though. Setting Up Games You Already Have Installed on Windows This section is intended for those who already have games installed on Windows they want to bring over to linux. Copying files to the Steam install location will make the installation of the games a great deal faster as Steam will be able to validate what you already have. If you are not bringing over information from Windows, you can skip this section as it won't be necessary. If your games are installed on Epic Game or Amazon Prime, you'll need to determine the appropriate install paths for those platforms yourself as they are not widely supported in the community. GamePass installs are not supported as there is no GamePass service available for linux. Steam For the sake of simplicity, I'm going to use Skyrim SE as an example. On Windows, locate your Skyrim Special Edition folder. The default should look something like this: C:\Program Files (x86)\Steam\steamapps\common\Skyrim Special Edition Right click on the folder and select Copy. Now find the path to Steam on your linux install. By default it would look something like this: /home/[UserHome]/.steam/steam/steamapps/common On Fedora, [UserHome] will be the username you selected when installing the OS. On Bazzite, it should just be the word "bazzite". Right click on this folder and select Paste One Folder. Your game should then be copied into the install folder. Once this is done, go into Steam and have it install the game. It will validate the copied files and download any additional things it needs like the proper Proton libraries. Run the game from the Play button at this point to set up the graphics information you want. Repeat the same process for any other games you want to bring over from Windows. This process should work for any game, not just Bethesda titles. Heroic [GOG Game] If you are not bringing over information from Windows, you can skip this section as it won't be necessary. For the sake of simplicity, I'm going to use Skyrim Anniversary Edition as an example. The process should be similar for each Bethesda game on Heroic, just with different folders. On Windows, locate your Skyrim Anniversary Edition GOG folder. The default should look something like this: C:\GoG Games\Skyrim Anniversary Edition Right click on the folder and select Copy. Now find the path to Steam on your linux install. By default it would look something like this: /home/[UserHome]/Games/Heroic/Skyrim Anniversary Edition On Fedora, [UserHome] will be the username you selected when installing the OS. On Bazzite, it should just be the word "bazzite". Right click on this folder and select Paste One Folder. Your game should then be copied into the install folder. Once this is done, go into Heroic and have it install the game. When prompted, select "Import Game" instead of the standard install button. The game will be imported almost instantly. Run the game from the Play Now button at this point to set up the graphics information you want. Repeat the same process for any other games you want to bring over from Windows. This process should work for any game, not just Bethesda titles. Retrieving Your Saved Games and Load Orders If you are not bringing over information from Windows, you can skip this section as it won't be necessary. Please note that if you have games installed via the Epic Games Store or Amazon Prime, the details below will not work as these platforms use different folders. Steam For the sake of simplicity, I'm going to use Skyrim SE as an example. The process should be similar for each Bethesda game on Steam, just with different folders. On Windows, locate your AppData folder. It should be located here: C:\Users\[UserName]\AppData\Local UserName is your Windows username. Select the Skyrim Special Edition folder, right click on it, and select Copy. Navigate to the Proton prefix for the game. It should look like this: /home/[UserHome]/.steam/steam/steamapps/compatdata/489830/pfx/drive_c/users/steamuser/AppData/Local Select that folder, right click, and hit Paste One Folder. This copies your load order data over. For your save games, in Windows, select C:\Users\[UserName]\Documents\My Games\Skyrim Special Edition Right click on it, select Copy. Navigate to /home/[UserHome]/.steam/steam/steamapps/compatdata/489830/pfx/drive_c/users/steamuser/Documents/My Games Right click on it, select Paste One Folder. This copies your .ini file settings and your saved games over. Heroic [GOG Game] For the sake of simplicity, I'm going to use Skyrim Anniversary Edition as an example. The process should be similar for each Bethesda game on Heroic, just with different folders. On Windows, locate your AppData folder. It should be located here: C:\Users\[UserName]\AppData\Local UserName is your Windows username. Select the Skyrim Special Edition GOG folder, right click on it, and select Copy. Navigate to the Proton prefix for the game. It should look like this: /home/[UserHome]/Games/Heroic/Prefixes/default/The Elder Scrolls V Skyrim Special Edition/drive_c/users/steamuser/AppData/Local Select that folder, right click, and hit Paste One Folder. This copies your load order data over. For your save games, in Windows, select C:\Users\[UserName]\Documents\My Games\Skyrim Special Edition Right click on it, select Copy. Navigate to /home/[UserHome]/.steam/steam/steamapps/compatdata/489830/pfx/drive_c/users/steamuser/Documents/My Games Right click on it, select Paste One Folder. This copies your .ini file settings and your saved games over. Modding For BGS Games In Steam, if the "Software" category filter is not available, go to the store page for the Creation Kits and select "Add To Library" there. Then install the CKs as you normally would. For BGS games on GOG via Heroic, the launch options for Fallout 3, Fallout New Vegas, Oblivion, and Morrowind all include a selector to load their CKs. These come preinstalled with each game. LOOT Using either Bazzar or Discover, search for LOOT. On Fedora 43, make sure you select to install it from Flathub. Once installed it will be available in the Games category of the start menu. Launching it should show you all of the games it supports that you have installed. Wrye Bash I'd recommend downloading the Standalone Executable version. Once downloaded, find where your game is stored. Extract the "Mopy" folder from the Wrye Bash download into the game's main folder. You will need to do this for EACH game you plan to use Wrye Bash with. I do not know of a way to allow for a single install of Wrye Bash to manage multiple games with the way Proton works. Maybe the folks who wrote LOOT would be able to offer the Wrye Bash devs some hints on how to accomplish this For Steam Games It's best to set up a shortcut in the start menu for each one. They'll work without it, but I doubt you want to be nagged by Proton asking which prefix you want to run in each time. To set up a start menu shortcut, go into the category you want it in (Game is probably best), right-click on any existing entry and select "Edit Application". At the top left of the menu editor, select "New", then "New Item". Give it a name when prompted. You should now be looking at the General tab for editing a new menu item. The name field should be something like "Wrye Bash - SSE" so you can tell which one the shortcut will be for. If you want the icon to match the program, click on the pencil icon next to the Wrye Bash symbol. Navigate to where you put the Wrye Bash files and find the Docs folder within Mopy. There is a favicon.ico file there that will work. The "Program" field should be /usr/bin/flatpak The "Command Line Arguments" should be as follows, where [UserHome] is where your home folder is, and [Game] is the name of the game folder where the game is installed. The number at the end needs to be the prefix ID from the install section for Steam earlier in this guide. On Bazzite, [UserHome] should be "bazzite" by default if you did not set up an additional user account. run com.github.Matoking.protontricks -c "wine '/home/[UserHome]/.steam/steam/steamapps/common/[Game]/Mopy/Wrye Bash.exe'" 489830 Once the information is in place, save it. Then test to be sure the shortcut works as expected. The Wrye Bash logo should come up and operate as normal. For Games on Heroic Click on "Add Game". In the UI, set a sensible title like "Wrye Bash - Oblivion" in the title field. Set a sensible icon, like the Wrye Bas logo, in the App Image field. In the box for "Select Executable", navigate to where the Wrye Bash.exe file is installed for this game, which is inside the Mopy folder you installed earlier. Hit Finish. It should now be in your library list. Before you launch it, you need to change which prefix Wrye Bash is going to use. Right click on the new entry, and hit settings. Set the Wine Prefix by clicking on the folder in the box for it, and navigate to where the game's prefix folder is. These should all be in Games/Heroic/Prefixes/default under your /home folder. Mod Organizer 2 [MO2] Someone who knows how to set this up, please feel free to contribute steps to do so. Vortex Similarly, if anyone knows how to set this up on linux, feel free to contribute steps to do so. Nifskope If you have no plans to manipulate 3D models (meshes) for any of your games, you can skip this section. A native linux installer is available here. The one on the top for linux QT should do the job. All you have to do is unpack it into a folder of your choice. You will need to manually set the game paths once you launch it though because it won't know about the linux file path to the game installs on its own. In order to be able to open .nif files by double-clicking on them, you'll need to set the file association. Go to Start -> Default Applications -> File Associations. Click Add, and select the Model category. Type in a name in the field, like "NIF Model". Now bring up the new entry in the list. In filename patterns, click Add, and in the box, enter *.nif In the Application Preference Order section, click Add, and click the small folder next to the box to navigate to where you unpacked Nifskope. Select the "Nifskope" file that has no extension on it and hit OK. Once back to the screen with the patterns and associations areas, hit apply. You should now be able to find a .nif file and double click in the file manager to open it. Now you'll need to set Nifskope to be able to see your various game folders. While in Nifskope, go to Options -> Settings -> Resources -> Games. For each game listed that you have installed, hit Browse and locate the folder for it. You'll need to manually enter the file path as Nifskope apparently doesn't recognize the hidden dot folders that things are usually found it. To find the file path, open your file manager and navigate to the game's folder. Right click on the folder and select "Copy Location". Paste that location into the Browse dialogue you opened in Nifskope. Then hit OK to add it. When you have all of the games entered that you need, click Apply. Now click on the Paths tab. For each game, select it and hit "Auto Detect Game Paths". They should fill. Then hit Apply. Go back to your loaded .nif file and all of its textures should be properly loaded now. Visual Studio Code If you do not have any plans to write scripts for any of your games, you can skip this step. A native installer is available from the Flathub repository. This is useful for the Papyrus scripts used by Skyrim and later. Blender If you have no plans to create or modify 3D models (meshes) for any of your games, you can skip this step. A native installer is available from the Flathub repository. xEdit First things first: The xEdit developers DO NOT SUPPORT LINUX. So if something goes wrong along the way, do not ask them for help. You will not get it from them. Hopefully one day they loosen their stance on this as more people make the switch to linux, but right now they're adamant about it. Download xEdit as you normally would from their Discord server. Install a copy of it for EACH game you intend to manage with it. If you are using Wrye Bash, you should be able to launch that and click the xEdit icon on the status bar to bring it up. If you are using MO2, you'll need to set it to run xEdit like you would in Windows. [I don't know the details as I don't use MO2] In order to have proper drag and drop support between fields, you will need to make a change to the game's Proton setup. On Steam Open Protontricks. When prompted, select the prefix for the game you want to change. Click "Select the default wine prefix" and hit OK. Click "Run Winecfg" and hit OK. On the applications tab, hit "Add Application". From the menu that comes up, hit the drop arrow next to C: and select the / symbol at the bottom. Double click on home. On Fedora 43, double click on your username folder. On Bazzite, double click on the bazzite folder. In the box that says filename, type in .steam and be sure to include the dot in front, then hit enter. Double click on steam, then steamapps, then common. Double click on the folder you installed the game into. Find the .exe file for xedit. It should be named appropriately for the game you're running according to this list: Skyrim SE: SSEEdit.exe Fallout 4: FO4Edit.exe Starfield: SF1Edit.exe Oblivion Remastered: TES4REdit.exe Once you've added the .exe to the list of applications, select it and make sure the Windows version is set to Windows XP. If you do not, you will not be able to drag and drop things in the plugin editing menus. As of this writing, theme support will be unavailable and you'll be stuck with the default eye burning white theme. However, you CAN get that back if you change the Windows version on the .exe file back to Windows 10 or later. This is the exchange we must decide on. Script Extender Before starting this process, make sure you've run the game's official launcher at least once through Steam or Heroic to set up your graphic levels. You need to do the following once you've installed the SKSE files into the proper location: Find "SkyrimSELauncher.exe" and rename it as "SkyrimSELauncherREAL.exe" (or something similar, just don't delete it) Now find "skse64_loader.exe" and rename it as "SkyrimSELauncher.exe". When launched from Steam this will now cause it to load SKSE instead which should also allow any DLL plugins you have to work. If you should ever need access to the launcher to change graphic settings, run the "SkyrimSELauncherREAL.exe" file. One note: Crash Logger for Skyrim SE does not work in linux apparently. You will get an error from SKSE and you should close the game at that point and remove the "CrashLogger.dll" file from your Data/SKSE/Plugins folder. For other games, the process is similar but you'll need to rename the files according to the launcher and *_loader.exe files they use. Construction Kit Platform Extended [CKPE] You should already have the Creation Kit installed, if not do so now. Then install CKPE according to the directions provided, using the linux folders as the destination. Once done, in Steam, right click on the CK for the game and select Properties. In the General menu, there is a box for launch options. Add the following to that box: WINEDLLOVERRIDES="winhttp.dll=n,b;d3d11.dll=b,n" %command% Close the box to apply the changes. Then launch the CK as normal and you should get the CKPE prompts. smr1957 1
smr1957 Posted January 8 Posted January 8 (edited) Thank you so very much!!!! By the way, you posted the wrong link in the Steam Coffee House threads, so I posted the corrected link right below it. Edited January 8 by smr1957
Arthmoor Posted January 8 Author Posted January 8 Heh. I saw your posts and fixed the links. One of the hazards of linux is that copy and paste isn't a consistent set of keystrokes between applications. smr1957 1
lmstearn Posted January 8 Posted January 8 Might come in handy for case handling before porting over from Windows - haven't tested all scenarios though.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now