License confusion of what you can do

Alright, sure blender game engine isn’t really the prime engine to make anything commercial, but bear with me ;).
The blender gameplayer (Or Echo-Plugin that’s comming) are under a GPL v2 license. Now I don’t mind hanging my blend files out in the open, by doing this would I need my entire game to be GPL? Also, I’m pretty sure I heard GPLv3 has a bit more about not packing in non-free files. I know crystalblend shouldn’t be a problem as it’s LGPL.

Don’t make a runtime, and you’ll be fine
As long as you don’t use the “Make Runtime” option, then you can be sure that your .blends are not GPL’ed. .blend files are the normal output of the Blender program, and if you read the GPL through (it’s actually pretty easy to read for a legal document), you’ll see that the normal output of a GPL’ed program does not inherit the GPL. So you maintain full copyright over your .blend files and the ability to license them as you please.

You will need to ship the BlenderPlayer with them, along with a few other files that are necessary depending on the operating system(s) you’re distributing for, so make sure you include the licenses for the BlenderPlayer and any libraries you distribute (Python, SDL, etc.). Also include a license file for your game so that people understand how they can use your .blend files (no modification, redistribution, whatever restrictions you feel like imposing).

There is a disagreement about whether runtimes are GPL’ed
The way the Blender Foundation interprets the GPL, if you make a runtime it inherits the GPL, and you must license it as such and allow it to be freely modified and distributed under the terms of the GPL. However, the GPL states that “program output” that contains all or a portion of the code does not inherit the license. Since runtimes would seem to be the output of the Blender program, one would think that runtimes do not inherit the GPL, but since there is an argument it is better just to go the safe route and not use runtimes.

If you wanted your game to run from an .exe, but you didn’t want it to be GPL’ed, I would suggest making a dummy runtime that just runs a separate .blend file using the “Game” actuator.

Edit: If you don’t make a runtime, then you need to run the BlenderPlayer on the .blend file using a command line (or terminal command on Linux). To do this in Windows, make a text file and name it “myGame.bat” or whatever. The “.bat” is the important part. Then put the command line in the text file. For example: “blenderplayer.exe myBlend.blend” (no quotes). This will run the game according to the settings you set in the .blend file. If you want, you can use flags to alter the way the game runs. Find a list of flags by running the command “blenderplayer.exe -h | more” (no quotes, the “|” is a pipe, the shift function of the key right above Enter on qwerty keyboards.)

[quote=blendenzo;864391]If you wanted your game to run from an .exe, but you didn’t want it to be GPL’ed, I would suggest making a dummy runtime that just runs a separate .blend file using the “Game” actuator.quote]

Is that possible? If it is you should mention it on your website. It is much more professional to run your game from an exe than a bat. But then you would have two copies of blenderplayer.exe …
I think I will experiment.

Crunchy,

No extra BlenderPlayer needed. Just make the one runtime, hook an Initializer (Always with Positive Pulse turned off) through an AND to a Game actuator and type in the name of your .blend. It should use the copy BlenderPlayer packed with the runtime to run the game. Then use an End Game actuator to end the dummy runtime. I haven’t tested it, but I’m pretty sure that’ll work.

BTW, the “How do I publish my game?” article on my site is old and unfinished. It has a lot of good info, but it is severely in need of an update.