Skocz do zawartości

Packets oraz bug w Mc


Rekomendowane odpowiedzi

Prawdopodobnie słyszałeś o pakietach, jeżeli pisałeś skrypty bądź pluginy to z nich korzystałeś.. a raczej metody ich używały. Jak wchodzisz na serwer to wysyłasz tysiące pakietów, które zawierają konkretne informacje co robisz, co masz w rękach, gdzie patrzysz. Serwer te pakiety odbiera i wysyła je do innych graczy, których możesz widzieć (tzn pojawiają się na Twoim tabie), ale to nie są jedyne pakiety jakie istnieją. 

W skrócie, metody są tak naprawdę ułatwieniem dla developerów, żeby nie musieli pisać pluginów na pakietach. Pakiety często nie są jednoznacznie opisane, nie mają dokumentacji, często wystarczy brak jednej linijki, żeby cały kod nie działał, ale poza tym są bardzo użyteczne, metody zawarte w api spigota obsługują nie wszystkie pakiety, albo obsługują nie do końca tak jakby chciał developer.

Edytowane przez LeviBoyPL
Odnośnik do komentarza
https://skript.pl/temat/41809-packets-oraz-bug-w-mc/#findComment-262176
Udostępnij na innych stronach

Pakietów jest ogrom (https://github.com/Bukkit/mc-dev/tree/master/net/minecraft/server) (https://wiki.vg/Protocol#) każdy z nich za coś odpowiada. Używając zwykłych metod nie jesteśmy świadomi, że finalnym wykonawcą są pakiety. Na początku korzystanie z nich może sprawić trudności, tym bardziej, że nie ma uniwersalnych pakietów lecz pod każdą wersję jest dany pakiet. Co to oznacza? Robiąc plugin na powiedzmy silniku 1.8 i korzystamy z ich pakietów to pakiety nie zadziałają na np. 1.12 i tu przychodzą refleksje, ale zawsze też jest genialna wtyczka ProtocolLib (https://www.spigotmc.org/resources/protocollib.1997/).

 

Przykład użycia pakietów

No więc piszemy sobie plugin na disco zbroje. Wiadomo, wpisujemy komendę i inni gracze widzą nas w skórzanej zbroi, która zmienia kolory, ale to tylko efekt wizualny, my dalej mamy na sobie diamentowy armor. Zrobienie czegoś takiego bez pakietu byłoby niemożliwe. Dzięki pakietowi PacketPlayOutEntityEquipment możemy wysłać danemu graczowi zmianę ekwipunku wybranego gracza(tego, który ma disco).

 

 

Edytowane przez kerpson
Odnośnik do komentarza
https://skript.pl/temat/41809-packets-oraz-bug-w-mc/#findComment-262196
Udostępnij na innych stronach

  • Szifter zablokował(a) ten temat
Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...