So I've been working on a crafting/exploration game for a while called Veridian Expanse. (I guess the details don't really matter, so I won't go into that, but check the links at the end if you're interested) I have some unresolved feelings about making the game open source, and how/why to do it.
-
The last game we released on Steam was up on pirate sites within hours, and showed up fairly high (second page maybe?) of a simple search result of the game's name. It sold "well enough", and since it was a pretty small game so we suspect that there probably wasn't any "rampant piracy". Certainly not enough to bother to reduce it anyway. We didn't even bother to implement the (trivial to break) Steam DRM.
-
From a sales point of view, I don't think the source code is valuable. Nobody wants to pirate the source for some random game, they want the binary that's already been made for them. Also, I've written some blog articles about how some of the game's threading, hot-loading, rendering, and soft shadowing works. At some point when people started asking questions, I would just send them the code because "why not?" Eventually I just mirrored it on Github without the assets.
-
The assets... While I have rights to all the data and graphical assets, the sounds and music are all royalty free items that I've purchased. Even if I wanted to release them, I can't. I'm not sure I want to either.
-
I use Linux to develop the game, but I know most of my sales will come from Windows or console versions. In a way I don't care about the Linux market financially and have been considering just publishing it on Flathub because "why not?" It also runs pretty well on the Pi 4, and I even automated the build for it because "why not?" I certainly don't hate the idea that people might like the game and tell their friends to buy it on other platforms. :p
My current thought is that I should just OSS the code, but leave the assets as proprietary. If someone really wants to pirate the game, there will be some easy way to do that a few search terms away. Even if I give away a Flathub or RPi version it's not going to change the difficulty for someone that wants a Windows version for free. On ther other hand, maybe someone will find something useful in the code or get it running on *BSD or Haiku or something. (It already compiles/runs fine on them, but I don't really want to spend time maintaining those builds)
There's certainly plenty of games with open sourced engines (like the Id games), but closed data. Then there's a few like Mindustry or 0AD that seem to be trying both, but are there other example of games that people can think of for comparison?
Some further Veridian Expanse links if you want to figure out what the heck I'm even talking about:
I'll give you my point of view on it.
Pirating is not a bad thing, since people will discover your "brand" and when they can, they might buy your games. (I remember playing Starcraft 1, D2 and AOE, all quakes pirated when I was young, now I have all of them in my steam library)
OSS your game but the assets could be a great way, it feels similar to openTTD in a way.
But supporting Linux is great thing, (Fedora user here) and I try to buy games to support devs that support Linux natively. I have about 900+ games on Steam (Mainly Win titles), and I have finished only 30 or 40 of them. Now that Linux is getting more popular and because Steam makes playing windows games so seamless, it's not worth the assle of pirating IMO.
But that just me. I am sure there are many others with similar opinions out there ;)