Opas
Miten tehdä Paper-plugin
Päivitetty 7. lokakuuta 2026
Paper on käytetyin Minecraft-palvelinohjelmisto plugineille: se ajaa Spigot-plugineja ja lisää niiden päälle laajemman, nopeamman API:n. Paper-plugin on Java- (tai Kotlin-) projekti, joka on käännetty kohdetta paper-api vasten. Tässä mitä se tarvitsee, käsin tai tekoälyllä, joka rakentaa sen puolestasi.
Esimerkki, josta aloittaa.
Generoi tämä CodexellaVaihe vaiheelta
1.Valitse Minecraft-versio
Käytä versiota, jota palvelimesi ajaa. Se määrää Java-version: Java 17 ennen versiota 1.20.5, Java 21 versiosta 1.20.5 alkaen, Java 25 versioille 26.x.
2.Luo projekti
Gradle- tai Maven-projekti, jossa on kyseisen version
paper-api-riippuvuus PaperMC-repositoriosta,provided-/compileOnly-näkyvyydellä.3.Kirjoita pääluokka
Luokka, joka laajentaa luokkaa
JavaPluginja jonkaonEnable()rekisteröi komennot ja kuuntelijat.4.Kuvaa plugin palvelimelle
plugin.yml(name, version, main, api-version, commands, permissions). Paper tukee myös tiedostoapaper-plugin.ymlomilla lataussäännöillään.5.Kokoa ja testaa
Kokoa .jar, laita se Paper-testipalvelimen
plugins/-kansioon, käynnistä palvelin ja tarkista konsolista virheet.
Paper vai Spigot?
Spigot-API:lle kirjoitettu koodi toimii Paperilla, mutta ei toisinpäin: Paper lisää tapahtumia ja metodeja (esimerkiksi Adventure-tekstikomponentit ja monet asynkroniset API:t), joita Spigotissa ei ole. Kirjoita Paperille, jos palvelimesi ajaa Paperia; kirjoita Spigotille, jos pluginin on toimittava myös Spigot-palvelimilla.
Nopea tapa
Codexessa valitse Bukkit/Spigot/Paper-plugin, sano pyynnössä "Paper" ja versio ja kuvaile, mitä se tekee. Codexe pystyttää projektin ja oikean Java-version, kääntää sen, korjaa koontivirheet ja antaa sinun liittyä Paper-testipalvelimelle, jolle plugin on asennettu.
Yleisiä ongelmia
- UnsupportedClassVersionError: plugin on käännetty uudemmalla Javalla kuin mitä palvelin ajaa.
- NoSuchMethodError / NoClassDefFoundError: plugin käyttää API:a, jota ei ole palvelimen versiossa, tai riippuvuutta ei ole sisällytetty (shade) .jar-tiedostoon.
- Plugin latautuu, mutta komennot eivät tee mitään: komento puuttuu tiedostosta
plugin.ymltai suorittajaa ei ole rekisteröity.
Kysymykset
Toimivatko Paper-pluginit Purpurilla tai Foliella?
Purpur on Paperin haarukka, joten Paper-pluginit toimivat siinä. Folia muuttaa säikeistystä: pluginin on oltava kirjoitettu sen aluekohtaiselle ajastimelle toimiakseen Foliella.
Voinko kirjoittaa Paper-pluginin Kotlinilla?
Kyllä. Codexe voi generoida Kotlin-Gradle-projektin, jossa on build.gradle.kts, samalle Paper-API:lle.
Rakenna Paper-plugin nyt
Tämä kehote aukeaa valmiina lähetettäväksi:
“Paper 1.21.4 -plugin nimeltä Bounties: /bounty set <player> <amount> Vault-taloudella, tappaja saa palkkion, /bounty list näyttää 10 parasta, palkkiot tallennetaan uudelleenkäynnistysten yli, viestit tiedostossa config.yml.”
Generoi tämä Codexella