Saving, selling and sharing your Blender Games!

Breaking some preconceptions
There are regularly questions that ask “How can I sell my game!?” Unfortunately, this topic is varied and complex, so let’s take an objective view over the steps involved in selling your first game :

Distribution
http://i1.cdnds.net/10/19/media_steam_logo.jpg

  • Steam
    Firstly, it is unlikely that one can sell their games on Steam. I have emailed steam works before, and have yet to receive a response unfortunately, so here is my interpretation. Steam is a content distribution platform. It enforces licensing by registering game copies to the account - one may play at a time. This also means that only one liscenced copy can be played at a time, but to check if a copy is valid, they use DRM - to make sure that all copies are from steam, registered to an individuals account across multiple PCs. This means that, having copies floating around with no ties would be unacceptable. Therefore, in order to sell a game, it cannot be GPL. Why? GPL requires that you make your source free by request. It is usually seen as a good thing, for it allows for development and refining of useful software, and a reference for others in that field. However, giving away the source to your game allows users to create mods of your game, custom clients and server hacks - potentially a free copy. Because steam requires DRM, releasing the source is out of the question, and so (therefore) is GPL licensing, which is inherent to BlenderPlayer (see below for more)


  • Desura
    Desura is another content distribution platform. For indie game developers. You’ll notice it supports GPL content. - A must have! (Unless you’re looking into methods of compressing the blend as in bpplayer. Desura allows us to sell our games, our license determined by us, and so is our price! It relies on the support that the indie family give to ‘their own’. - “Unlike many of its competitors, Desura does not offer any digital rights management services, and Desura employees have commented against its use in the past, recommending that content producers ship without DRM or at least use a CD Key system instead.” What does this mean? Well, essentially Desura support open source software, and GPL licensing, which is handy for us!

Customising Your Game

  • Custom Icon
    So, you have a distribution platform, but how do you get there? In order to sell a game, you’ll want your own Icon, and your installer. In order to change the Icon, you can use IcoFX to change the icon of an EXE. This is the method i prefer over the method mentioned in the sticky thread; at least it has been successful for me! All you require is an icon to replace the exe with (in a 6464 or 3232 ico / png format) and you can directly apply it to the runtime.
    Here is a useful tutorial. You can customise the icon to represent your game, or your concept - make it yours, not another Blender game.

  • Creating an Installer
    For creating installers, I prefer NSIS. NSIS is a free installer creator. You can use templates, or script your own functions. You can change many aspects of the installer, from layout or the the mechanics behind it. The power is at your hands. NSIS is quite user friendly, and has a large community behind it, as Blender does! So, feel free to investigate further, as I’m sure i’ll end up expanding this section.

Licensing
When you save a Blender game, the files are yours. They are under no licensing agreement until you decide that you wish for one to exist. This is not the issue we face when we try to protect our source. Blender was released under GNU licensing after NaN established the Blender Foundation. What this intended was for the continuity of the official source of Blender, so that it would not become a paid for monopoly, and false credit stealing. This has arguably proven effective; 2.62 releases later (soon!) We’re still a strong community. However, this results in a paradox, or at least in our context. The Game Engine was developed inside the Blender environment, upon the base code. Therefore it has to follow the same license. This includes BlenderPlayer - the standalone program to run our source. When you export an exe, it packages the source and the BlenderPlayer as a single run time. At this point, your source becomes under the GPL license as it has been distributed with BlenderPlayer. What is blenderPlayer? BlenderPlayer is the stripped down version of Blender that allows a user to play the source file.

What does this mean?
When you release a product; game or software, you have two options. The first option is for you to share the source with the general public, Open Source. The other option is Closed Source. So, which one’s which?

  • Open source
    Open source allows many benefits; you can establish communities to produce mods, adaptations and improve your work. You ensure continuity of the original product (in some form) and lastly, you can see your work in the hands of others. The main issue we have with the Blender open source license (GPL) is that we are limited to non DRM marketing.

  • Closed source
    Closed source also has its benefits. firstly, it allows you to protect sensitive code, such as sales connection information. You can protect the api for the server - prevent spoofing of data. You also ensure that no-one can steal your assets, ideas or full product! (just look at the people selling Blender!). Of course, this requires protection, but the core still stands

So, how do you protect the source?
To protect the source, there are two solutions.

  • You release the source in a compressed encrypted file, and distribute the BlenderPlayer separately
  • Encrypt the blend into a non-interpretable entity, and include a decoder at download

Both these options require a separation of source (be it raw code, or the actual files) from the Blender Player.
Have a look at bpplayer for information, or search the forums
**

**subject to change

2 Likes

The GPL only means that you have to share the source code to the Blenderplayer. This blog post from Dalai might be helpful: http://blenderecia.orgfree.com/index.php/outros/a-hora-e-a-vez-da-blender-game-engine/. It’s in Portuguese, so you might have to translate it if you want to read it.

http://translate.google.com/translate?hl=en&sl=auto&tl=en&u=http%3A%2F%2Fblenderecia.orgfree.com%2Findex.php%2Foutros%2Fa-hora-e-a-vez-da-blender-game-engine%2F :slight_smile:

Good start for an interesting subject to be covered.

Yet I do feel that it is a bit biasing to Closed Source.
(I ain’t saying the O.P. is biased, just the information provided is more targeting (or assuming release as) closed solutions then open)
(And yes I am biased strongly to Open Source only :smiley: )

While in my opinion Open Source has much more to offer.
GPL doesn’t harm you, you just need to know how to monetize it (if you want to do so).

I personally prefer GPL for both commercial and non commercial releases. There is no harm in releasing your source code to the public, the added value should come from your (ongoing) contribution or you can pre sell, until a certain amount has been gathered. For then to release the Source Code.
Keeping the source code protected serves usually one purpose, to monetize it until you can’t monetize it no more.

You can earn a honest pay when releasing as Open Source, while do the “right” thing, giving back to the public, which helps to continue to build on the future. DRM and other “protective” measures are wrecking the progress and are a real problem for future developments.
These make a few parties rule the world (literally, a.o. Microsoft, Google, Autodesk, Adobe,… et cetera) and is why software is so expensive that some (many) individuals decide to go “illegal”.

[Open Source] Software Patentability and Democracy

Often overlooked is that the amount of Open Source solutions is much more integrated and in high demand and use, then the proprietary solutions.
Most devices run on LINUX, yes Linux, changes are that most of the following are running on Linux (or other similar Open solutions):
From your kitchen blender, lol, to your router, switch, phone, nas, external hard drive, printer, scanner, tv decoder, tv itself, media devices, probably your website is hosted on linux, search engines run on linux, the cloud service(s) you use, even maybe your desktop runs on Linux (mine does) :smiley:
But also your browser, your favorite 3D package, 2D package maybe as well (Gimp)?

So how to make money with a GPL licensed (Open Game)?

See the Blender Foundation as example:
The Open Movies and Open Games and other material is sold, while released Open and Free.
You can raise money before releasing, to make sure your costs and a profit is secured, before launching it publicly.
You can sell like the Blender Foundation does, or as a pay what you want model.
You can try to (commercially) advertise
Offer paid additional services
Memberships
Servers to play / host on
and so on, be creative.

Yes you do depend a bit on the “good” and not the “unwilling”, but then remember, individuals who pay for the proprietary solutions, also have made choice to go illegal (while the law forbids) and use proprietary solutions for “free”, this happens on large scale, yet there is enough money to be made to be amongst the biggest in the world.

And this happens while there are plenty Open Source solutions which are available for free!
Why use Microsoft Office for a shipload of money, while you can enjoy Libre Office for free?
Why use illegally MS Office, while Libre Office is available for free legally?

In other words, you can release as Open Source just as well as as proprietary, the willingly pay, the unwillingly won’t, no matter how you release your game.
But there is a lot more to say for Open Source releases, these can be contributed by the public by, which in return you can integrate these public developments in your own later releases.

Truth must be told, yes it might bring a risk of one person buying your game, releasing it to everyone immediately. But doesn’t this happen with Proprietary as well? While they still make top dollar? :wink:
This while tehre are already many Open Source solutions available for free or very little money.

And remember as game developer:
The Open Source (GPL?) developers can share amongst each other freely, cooperating together as one big swarm of busy bees, all making their own (original) games, based on collaborated solutions.

The proprietary developers do not benefit from each other, they can not use Open Source, so they depend solely on their selfs and other proprietary developers, but there for you need very deep pockets.

Which (indie) game developers will develop faster and with time are able to release more and better games? :cool:

Updated to reflect a more open stance.

this is sweet thanks i was messing around with inno setup compiler but got a error when i ran the final installer so nsis i hope will work out.

ok i tried nsis but it doesn seem to work.

It works for me!
Try changing any new code :slight_smile: I’ll end up doing an NSIS tutorial no doubt :wink:

what do yo mean try changing any new code?

I was assuming it was your own code.

no i just opened the folder with the runtime and all the other stuff with it

Wow, fantastic information agoose77. Desura (link) is a really great site. It looks professional, has a large array of games, and allows members to upload and change content. Desura might even be better than Steam. :eyebrowlift:

PS: the BGE is not included in the list of engines on Desura’s site (link). Someone needs to add it asap.

Contrary to popular belief, “proprietary developers” benefit from each other and contribute to open source. One great example is the Bullet Physics Library. There have been several major improvements to the Bullet Physics Library which have come from companies and proprietary developers. In addition, open source non-copyleft licenses, like MIT and BSD, allow for reuse in closed source solutions (and some of these solutions contribute back to the original library - such as in the case of Bullet PL).

However, I do agree that if the application/game is closed source, developer(s) will generally spend more time in development. (On the other hand, if an open source application is written from scratch and optimized properly, it could be bound by the same time constraints as closed source solutions).

The major issue about Open vs Closed source isn’t about distribution.

Unfortunately, large amounts of time and money go into research and design (even more than implementation). You can’t expect companies and individuals to contribute all their findings (through source or otherwise) when research and new technology is so expensive. In addition, “forcing” open source and copyleft on developers will only drive them away.

At the end of the day, people need to decide for themselves if Open/Closed source is the right choice.

Thanks C106!
I’m going to keep adding to this :slight_smile:
Also, i noticed BGE is missing, though it needn’t be. i’ll look into it!

@C-106 Delta:
Valid points. I did make my opposition fairly black/white to make a point.
Based on the BGE license (GPL) and the original post, I did aim at the those two.

The GPL is just a logic step since it is used by the BGE, but as you clearly state, your content or game doesn’t need to be.
But seen the choice for the BGE is made and set into stone as GPL, the combination of sources in different license styles do oppose a lot of problems in the legal area and future developments. Making your own game MIT /BSD for instance will not suit the GPL basics where your game will be build on (this thread/forum is all BGE targeted, right? -else the title wasn’t “Blender games”?), BGE is GPL.

So if you want to use the BGE engine as your basic engine, it will be hard to adopt a MIT/BSD license for the rest of your contributions and stay in the clear (outside the grey areas).

And when you find some loopholes / options to do so, the GPL might change and close the gap your work has been founded on, rendering it (as good as) useless (without your BGE foundation).

But for sure, when the license wasn’t GPL for the BGE, then maybe proprietary developers were more likely to contribute (MIT/BSD types of licenses).

But to be honest, I see it way more black and white:
When a proprietary developer contributes to Open Source, it is just someone who does both. Proprietary (in GPL license terms) and Open Source do not mix. That is where the GPL is constructed for.

Proprietary says kind of nothing else then keeping the sources for yourself, by sharing to Open Source, the term proprietary no longer fits.

So for short:
Distributing a BGE based game can be done as mentioned at this moment in the first post:
By either making it Open Source as one part,
or as any other type of license you wish, by dividing the game into to two (or more) parts, keeping just the BGE parts under the GPL.
The other type of license can be anything.

(correct me where I judge too easy or made unclear or clear errors in judgment) :slight_smile:

What if I set up a web site dedicated to my game (e.g. www.hydra-warrior.com) and sell my game from there ?
(and of course include the source code in the download package )

Why would that be a bad idea ? (since it is never mentioned)

unless your web host cares, which i doubt, then this a good way to go i think.

Currently Steam makes 95% of all sales of PC games(for indies), the second one is GoG with ~ 2%-5% of sales.
Desura is just a place to show off your work, they have “buy” button, that links to your Steam page.(I have ~10$ of sales from Desura for all my games).
The third platform is itch.io with 1%-2% of all sales.
Basically, if you want to sell your games, do not spend your time adding games on Desura/itch.io/GoG, they all together makes ~ 5%-6% of your sales, the rest 95% are from Steam.

Therefore, in order to sell a game, it cannot be GPL. Why? GPL requires that you make your source free by request. It is usually seen as a good thing, for it allows for development and refining of useful software, and a reference for others in that field. However, giving away the source to your game allows users to create mods of your game, custom clients and server hacks - potentially a free copy. Because steam requires DRM, releasing the source is out of the question, and so (therefore) is GPL licensing, which is inherent to BlenderPlayer (see below for more)

Totally false statement!
Steam is not forcing DRM, you can freely sell your games without DRM on Steam, as I do for years. GPL requires to provide the scripts(Python code), only if any external libraries are used in it(like PyGame). But the .blend is all yours. As long as you keep your code out of the .blend, you are not obliged to provide your .blend file to anyone.
So don’t worry, GPL works perfectly fine for selling blender games. This is the official blender foundation statement about your GPL concerns:

In short:
"Games created in Blender (.blend files) are program output and therefore not covered by the GPL. You can consider them your property, and license or sell them freely."

haidme there was the problem of linking your scripts to the bge module, this would infect with GPL your code no matter what I think I have read somewhere. Its mostly legal stuff so I’m not really sure.

haidme there was the problem of linking your scripts to the bge module

Sorry, but there is no problem linking the scripts to the blend file. If you are unsure and lack information about that, please ask in the proper section and I will explain in depth.

I really don’t understand, why you don’t believe the OFFICIAL Blender Foundation statements about their OWN software and try to make drama out of nothing. :stuck_out_tongue:


If anyone is still unsure(even if it is stated officially) :no: Please search the BA forums about the GPL and BGE before asking, there are literally dozens of threads explaining why you CAN sell your games anywhere you want. And if you still have doubts :spin: make a new thread and I will explain it once again…and again and again…

PS
@ C-106 Delta

PS: the BGE is not included in the list of engines on Desura’s site (link). Someone needs to add it asap

In 2007 it was. I personally requested adding BGE back then and they added it a few months later.(probably I was not the only one acknowledging BGE as an engine back in the days. But since 2012 they removed it from their list. :slight_smile:
“Desura” was called “Indiedb”(it still exist as a separate entity) in 2007 but they went bankrupt around 2013, someone bought them and renamed the platform to Desura… The platform is fading since then.

Same here, somewhere in blender license i thought i read this: If you use the BGE module in your scripts those scripts are GPL and source needs to be handed out to everyone that asks for it.