önce şunu anlamakta fayda var, kötü yazılmış bir eklenti bile performans sorunlarına yol açabilir. şimdi gelelim asıl soruya:
NMS (native) > craft bukkit (wrapper) > bukkit >/ spigot >/ paper (lib & wrapper) ve en sonunda Skript (runtime engine / yorumlayıcı).
araya giren abstraction katmanları net bir şekilde görebiliyoruz, yani senin paper'da çağırdığın bir olayı önce spigot, sonra bukkit... nms'e kadar gidiyor ve sonra sunucu onu alıp paketlere ayrıştırıp oyuncuya yolluyor. işin içine skript girincede, skript kodu alıyor, içerisinde derliyor daha sonra runtime'da yürütüyor, yine dediğim gibi paper'dan nms'e yolculuk ediyor. ancak teknik olarak baktığımızda yorumlayıcı (skript) hiçbir zaman doğrudan jvm üzerinde çalışan ve jit optimizasyonları (java'nın sürekli çağırdığı methodları optimize eder) saf java kodundan daha hızlı olamaz. gel gelelim "ben java geliştiricisiyim, eklenti de yazarım sunucu da geliştiririm" diyen arkadaşlara. jvm in nasıl çalıştığını bilmeyen, main thread ı yönetmekten ve bellek sızıntılarını bilmeyen... hiç değilse sampler (spark / timings) araçları kullanarak optimizasyon yapamayan çok kişi var :/
yapay zeka ile oturup saatlerce 100 satır kodu adam edemeyen, habire boiler plate kod yığınları ile başını ağrıtıp projeden vaz geçen ya da bitiremeyen çok kişi var... yani olay skript mi yoksa java mı demekle bitmiyor. skript iyi düşünülmüş, minecraft java bukkit kütüphanesi için betik ve görevlendirici bir eklentidir.
çok performans istiyorlarsa gidip kendi wrapper'ını oluşturacak, saatlerce paket testi yapacak, her sürüm için bir interface ve abstraction katmanı oluşturacak ya da bunu zaten yapmış olan eklentileri kullanacak (PacketEvents, ProtocolLib).