Our post starts off with OP sharing their hypothesis on why very few games are developed for GNU/Linux - not because of low market share, but because of 'backroom licensing and exclusivity deals'.
The post is relatively well received and generates some interesting discussion, but the slapfights begin when OP starts replying to every comment that disagrees with their assertion.
Some comments trimmed for brevity, click the links for the full text. I've linked a few nuggets but OP is all over the comments.
Is Game Pass the same thing as Windows exclusivity?
OP:
It's money from Microsoft which often implies exclusivity. [...]
Commenter:
OP:
Making vague and accusatory statements does not prove anything.
You're only trying to discredit my idea by insulting me. It's a last ditch effort of someone that lacks arguments of his own.
Do game developers have the facts? Or are their bosses lying to them?
OP:
Indie game devs never get exclusivity deals because of how small their potential sales are.
And if you're working for a big game dev company as a developer then you sure as heck aren't privileged to the reasoning behind your boss's decisions.
All you get is pretenses and platitudes just like any other employee.
Another commenter jumps in and the thread eventually ends with:
I don't usually block people here but you've crossed a line I cannot tolerate.
I really hope you seek professional help. You are a deeply disturbed individual.
Another game developer adds their take
I've tried to ask for Linux and macOS support at some of the places I've worked at (because using a different compiler helps flush out bugs) but it is very hard to argue against the data to management AND publishers. [...]
OP:
You disagree because your boss told you something else and you believe him?
Dude...
Commenter:
The Steam Hardware Survey shows the same ~1% data.
You are in complete denial over the facts.
The book club joins the fray
TLDR big word budget, rambling confused conspiratorial nonsense
OP:
Commenter:
Some commenters just go for the jugular
It's absolutely low market share. It's not that deep and you're not that smart.
OP:
and
why is this theard still up? why isnt this absolute low iq moron banned yet?
OP:
All this and more in the full comments, sorted by Q&A for your viewing pleasure. You'll have to expand to view most of OP's comments since they've been downmarseyd.
Jump in the discussion.
No email address required.
It's also genuinely a pita to program a graphical application on linux comparatively. For wayland, you're probably relying on wl_roots, which is a notoriously shit library*, writing your own version of the protocol (90k loc, subject to change every month or so), or using sdl. You're then probably using vulkan, which is extremely powerful when it's up and running, but then it's so much easier to get that wrong than d3d11 (haven't tried d3d12), takes approx all year to initialise sometimes (I've had 1+ second waits for the vkCreateInstance function) compared to maybe 10 ms to get a window open on windows, and then a good 20 users are waiting at the other side.
With windows, it's a win32 app which has somewhat okay documentation but a good 30+ years of knowledge floating around that reasonably easy to get access to (lolzy bugs though)** and probably 95% of the market. Also, with proton, you're close to 100% of the market in practice. Also graphical debuggers are just amazing on comparison, though when the rad debugger is finished this is less of an issue.
linux nerds don't understand that just because the operating system is nice for writing c in a posix style, and just because neovim etc have clearly been written to acommodate them, that windows is just the superior target. Even if all of the internals of linux are probably superior, it just doesn't matter if it's so fricking hard to get something up and running. Epoll is better and faster than io_cp, but io_cp is such a superior interface to target that io_uring is basically a copy of it. Also, on that note, a readiness vs complete system for non blocking events is r-slurred.
!codecels
*excellent drama article waiting to be written about the author
** try making a swap chain in the main function
Jump in the discussion.
No email address required.
Most game developers don't write their own game engines so there's some truth to how easy it is to generate a Linux build.
But what OP really misses is that just generating the build is only the first step. They still have to play test on every platform and there are gonna be bugs that show up in the Linux build and not the windows build, so it's just not worth it for the extra effort.
I've also never had issues with epoll but it's pretty rare for me to use it directly, asio is far more common (and arguably can be quite annoying to use).
Jump in the discussion.
No email address required.
lol i asked a dev once why he didn't export a linux build of his game (i use arch btw) and he said there was less bugs and higher frametate in proton so he couldn't be assed to figure out why
Jump in the discussion.
No email address required.
Isn't proton linux?
Jump in the discussion.
No email address required.
yes, so everyone should use proton instead of asking him to export a linux build and figure out why there was a bug in it
Jump in the discussion.
No email address required.
More options
Context
More options
Context
More options
Context
If I recall, a lot of bugs that show up in the loonix build tend to show up in windows, too, but windows tends to compensate for the fact in different ways, or something.
Though again - if you just want to release actual software 'correctness' probably isn't that high on your list of priorities compared to the 'selling to the largest audience' part of the biz.
Jump in the discussion.
No email address required.
Especially for vidya tbh, of all the software "sub-industries" vidya is one where bugs don't matter at all unless they significantly impact gameplay.
I will say that I think this is in part because vidya devs are some of the worst software devs, primarily because they get paid the worst so for the most part competent software devs go do something else.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
I haven't used boost asio all that much or looked into the internals so I'm not 100% sure but I imagine it's probably effectively a completion based run time. Epoll is annoying as soon as you start doing async stuff where ready doesn't mean complete, eg an async file write/ read marks the file ready immediately rather than once it's done.
Jump in the discussion.
No email address required.
More options
Context
More options
Context
Jump in the discussion.
No email address required.
More options
Context
Also modern engines are slow, bloated pieces of crap to develop with that normies see fun videos of and think it's the bees knees. Nanite comes at a cost; you've now abstracted your main game loop to be an endless loop of callbacks, probably edited the version of unreal that you have, and possibly haven't saved that much time. Also all the lightning from game engines looks the same
Jump in the discussion.
No email address required.
More options
Context
Jump in the discussion.
No email address required.
More options
Context
Daily reminder the Gnome team refuses to support server-side decorations despite (Mac, Windows, and KDE doing so) which fricks over games like Factorio:
https://old.reddit.com/r/linux_gaming/comments/1cmsuen/a_linux_support_dev_from_a_very_popular_game/
Jump in the discussion.
No email address required.
I fricking hate gnome so much it's unreal
Jump in the discussion.
No email address required.
More options
Context
More options
Context
Always cool to hear from an actual programmer.
Jump in the discussion.
No email address required.
More options
Context
I can't even imagine how many things would have to go wrong in my life for me to choose to write a gui app in linux
Jump in the discussion.
No email address required.
More options
Context
More options
Context