Developer Guide for Writing Folia Plugins #287
Labels
No labels
documentation
good first issue
help wanted
resolution: duplicate
resolution: invalid
resolution: won't fix
status: needs triage
type: bug
type: feature
type: performance
type: question
version: 1.19.4
version: 1.20
version: 1.20.1
version: 1.20.2
version: 1.20.4
version: 1.20.6
version: 1.21.11
version: 1.21.4
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Minecraft/Folia#287
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Is your feature request related to a problem?
It's challenging for plugin developers to understand the do's and don'ts of writing a Folia plugin.
Describe the solution you'd like:
A guide for plugin developers, with code snippets for paper vs folia version of code and answering questions such as:
how is the thread for which a command is executed on decided? the region of executing player?
how is the thread which an event listener will run on decided? region of where the event took place?
how is the thread of a bukkit runnable decided? can it be changed or is it fixed from when it is created? What if the ticking region owning the runnable is destroyed?
Is there a way to use folia schedulers for folia servers but falling back to bukkit scheduler for regular paper servers?
What are tick thread locks? when do regions resize? will this cause issues if a region resizes while we are in the middle of something?
This is likely better create on the docs repo:
https://github.com/PaperMC/docs
But not sure how long it would be before anyone can get to this.