GPL License ..

Hello to all,

I Created a Blender Game, and i like to sell it under my own license…

I created the stand-alone with no data or any script.
All my Files are extern linked…Scripts…textures…
sounds…levels…and more

all my .blend Files under my copyright ?
All my scripts ?? Sounds …textures ?? To

Can i save my source ??? :
■ save .blend with run automatic the game ?

t hank youu for help mee

grezzz,
Marvin

Blender say:
So I can make games without having to worry about the GPL, right?

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.
With stand-alone games however, any data that is included inside the actual stand-alone executable is covered by the GPL. If this is a problem then you should set up the stand-alone player so it reads from external .blend files. A common practice is to include a “please wait, loading…” scene in the standalone, and read level files externally.
The Blender standalone player or the game player can be sold commercially too, but you have to make it available under the GPL conditions.

So the stand-alone is under GPL,
And i must the source.blend share

But not my scripts or others,
they are not bundled with blender

You ate correct

Very nice,
Okay now maybe i but the checkbox “autostart game” on my .blend to secure my source.

Can i do this

Forget what the Blender GPL FAQ says and consult the actual GPL FAQ:

This means that if you use any of Blender’s python modules such as bge or bgl, according to the GPL FAQ you are required to release your source code in a GPL compatible way.

Blender is still under GPL but your assets, scripts, and .blend files can be licensed however you like.

The Blender GPL FAQ is inaccurate and gives a wrong impression here. In practice, likely nobody will care, but technically any copyright holder (that means any contributor to the BGE) is entitled to have the GPL enforced in this regard.

Okay so there are no way to sell with own copyright?

-,-

Okay thanks anyway, nice forum

^The .blend file is program output and thus not subject to GPL not more than a .png image you save with GIMP.

You store your game .blends separate from the “game launcher” .exe that you pack BGE into and load all your non-GPL content along with .blend file. No violations. You only need to provide source for the game launcher .exe you use that is packed together with the BGE.

I meant your are right

Silly me (funny the sentence makes still sense :D).

I think the keyword is “GPL compatible”.

So do not worry, you can still use your own licence as long as your Python code is excluded from the GPLed application file.

Using the BGE API (which is an interface btw.) does not make your Python code GPL. But it must be GPL compatible (means you cannot restrict the BGE API or even Python).

That’s an entirely different matter. You will always hold the copyright to everything you make. The GPL also does not prevent you from selling anything.
What you must do is provide the source code of scripts under a GPL compatible license, not more. That means, at the very least, your source code must be provided. You are also not required to provide it for free. You can charge anything for your program, but it must accompany the source code. Since a game is not just a bunch of scripts, you can still assume that nobody could just rip you off without also replacing all the sounds, graphics, levels (etc.), which are not covered by the GPL terms.

This doesn’t stand to reason. PNG files cannot contain a program. ZIP files on the other hand, can. You wouldn’t argue that putting all your code inside a ZIP file (maybe along with some PNGs) would absolve you of any GPL responsibilities, would you? Python for instance, could directly load zipped program code. The fact that the ZIP file is program output (of a zip program) is irrelevant.

Really, all you need to do is read the GPL FAQ, it says quite clearly that you are not allowed to call GPL facilities from your script, if you script is not licensed in a GPL compatible way. What else is there left for interpretation?

You store your game .blends separate from the “game launcher” .exe that you pack BGE into and load all your non-GPL content along with .blend file. No violations. You only need to provide source for the game launcher .exe you use that is packed together with the BGE.

That is a bit of a grey area. If you distribute the game launcher along with the blend file as one entity. (i.e a single installer, a single archive) I’d say you’d be violating the GPL. If not, then I guess the GPL violation is confined to user’s computer. For what it’s worth, the script merely refers to facilities, it only uses them at the point the script is executed. The facilities might have different implementations, after all. This is in contrast to a C program, were using a library usually involves linking against a particular piece of object code.

In short: Don’t worry about it. Just do the “right thing” (as intended by the GPL) and provide your source code. If you don’t want to do that, it’s still unlikely that anybody is going to litigate against you.

“Really, all you need to do is read the GPL FAQ, it says quite clearly that you are not allowed to call GPL facilities from your script, if you script is not licensed in a GPL compatible way. What else is there left for interpretation?”

so what now?.
if i have in my test.py “import bge.logic” should be my test.py in GPL? Or what?
Perpetual thoughts “in some case GPL, here is not GPL, there GPL again” make me just furios.
Just simple question. How can I protect my code?
Each time comes another interpretation or something is still unclear.

