💾 Archived View for thfr.info › gaming › commercial-games-on-openbsd-may-2024.gmi captured on 2024-05-12 at 14:49:22. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2024-05-10)

-=-=-=-=-=-=-

Commercial Games on OpenBSD (May 2024)

I think this is a pretty good time to give an update on the current state. One of the goals is to provide starting points for people who want to understand the limitations and see how to get involved.

The Good

Godot is Taking Off

Since Unity's install fee public relations disaster in September 2024, Godot has received significant attention as a serious alternative. It seems like a few high-profile game studios like MegaCrit games (Slay the Spire) have abandoned Unity in favor of Godot. (Note Slay the Spire is a LibGDX game; they were working on the sequel in Unity and then switched to Godot).

Some examples of very successful Godot games that run on OpenBSD include:

There are still issues with some Godot games. I have found at least one Godot game that uses the encryption "DRM" (Legendary Creatures 2). Other reasons include reliance on Steam middleware, although we have GodotSteam included in the Godot 3 port, and I hope to add more GodotSteam middleware for Godot 3 and 4 in the future to close some more gaps.

Shoutout for op@ for maintaining the godot ports that allow running these games!

More (and Better) Ways to Run Games

rigg is now in ports (on -current). IndieRunner is coming along and I'm hoping to have it ready for OpenBSD soon. There will be future integration such that IndieRunner will use rigg to launch games where possible.

This will replace fnaify completely. The big advantage over fnaify is a much more modular, maintainable, and modifiable codebase. The OO structure should allow making a GUI in the future...

IndieRunner is probably best understood as a launcher, initially with just a CLI interface. It supports all the engines of fnaify, that is FNA, XNA, MonoGame, and a few Zachtronics games based on their in-house mono-based engine. In addition, several other ones have been added into the IndieRunner framework: Java (LWJGL, LWJGL3, LibGDX), GZDoom, HashLink, Love2D, ScummVM.

This project is still undergoing some refinement before it will be ready for proposal to ports@.

PlayOnBSD Database updates

The current stats (as of the time of writing) show 427 games listed, and I'm adding more basically weekly as I'm becoming aware of them and testing them.

Repo with the database and the conversions to json/csv

Shoutout to hukadan for making a beautiful frontend for the database!

https://pobsd.chocolatines.org/

Random game - my new favorite browser startpage

Stats derived from the database

The Bad

The libraries and runtimes needed that are used by the games have a way of getting out of sync. For some games, our ports libraries are too new. This seems to be the issue with the recent lack of audio in Stardew Valley (suspecting OpenAL version incompatibility), and was also a hiccup with steamctl when protobuf was updated to 5.26.1 (steamctl expects protobuf~=3.0). Having multiple versions of the libraries in ports is probably a non-starter, as it would increase maintainer burden and risk carrying forward security vulnerabilities from outdated versions.

Stuff still gets released using FMOD, which is a proprietary audio middleware library. My disappointment in that regard in 2023 was Cobalt Core, sadly - an FNA game that couldn't help but rely on FMOD which makes it a non-OpenBSD game. It's just disappointing if a game otherwise based on free & opensource software frameworks like FNA does this...

The Ugly

Lost Ports

Barony dropped (or neglected) its OpenAL backend. Keeping the port working with the latest game files has become unmanageable and it was retired.

The DarkMod's distribution model of relying on downloads of content, but only supporting the most recent version, along with difficult to obscure bundled dependencies like modified zip/minizip made it unmaintainable for the time being.

Big Tech Dominance of Software Ecosystems

Microsoft's dotnet is a portability nightmare. More and more projects rely on dotnet core 8.0 instead of mono. Examples include Godot version 4, MonoGame.

The majority of indie game releases still use Unity. I am hoping that with more time passing since the Unity install fee debacle in September 2024, we will see the share of games made with Godot picking up.

How to Get Involved

Conclusion

This is all I can think of at the moment. I probably forgot to mention a few more things - feel free to add them in the comments. I've personally had a lot of fun playing several games on OpenBSD in the last months - from Secret of Monkey Island 2, to OpenTTD, to Urtuk: The Desolation, Balatro, and Delta-V: Rings of Saturn.