Spring til indhold
Platforme

Folia-plugins

Folias regionsopdelte multithreading ændrer, hvordan plugins planlægger arbejde. Sådan genererer Codexe Folia-sikre plugins, og hvad du skal have med i anmodningen.

Opdateret

På denne side
  1. Hvad Codexe gør anderledes
  2. Hvad du skriver i anmodningen
  3. Build og verificering
  4. Almindelige problemer

Folia er Papers fork, der kører ticks for forskellige regioner af verdenen på forskellige tråde. Der er ingen enkelt "main thread", så almindelig Bukkit-planlægning (Bukkit.getScheduler().runTask(...)) er ikke gyldig.

#Hvad Codexe gør anderledes

Når du vælger typen Folia, gør det genererede plugin følgende:

  • planlægger arbejde med schedulerne for region, entity, global region og async i stedet for Bukkit-scheduleren,
  • erklærer folia-supported: true i plugin.yml,
  • bygges mod Folia-API'et (Maven).

#Hvad du skriver i anmodningen

Alt fra guiden til Spigot og Paper plus detaljer, der afhænger af timing: "teleportér efter 3 sekunder", "gentag hvert minut for hver spiller, der er online". Det er her, Folia-kode adskiller sig mest.

#Build og verificering

Folia-plugins bliver kompileret og tjekket som alle andre plugins, før de er Klar. Kompileringen beviser, at koden kan bygges mod Folia-API'et. Trådsikkerhed under kørsel afhænger stadig af logikken, så test på en Folia-server.

#Almindelige problemer

SymptomSandsynlig årsag
UnsupportedOperationException om schedulerenKode (ofte fra en afhængighed) bruger Bukkit-scheduleren. Bed chatten om at flytte den til region- eller entity-scheduleren.
Pluginet nægter at indlæse på Foliafolia-supported: true mangler i plugin.yml.
Folia-plugins | Codexe Docs