I’ve finally started having some free time lately and have been working through my Steam library, most of which is Windows games I’m playing with Proton.
I wanted to install some mods, and wanted a mod manager for this. Nexus Mods has Vortex, which is not available for Linux. In any case, running Windows games on Linux through Proton on Steam is fairly specific; the game files will be at certain locations on a Linux filesystem, not at the same locations as they would be on a Windows filesystem. So I think I would need software that has specifically been designed for this use-case (Windows games from Steam running on Proton).
Are there any such mod managers out there? What do other people do when playing games on Linux? I can’t be the only person who wants to play video games with mods.
I suggest Prisim Launcher for Minecraft, but if you also play other games and want mods I can recommend r2modmanPlus they have a appimage and platform specific builds that you can download and its opensource!
I am using r2modman most of the time and it works well for the modded games I play on my machine. I uses Thunderstore so it might not have the biggest library of mods for all your titles but it’s worth mentioning imo.
It’s not ready yet (preview state) but NexusMods is developing an app for managing all their mods: https://github.com/Nexus-Mods/NexusMods.App, for Linux they’re releasing both an appimage and a standard setup.
very niche but i think it deserves a mention: the Outer Wilds mod manager doesn’t just support Linux natively, but it even has a CLI version, and it’s up on AUR and Flatpak
https://outerwildsmods.com/mod-manager/
as others have said though, r2modman/thunderstore manager also runs in an appimage and works perfectly well for games it supports, and MO2 and Vortex work more or less alright if they’re in the same prefix as your game or potentially even if they aren’t.
I’ve built my own folder based mod-manager: https://github.com/Lucki/mod-manager
It’s using OverlayFs to lay mods on top of the game files which allows for easy switch-arounds of mod sets while keeping each mod separated in their own folder. It’s based upon config files and allows to freely collect mods in sets, even nested.
It’s probably full of unnoticed bugs because I’m the only one using it, but it works 🤷 I do have a bunch of convenience stuff queued up locally though. They need a bit of polishing but soon it’s ready for another push.
That sound interesting. Any examples of games where you’re using this?
I tested in these games -
ls -1 "$XDG_CONFIG_HOME/mod-manager"
:- Bloodstained: Ritual of the Night.toml
- Cyberpunk 2077.toml
- FlatOut 2.toml
- Gotham Knights.toml
- Grand Theft Auto: San Andreas.toml
- Ready Or Not.toml
- Stellar Blade.toml
- The Witcher 3.toml
cat "$XDG_CONFIG_HOME/mod-manager/Gotham Knights.toml"
active = "my" [my] mods = [ "nocape", "upscaler", ] [upscaler] # https://github.com/cdozdil/OptiScaler # v0.7.7-pre9 mods = ["OptiScaler"] [upscaler.environment] WINEDLLOVERRIDES = "version=n,b" [nocape] mods = [ # https://www.nexusmods.com/gothamknights/mods/330 "BatGirl Cape Off", ]
tree "/mnt/games/mod-manager/Gotham Knights/"
/mnt/games/mod-manager/Gotham Knights/ ├── BatGirl Cape Off │ └── Mercury │ └── Content │ └── Paks │ └── ~mods │ ├── BatGirl_Cape_OFF_Demon_26_P.pak │ ├── BatGirl_Cape_OFF_Demon_26_P.ucas │ ├── BatGirl_Cape_OFF_Demon_26_P.utoc │ ├── BatGirl_Cape_OFF_Eternal_13_P.pak │ ├── BatGirl_Cape_OFF_Eternal_13_P.ucas │ ├── BatGirl_Cape_OFF_Eternal_13_P.utoc │ ├── BatGirl_Cape_OFF_KnightOps_41_P.pak │ ├── BatGirl_Cape_OFF_KnightOps_41_P.ucas │ ├── BatGirl_Cape_OFF_KnightOps_41_P.utoc │ ├── BatGirl_Cape_OFF_Metal_36_P.pak │ ├── BatGirl_Cape_OFF_Metal_36_P.ucas │ ├── BatGirl_Cape_OFF_Metal_36_P.utoc │ ├── BatGirl_Cape_OFF_NeonNoir_22_P.pak │ ├── BatGirl_Cape_OFF_NeonNoir_22_P.ucas │ ├── BatGirl_Cape_OFF_NeonNoir_22_P.utoc │ ├── BatGirl_Cape_OFF_NewGuard_5_P.pak │ ├── BatGirl_Cape_OFF_NewGuard_5_P.ucas │ ├── BatGirl_Cape_OFF_NewGuard_5_P.utoc │ ├── BatGirl_Cape_OFF_Privateer_31_P.pak │ ├── BatGirl_Cape_OFF_Privateer_31_P.ucas │ ├── BatGirl_Cape_OFF_Privateer_31_P.utoc │ ├── BatGirl_Cape_OFF_Shinobi_46_P.pak │ ├── BatGirl_Cape_OFF_Shinobi_46_P.ucas │ ├── BatGirl_Cape_OFF_Shinobi_46_P.utoc │ ├── BatGirl_Cape_OFF_Titan_9_P.pak │ ├── BatGirl_Cape_OFF_Titan_9_P.ucas │ ├── BatGirl_Cape_OFF_Titan_9_P.utoc │ ├── BatGirl_Cape_OFF_YearOne_18_P.pak │ ├── BatGirl_Cape_OFF_YearOne_18_P.ucas │ └── BatGirl_Cape_OFF_YearOne_18_P.utoc └── OptiScaler └── Mercury └── Binaries └── Win64 ├── amd_fidelityfx_dx12.dll ├── amd_fidelityfx_vk.dll ├── D3D12_Optiscaler │ └── D3D12Core.dll ├── libxess.dll ├── libxess_dx11.dll ├── nvngx.dll ├── OptiScaler.ini └── version.dll
No idea why that tree is broken in monospace - it works in the preview, sorry!
For Minecraft specifically Prismlauncher is really good.
Plus 1 for Prism Launcher. Works really well.
See this monster of a post from u/sp3ctr4l@dbzer0
https://lemmy.dbzer0.com/comment/18288432
To add in about game modding on Linux: https://github.com/limo-app/limo https://flathub.org/apps/io.github.limo_app.limo Limo is a universal mod manager that is linux native. And I do mean universal. It’ll work with literally any game, you just have to take a bit of extra time to configure things for games that do not yet have a supported preset configuration out of the box… but at this point, that includes most games that are generally reliant on some kind of mod manager type program on Windows, to keep track of 10s or 100s of simultaneous mods. It works very much along the same lines as something like Mod Organizer 2, though there are some differences, read the wiki. It sets up a virtual file system that allows mods to be set up outside of the main game directory itself, and will override them such that the mods actually load, but they can be ‘undeployed’ to revert back to vanilla, you can set up different profiles of different mod configurations and deploy/undeploy what you like. It can also manage load orders, supports formats such as fomod and similar for games like Fallout New Vegas and Skyrim, you can set up tags and category groupings, and it also shows you conflicts between mods down to the specific files, showing you a chain of overwrites to the final file from the final loaded mod. It doesn’t support things like LOOT, which purport to autogenerate correct load orders… but frankly, thats fine, because shit like that doesn’t even work properly in situations you’d use it in on Windows 90% of the time. EDIT: Wow, apparently it does support LOOT now, it did not a few updates ago. … I have successfully gotten FONV working using Limo to set up uh… there’s a variant of the Viva New Vegas mod setup guide aimed at Steam Deck users, but it tells you to set up Mod Organizer 2 on the Deck… which you can do, but its rather input laggy and there are other inconveniences… Here it is, Mirelurked Viva New Vegas: https://ashtonqlb.github.io/mirelurked-vnv/intro.html I had to alter a few steps from this to get it working with Limo, but they were basically just… set up Limo instead of MO2, and you have to handle NVSE a bit differently, because it literally replaces/overrides the entire main game exe. … I have also used Limo to mod Cyberpunk 2077, works with more in depth frameworks like CET, RedExt, etc, as well as using the Decky Framegen plugin to insert FSR 3.1 Upscaling and Framegen into CP77, which gives better quality and fps than the official FSR 2 and 3 implementations that come with the vanilla game and are vanilla supported on a Deck. You basically just have to launch the vanilla game via the normal launcher first, check the ‘enable mods’ switch, fully load the game… Then you can set up the Framegen mod, which adds a custom command in steam to the launch parameters… and then you can also setup the ‘skip intro’ mod, which is reliant on both the mod being present, as well as additional command line parameters… There are a bunch of reddit posts complaining that the FrameGen mod doesn’t allow other additional launch arguments, but they are wrong. All you have to do is append those additional launch args … at the end of the FrameGen mod’s launch arg. This just doesn’t seem to be explicitly documented anywhere, by anyone… I may have been the first person to figure this out? Anyway, after that bit of silliness, setting up other mods for CP 77 using Limo is fairly straightforward. … … I am doing all this on Bazzite on a Deck, but you could do it on… presumably any linux distro that supports flatpaks and proton (the translation layer that allows Windows games to run on Linux). There will always be a few ‘weird’ mods that are just totally reliant on a whole bunch of Windows specific things to work, or just cannot be made to work without actually overwriting some core game files in the main, real directory itself… And, some of these mods will require a windows component dependency, like vc_2017 or vc_2022, you set those up with something like ProtonTricks or SteamTinkerLaunch to modify the proton config per game, instead of trying to install the exe system wide as 99% of the windows oriented mods will tell you to do… But so far, I have found either my own solutions for these cases, or someone else already has, or someone has just made basically a linux compatible equivalent for such a windows reliant mod. … You can also just choose to run MO2 on Linux, it will work, its just… buggy, and overlycomplicated, imo, you’ve got to set up a custom wineprefix for the MO2 UI to not do dumbshit, give it thr dependencies it needs, and then you’ve got to do this for each different game you want to mod with MO2. I found that Limo is sufficiently capable and much less hassle to use once you take the time to understand its differences from MO2.
I haven’t done it a lot, but running a Windows mod manager in the same prefix as the game should work where there isn’t a Linux native version available.
I’ve not really tinkered with any kind of settings and just use Steam’s default which is to have a separate C: drive for every Proton game, so does that mean I’d need a separate install of a mod manager for every game? Ideally I’d like to have just one mod manager that recognises all my games (that are supported by the mod manager at least)
Sure seems like they have a Linux Appimage right here: https://www.nexusmods.com/app
Oh amazing. Seems like it’s still in early development and only supports Stardew and Cyberpunk but I look forward to it being more mature and supporting more games.
Mod Organizer 2 works great with wine and proton. Installation is a bit complicated though. The recent versions of MO2 require wine 9 or newer.
Don’t know if it has games you’re interested in, but I’ve been using r2modman and it’s worked pretty well. Even for games run through Proton.
I use Limo, it takes some getting used to after using Mod Organizer 2 for so long but it gets the job done. I havent used it for any huge modlists yet though as it tends to be a little buggy/unintuitive sometimes.
There’s also a way to get MO2 on linux, should he on github as modorganizer2-linux-installer.
For Bethesda (and other compatible games), ModOrganizer 2 via SteamTinkerLaunch has worked reasonably well for me. There’s some jank involved but nothing terribly complicated for anyone who’s already used to Linux gaming hoop jumping. STL also supports Vortex but I’ve never personally tried it.
r2modan?
There is one in the works right now: https://www.nexusmods.com/app
The only problem is, there are just 2 games supported at the moment; Stardew Valley and Cyberpunk 2077. Many more will follow, but it takes time. And updates can break your current setup, because its heavy on working and changes. So this is more of a future thing. I myself wait for this right now.