this post was submitted on 22 Oct 2024
37 points (97.4% liked)

Linux Gaming

15335 readers
4 users here now

Discussions and news about gaming on the GNU/Linux family of operating systems (including the Steam Deck). Potentially a $HOME away from home for disgruntled /r/linux_gaming denizens of the redditarian demesne.

This page can be subscribed to via RSS.

Original /r/linux_gaming pengwing by uoou.

Resources

WWW:

Discord:

IRC:

Matrix:

Telegram:

founded 1 year ago
MODERATORS
 

I'm using the latest WineGE (8.26, I think) to launch MO 2.4 but some parts don't work properly, namely activating/deactivating mods (when I click on the checkbox, MO just freezes), launching the game (when I launch the game MO doesn't do anything, only when I close MO it says "something VFS" and the game starts) and actually closing it (when I do, Lutris still says that it is running, and I have to click on "Stop" in Lutris to actually make it stop).

Am I missing aomething?

I'm on PoP!_OS. Thanks!

you are viewing a single comment's thread
view the rest of the comments
[–] AnyOldName3@lemmy.world 1 points 1 month ago

The vfs of MO2 isn't the thing that's hard to port. FUSE would make it fairly straightforward and the main reason USVFS is complicated in the first place is that there's not a way to make a fast VFS under Windows due to the higher overhead of going back and forth between kernel and user mode, so it has to resort to hooking most of the multitude of functions in the Win32 and NT filesystem APIs instead of just providing about twenty callbacks like you'd do with FUSE.

A mod manager looks much simpler than it is as it looks like you're just keeping track of lists of files, but mods come in the most insane packaging formats ever devised (e.g. with mad compression schemes and custom scripting languages) and mod managers need to selectively pretend to have all the bugs of every other mod manager as mods get made that rely on a particular bug in the mod manager their author used.

MO2 has a particular extra complexity when thinking about porting it to Linux in that it uses Win32 APIs in lots of places it doesn't really need to, and also does so in a few places where it's genuinely much more convenient that it does. It also uses a custom build system generator generator because its CMake and dependencies are too complicated for a human to practically deal with, so it would take loads of work to even build a completely unusable binary on Linux. We have people volunteer to do the work a few times a year and read a warning I write that looks like this comment and claim to have the willpower to do it anyway, but none of them have ever submitted a single commit.