When comparing Cocos2d-x and Cocos2d Family vs Construct 2, the Slant community recommends Cocos2d-x and Cocos2d Family for most people. In the question“What are the best 2D game engines?” Cocos2d-x and Cocos2d Family is ranked 5th while Construct 2 is ranked 14th. The most important reason people chose Cocos2d-x and Cocos2d Family is:
25% of iPhone games are made using Cocos2d-x (A Cocos2d mobile variant.) This means you will not be alone in development, and will have access to a large community. You'll know you are developing for an engine that works.
Ranked in these QuestionsQuestion Ranking
Pro A proven engine for mobile development
25% of iPhone games are made using Cocos2d-x (A Cocos2d mobile variant.)
This means you will not be alone in development, and will have access to a large community. You'll know you are developing for an engine that works.
Pro Great script language support
Especially with Cocos2d-JS you can develop games cross web and native, and the native solution have great performance with JS Bindings, much better than hybrid solution.
Pro Allows for easy debugging
It has a built-in Python interpreter that allows for easy debugging.
Pro Supports 3D models with skeleton animation
A new feature since Cocos2d-x v3.1 is support for 3D models (in your 2D game), not only this but support for skeleton animations is included too! This awesome feature allows for impressive characters in your game along with easier, more fluid and realistic animations.
Cocos2d-x is not only open source but also supported by Chukong Technologies of China and USA.
Regularly updated and adding support for the latest technologies. 2014 has already seen the release of Version 3, a new Cocos Studio development toolkit (optional) and support for new technologies like skeleton animation systems Spine and Adobe DragonBone.
Pro Great video tutorials
Hundreds of video tutorials available.
Pro Greater performance than high level APIs
Cocos2d-x is C++ based engine and it has CPU advantages for most platforms because of that. It uses polygonal mesh methods for sprite rendering for using GPU advantages. (You also use quad methods for benefit CPU).
Pro OpenGL hardware acceleration
Pro Easy integration of 3rd party plugins
For example, if you want to add a rating plugin, you use
sdkbox::PluginReview::init(); and if you want to add the Vundle Ad Network SDK, you use the one packaged in SDKBox
Pro Highly active community for questions and support
Cocos2d-x forums are active.
Pro No external dependencies
Because it is based on Pyglet.
Pro Quick to pick up
Construct 2 is fast to pick up, get into, and belt out some pretty impressive games in a relatively small amount of time. Seems to be built for people who don't have a lot of programming skills, but want to make great games.
Pro Supportive community
Construct 2 has a supportive community. Their forums have tens of thousands of topics with ten times more posts. The core maintainers are very helpful and friendly and often reply to questions or issues that may be discussed in the forums.
Pro Little programming knowledge needed
Using Construct 2 requires very little programming knowledge because it's all drag'n'drop, intuitive, visual and event-driven instead of code-only.
Pro Free (feature limited) version available
A free version of Construct 2 is available. It's not time restricted in any way, but is feature limited.
Pro Available on Steam
You can also download Construct 2 on Steam.
Pro Easy to create particles and animations
With spriter file implementation and internal animation editor Construct 2 provides an easy way of creating particles and animations.
Pro Built-in physics system
Thanks to the great power of Erin Catto's Box2D, Construct 2 is able to make physics games which are similar to Cut the Rope and Angry Birds.
Pro One-off cost
It's a one off cost for Construct 2 and all updates to the Construct 2 editor are free for life.
Pro Active plugin ecosystem
Construct 2 has an active plugin ecosystem providing behaviors and features that smooth the workflow for certain game types.
Pro Affordable with robust runtime license agreement
There are three editions of C2: Free, Personal and Business.
The Free edition has some limits in functionality, and prohibits you from making money from your C2 creations.
With the Personal edition ($129.99), you get more features and are free to make up to $5,000 with your C2 creations if you're an individual. If you haven't reached $5,000, you don't need the Business edition ($429.99). Non-profit organizations also don't need the Business edition.
After you've made $5,000, you must upgrade to the Business edition ($299.99); but once you've made $5,000, this should be easily affordable. If you're a for-profit business, you must purchase the Business edition, unless your company hasn't made $5,000 business revenue.
There is no difference in terms of features between the Personal and Business editions, just the runtime license agreement.
There is also an education license specifically for educational institutes, where they offer site licenses and take-home licenses.
Pro Export control for all major platforms
All platform exporters are part of the subscription. There are no additional fees and new exporters are added quickly and maintained well. Currently, 15 platforms are supported, including HMTL 5, iOS, Android, Windows, Chrome Store, PhoneGap and Scirra.
Pro New features are released constantly
Developers provide regular updates (usually bi-weekly) with new features and bug fixes.
Pro Supportive devs
The developers are always available to help.
Pro In-depth event system
Construct 2's event system allows for deep, detailed control over all aspects of your game. You aren't limited to just a few options. Rather, Scirra has thought of nearly everything in advance with access to any desired parameter of any object all paired with simple and intuitive ways to interact with them.
Your events can be organized with event sheets (that can be included in other sheets), event groups, sub-events, loops, and functions that make the coding portion of your game as efficient as possible. You don't need any programming knowledge, but if you do have some, you'll feel right at home with the freedom C2 offers.
Pro Supports camera, microphone, speech recognition and synthesis
Can use cameras in PCs and on mobiles. You can use the synthesis that can recognize your speech or you can write something and it can talk for you.
Pro Built in behaviors make development workflows very efficient
Behaviors add pre-packaged functionality to object types.
Pro Runs great on mobile
Performs well on most devices and browsers.
Pro Built-in animation/image editor
Basic sprites and tiles of 2D games can be made with engine's built-in tools.
Pro Built-in pathfinding
Has built-in solutions for pathfinding.
Pro Allow server-less multiplayer game creation
Construct 2 uses WebRTC technology to support it's multiplayer functionality. The nature of the technology allows peer-to-peer connection which does not require game developer to create server side architecture to allow communication between games.
Pro Interface similar to that of MS office
This engine provides an intuitive workflow for people that are used to the Windows environment.
Pro Simplicity - it is made for everybody to use and love
Construct 2 is a tool for not just programmers, but artists as well. You can create a game with only visual coding, which is easy to learn and doesn't require any previous programming knowledge. You can focus on making your game better instead of just coding. It has some limitations of course, but it's definitely worth it.
Pro Built-in tilemap object
The tilemap object allows tile-based games to be designed more easily. The object's tilemap can also be edited in the layout view using the tilemap bar.
Pro Very fast preview
In Construct 2 you can preview your games instantly at any time. There’s no need to wait for compiling or other time consuming processes.
Pro Rapid development
After using a few quick tutorials you can quickly catch on to the event system this program uses and quickly be able to build any type of 2D game you want. You can download a few sprites from google and put together a working level of Mega Man with character movement / animation / enemies / collision detection / scoring / Tile map and AI within about 2 hours.
The built in behaviors are incredible. It's amazing how Construct can simplify the most redundant tasks in game development.
Pro Cordova support
You can use Cordova plugins from the community
Con Poor documentation
Most existing documentation is out of date. API documentation sometimes exists, though is usually just a one-liner and more often than not is completely absent. New features and significant system rewrites often make it to a major release without a single line of documentation accompanying them. Cocos2d-x family is developed by Chinese mostly, so market outside of China is not their main priority. Some tools (like Cocos Studio) have China-specific services and markets.
Con Cocos2d-html5 is way behind Cocos2d-x
While Cocos2d-html5 tries to mimic it's Cocos2d-x sister and has the same people working on it, it has lots of restrictions compared to Cocos2d-x: no Spine mesh support, no 3D models, bad text label quality, etc.
Con Poor support and non-existent community
Up until 2013, this was one of the best engines around. However, since then it was bought by a Chinese company and began stagnating - it's virtually in a slow death. Most developers abandoned Cocos in favor of more modern solutions leaving the community weak and the forums with little or no traffic. Although the Cocos2d-x Forum seems to have a decent community going.
Con Fragmentation; hard to find useful tutorials
Cocos2d family includes different projects: cocos2d-x, cocos2d-html5, cocos2d-objc, cocos2d-XNA. Most tutorials describe techniques specific to single project of the family, and cannot be applied to other projects.
Con Can seem very complex for a novice developer
There isn't much documentation or tutorials.
Con Modest functionality
Almost all free alternatives are more convenient, faster, and more functional.
Con Does not export to native mobile code
Construct 2 builds to HTML 5 only, which can cause performance issues on mobile devices depending on the HTML5 engine that the OS is using since that will be the biggest bottleneck. Even though it's not really the engine's fault, it still is at a disadvantage compared to native game engines.
Con The editor is Windows only
Although Construct 2 is able to export projects to Windows, OS X and Linux, the program itself currently only runs on Windows.
Con Free version is severely limited
Although a free version of the engine is available, it lacks features that are essential to creating a high quality product.
Con Poor mobile performance
Con HTML5 is very dependent on browser performance
Theoretically all browsers should run HTML5 pretty much the same way, but thats not always the case.
Something that worked fine on Chrome, for instance, might malfunction on Firefox (or vice versa). And there's nothing the devs of Construct 2 can really do about it, but to hope next Firefox update might fix it. Internet Explorer is not even recommended.
Add to that the fact that exporting to mobile or desktops rely on these sort of stripped down versions of web browsers (Node webkit, Crosswalk, Ejecta) that you pack with your game, and you can have a real headache if you're trying to make your game work properly through multiple platforms.
Con Dependency on 3rd parties for all exports
Unless you are creating a game strictly for browser/HTML5 usage, exporting to desktop or mobile is risky, as Scirra have no control over your final export quality. Since desktop uses NodeWebkit and mobile is Crosswalk, Phonegap or CocoonJS there is no guarantee that your final export performance and quality will be up to scratch for pro level 2d games. These 3rd party "browser wrappers" are very prone to breaking and introducing lag and bugs that can't be controlled from Scirra's side.
Con HTML5 Only is extremely limiting
If the software could export natively to mobile devices and PC/Mac/Linux it would be extremely powerful. The developer's choice of sticking to only HTML5 has created a bottleneck for anyone wanting to develop with this software.
Con Tilemap object could be better
C2 requires that there's a tilemap objects for each tilemap layer meaning each tilemap object has to be updated when modifying any layer. This could be simplified by adding layer support for tilemap objects.