Перейти до вмісту
Платформи

Плагіни Folia

Багатопотоковість Folia за регіонами змінює те, як плагіни планують роботу. Як Codexe генерує плагіни, безпечні для Folia, і що включити в запит.

Оновлено

На цій сторінці
  1. Що Codexe робить інакше
  2. Що писати в запиті
  3. Збірка та перевірка
  4. Поширені проблеми

Folia є форком Paper, який обробляє такти різних регіонів світу в різних потоках. Єдиного «головного потоку» немає, тож звичайне планування Bukkit (Bukkit.getScheduler().runTask(...)) там не працює.

#Що Codexe робить інакше

Коли ви вибираєте тип Folia, згенерований плагін:

  • планує роботу через планувальники регіону, сутності, глобального регіону та асинхронний замість планувальника Bukkit,
  • оголошує folia-supported: true у plugin.yml,
  • збирається з API Folia (Maven).

#Що писати в запиті

Усе з посібника зі Spigot і Paper, а також деталі, чутливі до часу: «телепортувати через 3 секунди», «повторювати щохвилини для кожного гравця онлайн». Саме тут код для Folia відрізняється найбільше.

#Збірка та перевірка

Плагіни Folia компілюються й перевіряються, як і будь-який інший плагін, перш ніж отримати статус Готово. Компіляція доводить, що код збирається з API Folia. Потокобезпечність під час роботи все одно залежить від логіки, тож тестуйте на сервері Folia.

#Поширені проблеми

СимптомІмовірна причина
UnsupportedOperationException щодо планувальникаКод (часто із залежності) використовує планувальник Bukkit. Попросіть чат перенести його на планувальник регіону або сутності.
Плагін відмовляється завантажуватися на FoliaУ plugin.yml немає folia-supported: true.
Плагіни Folia | Codexe Docs