Welcome to the official ct.js docs!
Learn ct.js, complete tutorials, and contribute to ct.js documentation
Learn JavaScript
Games made in ct.js use JavaScript, or simply JS, to code their gameplay logic. Learn the needed part of it in our little Introduction to JavaScript.
Complete tutorials
The best way to learn is by making, and you can create real games with our step-by-step tutorials:
Learn the core library
See additional methods and properties of copies, camera, and rooms, and procedurally create tilemaps, backgrounds, and new copies.
Go to ct.js docs →Get the cheatsheet
Available in English, Russian, Spanish and Brazilian Portuguese languages.
Download the cheatsheet →Notable changes and additions in ct.js v4
New sound editor and sound engine
These two couple together greatly and let you effortlessly create randomized sounds with no code (except for sounds.play('YourSound')
!)
Base classes for templates
Now your templates may be based not just on animated sprites but also on nine-slice patches, text labels, dynamic buttons, or empty containers. You can place and edit them as regular copies both in a room editor and in-game. More base classes coming after the v4 release!
Behaviors
A new scriptable asset type that you can use to define shared logic for rooms and templates. You can add behaviors to any template or room at any time, and most of the time even add or remove them dynamically!
Asset folders
A real file-like project structure with nested folders and one asset browser.
settings
API
API for in-game change of framerate cap, hi-DPI and scaling mode!
UI tools for the room editor
Additional tools for base classes plus tools to create flexible UI layouts for various game resolutions.
Join the Community
Join our Discord server to meet other game developers, receive help, aid others, and share your creations. Alternatively, you can also post on our forum.
Discord Server → Forum →Contribute
Set up a dev environment to run a local docs server and use simple Markdown syntax to write new tutorials and send fixes.
You can also edit docs on Github — look for "Propose edits" links at the bottom of each page!
Visit the repo →