X-Hax / sa2-mod-loader

Sonic Adventure 2 PC Mod Loader
47 stars 16 forks source link

Flatpak/Steam Deck support of Sa2 Mod Loader #33

Open ruineka opened 2 years ago

ruineka commented 2 years ago

Hello, I've done some hackery to get the mod loader to work on Steam running on Linux and I was able to get it to work great, but I was wondering if we could get an official port of this to Linux that could be distributed with a Flatpak making this super simple for Steam Deck owners to install and start modding away on their shiny new handheld.

MainMemory commented 2 years ago

I have no idea what any of this means.

ruineka commented 2 years ago

I have no idea what any of this means.

That's fine, I can understand why. I'm sure you have heard of the PC gaming handled called the Steam Deck by Valve? It runs SteamOS which is a Linux based OS that uses a package binary called a Flatpak to run applications. Your program works great on Linux using Proton/Wine (A compatibility layer that allows you to run Windows applications/Games on Linux), but this is only if you manually handle some dependencies. If you aren't familiar with Linux it might be next to impossible to make a native program to launch the game.

It's worth noting that I think Visual Studio supports tools to assist making your program easier to run on Linux. I think the backend ends up using monodevelop which allows C# code to be used. I don't know the specifics.

ruineka commented 2 years ago

PXL_20220219_1640585672 PXL_20220219_1640517722 PXL_20220219_1640250712

Here is SA2 Loader working on Linux as well as the game flawlessly. The only issue is that I have to make use of pip to get protontricks to then run the loader using Protontricks Launcher which on a Steam Deck this wouldn't be very user friendly. The idea would be to have a native SA2 loader that detects Steam's SA2 Proton prefix and launches the game without any additional tools.

The difficulty of this task would come from the fact of never trying to use Linux and/or play games on it using Proton. It's really not that hard once you have hands on experience with it.

If this isn't something you want to tackle that is fine, I understand. A few people are interested in the Steam Deck discord in having mods with SA2B on SteamOS which is why I bring this up.

MainMemory commented 2 years ago

I'm sure it's entirely possible to make the mod manager (the loader is a dll that hooks into the game) work natively on the Steam Deck, or Linux in general. Probably even easy! But I don't know what needs to be done to get that. If anyone does, they're more than welcome to tell me, submit a pull request with the necessary changes, or make a fork.

ruineka commented 2 years ago

I'm sure it's entirely possible to make the mod manager (the loader is a dll that hooks into the game) work natively on the Steam Deck, or Linux in general. Probably even easy! But I don't know what needs to be done to get that. If anyone does, they're more than welcome to tell me, submit a pull request with the necessary changes, or make a fork.

Once I get my hands on a Steam Deck and SteamOS is available to tinker around with I'll see what I can do. The least I could do is make a shell script that handles the execution of the mod manager using Proton so although imperfect it would be a lot better than it currently is using the tools available now.