Hacker News new | ask | show | jobs
by eropple 4917 days ago
Yes, if you're going to target Linux, all of that's part of the deal.

Which is a baffling thing to have to wrap your head around when you look at all the people who say that Linux should be treated seriously by game developers--which will make people flock to Linux! so more people can make games for it! because that will really happen!

If you say you want people to build houses in your housing development (houses that have no buyers, but forget it, we're rolling) it really sort of behooves you to not be demanding that they build a house on land that starts at "silty" and doesn't really get better from there.

A game should primarily depend on OpenGL+X+audio, and while these do change, if the program works on one distribution of Linux, it tends to work on the next.

This comment deserves a LOL WUT pear of some kind but it's not quite appropriate here (so if you'd like to think of your favorite one I'd appreciate it). Audio? On Linux? Working from one distribution to another? No way. It's a mess, it's still a mess, and it's been a mess that is doing a wonderful impression of a full-blaze tire fire for going on a decade now, especially with older--yes, closed-source, it's not going away in games--software. Closed-source Linux games from the Loki era, by and large, don't work and when they do it's through fairly herculean efforts...and they do not exactly rely on GTK or KDE version π.

Oh! And JACK sucks and is bad and its developers should feel bad. (Not game-related, more music-production related, but I felt like throwing that in there. I tried to use Ardour this week and it's made me a bit militant.)

1 comments

Can't say I've tried every distro out there but my OpenGL+X+audio system has worked fine across the several popular ones I've tried, it's getting better.

And anyway, the point wouldn't be to support all platforms, just the prevailing ones, so I'd say your remarks miss the mark.

That's only what it appears like on the end user's side. On the developer's side, it's much more messy. We're talking about binaries that stop working between two releases of the same distro even when the APIs don't change.

It's easy to dismiss this with saying "it's part of the deal" but if it takes too much effort for minimal gain it's not worth it. I'm fine with breaking changes if they improve things but there should be at least a compatibility later for some period of time.

Unfortunately, simply shipping different versions of a library is not enough to provide compatibility. There are two issues at work: 1) as mentioned before, platform ABI changes 2) ELF works with a big flat symbol table, so if you load library foo version 1, but a dependency loads library foo version 2, then things blow up.

I am on the developers side, and if I can do it myself, certainly Blizzard with all their resources can. Or perhaps I'm just so brilliant and supremely competent that they'd need 40 engineers to do what I can do with a few hours here and there.

I guess I should thank all you naysayers for the compliment.