It seems like it is a simple question, but it is not. You are asking a legal question to a bunch of artists and programmers that reside in a number of different countries with very different copyright law. Furthermore, the Blender Foundation has stated in their GPL FAQ that if you don’t bundle your .blend files + scripts directly into the Blendplayer, then your data is treated as being “interrputed” and not “linked” to GPL code. As far as I know, this has never been tested in a court of law so it leaves the door open.

What I do know is that intent matters a lot. The entire Linux kernel is under GPL and so are all the APIs for the kernel. Linus has stated explicitly that he does not consider binding to the API to be ‘linking’ for the purposes of GPL law. This is the reason that there can be proprietary programs and device drivers running on Linux.

The Blender Foundation’s position is that code and .blends that are part of the Blendplayer must be GPL and anything that is loaded at run-time does not have this burden.

I am not a lawyer, but I have been given guidance directly by lawyers for a large multi-national technology company (that you would recognize) specifically to audit the use of various open source software. This included guidance on how to treat the GPL.

Thanks kastoria.
Then we’ll jump to “dark side”.
I’m just tired with bge. Even technical challenge were not so hard for us than GPL(and additionally it depends on countries. unbelievable!)
BPPlayer seems to be a solution but it is just mirage of solution.
Still believe bge have a rich progression options. But today it’s enough.
Sorry for demotivation.

No, you are stupid. Can we leave these parts out of the conversation?

PNG files cannot contain a program. ZIP files on the other hand, can. You wouldn’t argue that putting all your code inside a ZIP file (maybe along with some PNGs) would absolve you of any GPL responsibilities, would you? Python for instance, could directly load zipped program code. The fact that the ZIP file is program output (of a zip program) is irrelevant.

Making a game via blender is very different from taking arbitrary files and packing them in a zip file because in the former it is implied you also MADE the content with the program. That comparison doesn’t belong in this context and I wasn’t claiming it doesn’t matter what you put inside your .blend. If you are selling a game then I assumed that you made thus hold the rights to the content ie. textures, models, animations, scripts that you pack in your .blend as this much about copyright is obvious to everyone.

Really, all you need to do is read the GPL FAQ, it says quite clearly that you are not allowed to call GPL facilities from your script, if you script is not licensed in a GPL compatible way.

Furthermore I don’t think the issue is if the GPL infects the python script you write or not. It is grey area sure, if anyone demands them you can just upload your text files somewhere, that doesn’t make your game sell any weaker.

That is a bit of a grey area. If you distribute the game launcher along with the blend file as one entity. (i.e a single installer, a single archive) I’d say you’d be violating the GPL. If not, then I guess the GPL violation is confined to user’s computer. For what it’s worth, the script merely refers to facilities, it only uses them at the point the script is executed. The facilities might have different implementations, after all. This is in contrast to a C program, were using a library usually involves linking against a particular piece of object code.

This is just unbelievable. You really claim that if you archive anything not-GPL and GPL the entire archive is infested with GPL? Because GPL doesn’t cover just code, as a licence it covers images, models, animations, sound, everything that is part of your game. You’d have to ship the source for them as well.

The “source code” for a work means the preferred form of the work for making modifications to it.

That would mean non-encrypted blend file for models and animations, Photoshop/GIMP files with layers, your audio program file with separated tracks etc.

In short: Don’t worry about it.

How can you write such post talking about how people that advice others not to worry about it are WRONG and all solutions to getting around it are invalid and you actually violate GPL here and there and then end with this statement yourself? Whether you are right or wrong doesn’t even matter in this respect.

It is trivial and you going on about some minor technical details and exceptions serves no purpose besides making it all seem more difficult than it really is. When people have to read about this daily it drives them away from BGE. I know every time I have to dig through this conversation I just want to finally begin porting to Unity.

Nobody’s going to gain anything with what you write instead you don’t let others put that final nail in the coffin. If you want to help the cause you should rather spend your days writing such long posts solving some problems people people have with their game projects rather than nitpicking on the GPL discussion I’d rather let sink away from being the first thing people see as they arrive on the forum.

@Kheetor.
May be you can finally answer in clear and simple words with proof?
If i have in my test.py “import bge.logic” should be my test.py in GPL?! Damn on it.
Again. Just simple question.
With .blend files it is allmost clear. Without code they can be non GPL.
I’m asking only because not everyone here makes game as hobbyist and i have to think about the future.
And you are right if our team hear this GPL gossip here and there we just want to go away.
I think everybody, really everybody needs here a clarification. Once and far all.
How can i protect my game? Description of possible steps from expert. Not from amateur. Otherwise this disput will be endless.
I know, for that exists a blender GPL FAQ site or something else. But for me it is not enough.
We hope really for bge. No other engine gave us such perfect workflow. For us it’s better to give money in bge development than buy a license.

