ЧаВо про апкаминг Ct.js v4
FAQ on the upcoming ct.js v4 — English version is below under the cut ⬇️
Когда выйдет ct.js v4?
Я бы хотел выпустить его до 10 января, но выпущу только тогда, когда он будет готов к массовому использованию. Но Nightly-версия явно появится уже на этой неделе!
Ct.js v4? А?
Основные версии (первая цифорка версий) обозначают наличие изменений с отст Это означает, что ct.js v3 не будет совместим с проектами ct.js v4, и проекты v3 должны быть обновлены — процесс частично автоматический, частично ручной.
Кроме того, ct.js v4 принесет кучу крутых изменений, которые потребовали архитектурных изменений и огромного количества работы:
— Папки ресурсов — структура проекта, похожая на файловую, с вложенными папками и единым браузером ресурсов.
— Новый редактор звуков и звуковой движок — эти два компонента отлично сочетаются друг с другом и позволяют легко создавать рандомизированные звуки без кода (кроме строчки кода sounds.play('YourSound')!)
— Базовые классы для шаблонов — теперь ваши шаблоны могут быть основаны не только на анимированных спрайтах, но и на тянучих панелях, текстовых надписях, UI кнопках или пустых контейнерах. Вы можете размещать и редактировать их как обычные копии как в редакторе комнат, так и в игре. Дополнительные базовые классы кроме текущих пяти планируются после релиза v5!
— Инструменты пользовательского интерфейса для редактора комнат — дополнительные инструменты для базовых классов, а также инструменты для создания гибких макетов пользовательского интерфейса для различных разрешений игры.
— API настроек settings для изменения частоты кадров, hi-DPI и режима масштабирования в игре!
— Поведения — новый тип ассетов, который вы можете использовать для общей логики комнат и шаблонов. Вы можете добавлять поведения в любой шаблон или комнату в любой комбинации, а также добавлять или удалять их динамически в игре! (Некоторые события не позволяют создавать динамические поведения, но пользовательский интерфейс предупредит вас о них, и они всё равно работают отлично.) Вы также можете обмениваться ими и импортировать их как файл!
Какие ломающие изменения есть в v4?
Их можно увидеть в руководстве по миграции: (Eng)
Следует ли мне обновлять свой проект до v4, когда ct.js v4 выйдет?
Зависит. Если у вас средний или большой проект, вы, вероятно, захотите остаться на v3.3. В ct.js v4 я переосмыслил работу со множеством вещей — обязательно ознакомьтесь с руководством по миграции выше.
Если вы захотите обновить свой проект для v4, сделайте резервную копию вручную. Ct.js попытается обновить ваш проект до v4, но он не может всё сделать автоматически, и это также дорога в одну сторону.
Обновится ли ct.js автоматически до v4?
Только если вы используете приложение itch.io для установки и обновления ct.js.
⬇️ ⬇️ ⬇️English version ⬇️ ⬇️ ⬇️
When will ct.js v4 come out?
I would llllove to release it before 10th of January, but it will be released only when it is production-ready. Nightly versions of ct.js v4 will come out shortly, probably this week!
What's so different with ct.js v4 that it is a major version?
Major versions mark breaking changes and deprecations. This means that ct.js v3 will not be compatible with ct.js v4 projects in any way, and v3 projects will have to be updated, including manual updates.
Besides that, ct.js v4 brings a bunch of cool changes that required architectural changes and immense amount of workload:
— Asset folders — a real file-like project structure with nested folders and one asset browser.
— 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 v4 release!
— UI tools for the room editor — additional tools for base classes plus tools to create flexible UI layouts for various game resolutions.
— settings API for in-game change of framerate cap, hi-DPI and scaling mode!
— 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! (Some events prevent creating dynamic behaviors, but UI will warn you about them and they do work perfectly anyways.) You can also share and import them as a file!
What are the breaking changes for v4?
You can see the migration guide here:
Should I update my project to v4 when it comes out?
It depends. If you have a medium-to-large project, you probably will want to sit on v3.3. Ct.js v4 reimagined quite a lot of things, and thus has lots of breaking changes. Do check out the migration guide above.
If you do want to update your project for v4, do make a backup copy manually. Ct.js will try to update your project to v4, but it cannot do everything automatically, and it is also a one-way process.
Will my ct.js Nightly update automatically to v4?
Only if you're using itch.io app for installing and updating ct.js.