Karşılaştırma
Skript ve plugin
18 Ekim 2026 güncellendi
Skript'in kendisi bir plugin'dir: on join: ve command /spawn: gibi İngilizceye benzeyen bir dille yazılmış .sk betiklerini çalıştırır. Bir Java plugin'i ise sunucu API'siyle doğrudan konuşan derlenmiş koddur. Skript'i yazmak ve değiştirmek daha hızlıdır; bir plugin daha hızlı çalışır ve daha fazlasını yapabilir. Birçok sunucu ikisini birden kullanır.
Skript'e uyan bir örnek.
Bunu Codexe ile oluşturYan yana
| Skript | Java plugin'i | |
|---|---|---|
| Gerekenler | Bir Paper sunucusunda Skript plugin'i (ve varsa eklentileri); eski Skript sürümleri Spigot'ta da çalışıyordu | Paper, Spigot veya bir çatalı |
| Yazıldığı dil | Skript'in İngilizceye benzeyen sözdizimi | Java veya Kotlin |
| Derleme adımı | Yok: dosyayı düzenle ve /sk reload çalıştır | Bir .jar'a derle, sunucuyu yeniden başlat |
| Performans | Çoğu sunucu özelliği için yeterli; ağır döngülerde daha yavaş | Hızlı: derlenmiş kod |
| Erişebildikleri | Skript'in ve eklentilerinin sunduğu her şey | Tüm sunucu API'si ve her Java kütüphanesi |
| Hatalar | Yeniden yüklemede satırıyla gösterilir | Derleme hataları, sonra çalışma zamanında stack trace'ler |
| Paylaşma veya satma | Betikler düz metindir ve aynı eklentilere bağımlıdır | Uyumlu her sunucuda çalışan tek bir .jar |
Skript'in daha iyi seçim olduğu durumlar
- Küçük sunucu özellikleri: özel komutlar, katılma mesajları, kitler, günlük ödüller, basit olaylar.
- Bir şeyleri sık değiştiriyorsun ve değişikliği derleme olmadan saniyeler içinde görmek istiyorsun.
- Yetkili ekibin zaten Skript biliyor ve betiklerin bakımını yapıyor.
Java plugin'inin daha iyi seçim olduğu durumlar
- Özellik çok sayıda oyuncu için sık çalışıyor: özel mob yapay zekası, tick başına kontroller, büyük map'ler veya listeler.
- Bir veritabanına, bir web API'sine, paketlere veya Skript'in karmaşık eklentiler olmadan erişemeyeceği bir kütüphaneye ihtiyacın var.
- Paylaşılacak veya satılacak ya da eklentilerini kontrol etmediğin sunucularda kullanılacak.
- Kod tabanı büyüyecek: Java, büyük betiklerde olmayan türleri, bir IDE'yi ve testleri sunar.
Eklentiler gizli bağımlılıktır
İnsanların Skript ile yaptıklarının çoğu SkBee (NBT, boss çubukları, skor tabloları), skript-reflect (Java sınıfları) veya skript-gui (menüler) gibi eklentilerden gelir. Bir eklentiyi kullanan betik o eklenti olmadan yüklenmez ve eklentiler Skript ve sunucu sürümlerine uymak zorundadır. Emeği karşılaştırırken onları güncel tutmayı da hesaba kat.
Codexe'te Skript ve plugin'ler
Codexe ikisini de yapar. Bir Skript projesi Hazır olmadan önce SkBee, skript-reflect, skript-gui, skript-yaml, Vault ve EssentialsX kurulu, Skript 2.16.2 çalıştıran gerçek bir Paper 1.21.11 sunucusunda yüklenir; başka bir eklenti gerektiren bir betik yeniden yazılmak yerine test amaçlı yüklenmedi olarak işaretlenir. Bir plugin seçtiğin sürüm için derlenir. İkisi de bir test sunucusunda denenebilir ve test oyuncuları tarafından kontrol edilebilir; bir betik Skript'e sığmayacak kadar büyüdüğünde sohbetten onu bir plugin'e dönüştürmesini isteyebilirsin.
Sorular
Skript performans için kötü mü?
Tipik sunucu özellikleri için hayır. Sorunlar ağır döngülerden, sık periyodik olaylardan ve büyük değişken listelerinden çıkar; bunlar Java'da daha iyidir.
Bir Skript'i plugin'e dönüştürebilir miyim?
Evet, onu Java'da yeniden yazarak. Codexe'te proje sohbetinden bir Skript projesini plugin'e dönüştürmesini isteyebilirsin; projeyi yeni tür için yeniden yazar.
Skript için Java bilmem gerekiyor mu?
Hayır. Skript'in sözdizimi İngilizce gibi okunur. Java yalnızca skript-reflect ile işe yarar.
Skript ve plugin'ler birlikte çalışabilir mi?
Evet. Betikler plugin'leri eklentiler ve Vault üzerinden kullanabilir; birçok sunucu hızlı özellikleri Skript'te, ağır olanları plugin'lerde tutar.
Skript veya plugin olarak yap
Bu prompt göndermeye hazır açılır:
“Paper 1.21 için bir Skript: /kit starter oyuncu başına her 24 saatte bir kez bir taş kılıç, 16 ekmek ve 8 meşale verir, çok erken kullanılırsa kalan süreyi gösterir, izin kits.starter, ilk kez giren oyunculara /kit starter'ı anlatan bir katılma mesajı.”
Bunu Codexe ile oluştur