Hey there!
I’m a solo dev working on a sci-fi grand strategy game (I didn’t manage to find if self-promo is allowed so I’ll keep the name for myself).
I was updating my planning and started to think: since my game will be published on Steam, it will be playable on Linux using Compatibility Mode even if I don’t specifically target Linux itself. I myself play on an Ubuntu and this allows me to play almost every Windows game (old ones are more capricious, but recent ones are ok).
So I’m wondering, is there really an advantage to have native Linux support nowadays? As a solo dev, the thing I lack the most is time. The days/weeks/months it would take me to add it and fix all the probable bugs it entails could be used to improve the game itself or add features instead for example.
On a more general note, what do you other Linux players expect from a Linux game?
is there really an advantage to have native Linux support nowadays?
Yes, performance and consistency.
As a dev, you honestly are asking the wrong question. You shouldn’t pride yourself on the corners you’re cutting; you should be using them as an opportunity to expand your knowledge and skillset.
You’re adding to the pile of developer trash every time you rely on abstraction layers to do your job for you. You’re reinforcing an atmosphere where windows developers can get locked-in as much as they want, and it’s up to the Linux community to pick up their (your) slack.
In all honesty, I don’t have high hopes for your game and you really should consider what I’m saying before you release more trash into the world.
I really appreciate when a dev puts the extra effort in to make a Linux port, but I can understand when a solo dev such as you doesn’t have much time to spend on porting. To be honest, I’m just happy if the developers at the very least test the game on Linux using Proton and WINE to make sure it’s working well and correctly. That way if making a native port really is that much of a hassle, I expect them to at least test it on Linux. I think that most large teams should make a (good) native port, though.
I’m using Ubuntu myself to develop actually so I’m kind of doing that all the time. The problem is, my machine isn’t everyone’s machine, my drivers aren’t anyone’s drivers, and so on.
In the end I think that I’ll try to give Linux builds to testers to see if they report a lot of bugs or not and decide at that moment if it’s too much work or not.
Sounds like a good strategy. I don’t know all the details, but from the way I understand it, your Linux build would be run by Steam in a Linux container, Steam Runtime. So build and test against that if you can. If I have it right, maybe the Steam Runtime container will give you more confidence if you are able to go with a Linux build.
edit: If you sell your game through Steam.
Honestly, I wouldn’t bother.
Linux is a small market and people who buy exclusively native linux games is even smaller. If your game works fine with Proton that’s great.
You’re a solo dev and should pick your battles. I would focus on getting steam deck verified instead, if possible.
I would focus on getting steam deck verified instead, if possible.
One billion times this. That’s a checkmark that increases your marketshare by a lot. Desktop Linux users (not all, but some) look to that as a good indicator on whether it’ll run for them because it’s even harder to make it run well on the steam deck. Kind of a “two birds one stone” thing
I was going to do it anyway, but your answers gave me even more confidence in how important it is! Thank you :)
I cannot go into that site because they don’t comply with the gdpr right to not allow any legitimate interest cookies with one button, hoping I will click agree instead of going through hundreds of vendors and disabling these illegal trackers
Native Linux support is always preferable if the developer can handle it or has the budget to do so. However, as long as it works well via Proton, that’s the important part. I don’t follow him anymore due to several reasons but Gardiner Bryant has a video about this, it’s a pretty solid watch: https://www.youtube.com/watch?v=uScsmjvdwyo
Thank you for the link, I didn’t know the inner workings of it :)
Honestly, I prefer you go with Proton. Some of the native games I have are quite a few versions behind their windows counterparts. AND most likely it will run better anyways. Better for you, better for gamers. Win-win.
*Lin-lin
I honestly mostly shop for “SteamDeck verified”.
Wat? SteamOS is Linux…
Yes my bad haha I had trouble to find another way to write that title which wasn’t too long but would mention Steam
I think just calling it Proton would work, most people here would understand that I’d think.
I think some anticheats make a distinction.
You mean so that they can allow SteamOS users but block anyone using any other Linux distro?
I’ve never heard of that but so far any game with anti-cheat that works on the deck works on Linux
deleted by creator
Get us some Linux exclusives and we can stick it up towards Windows amirite
Haha problem is I have a kid to feed, and I fear that cutting myself from 90% of my potential player might be a bad play if I want to be able to continue feeding him
Yes to both. I want games that work well on Linux, so I’m happy with whichever you choose to test. If you provide both, I have options.
Choose whatever is best for you.
That being said, as a Linux user I always appreciate a native Linux version of a game that runs well and is updated promptly.
As far as I know, there are game engines that make it easier to publish on many platforms, but I’m no expert.
At this point, Linux native is almost more like reinventing the wheel. The people working on the compatibility layers have done so much work to make a windows game feel native that you can almost think of them as cross compilers in a weird gross way
I think you should just write it for Linux. Since Windows has that Linux Windows Thing (I don’t remember what it’s called), it’ll probably work there as well as long as you mark it as a dependency.
Wsl doesn’t work well for graphical apps
I’ll have to take your word for that. I thought that people got desktops running on it. But then I don’t get to use windows very often.
Weird to recommend someone develop software for Linux then, on the basis that “it should Just Work ™️ in Windows because Windows has the Linux Windows Thing”
Lots of people do the exact opposite and nobody seems to find anything wrong with it.
You can but it requires heavy, HEAVY tinkering
So wine ends up being better than the Microsoft stuff. Not really surprising I suppose.
The goal of wsl is to run command line application for devs, and it’s actually very good for that
Steam Deck and Linux desktop user here.
I wouldn’t prioritize a native Linux binary if I were you. For some of my games that have a native Linux version, I still run the Proton compatibility version instead because it runs better. Proton is insanely well-optimized and adapted to Linux desktops, your own code will have a hard time competing with that.
Just make sure to pick an engine / tech stack that works well with Proton and find one or more testers who run SteamOS or another Linux distribution.
As a personal anecdote, recently I installed a co-op videogame on my Linux Steam machine and I couldn’t get past the main menu, I wasted quite a bit of my own and my friend’s time before realizing it was a bug in the Linux build. After reinstalling the Windows version through Proton everything worked flawlessly.
Please don’t publish a Linux build unless you plan to test and maintain it.
Yup. Usually not as well optimized either, if you do get it to work.
Yes I had a similar experience with Paradox Games, where the native build delivers very poor performance over the Proton-run version. It seems to be the consensus. If I don’t receive other real counterpoints I’ll follow your advice.
I never noticed that, I put in probably 2k hours in Eu4’s native Linux version, guess I should change over to proton lol
Haha maybe EU4 is good though, it happened to my with Vicky 3.
I see this with things on Itch.io a lot. I think there’s some engine that has an option to export a Linux distribution of the game, so they ship that without testing.
Yeah I agree, it’s honestly impressive how well it works. As soon as I have the possibility I’ll take a Steam Deck and try to make my game compatible with it, I’m sure if I manage to make it work on it that should eliminate 90% of Proton compatibility-related bugs if I don’t make a native build.
I’m still seeking for answers from people for whom it doesn’t work well or who have bad experiences with it, because I’m sure there are cases where it doesn’t work
I had some bad experiences with wine/proton, especially on older hardware. There are sometimes weird bugs that are very hard to reproduce. For example: I couldnt play starfield for about a year because most textures were missing. No idea what was causing it. After a year it suddenly worked. Generally if you check Protondb for any game you will find that a few people have crazy bugs, even if everyone else says that it runs perfectly. I think I dont have a single game in my library that has a “Platinum” compatibility rating.
I think it boils down to how would you prefer to support linux players: By fixing bugs in your port, or chasing after bugs in wine/proton. The negatives of native ports that other people have raised are because many (larger) developers make the initial linux port, and then forget about it. Civilisation 6 for example has a good linux port. Yay! But they stopped updating it years ago. Many bugs were never fixed, and linux players dont even have access to the newest dlc! Compare it to running Civ 5 in wine. Things mostly work, exept mod support. Most mods just dont work. Who knows why.
I think native ports may have become easier nowadays too, because of the steam runtime. Steam can run linux games in their flatpak-like runtime, so ideally you only have to support that.
If you are planning on open sourcing your game (maybe some time after the commercial release) then a linux port would be very appeciated for packaging reasons. Other than that, your preference.
Half of the games with a native build I’ve tried didn’t even launch. With Proton they all work perfectly.
I prefer a working Proton build over a untested broken native build. If you can’t afford the time to test the Linux builds, go ahead and just rely on Proton.
Testing on Steam Deck so it can be verified probably does make sense from a marketing standpoint though. Mostly checking that controls work, graphic settings are not too demanding by default and font scaling works properly.
I think it’s what I’ll do indeed. And for the Steam Deck I intend to make the game fully compatible with it as I’ve read a lot of time how it enabled people with otherwise few opportunities to play to get a bit of “me time”. Being a dad I empathize a lot with that struggle haha