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’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"
:cat "$XDG_CONFIG_HOME/mod-manager/Gotham Knights.toml"
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!