When comparing Phaser.io vs ct.js, the Slant community recommends Phaser.io for most people. In the question“What are the best 2D game engines?” Phaser.io is ranked 8th while ct.js is ranked 55th.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Built-in Arcade Particle system
Pro Great community resources
Pro Very active development
This is one of the most developed frameworks right now.
Pro WebGL and Canvas rendering modes
You can choose WebGL or classic HTML canvas element for game rendering.
Pro Good tutorials, courses and books
There are plenty of great learning resources available for Phaser.io.
Pro Super-simple loading of assets
Pro Excellent tools for sprites
Pro Support for Arcade Physics, Ninja Physics and p2.js
Pro Easy to learn
Most tasks are done just using 2 or 3 lines of code.
Pro Very fast to develop with
If you're browsing Slant, you probably already have a JavaScript enabled browser, which is most of what you need to get started learning JavaScript. The requirement to run a server locally on your computer while developing might make things a little more difficult
Pro No install required
All you need to do is attach Phaser script to a HTML page even without installing any extensions.
Pro Easy to understand if you have used flash
Phaser provides a similar approach as to that of Flash games, where you can load assets and place them on a stage, and even improves upon the shortcomings of actionscript. It is very easy to shift from flash to HTML5 development because of this approach.
Pro You can run it in the cloud
You can use it in popular online editors like replit, codandbox, etc.
Pro Animating is easy
Pro Has separate versions maintained by developer and the community
The creator of phaser(photonstorm) has given the older(Phaser 2.0) source code to the community for their own maintenance, and has made Phaser 3.0 with a different style and approach, trying to make it easier for beginners to learn.
Pro Beginner-friendly
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.
Cons
Con Using Cordova to Export for Mobile
To export to mobile games you need to use cordova.
Con Official documentation is not so good
Con Poor performance
As long as your map is not larger than 600*400px, everything is fine.
Con Extremely many bugs
Con Developer ignores community needs
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
JavaScript and WebGL are fast, but they will always lose in performance if compared to native games, so it may be a bad choice for graphics-heavy games.