New open source HTML5 mobile game platform
docs.gameclosure.com
docs.gameclosure.com
For background, before GC I founded a non-profit that helped open source projects deal with licensing issues, CLAs, and IP around software in general. I've been involved in 3-4 large OSS projects, and I've spoken at OSCON and Pycon multiple times. I very strongly believe in the GPL, though we also wanted to let businesses use GC DevKit for commercial use under the most friendly possible terms.
Our goal is to promote GC DevKit and ensure that 3rd party bugfixes on the commercial and GPL licenses both end up in the same code base.
(1) You can use this under the GPL, no strings attached. (2) We wanted to further allow you to create commercial products, so we ADDITIONALLY offer an incredibly developer-friendly license (GCFL)
* You can release paid games on iOS or android (Note below, we should add web at some point)
* You don't pay us money, it's FREE.
* If you improve the engine, you must contribute it back to our main GPL version.
* You need to show our splash screen and let us mention your game to promote our platform.
Also, yes, we probably should allow web games under the GCFL (But you can still do it with the GPL.) We just haven't made Desktop Web a priority so we disallowed it in the license. This could easily change if enough people are interested.
Licensing aside, it seems strange to build a platform on HTML5/Javascript without support for the desktop/web. To me, that would be the whole point of building a game in HTML5 in the first place.
Other than all those caveats, it's nice to see more alternatives to ImpactJS beginning to emerge.
Great feedback on the fuzziness of the license WRT contributions! Overall our intention is to let people keep their source code proprietary, but protect clear bug fixes and enhancements to the core engine. We never, ever intend to come up with some "gotcha" and start charging money. Any suggestions on changes or clarifications to our license that let us accomplish that are very welcome! (Though please read our first attempt in Exhibit A "Modifications" first)
The good news is that the core native engine (c/c++/java/obj-c) is very obviously separated from the game code and so that's easy; it's just the JS libraries that we have to be precise about. Perhaps the MPL has the right wording and guidelines around that?
("The MPL is a simple, file-level copyleft license. The MPL’s “weak” copyleft is designed to encourage contributors to share modifications they make to your code, while still allowing them to combine your code with code under other licenses (open or proprietary) with minimal restrictions.")
Will the engine become a monolith with support for pretty much everything, and all games using the engine will only need 10% of it? Or something else?
I think you need to state very clearly what the goal of the engine is (best 2d engine, best tile game engine, best ??? engine, general purpose engine, etc?), which can help define exactly what kinds of contributions are actually useful.
I don't really see them as all different. Especially at the engine level. Especially considering most 2D engines (Cocos, Game Closure, etc) are mostly the same and use similar concepts.
I understand that, but you maybe you should consider charging some money to get the splash screen removed ? else its a deal breaker indeed.
I'd try it out especially since I am having some hard time with cocoonjs (making it work in android and some features failing to work in ios5).
Their careers page (http://www.gameclosure.com/careers.html) says they're hiring and have "top-tier funding," so obviously they're going to need to monetize somehow. Yet I couldn't find a single mention of a paid service or premium offering.
Perhaps I didn't look hard enough, but it's unsettling nonetheless.
This little gem in the license information is pretty off-putting (http://doc.gameclosure.com/guide/license.html).
That page is about the GPL licensed version.
It's basically saying you're free to develop and release a game with the GPL version but (as per the GPL) you need to release the source.
The other option is to use the commercial license. Then you do not have to release the source of your game.
I'll look into clarifying the copy on the page you linked - hopefully this clears things up.
"2 You may not modify or enhance the GC DevKit or Engine whatsoever. The only exception is to perform bug fixes if you contribute your changes back to Game Closure. (See Exhibit A). You must incorporate a Game Closure splash screen logo into your game. (See Exhibit B)"
"3 You must allow Game Closure to use your company and game name and logo for marketing purposes"
The GCFL covers what we see as the majority case for game developers - we can work out other options as the are necessary.
This way we can ensure that everyone benefits from having the latest and most bug-free code.
Looking around at this though, some of these licensing terms are very awkward. ImpactJS costs money but the licensing seems much less strict.
What's more awkward though is the focus on mobile-specific platforms, including an awful lot of native stuff, while lauding HTML5 :/
I don't plan on competing with Game Closure but I hope to contribute a lot canvas game-related tools of my own once I get free time again. UI-inspector style tools like the one they've created would be really helpful, especially for making point-and-click adventure games.
I wish it was easier to see what's abandonware vs what's being maintined.
Perhaps show github stars and last commit date?
I'd look at ruby toolbox for a good model to follow.
(mentioned in case you work/contribute to the project)
It's the sort of thing that put me off meteor before, it doesn't seem like a great decision to reinvent the wheel. I noticed that during the install step it clones a number of other repositories as submodules, perhaps these would do well as individual NPM packages and the central package depends on each one?
Edit: having a play now and it's very cool :) Unlike another who reported silent failure when running basil on Ubuntu 12.04, it's working well for me on Xubuntu 12.04. I had a permissions issue as stated in the install guide, would it be possible to have this install to the home directory instead and add it to the local user PATH? This sort of thing seems like it would make more sense to install just for the local user.
We’re only supporting OSX at this time, but we have some success running on Linux and Windows.
haven't tried it yet though, so how much is "some success"? and what are the things that makes it OSX only, instead of UNIX compatible?- nice tooling (Chrome developer tools, JS stuff) - tons of developers know JS - V8 is mighty fast
It's not about distributing to the subpar (money wise) web app stores.
Cocos2D also has JS bindings going (for native use, not just for web), and QT also has JS bindings going (again, for native).
And it's not using "HTML5". You are using their engine with native bindings on the mobile devices. The performance and integration is only mimicked by HTML5/WebGL etc on the browser.
This may change in the future - for the time being, if you're interested in releasing a game on the web, send me an email:
fairfieldt@gameclosure.com
I found I enjoyed working with it the most -- it handled exactly the parts I didn't want to think about (drawing sprites, collision detection) and left the interesting stuff with me.
That said, in the end I did end up looking into their drawing/collision code to tweak the performance some! :D
The issue is that mobile is eating up all the web traffic, and HTML5 in mobile browsers has terrible performance. So you need technology like CocoonJS to reimplement a subset of the browser needed for gaming with decent performance.
Everyone should check out LimeJS. It is essentially functionally equivalent to what is being offered here, but without the shady license.
Then break the deal. Would you rather they just let you use their work as you see fit?
What I mean is, the whole point of choosing HTML5/JS is that you can write once, run everywhere. The non-GPL license forbids you from writing your game and releasing it for the browser.