Does Blender even run binaries? Wouldn’t you be providing the the sourcecode anyway?

I am not a lawyer and I think there’s not a case involving if “import bge” means it infests the entire script so that you have to offer the source code. If you don’t it is up the Blender foundation to interpret if you are going against their licence (GPL) or not. However my point was that offering the source for these scripts doesn’t make your game sell any less.

There are options to encrypt your .blend files so you aren’t providing the source code even if you use external launcher. But encryption can be broken and the whole file format and packaging issue is a bit secondary.

What is important is if the entire game is infested by the GPL through Blender or not. In that case the licence would work entirely against itself because Blender is meant to be a tool to make a game and you are only intending to sell that game you made with a free tool. It is the very same analogy involving GIMP and png images, except that BGE is of course, a specific engine/software that the player needs in order to play your game that you made.

GPL licence doesn’t prohibit you from selling but it gives others the right to copy and modify your game and sell it further anyway they want. This is more serious and difficult matter than how you decide to package your game. If there’s one individual who interprets the GPL licence differently he will distribute the game for free or perhaps rename and sell it himself. You’d have a very difficult lawsuit on your hands as an alternative to effective loss of income and investments you’ve made to BGE. It’s like piracy except it’s not clearly illegal so the web authorities aren’t required to suspend these actions unless you supply them with proof of the crime which would have to be a court order. And then you have the standard piracy with their file sharing and torrents as well…

I love the BGE myself in every way but every time I read about the GPL issues I come to think about how any brat could take the game and feel free to interpret the GPL statements as they want and KNOW that small time developers won’t be able to make international lawsuits. So if I had any money depending on it I would stay away from the BGE. You can use it to develop your assets, make them play together and especially if you do things in python migrating to other engine isn’t too much work and can be considered as a step in publishing workflow.

The way I understand it in my simplisting world view that may or may not be correct:

  1. Make the blend attached to blendplayer freely available. It is bundled with GPL blendplayer, and hence under GPL.
  2. Store everything else, all the rest of the game in the same directory. It is under whatever licence you like, as it is program output from the blender program, from gimp, audacity and whatever other programs you used
  3. In the file packaged with the blendplayer, execute the other files, using something like the ‘start game from file’ actuator. This does not influence the licencing of these files

Scripts:

  1. You wrote them, thus they are under your licence.
  2. Importing a library (like BGE and mathutils) does not make those script any less your code. It means you are referencing other people code, but those script are still yours. If people want to see the code you are referencing, then they can see it in the blender source.

The difference between bundling a blend with the runtime and importing a python module is huge.
When you bundle a blend, the two become (almost) inseperable, and it is unclear where one starts and where one ends. Thus, the blender foundation want to be able to say. This is what we made, and this is what they made. The only way to do this is to have both files open source.
With a script, the two are separate, and this distinction can be made without providing the python source. (If you must hid your python code, then use compiled python files. Though to me they are more a pain than anything else)

How can i protect my game?

Worry about that when you have people playing your game. If people want to steal your game, then you’ve done a good job. If you’re worried about people editing the files making up the game, then realize that that is the fastest way for people to improve on what you’ve already done. Some big companies encourage users to hack and modify games. Look at Valve and Team Fortress. According to a speech Gabe Newall gave earlier this year, Valve makes only 10% of it’s popular games these days. The rest is done by the community.

About exactly the same workflow i though reading Blender GPL FAQ.

Worry about that when you have people playing your game. If people want to steal your game, then you’ve done a good job. If you’re worried about people editing the files making up the game, then realize that that is the fastest way for people to improve on what you’ve already done. Some big companies encourage users to hack and modify games. Look at Valve and Team Fortress. According to a speech Gabe Newall gave earlier this year, Valve makes only 10% of it’s popular games these days. The rest is done by the community.

We are not Valve.

Then who are you? And what do you want to protect your game from?

We - bge community or small developers groups.
If people want steal they will steal. Without any kind of protection no sells. It means no money for development, no future for other projects. Then wasting spare time remains. But i have long enough this situation and no soul power more for that.
Me and our small group have to think about future.
Ok. It’s my last post in this thread. Thanks for advise sdfgeoff.