When comparing HaxeFlixel vs ct.js, the Slant community recommends HaxeFlixel for most people. In the question“What are the best 2D game engines?” HaxeFlixel is ranked 24th while ct.js is ranked 57th. The most important reason people chose HaxeFlixel is:
[Haxe](http://www.haxe.org) is a powerful, cross-platform and open source language.
Ranked in these QuestionsQuestion Ranking
Pro Powerful language
Haxe is a powerful, cross-platform and open source language.
Pro 75+ demos
All demos have included GitHub link, so you can learn from the examples
Pro Getting started guide
Has a starting guide for people who are completely new to HaxeFlixel; from installing Haxe to a beginner-friendly HaxeFlixel tutorial.
Pro Uses Haxe
(excerpt from source): To help you do this, the (Haxe) toolkit contains three main components:
the Haxe Language - a modern high-level, strictly typed programming language
the Haxe Standard Library - a complete cross-platform standard library
the Haxe Compiler - an incredibly fast cross-compiler
Pro Fully free
HaxeFlixel is fully free and open source.
Pro Hardware accelerated rendering on native platforms
Pro Active development community
(excerpt from source):
There is a multitude of channels to interact with the community:
Our google groups forums
#haxeflixel on IRC (freenode.net)
@HaxeFlixel on Twitter
The HaxeFlixel organization on GitHub
The HaxeFlixel page on IndieDB
Join our development chat on Slack
HaxeFlixel group on Steam
Pro Powerful debugger overlay
You can watch variables, log (trace) messages, and check for memory/frame rate performance.
Pro Modelled after Flixel
But with considerable improvements -- the HaxeFlixel team are constantly working improving and fixing the HaxeFlixel API, as compared to the original Flixel which is no longer updated.
Pro Easy 2D game development
(Haxe)Flixel does a lot of things for you like tilemaps and collision detection, which makes it super easy to create 2D games.
Pro Outstanding community
The HaxeFlixel team and contributors are very active on Github and other community places (like Slack), and are usually able to respond to your questions within a day or two.
Pro Similar syntax to Actionscript 3
Haxe's syntax is similar to AS3, so Flash developers can transition to HaxeFlixel if they are familiar with AS3/Flixel.
Pro Excellent, robust API
The API has all of the features that you'd expect from a powerful engine without sacrificing organization and flexibility
Pro Cross Platform
The open source Flash API is powered by OpenFL, which allows you to compile to Windows, Mac, Linux, iOS, Android, and even major consoles (coming soon).
Pro Cross-platform IDE environment
On Windows, the IDE of choice is FlashDevelop, but if you're looking for cross-platform IDE (Windows/Mac/Linux), there's Sublime Text which includes a package for Haxe syntax highlighting, as well as auto-completion.
ct.js is bundled with examples, docs, and easy to follow tutorials. Documentation and tutorials are available in a side panel on every screen.
Pro Skeletal animations with DragonBones support
You can import skeletal sprites and animations from DragonBones, which is also free. Skeletal animations are added to objects through code; developers can listen to marked events in animation, and ct.js automatically associates sounds in a DragonBones project with the game's assets.
Pro Good code editor
The built-in code editor comes with error checking, type checks, code completions accompanied with docs, multiple cursors support, and other modern features.
Pro Open source (MIT)
This means that no one will ever put any features behind a paywall and that you can reliably use ct.js in any projects without worrying about licensing. And you can hack on ct.js!
The repo is at https://github.com/ct-js/ct-js
Pro Tileset support
ct.js supports tiles in rooms, including collision checks and some extra editor tools, like bulk migration to a new tile layer or shifting by an exact value.
Pro WebGL and WebGL2 support
Starting with v1.0.0-next-1, you can now write WebGL games. WebGL support is based on Pixi.js.
Pro Modular approach
ct.js has a "Core" library that provides basic drawing functions, room and asset management, and mouse interactions. Any other functions are added to projects as "catmods", or simply modules. These modules can be enabled or disabled in one click, and can inject their code in different game loop stages, e.g. after drawing all the objects, leaving a room, or when a new object is created.
Pro Applicable to most genres
ct.js aims to be a general game engine and provides tools in making games of any genre.
Pro Dialogue and visual novel system with support for Yarn
A module ct.yarn allows developers to import a YarnSpinner project to create branching, data-driven dialogues and visual novels. An example is also bundled with ct.js.
The dialogue tree is made in a separate app, though.
Pro Real-time particle system editor
v1.3 brings a particle system editor, which displays a preview sprite for proper attachment of emitter to visual elements, and allows combining more than one emitter with different particles into one effect. With these, even the creation of complex, multi-step effects becomes easy. The editor comes with dozens ready-made textures for faster prototyping.
Con Small community
HaxeFlixel devs are not as large as (example) Unity devs, so the amount of support and exposure is limited.
Con Tile editing is a chore
No live brushes with automatic corner drawing, no fills or rectangular/linear placement. All tiles should be placed by hand, with a "Shift" key to place multiple tiles at once. This will make you ragequit if you want to make sophisticated RPG scenes :D
Con Slower than native games