When comparing AppGameKit 2.0 vs ct.js, the Slant community recommends AppGameKit 2.0 for most people. In the question“What are the best 2D game engines?” AppGameKit 2.0 is ranked 25th while ct.js is ranked 55th. The most important reason people chose AppGameKit 2.0 is:
The AppGameKit Basic can now export to HTML5.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro HTML5 support
The AppGameKit Basic can now export to HTML5.
Pro Cross platform
Supports developing games for Android, iOS, PC, Mac, Linux and now HTML5.
Pro You only need to to pay for the license only
There is no charge for upgrades, or for extra platforms (the HTML5 version just appeared in the latest version), there are no subscription fees or other usage charges. If you publish onto either Apple or Google's stores you will have to pay their costs, of course, but the makers of AGK do not take a cut of this themselves.
Pro Plugin support for Windows
Plug-ins can now be added to the Windows platform. Create your own Tier BASIC commands and call them using the AppGameKit Basic script language style.
Pro Instant testing on multiple devices at once
AppGameKit supports instant testing on all connected devices. With the push of a button you can run your game on any device connected to the development machine.
Pro Excellent documentation
Every function is fully documented with examples and exercises. The Tutorial PDF is a full Introduction to 3D game programming with integrated references to every functionality and its most important usecases. The documentation is regulary updated.
Pro Easy basic programming
Program in tier 1 BASIC programming for every 3D game need.
Pro Raspberry Pi free version available
A Raspberry Pi version is available and free. Users just need to register with the developer and then they can download.
Pro Very fast compilation
It is a compilation based language, but the compilation is very fast. A project of about 1800 lines of code, for example, can compile almost instantly. (That's because it does not compile, it's an interpreter)
Pro Support
Informed, timely and intelligent feedback from the AGK forum.
Pro Fast development
There are plenty of functions which facilitate development and deployment. For example, the AGK player immediately plays the updated bytecode on Android devices then the online site helps with building an APK file for Google Play Store in minutes.
Pro Uses a powerful scripting language built for game development
Software produced with the App Game Kit is written in a language called AGK Script. This language has powerful inbuild commands including commands for 2D graphics, physics and networking. The commands make use of the platforms' native functions to improve performance. They are also designed to enhance code readability. The AGK Script commands have extensive online documentation.
Pro C++ and Basic, you have the choice.
It runs fast with BASIC but if you want more you can use C++, it's also easy to use.
Pro Can be used for advanced games programming in C++
Libraries which provide the same functionality are available for the five platforms, so you can code in C++
Pro Comes with an Integrated Development Environment (IDE)
AGK comes with an Integrated Development Environment (IDE) based on the Code::Blocks IDE for writing AGK scripts. A key feature of the IDE is its ability to broadcast compiled programs to other devices for testing.
Pro Performance
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 Restrictive virtual buttons
"AppGameKit" does not grant editing the very basic parameters of virtual buttons such as font and text size. The only method some people suggest is to use an image for every single "button".
Con Terrible scripting language
MS Basic from the 70's has more features. Procedural, no OO, inheritance, basic user defined types with overloading. Nothing. It even has GOSUB.
Con BASIC language
Even though it supports C++, it's mostly C++ mapped to BASIC without OOP.
Con Can almost only do trivial games
The editor is rather limited, not fully polished, and 3D is missing some key functionalities (3D is work in progress).
Con No builtin game mechanics, events, inventory.
Con $80 even if your game doesn't fly
Con Editor code completion is pretty bad
Con Pros on Slant are written by AGK marketing guys
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.