windows-infographic_medium

Kickstarting Free Software

I meant to respond in more depth to a part of my last segment with Tetris creator Alexey Pajitnov, but a cold and a massive time crunch (plus an unstoppable Civ 5 binge) kept me from appending to the video. It’s been awhile since I’ve done a blog post, so I’ll just sketch out my response here instead.

First, a bit of history. As some long-time followers know, I used to be something of a cheerleader for the free software movement, doing cover features for Free Software Magazine and writing articles on it for Armchair Arcade. At the time, I was convinced that GNU/Linux was the future I wanted to fight for, and that anything other than 100% free software was unethical. To put it short, I had drunk the Kool-Aid.

My views started to shift partly in response to an email exchange I had with FSF founder Richard Stallman. Stallman told me that even he didn’t think games ought to be free; just their code. Creative assets (music, graphics, etc.) could and should still be protected. The impression I got was that his fight for free software didn’t include entertainment; just utilities, instructional material, or other “useful” wares.

These views shifted further when I began learning more about how real-life game development worked. In particular, I learned that most games aren’t written from scratch; rather, they rely heavily on proprietary packages, libraries, or entire engines they license. In short, they aren’t in a legal position to make their code free. Arguably, you could insist that developers avoid doing so, but that seems to be imposing an unfair burden on them in my opinion.

My current thinking on the matter is still subject to change. But one thing I’m still convinced of is that we would all be better off if more powerful development tools, libraries, assets, etc., were in the public domain. Yes, I’m aware that it’s now “free” to use Unity and other engines, but there are substantial limitations. These limitations are to the point where it’s not a big deal for most developers, but, ideally, I’d like it to be feasible to create a triple-A game with totally free tools. Note I said “ideally.”

Secondly, I’m  convinced that Kickstarter and other crowdfunding options should encourage more games to be free in every sense. All it would take is for the pitch to include whatever compensation they might realistically have expected to earn from product sales. In other words, the campaign would cover not only the costs of making the game, but also the profits they’d be satisfied with. After the game was released, they’d just put it in the public domain or some form of Creative Commons or GNU license. Whatever parts of the code they could share without legal issues could be included with the release.

In addition or alternatively, they could launch a complementary Indiegogo or Patreon stream to fund updates, non-critical patches, or even full-on expansions. Hey, as long as there’s a reliable funding stream to keep a game updated, why should a developer turn his or her back on it?

These are just some thoughts I had on the matter. I suspect that many people would balk at the idea of contributing to a Kickstarter that included potential profits, but maybe not if they considered what they’d be getting. If a developer didn’t have to worry about selling it, they could dedicate more resources to development (and less to marketing). I’d also think the resources they’d be making freely available for other developers and projects would be a tremendous surge for indie development.

What do you think? Would you support a Kickstarter that promised that the finished game, including its code and assets, would be made freely available? Or, as a developer, would you be willing to risk receiving less profit than you might have with a traditional arrangement? This latter point seems troublesome; I’m wondering if perhaps these games are bringing in so much revenue from sales that putting all that upfront would simply be a non-starter.

 

