Pages: 1
  Print  
Author Topic: What if someone started legally selling an enhanced version of ENIGMA?  (Read 9853 times)
Offline (Unknown gender) Rezolyze
Posted on: October 05, 2014, 04:47:22 am

Member
Joined: Jun 2013
Posts: 53

View Profile
edsquare and I had a short discussion about licensing and proprietary extensions to ENIGMA's engine code. I'd like to keep this going with more people weighing in. The relevant parts of our discussion are below.

Many times throughout the licensing discussion on the forums, someone has suggested a license like the the MPLv2 and been told that such a license would not prevent proprietary fixes or features being implemented through linking. These types of licenses (LGPLv3, MPLv2, etc) are meant to allow linking with code that has a different license. Of course, we want people to be able to legally link their proprietary game code to ENIGMA's engine code.

However, the MPLv2, and other licenses like it, would also allow someone to link proprietary fixes or features to ENIGMA's engine as well. They would probably need to modify some of ENIGMA'S engine code to do it, but the fixes and features would remain proprietary and unshared within their own separate but linked code. To be in compliance with ENIGMA's engine license, they would need to release their changes to the engine code, but their changes would not contain any of their fixes or features. So, in this way, the MPLv2 would not prevent proprietary fixes or features.

Depending on your point of view, this is not necessarily a bad thing. Someone could create an extension that ENIGMA lacked and sell it. It wouldn't directly benefit the ENIGMA project, but it could benefit the game developers that buy the extension and the programmer selling it. Although, I think the major fear is someone creating software like CrossOver which harnesses the power of Wine while adding it's own proprietary features. That's not a fear I share, but some people do.

Now if I understood correctly you say the MPLv2 would also allow someone to create a closed source extension to enigma and sell it, I tend to agree with you in that it allows such a thing but I fail to see why that is bad. As long as the engine's code is safe why should the developers worry about that?

In some cases it would be enough to add an #include and in others the modifications to the engine will help other people to develop a similar extension, hell even by knowing what it does a capable developer (And all the developers involved in this project strike me as very capable) could deduce how it works internally and with time develop an opensource extension to the same efect.

Although I would not mind seing closed source extensions, it would mean the project is mature enough and with a big enough user base to merit so.

So, my question is: What do you, the reader, think about someone selling proprietary features or fixes for ENIGMA's engine? If ENIGMA's engine code license were changed and someone started legally selling an enhanced version of ENIGMA, would you be upset about that? What if that someone shared their bug fixes with ENIGMA, but kept the enhanced features proprietary; would that make a difference? Please discuss.
« Last Edit: October 05, 2014, 06:48:24 am by Rezolyze » Logged
Offline (Male) Josh @ Dreamland
Reply #1 Posted on: October 05, 2014, 09:10:47 pm

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2950

View Profile Email
Split this to a new topic. Seemed to warrant it.
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) edsquare
Reply #2 Posted on: October 05, 2014, 09:19:06 pm

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
Split this to a new topic. Seemed to warrant it.

And in the process you lost my response to that particular post  :(


So, my question is: What do you, the reader, think about someone selling proprietary features or fixes for ENIGMA's engine?

This is why I don't like the feautures/fixes way of putting it, it makes it sound as if anyone could change ENIGMA's code without sharing the changes, and this is not true; under your asumption one would have to change the code in such a way as to allow a bugfix to be developed as an extension (externally in order for me to keep the code closed). I understand how someone could do a (feature?)/extension in such a way as to keep it propietary without breaking the license, but a bug fix? It's not the same and not as easy to do so.

If ENIGMA's engine code license were changed and someone started legally selling an enhanced version of ENIGMA, would you be upset about that?

Even under the GPL you can do this, what you can't do under the GPL, LGPL or MPLv2 is to close ENIGMA's source (You would have to give any buyer the code of your enhanced ENIGMA.), besides that only the engine would be under said license while  other parts of ENIGMA would remain GPL. This has been discussed before.

What if that someone shared their bug fixes with ENIGMA, but kept the enhanced features proprietary; would that make a difference? Please discuss.

I say you're welcome to do so, you should be able to benefit economically from your work
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Male) Josh @ Dreamland
Reply #3 Posted on: October 05, 2014, 11:08:14 pm

Prince of all Goldfish
Developer
Location: Pittsburgh, PA, USA
Joined: Feb 2008
Posts: 2950

View Profile Email
Didn't notice any replies. I must have loaded the page before you posted it, then forgotten to refresh. I could move it over, but you've already posted this, now. :P
Logged
"That is the single most cryptic piece of code I have ever seen." -Master PobbleWobble
"I disapprove of what you say, but I will defend to the death your right to say it." -Evelyn Beatrice Hall, Friends of Voltaire
Offline (Male) edsquare
Reply #4 Posted on: October 06, 2014, 12:04:36 am

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
Didn't notice any replies. I must have loaded the page before you posted it, then forgotten to refresh. I could move it over, but you've already posted this, now. :P

LOL :p

On the serious issue at hand: Would a extension/bug fix be considered a larger work?

