Spigot ve Paper plugin'leri
Codexe'ten Java veya Kotlin ile en iyi Bukkit, Spigot ya da Paper plugin'i: isteğe ne yazılır, sürümler, plugin.yml, bağımlılıklar, derleme ve sık sorunlar.
Güncellendi
Bu sayfada
Bukkit/Spigot/Paper türleri Paper, Spigot ve onların çatallarında çalışan bir sunucu plugin'i üretir. Java (Maven projesi) veya Kotlin (build.gradle.kts içeren Gradle projesi) seç.
Plugin'ini oyunda oynamak için Hemen dene ile özel bir test sunucusu başlat.
İsteği gönderdiğinde Codexe, plugin'in hangi Minecraft sürümü için olduğunu sorar; 1.8.8'den 26.3'e kadar. Kod o sürümün API'si ve Java düzeyi için yazılır ve test sunucusu o sürümü çalıştırır. 30 Eylül 2026'dan önce oluşturulan projeler, derleme dosyalarında yazan sürümü korur.
#İsteğe neler yazılmalı
- Sunucu yazılımı ve sürümü: "Paper 1.21.4" veya "Spigot 1.20.1". Paper'ın API'si Spigot'unkinden daha geniştir. Spigot için yazılan kod Paper'da çalışır, tersi geçerli değildir; bu yüzden ikisine de ihtiyacın varsa Spigot iste.
- Argümanları, kimin kullanabileceği ve sekme tamamlamasıyla birlikte komutlar.
- Varsayılanlarıyla (
true,op,false) birlikte izinler. - Düzenlenebilir olmasını istediğin config.yml anahtarları.
- Depolama: YAML, SQLite, MySQL veya bellekte.
- Entegrasyonlar: Vault, PlaceholderAPI, LuckPerms, WorldGuard…; bağımlılık olarak eklenmeleri için açıkça adlarıyla.
A Paper 1.21.4 plugin (Java) called Bounties.
- /bounty set <player> <amount>: takes money via Vault, adds it to the player's bounty.
- Killing a player with a bounty pays it to the killer.
- /bounty top shows the 10 highest bounties.
- Bounties stored in SQLite. Minimum bounty 100 (config.yml).
- Permission bounties.set (default true).A Paper 1.21.4 plugin in Kotlin called Bounties, same features as above.
Use Kotlin idioms (data classes, extension functions) but keep the Bukkit API usage standard.#Codexe ne üretir
- Doğru API bağımlılığıyla bir Maven projesi (Java) veya Gradle projesi (Kotlin).
JavaPluginsınıfını genişleten ana sınıf, ayrıca komut, dinleyici ve depolama sınıfları.- Ana sınıf,
api-version, komutlar ve izinlerleplugin.yml; ayarlar varsaconfig.yml.
name: Bounties
version: 1.0.0
main: eu.codexe.bounties.Bounties
api-version: '1.21'
depend: [Vault]
commands:
bounty:
description: Manage bounties
permissions:
bounties.set:
default: true#Sürümler ve Java
Codexe Minecraft sürümünü derleme dosyasından okur ve Java 17 (1.20.5 öncesi), Java 21 (1.20.5 ve sonrası) veya Java 25 (26.x) ile derler. Bir sürüm belirtmezsen Paper/Spigot API'sinin 1.20.6 sürümü kullanılır.
#Derleme ve doğrulama
Codexe plugin'i Hazır saymadan önce derler ve JAR'ın sınıfları ve bir plugin.yml (veya paper-plugin.yml) içerdiğini kontrol eder. Plugin derlemeleri genellikle bir dakikadan çok daha kısa sürer. Bkz. Derle.
#Kurulum
JAR'ı indir, plugins/ klasörüne koy, sunucuyu yeniden başlat (/reload kullanma) ve açılışta konsolda hata olup olmadığını kontrol et.
#Sık karşılaşılan sorunlar
| Belirti | Olası neden |
|---|---|
| Plugin yüklenmiyor, "main class not found" | plugin.yml içindeki main: sınıfla eşleşmiyor. Sohbetten düzeltmesini iste ya da elle yeniden adlandırmalardan sonra kontrol et. |
| Eski bir sunucuda "Unsupported API version" | Plugin, sunucundan daha yeni bir API'yi hedefliyor. İstekte sunucu sürümünü tam olarak belirt. |
| Bir komut hiçbir şey yapmıyor | Komut plugin.yml içinde eksik ya da oyuncunun izni yok. |
Vault veya benzeri için NoClassDefFoundError | Bağımlılık olan plugin sunucuda kurulu değil. |
| Derleniyor ama bir özellik yanlış çalışıyor | Oyun içindeki davranışı sohbette tam olarak anlat. Doğrulama derlemeyi kontrol eder, oynanışı değil. |