Plugin Minecraft ProtocolLib

Informacje o ProtocolLib i potwierdzonych serwerach

🔌 O ProtocolLib

ProtocolLib to biblioteka pluginów do Minecrafta, która udostępnia protokół sieciowy innym pluginom. Zapewnia API do odczytu, modyfikowania, anulowania i wysyłania surowych pakietów między serwerem a klientem bez konieczności zależenia pluginów od obfuskowanych wewnętrznych elementów serwera.

🎯 Cel

ProtocolLib istnieje po to, aby praca na poziomie pakietów była dla twórców pluginów niezawodna i łatwa w utrzymaniu. Centralizuje dostęp do pakietów za stabilnym API, dzięki czemu wiele pluginów może analizować i zmieniać ruch pakietów bez bezpośredniego podpinania się pod wewnętrzne klasy serwera.

⚙️ Funkcje

  • API w stylu zdarzeń do przechwytywania pakietów przychodzących i wychodzących.
  • Czytanie/zapis dla typowych pól pakietów (stringi, inty, wektory itp.).
  • Możliwość anulowania pakietów lub modyfikowania ich zawartości przed dotarciem do celu.
  • Narzędzia do tworzenia i wysyłania pakietów po stronie serwera.
  • Ukrywa obfuskowane klasy serwera za systemem odczytu/zapisu opartym na indeksach, aby poprawić stabilność między wersjami.
  • Dystrybuowany jako server-side jar i używalny jako zależność kompilacyjna dla buildów pluginów.

🧩 Dla kogo

  • Dla twórców pluginów, którzy potrzebują kontroli na poziomie pakietów (kosmetyka, przebrania, niestandardowe efekty po stronie klienta, narzędzia sieciowe).
  • Dla administratorów serwerów, którzy uruchamiają pluginy zależne od bezpośredniego dostępu do protokołu.

🏗️ Przykładowe zastosowania

  • Nasłuchiwanie pakietów czatu, aby wdrożyć filtr po stronie serwera przed zastosowaniem wiadomości.
  • Wysłanie przygotowanego pakietu eksplozji do gracza, aby stworzyć efekt po stronie klienta bez zmiany stanu świata.
  • Implementacja przebrań, własnych animacji lub innych wizualizacji wyłącznie po stronie klienta, które wymagają manipulacji pakietami.

⌨️ Komendy

ProtocolLib sam z siebie nie udostępnia komend dla użytkowników; to biblioteka dla deweloperów, a nie plugin z funkcjami.

⚙️ Instalacja

📥 Konfiguracja

  • Pobierz oficjalny jar ProtocolLib i umieść go w katalogu plugins/ swojego serwera.
  • Uruchom ponownie serwer i sprawdź konsolę, aby potwierdzić, że plugin ładuje się bez błędów.
  • Tworząc plugin korzystający z ProtocolLib, dodaj ProtocolLib jako zależność kompilacyjną i zadeklaruj go (lub soft-depend) w manifeście pluginu.

📦 Zależności

  • ProtocolLib nie wymaga do działania innych pluginów serwera; ma być używany przez inne pluginy jako biblioteka.

🧾 Konfiguracja

  • ProtocolLib tworzy własne pliki konfiguracyjne przy pierwszym uruchomieniu. Konfiguracją specyficzną dla pluginu zajmują się pluginy korzystające z ProtocolLib.

🧠 Uwagi techniczne

  • ProtocolLib udostępnia punkt wejścia ProtocolManager do rejestrowania listenerów pakietów i programowego wysyłania pakietów.
  • Projekt jest dystrybuowany na licencji GPL-2.0.
  • Koordynaty Maven/Gradle są publikowane do użycia jako zależność kompilacyjna.
  • ProtocolLib jest utrzymywany z uwzględnieniem kompatybilności z szeroką gamą wersji serwerów Minecraft; jest przede wszystkim skierowany do oprogramowania serwerowego pochodzącego od Bukkit.

🤝 Kiedy ten plugin jest przydatny

Jeśli Twój projekt musi analizować lub modyfikować surowy protokół Minecrafta (dla efektów po stronie klienta, niestandardowych wizualizacji lub hooków na poziomie sieci), ProtocolLib centralizuje i stabilizuje tę pracę, dzięki czemu wiele pluginów może bezpiecznie współdziałać z pakietami.

Serwery z pluginem ProtocolLib

Strona pluginu ProtocolLib pokazuje serwery, na których monitoring znalazł ten plugin, używaną platformę i wersję.

Plugin może dodawać komendy, ekonomię, bezpieczeństwo, uprawnienia dostępu, minigry, integracje i inne mechaniki. Rzeczywista rola ProtocolLib zależy od ustawień serwera.

Dane są generowane automatycznie z technicznych odpowiedzi serwerów. Jeśli serwer trzyma listę pluginów prywatnie, może używać ProtocolLib, ale nie pojawiać się w tej sekcji.

Użyj listy serwerów z ProtocolLib, aby porównać projekty, sprawdzić wspierane wersje lub znaleźć przykłady użycia pluginu na publicznych serwerach.