Οδηγός
Πώς να φτιάξεις ένα Paper plugin
Ενημερώθηκε 7 Οκτωβρίου 2026
Το Paper είναι το πιο διαδεδομένο λογισμικό Minecraft server για plugins: τρέχει plugins του Spigot και προσθέτει από πάνω ένα μεγαλύτερο και ταχύτερο API. Ένα Paper plugin είναι ένα project Java (ή Kotlin) που γίνεται compile με το paper-api. Δες τι χρειάζεται, με το χέρι ή με ένα AI που το κάνει build για σένα.
Ένα παράδειγμα για να ξεκινήσεις.
Φτιάξ' το με το CodexeΒήμα βήμα
1.Διάλεξε την έκδοση Minecraft
Χρησιμοποίησε την έκδοση που τρέχει ο server σου. Αυτή καθορίζει την έκδοση Java: Java 17 πριν από την 1.20.5, Java 21 από την 1.20.5, Java 25 για τις 26.x.
2.Δημιούργησε το project
Ένα project Gradle ή Maven με το dependency
paper-apiγια εκείνη την έκδοση, από το αποθετήριο του PaperMC, στο scopeprovided/compileOnly.3.Γράψε την κύρια κλάση
Μια κλάση που κάνει extend το
JavaPlugin, μεonEnable()για την καταχώρηση εντολών και listeners.4.Περίγραψε το plugin στον server
plugin.yml(name, version, main, api-version, commands, permissions). Το Paper υποστηρίζει επίσης τοpaper-plugin.yml, με δικούς του κανόνες φόρτωσης.5.Build και δοκιμή
Κάνε build το .jar, βάλ' το στον φάκελο
plugins/ενός δοκιμαστικού server Paper, ξεκίνα τον και έλεγξε την κονσόλα για σφάλματα.
Paper ή Spigot;
Ο κώδικας γραμμένος για το Spigot API τρέχει στο Paper, αλλά όχι το αντίστροφο: το Paper προσθέτει events και μεθόδους (για παράδειγμα τα text components του Adventure και πολλά async APIs) που το Spigot δεν έχει. Γράψε για Paper αν ο server σου τρέχει Paper· γράψε για Spigot αν το plugin πρέπει να τρέχει και σε servers Spigot.
Ο γρήγορος τρόπος
Στο Codexe, διάλεξε plugin Bukkit/Spigot/Paper, γράψε «Paper» και την έκδοση στο αίτημα και περίγραψε τι κάνει. Το Codexe στήνει το project και τη σωστή έκδοση Java, το κάνει compile, διορθώνει τα σφάλματα build και σε αφήνει να μπεις σε δοκιμαστικό server Paper με εγκατεστημένο το plugin.
Συνηθισμένα προβλήματα
- UnsupportedClassVersionError: το plugin έγινε compile με νεότερη Java από αυτή που τρέχει ο server.
- NoSuchMethodError / NoClassDefFoundError: το plugin χρησιμοποιεί ένα API που δεν υπάρχει στην έκδοση του server ή ένα dependency δεν μπήκε (shade) μέσα στο .jar.
- Το plugin φορτώνει αλλά οι εντολές δεν κάνουν τίποτα: η εντολή λείπει από το
plugin.ymlή ο executor δεν έχει καταχωρηθεί.
Ερωτήσεις
Δουλεύουν τα Paper plugins σε Purpur ή Folia;
Το Purpur είναι fork του Paper, οπότε τα Paper plugins τρέχουν εκεί. Το Folia αλλάζει το threading: ένα plugin πρέπει να είναι γραμμένο για τον region scheduler του για να τρέξει στο Folia.
Μπορώ να γράψω Paper plugin σε Kotlin;
Ναι. Το Codexe μπορεί να δημιουργήσει ένα project Kotlin Gradle με build.gradle.kts για το ίδιο Paper API.
Φτιάξε ένα Paper plugin τώρα
Αυτό το prompt ανοίγει έτοιμο για αποστολή:
“Ένα plugin για Paper 1.21.4 με το όνομα Bounties: /bounty set <player> <amount> με την οικονομία του Vault, ο δολοφόνος παίρνει την ανταμοιβή, το /bounty list δείχνει τους 10 πρώτους, τα bounties αποθηκεύονται μετά από επανεκκινήσεις, μηνύματα στο config.yml.”
Φτιάξ' το με το Codexe