Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
Tags

Thanks for the quick update. I've tested the experimental build and that works. I've also played a couple of rounds in the game, which is great :)

Just one remaining issue: I don't have any sound. The only line in the log that stood out to me as being related to sound is this one:

ALSA lib pcm.c:8545:(snd_pcm_recover) underrun occurred

Any thoughts on how to debug this? :)

(2 edits)

I'm glad the build works!

I'm sad the sound doesn't :(

The game is just using the regular pygame api for sound so I'm not sure where to start really. It could be the same issue as before, where some older dependency is being used instead of a newer one your system is expecting, or maybe your system wants to use PulseAudio instead of ALSA, or something else entirely. I'm not really sure.

That log line is interesting, but I suspect it's a symptom of some root audio issue rather than the cause. Looks like the audio buffer isn't being passed as much data as it's supposed to be.

If you're really curious you could try downloading some other pygame games and see if the sound works properly on those - I suspect it won't but you never know.

I think the real answer here though is that I shouldn't have assumed that testing on Ubuntu alone would be enough to clear this for a general "Linux" release, so I'm sorry about that. Moving forward I'll probably label these builds as Ubuntu specifically until I have more of my own machines to test on. Sorry for all the trouble.

No need to be sorry! I'm already super happy with the support you're giving.

I'll go play around a bit with pygame stuff and see if I can find anything. I'll let you know if I do. Perhaps together we can expand Ubuntu back into "general Linux" :)

Hi again. I've got sound!

Similar issue to libstdc++ I think. LD_PRELOAD=/usr/lib/libSDL.so ./Skeletris works. Can you make a build with the same trick you used for libstdc++ and apply it to libSDL?

Oh nice! That's quite interesting. SDL is essentially the core dependency of pygame - so I don't think it's a good idea to swap it out for a different version on the fly like that. It could cause pygame to crash in bizarre ways at runtime if it ever tries to call a method or something that differs between the two versions.

And actually now that I'm reading the pygame wiki, it's become apparent that there are different pygame packages for the different families of linux distros... which is probably why nothing is working correctly... so that's my bad.

In terms of what to do next... I don't think there actually is a legitimate way for me to build the game on my machine (Mint) in a way that will run correctly on Arch. Even beyond libSDL and libstdc++ I don't think it's safe to assume that any of the dependencies will be 100% compatible.

If you want a real, totally functional build, you'd probably need to download the source code, install the Arch versions of all the dependencies, and build it yourself. I'm thinking this is probably more trouble than it's worth though. The game is about an hour long, after all haha.

And thanks for your dedication! You've gone way above and beyond what I'd expect from a player to help me fix this and I've learned a lot about Linux + pygame distribution in the meantime so I really appreciate it. On my next game I promise I will try to find an Arch machine that I can use to distribute it properly!

Thanks for the prompt reply. I've also learned a lot of things along this little debugging journey we took :) I completely understand that we should probably stop here. Using LD_PRELOAD is good enough for my usecase and other Arch users will probably find this thread.

Regarding compatibility for future game projects: feel free to hit me up if you need testing on an Arch machine :)

Awesome, thanks! I may take you up on that offer :)