Ugrás a tartalomra
Platformok

Folia-pluginok

A Folia régiókra bontott többszálúsága megváltoztatja, hogyan ütemezik a pluginok a munkát. Hogyan generál a Codexe Foliával biztonságosan működő pluginokat, és mit írj a kérésbe.

Frissítve

Ezen az oldalon
  1. Mit csinál másképp a Codexe
  2. Mit írj a kérésbe
  3. Build és ellenőrzés
  4. Gyakori problémák

A Folia a Paper forkja, amely a világ különböző régióit különböző szálakon tickeli. Nincs egyetlen „fő szál”, ezért a szokásos Bukkit-ütemezés (Bukkit.getScheduler().runTask(...)) nem érvényes.

#Mit csinál másképp a Codexe

Ha a Folia típust választod, a generált plugin:

  • a munkát a régió-, az entitás-, a globális régió- és az aszinkron ütemezővel ütemezi a Bukkit-ütemező helyett,
  • deklarálja a folia-supported: true beállítást a plugin.yml fájlban,
  • a Folia API-ra buildel (Maven).

#Mit írj a kérésbe

Mindent a Spigot és Paper útmutatóból, plusz az időzítésre érzékeny részleteket: „teleportálás 3 másodperc után”, „ismétlés percenként minden online játékosnál”. Ezeken a pontokon tér el leginkább a Folia-kód.

#Build és ellenőrzés

A Folia-pluginok ugyanúgy lefordulnak és ellenőrzésen mennek át, mielőtt Készek lennének, mint bármely más plugin. A fordítás bizonyítja, hogy a kód lebuildelődik a Folia API-ra. A futásidejű szálbiztonság továbbra is a logikán múlik, ezért teszteld egy Folia-szerveren.

#Gyakori problémák

TünetValószínű ok
UnsupportedOperationException az ütemezőrőlA kód (gyakran egy függőségből) a Bukkit-ütemezőt használja. Kérd meg a csevegést, hogy tegye át a régió- vagy az entitásütemezőre.
A plugin nem hajlandó betöltődni FoliánHiányzik a folia-supported: true a plugin.yml fájlból.
Folia-pluginok | Codexe Docs