Game Develop is now officially an open source software
GD is one of the most powerful and comprehensive software to create games without programming, and is now open to contributions from any developer. Sources are available on my GitHub account: github.com/4ian/gd
Contributions are welcome! Documentations and build instructions should be improved in the next weeks.
It should not changes anything for end users in next weeks, except that the next release will be the first release based on the full open sourced source code
I will announce the news across the internet starting from tomorrow. Do not hesitate to spread the word, lots of new users could be interested by the fact that GD is now fully open source, and lots of developers could be interested in contributing to this unique piece of software!
I wanted to put the code online as fast as possible to avoid always postponing this moment, even if the documentation is not perfect.
It should encourage developers to get into the code as soon as possible
I’ve already received contributions for extensions in the past so it should be not so hard for developers to contribute to GD.
I announced it on twitter. The first time it got no notice, because there were no hashtags. The second time I added hashtags and it got several retweets by indie game development news sites and several favorites
Coming from blenderartists’ article You got a very cool open source project here, congrats!
But I would like to ask why you choose GPL/LGPL license? Generally GPL/LGPL is bad license for game engine, especially when it comes to mobile development ( I believe one day Game Develop might support ). E.g. there’s workaround to published LGPLed game on iOS, but not without lots’ of unnecessarily hassles.
Would you please consider use more commercial friendly license like MIT? That would encourage more indie developers even studios to use Game Develop
This is what 4IAN wrote in another thread (maybe it will help):
"The code of the IDE will surely be GPL to force any improvement to be shared with the community.
Core library, C++ platform (native game engine) and JS Platform (html5 game engine) will be LGPL (as JS platform currently is) so that it will allow to compile games that are using them without making these games open source (using GPL would force anyone compiling a game with GD to release the game as GPL). And it forces any code improvement to be also shared with the community.
“Official” extensions should remain zlib/libpng license: basically you can do anything as long as you do not state you are the author of the original code. Of course, any third party extension will be able to use any license its author wish. "
“As long as the licenses are respected, it should be ok but try not to do this.
Even if you can make fork to do some experiments, try to stick with the master branch of GD because nothing good will happen if everyone start working on their own version of GD: this is something I do not want to happen.
I make GD open source so that everyone can contribute to the software, not to have 15 useless forks of it.”
Thanks nate for your message Licences are subject to changes if it turns out that another one is more adapted
What I want is : 1) Prevent any non free or commercial clone of the IDE (i.e. the editor itself) and make sure that nobody can make changes without making these changes available to the community.
2) The same for the game engine.
2) But allow games to have any license the author want.
For extensions, I do notre mind having a more permissive license because they already heavily use GD libraries and it encourages people to write even commercial extensions.
Feel free to propose/argue about another license if you believe it can be better. For LGPL, I can add an exception (like wxWidgets) allowing for static linking !
@_user, thanks for the info @4ian, I do understand your concern that someone might take advantage of good will of open source project without contribute back. (Rovio, see what you have done!)
The problem with GPL of LGPL is that they are not good license for game engine which usually require to customize tools or engine in some degree, and it cause problem when it’s blur edge between game code and engine code. Since most indie developers hates been visit by lawyer visit, they might simply avoid using any GPL/LGPL code at all.
when I using GPL code, I can’t help but thinking someone behind my back saying: “You are getting something for free, now it’s your turn to give something back in return”. And LGPL is nothing better but like saying: “well, it’s free, but you won’t get it without pain”
And “But allow games to have any license the author want.” is actually not quite possible if you’re about to release games on non-re-linkable platform like iOS since engine code is LGPL
I think adding exception for allowing static linking for commercial product would be great start.
To be clear, LPGL is just a way of saying “Do what you want, but just make your changes publicly available”. For now, static linking is not used on any operating system, so there is no need to be afraid of it, and I’ll add a license exception allowing to do static linking when iOS and/or Android ports of the native platform will be available
GPL is really here to protect the software from being stolen and sold/distributed using a new name. I think it’s a fair license: The core library are LPGL so you can do whatever you need to adapt them to your needs, and extensions are using a MIT-like license which is extremely permissive.
As a developer needing to adapt GD to its needs, you’ll probably never have to make heavy change in the software. You’ll just write a new extension, proprietary or not, and in any case you can base your code on all the already existing extension.
It’s only when you’re developing on the files that are in the IDE folder that you must be aware that you’re dealing with GPL’d files.
The first version of Construct game creator was GPL (before the second version was rewritten as a proprietary software) and it didn’t stop developers from taking part into it. There was an exception again allowing games created with the software to be licensed freely.
Here with Game Develop, it’s even better! No need for a particular exception, generated games are only using GDCpp.dll (for native games) or the HTML5 game engines which both are LGPL, so you can do anything you want with your game! And the static linking exception will be added when necessary.
Not really, I’ve used wxWidgets in Game Develop since the beginning and I never had the feeling of being restricted It’s truly a great project using a LPGL like license.
Again, I think these license are fair enough and not restricting anyone. My goal is just to protect GD IDE from having its code stolen.
Still, you may as well roll your own license. MightyPork, author of great Minecraft mod Powercraft did that and it served him well. With custom license you can make sure that you put restrictions you want to put and none others. From what I see following license could work for editor:
You can’t make commercial, closed-source fork of Game Develop without author’s explicit permission.
You need to share any changes you make to the editor, whether it is for personal use or not (Darkhog: In this regard it’s even better than GPL as in GPL you are only required to publish changes when you are distributing your fork)
You need to credit all authors of Game Develop in your fork and provide information that it is based on Game Develop technology.
See? Way simpler than GPL and you are sure that your users will utilize software as it was intended. Also readable for humans too, not just the lawyers.
Proposed license for engine:
You are free to make commercial games based on Game Develop engine.
This license is not viral so derivative work can have any license you want.
You need to publish any changes to engine not rooting from normal usage of events or in-editor C++ code, but direct changes to engine’s code that requires recompiling engine in order to work.
What is dangerous with no conventional or hand written licenses is that, even if they are more readable, they could be more easily broken or attacked by real lawyer: If there is a copyright infringement made by someone or by a company (for example, they modify the IDE without redistributing it), they could argue that the license was not clear enough, or wasn’t covering all the legal cases, or wasn’t written using clear and standard legal words.
So I prefer to stick with approved open source license from this website: opensource.org/licenses
The most popular have been reviewed by professional lawyers and so it’s safer for GD and the contributors.
I’ve changed a few days ago some elements: compilgames.net/index.php?lang=en
You’ll see that GD is “Game Develop is open source and available freely”, the old SDK button is now called “Contribute” and redirect to the source on GitHub, and mentions to the fact that GD is free were replaced by open source.
But I’m interested in any advice to put the emphasize on the open source nature of the software.