Minecraft Servers HQ

Minecraft eklentisi ProtocolLib

ProtocolLib ve bulunduğu sunucular hakkında bilgi

🔌 ProtocolLib hakkında

ProtocolLib, ağ protokolünü diğer eklentilere açan bir Minecraft eklenti kütüphanesidir. Sunucu ile istemci arasındaki ham paketleri okumak, değiştirmek, iptal etmek ve göndermek için bir API sağlar; böylece eklentilerin, karartılmış sunucu iç yapılarına bağımlı olması gerekmez.

🎯 Amaç

ProtocolLib, paket düzeyindeki işleri eklenti geliştiricileri için güvenilir ve sürdürülebilir hale getirmek için vardır. Paket erişimini kararlı bir API arkasında merkezi hale getirir; böylece birden fazla eklenti, sunucunun iç sınıflarına doğrudan bağlanmadan paket trafiğini inceleyip değiştirebilir.

⚙️ Özellikler

  • Gelen ve giden paketleri yakalamak için etkinlik tarzı API.
  • Yaygın paket alanları için okuma/yazma erişicileri (stringler, int'ler, vektörler vb.).
  • Paketleri hedeflerine ulaşmadan önce iptal etme veya içeriklerini değiştirme imkânı.
  • Sunucu tarafında paket oluşturmak ve göndermek için yardımcı araçlar.
  • Sürümler arası kararlılığı artırmak için karartılmış sunucu sınıflarını indeks tabanlı bir okuma/yazma sistemi arkasına gizler.
  • Sunucu taraflı bir jar olarak dağıtılır ve eklenti derlemeleri için derleme zamanı bağımlılığı olarak kullanılabilir.

🧩 Kimler İçin

  • Paket düzeyinde kontrol isteyen eklenti geliştiricileri (kozmetik öğeler, kılık değiştirmeler, istemciye özel efektler, ağ araçları).
  • Doğrudan protokol erişimine bağlı eklentiler çalıştıran sunucu yöneticileri.

🏗️ Örnek Kullanım Alanları

  • Mesajlar uygulanmadan önce sunucu tarafı bir filtre oluşturmak için sohbet paketlerini dinlemek.
  • Dünyanın durumunu değiştirmeden istemci tarafı bir efekt oluşturmak için bir oyuncuya hazırlanmış bir patlama paketi göndermek.
  • Paket manipülasyonu gerektiren kılık değiştirmeler, özel animasyonlar veya diğer yalnızca istemci görsellerini uygulamak.

⌨️ Komutlar

ProtocolLib'in kendisi son kullanıcıya yönelik komutlar sağlamaz; bu bir özellik eklentisi değil, bir geliştirici kütüphanesidir.

⚙️ Kurulum

📥 Hazırlık

  • Resmî ProtocolLib jar dosyasını indirin ve sunucunuzun plugins/ dizinine koyun.
  • Sunucuyu yeniden başlatın ve eklentinin hatasız yüklendiğini doğrulamak için sunucu konsolunu kontrol edin.
  • ProtocolLib kullanan bir eklenti geliştirirken, ProtocolLib'i derleme zamanı bağımlılığı olarak ekleyin ve eklenti manifestonuzda belirtin (veya soft-depend olarak tanımlayın).

📦 Bağımlılıklar

  • ProtocolLib'in çalışması için başka sunucu eklentilerine ihtiyacı yoktur; başka eklentiler tarafından bir kütüphane olarak kullanılmak üzere tasarlanmıştır.

🧾 Yapılandırma

  • ProtocolLib ilk çalıştırmada kendi yapılandırma dosyalarını oluşturur. Eklentiye özel yapılandırmayı, ProtocolLib kullanan eklentiler yönetir.

🧠 Teknik Notlar

  • ProtocolLib, paket dinleyicilerini kaydetmek ve paketleri programatik olarak göndermek için ProtocolManager giriş noktası sağlar.
  • Proje GPL-2.0 lisansı altında dağıtılır.
  • Maven/Gradle koordinatları, derleme zamanı bağımlılığı olarak kullanılmak üzere yayımlanır.
  • ProtocolLib, çok çeşitli Minecraft sunucu sürümleriyle uyumluluk dikkate alınarak sürdürülür; öncelikle Bukkit türevi sunucu yazılımlarını hedefler.

🤝 Bu Eklenti Ne Zaman Kullanışlıdır

Projenizin ham Minecraft protokolünü incelemesi veya değiştirmesi gerekiyorsa (istemci tarafı efektler, özel görseller veya ağ düzeyi kancalar için), ProtocolLib bu işi merkezileştirip sabitler; böylece birden fazla eklenti paketlerle güvenle etkileşime girebilir.

ProtocolLib eklentisine sahip sunucular

ProtocolLib eklenti sayfası, izleme sisteminin bu eklentiyi hangi sunucularda bulduğunu, hangi platformlar ve sürümlerle görüldüğünü gösterir.

Eklentiler komutlar, ekonomi, koruma, izinler, mini oyunlar, entegrasyonlar veya başka mekanikler ekleyebilir. ProtocolLib eklentisinin gerçek rolü belirli sunucunun yapılandırmasına bağlıdır.

Veriler sunucuların teknik yanıtlarından otomatik oluşturulur. Bir sunucu eklenti listesini gizliyorsa ProtocolLib kullansa bile bu bölümde görünmeyebilir.

Projeleri karşılaştırmak, uyumlu sürümleri kontrol etmek veya eklentinin herkese açık sunucularda nasıl kullanıldığına dair örnekler bulmak için ProtocolLib bulunan sunucu listesini kullanın.