If the answer is no then there's no way for anyone to make a propietary extension and or bug fix to/for ENIGMA, since the liberty to release under different licenses is only for larger works. For instance if I were to develop an IDE for it and sell the ide along with ENIGMA precompiled on it, I would have the right to release my work (The IDE) under a license of my choice, as long as I granted access to the buyer to ENIGMA's source.
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Unknown gender) lonewolff
Reply #5 Posted on: October 06, 2014, 03:46:55 am
"Guest"


Email
That is what the GPL licence is all about.

People can go download ENIGMA and charge whatever they like for it (even if it is un-modiffied) as long they adhere to supplying the source, etc, all is good. :)
Logged
Offline (Unknown gender) TheExDeus
Reply #6 Posted on: October 06, 2014, 04:04:01 am

Developer
Joined: Apr 2008
Posts: 1860

View Profile
I would agree if people were selling extensions - that is, wholly their own code that isn't in any way related to ENIGMA's code. With extensions I mean stuff inside the Universal_Systems/Extensions. The problem is that in most cases extensions WILL use some part of ENIGMA's engine (like the path extension uses the instance class to add path_start() and path_index functions and variables) or the Particle System extension, which uses draw_sprite() and other graphics functions for drawing. Or GME, which loads a GME sound file, and then uses ENIGMA's sound_add_buffer function to make it a sound resource. On the other hand you could technically write all those extensions without using any of ENIGMA's code, and then require the user to manually do it. Like GME could only return a buffer, and ENIGMA users would have to manually use sound function to add that buffer as a sound. Or particle system could return the position of the particles, and the user would manually draw them.

So in short - You can write an extension which doesn't use any ENIGMA code. Thus I wouldn't mind them selling those extensions. But if they add a feature or a bugfix to ENIGMA (even if it is just required to run their extension), then I would want that to be open source and implementable in ENIGMA. They can sell the feature or bugfix in parallel as well if they wanted. Like GPL doesn't forbid you to sell a binary, it just requires you to supply the source with it.
Logged
Offline (Unknown gender) lonewolff
Reply #7 Posted on: October 06, 2014, 06:02:11 am
"Guest"


Email
You are right, let's keep the bugs in there so no one can take advantage of a stable platform :P
Logged
Offline (Male) edsquare
Reply #8 Posted on: October 06, 2014, 03:18:08 pm

Member
Location: The throne of ringworld
Joined: Apr 2014
Posts: 402

View Profile
I would agree if people were selling extensions - that is, wholly their own code that isn't in any way related to ENIGMA's code. With extensions I mean stuff inside the Universal_Systems/Extensions. The problem is that in most cases extensions WILL use some part of ENIGMA's engine (like the path extension uses the instance class to add path_start() and path_index functions and variables) or the Particle System extension, which uses draw_sprite() and other graphics functions for drawing. Or GME, which loads a GME sound file, and then uses ENIGMA's sound_add_buffer function to make it a sound resource. On the other hand you could technically write all those extensions without using any of ENIGMA's code, and then require the user to manually do it. Like GME could only return a buffer, and ENIGMA users would have to manually use sound function to add that buffer as a sound. Or particle system could return the position of the particles, and the user would manually draw them.

So in short - You can write an extension which doesn't use any ENIGMA code. Thus I wouldn't mind them selling those extensions. But if they add a feature or a bugfix to ENIGMA (even if it is just required to run their extension), then I would want that to be open source and implementable in ENIGMA. They can sell the feature or bugfix in parallel as well if they wanted. Like GPL doesn't forbid you to sell a binary, it just requires you to supply the source with it.

But under MPLv2 if you use a single line of MPLed code your file becomes MPLed too, and therefore you have the obligation to provide the source.
Logged
A child of five would understand this. Send someone to fetch a child of five.
Groucho Marx
Offline (Unknown gender) TheExDeus
Reply #9 Posted on: October 06, 2014, 03:22:54 pm

Developer
Joined: Apr 2008
Posts: 1860

View Profile
And I guess that is the issue. But I did say that you can technically write extensions in way that has 0 interference with ENIGMA, so you wouldn't use a single line from ENIGMA engine. But I don't think that is the way to go. I don't think if there is a single license that allows us what we want - allow people to sell game and extensions, but leave ENIGMA engine open source.
Logged
Offline (Unknown gender) Darkstar2
Reply #10 Posted on: October 07, 2014, 03:18:44 pm
Member
Joined: Jan 2014
Posts: 1238

View Profile Email
You are right, let's keep the bugs in there so no one can take advantage of a stable platform :P

What kind of reasoning is that ? :D

take ENIGMA, debug it, sell it for $999 if you want. :D
but make its source available :D

win-win :D
Logged
Offline (Unknown gender) lonewolff
Reply #11 Posted on: October 07, 2014, 04:11:46 pm
"Guest"


Email
Was in response to this

Quote
But if they add a feature or a bugfix to ENIGMA (even if it is just required to run their extension), then I would want that to be open source and implementable in ENIGMA.
Logged
Pages: 1
  Print