11 thoughts on “Kickstarting Free Software

  1. Joe

    All software should ideally be free, this includes game engines and I can see no reason for them not to be. A Kickstarter which promises to release its engine for free would get a lot of support from me. It would be incredible if for example the Divinity Original Sin engine got put out under the GPL. It’s an amazing engine which has created two incredibly deep RPGs and has a world of promise and potential hidden within it. For what reason should Larian hold onto it themselves? Why not release it into the wider world for free and spawn a new generation of incredible RPGs, as well as soaking up all the worthwhile improvements the development community comes up. Sure we have an editor, but as you rightly point out there are limitations with “just an editor”. You can create games within a certain specification with an editor, but you can’t build upon or extend the existing technology without free source code access.

    Further releasing engines under free licenses ensures a game’s continues preservation. Before GOG came along and worked their magic (and I’m not at all suggesting that every GOG title works without issues) it was a pain in the butt to get old games working, right? We had to come up with projects like ScummVM and GemRB to completely recreate game engines from scratch just to get them working on newer systems. If we had the source code to begin with and could freely fork it the need for reverse engineering (an incredibly difficult and often thankless task – please send a few dollars to the ScummVM project!!) could be completely eliminated. Keeping a game working on newer systems would just be a case of cleaning up the code, bringing it up to scratch with modern libraries (like maybe porting it to SDL2) and releasing the new binaries and patched up code for free also. Voilla, you’ve just allowed your game to be played on any platform at any point in the future – assuming there’s enough community interest to do so. Technologies will change, the newest version of Windows will come out but your game will literally always be able to be ported to those new platforms because your code is freely available. What did you lose from releasing your engine for free? I really can’t think of anything. And I mean, what’s the point in actually limiting the number of platforms your game can be run on? If your engine code is free you’re saying “Linux? Mac? Goddamn BeOS? Who cares – play it on whatever you like, just compile it yourself and don’t expect any support from us!”.

    Your point about games becoming totally free is interesting too. While ultimately I think Stallman’s position is right – there is no need to release a game gratis, that would be ridiculous – you ask if there’s actually a point in which a game could actually become gratis. Essentially if I may use the term I think you’re suggesting an official abandonware designation. The game has reached a point where it’s made a profit and won’t continue to make any more money, so why not let everyone have it for free? This is the self justification the abandonware community has allowed itself for years now; “Oh, Interplay shut down so no one is making money off of Fallout anymore, just download it!”. Is this necessary in the age of GOG though? Where GOG is actually in a position to make sure original creators can keep making money, rather than have their rights disappear into the hands of some insurance company is there any incentive to release a game gratis? I guess studios would have to recognise a point where profit becomes pointless, there’d have to come a day where having their game up for sale isn’t actually achieving anything anymore.

    While releasing games gratis is a nice endgame I really think developers should stop being silly and just release their damn engines already!

    Thanks for bringing this issue into the discourse, Matt. Maybe with people like you talking about free code in gaming perhaps a few developers might actually just turn their heads and consider it a little. I definitely think developers should to be open to the pressure of releasing their engines for free, it’d be nice if we had a group or organisation that clarified the process and busted all the myths around doing it. Especially concerning old games. Relic just pushed a bunch of updates to Dawn of War, for example, why not release that engine freely, too?

    Reply
    1. Matt Barton Post author

      I like the gratis idea very much. That seems like a win-win. They could make it part of their pledge rewards. If we raise $X amount, we will release the game gratis within five years after its launch.

      I guess they might still miss out on some sales, though. You never know when an “ancient” game will continue to sell like hot cakes (e.g., Civ 3-5 or Starcraft). But surely they’d realize such games are in the incredible minority.

      Reply
      1. Joe

        If you give it a timeframe it definitely works, you’re right. A Kickstarter in itself is going to generate at least minimal profit while the sales after the fact are gonna be obvious contributions too. Since with Kickstarter you have first and foremost ensured that the people who actually want the game have got it releasing it for free after a while seems like a fairly nice gesture, sharing what your backers made possible.

        Just so long as the engine is libre from day one, too 😉

        Reply
  2. Freeman

    “For what reason should Larian hold onto it themselves? ”

    Because it was an insane amount of personal work, risk and skill that went into it’s creation. Just because it isn’t physical doesn’t mean those things are without value. It’s OK to suggest people will pay them out of sheer kindness if it was free, but the reality is not that many would. Some… but not many.

    When the only thing a developer can do is offer value through service, bigger houses will offer better service and drive people like larian out. See our local game/comic/hobby stores for what happens when that’s the model.

    Releasing engines does help a game’s longevity, but only after an incubation period where it is nurtured and grown into something of value. You need only look at the Asset store flips people are trying to pull on Steam to see what happens when there isn’t a little bit of curator-ship until something is stable enough to stand on it’s own regardless of what people do with it.

    But then, I approach this side of things not just as a gamer, but a software developer myself. I’d be lost without some things just being available to build a standard on. But in the next breath, if you can remember the pre-direct X days, and having to re-config your config.sys and autoexec.bat files for every single game, it was nice to see a standard created and implemented. Both things have value.

    The option to release it into the wild, or hold it for a while should remain in the hands of the person who created it. It was their blood sweat and tears that made it exist. It feels a little like “the Little Red Hen” https://en.wikipedia.org/wiki/The_Little_Red_Hen#Plot_summary to hear people talk like that about software.

    ALL OF THAT SAID….

    The copyright and patent systems in this country are horribly broken, and especially when applied to software. They should be truncated to their original lengths, and then halved for software. If you can’t make something of your product in 5-10 years, it doesn’t matter anyway. It’s out of date. These things should hit Public Domain much faster than they do.

    Reply
    1. Joe

      “Because it was an insane amount of personal work, risk and skill that went into it’s creation.”

      Right, and this investment is paid back by sales of the *game*. I feel you may be conflating libre and gratis. Just because a game engine might be free software, that doesn’t mean people aren’t paying for the actual game. People wouldn’t be choosing to pay out of kindness, people would have to pay for a copy of the game. It’s only the engine code that I envisage as being a fantastic contribution to the wider community, and it can be freely released independently of the paid-for game assets. I only give the Divinity Engine as an example because it is, at least from a player’s perspective an incredible engine and it could be I believe capable of enabling a plethora of amazing RPGs the likes of which haven’t been seen since the Infinity days if only it was free to use and build upon. But in absolutely no way am I suggesting Original Sin should be a free to download + play game. If you’re not making that conflation I apologise for getting the wrong idea, but at least this little clarification might help clear it up for anyone reading this and thinking that. I do support Matt’s idea of a Kickstarted game promising to become free at some point after its release, though.

      There are other engines which I think make similarly wonderful innovations that the whole community could benefit from, but instead they sit stagnant. The Essence Engine is the RTS engine that powers Dawn of War and Company of Heroes. It’s terrific and, again, from a player perspective, could possibly have a lot of potential to make greater things than those titles if it was free for the community to build upon.

      Your point about preservation I guess is probably linked to the popularity of the game? All those asset flips aren’t going to spawn engine maintenance communities because they’re garbage. Something like Dawn of War or Original Sin definitely would, though. I mean, I primarily play games on Linux and I have a widescreen monitor. I would love to have the original Dawn of War playing at 1920×1080 on Linux, both natively and without weird hacks. If the engine was freely available, Dawn of War has enough of a community around it which is enthusiastic enough to build upon the engine and make and maintain the port, I think. We only really have to look at the number of engine reimplementation projects to get a perspective on this. OpenMW is really close to fully recreating the Morrowind engine, ScummVM has recreated a whole suite of adventure game engines, some Infinity games are almost fully playable in GemRB and I’m aware of a one-man project to reimplement the Grand Theft Auto 3 engine, even.

      Sorry to keep going on, but this is a subject I’ve put a lot of thought into but I don’t see it discussed in many places at all really. Hopefully Matt has more to say on it because he’s in a better position than me to really spread the word about this discussion. Wonder if we’ll get a Matt Chat with an engine recreation developer to get a nice perspective on software freedom in gaming?

      Reply
  3. Myrkrel

    Hey Matt – interesting post, and as a content creator / hobbyist game dev myself it gave me some good food for thought. I’ve often wondered if that kind of approach could be feasible (crowdfunding a “free” game). It seems similar to the Patreon model in a way, and that seems to be working well for certain types of content (like your videos, and other periodically released, bite-sized stuff.)

    Regarding free development tools / game engines – I’d like to mention one I found which is exactly what you’re talking about. Take a look at the Godot Engine – it’s completely open-source and free with no royalty strings attached. I’ve been checking it out lately and even at an early stage of development it’s got a powerful feature set approaching the big names like Unity. It really needs more awareness though – as the community around it is quite small. It also needs better documentation, but the core features are all there. I think this will eventually be a big contender once the user base and feature set grows a bit. It could become the core of a free open-source game development ecosystem. Their goal is to be for game engines what Blender is for 3D modeling.

    Reply
    1. Matt Barton Post author

      I haven’t had time to check it out, but this sounds like exactly what I had in mind. Imagine what they could do with a massive Kickstarter campaign and/or Indiegogo/Patreon support to fund further development.

      Reply
      1. Myrkrel

        I agree – if they did some kind of crowdfunding campaign at some point that might speed up the development considerably. Currently it’s a part-time affair as I think the main developers have other things going on to pay the bills.

        This seems to be the main hurdle with open-source / free projects – getting momentum and being able to devote time to it without an income stream.

        Reply
        1. Matt Barton Post author

          Indeed. I’ve been part of free/volunteer projects before and they usually start off strong but fade once the “new” wears off, if you know what I mean. Without some hard incentive to keep going, interest fizzles out.

          Academics get that stuff done with an infrastructure; you write/publish for free, but you need publications to get promoted. So it works that way. I don’t know how it’d work for software development. I guess the experience and reputation gains would be worth something, but I bet you’d indeed get more done with an income stream. There’s no way I could’ve kept going with Matt Chat all these years without any financial support.

          Reply
        2. Matt Barton Post author

          Indeed. I’ve been part of free/volunteer projects before and they usually start off strong but fade once the “new” wears off, if you know what I mean. Without some hard incentive to keep going, interest fizzles out.

          Academics get that stuff done with an infrastructure; you write/publish for free, but you need publications to get promoted. So it works that way. I don’t know how it’d work for software development. I guess the experience and reputation gains would be worth something, but I bet you’d indeed get more done with an income stream. There’s no way I could’ve kept going with Matt Chat all these years without any financial support

          Reply
  4. Shishir Nirav

    Might your premises be a bit off?

    Games built around Unity3D could just as well be built around open source alternatives. There is no shortage of high quality open source graphics engines. Ogre3D has been used in a number of commercial projects, for example. Just check out Mod DB. In other fields open source is first rate, e.g. physics engines. I guess what makes indie developers jump on the bandwagon is Unity’s asset store.

    AAA projects rely on a wow factor and need bleeding edge engines that have slight chances of being open sourced. Companies like id generously do this, but only after a period of time.

    What good would such bleeding edge technology do indie projects anyway? It is just a device to highlight content most indies can’t afford in the first place. Consequently most contemporary indie games are about creating as little content up front as possible.

    So every initiative to publish game art under a CC license is highly welcome.

    Reply

Leave a Reply

Your email address will not be published. Required fields are marked *