Minecraft.PL

Baner serwera Minecraft.PL
  • Newsy
  • Forum
  • Pobierz
    • Gra i serwerMinecraft Download
    • SkinyMinecraft Download
  • Poradniki
    • Czym jest Minecraft?Czym jest minecraft
    • Crafting (Rzemiosło)Crafting minecraft
    • Zmiana skinaSkiny minecraft
    • Encyklopedia
      • Stworzenia
      • Jedzenie
      • Muzyka
      • Narzędzia
      • Piec
      • Rolnictwo
  • Discord

Strona główna » #1 Bukkit Plugins – Pierwszy plugin, podstawy

#1 Bukkit Plugins – Pierwszy plugin, podstawy

W dzisiejszej lekcji stworzymy nasz pierwszy plugin – podstawową komendę którą będziemy wpisywać na czacie. Dodatkowo dodamy do niego informacje o włączeniu i wyłączeniu pluginu która będzie się wyświetlać w konsoli.

Bukkit Plugins – Pierwszy plugin, podstawy

Na koniec zajmiemy się tworzeniem pliku plugin.yml oraz kompilacją pluginu aby działał na serwerze. Zapraszam do rozwinięcia lekcji. Dzisiejszy wpis będzie podstawą dla wszystkich pozostałych lekcji.

W pierwszej kolejności dopisujemy do naszej klasy rozszerzenie JavaPlugin, bo właśnie taki „bukkit plugin” piszemy.

Kod
public class TutorialMinecraft extends JavaPlugin

Jak widać na poniższym screenie prgoram podkreślił nam „Java Plugin” na czerwono – oznacza to błąd. W tym przypadku muismy zaimportować do naszej klasy to rozszerzenie. Uczynimy to najeżdzając na zaznaczono na czerwono element i importujemy.

Kod
public final Logger naszlogger = Logger.getLogger("Minecraft");public static TutorialMinecraft plugin;public void onDisable() {
PluginDescriptionFile naszPlik = this.getDescription();
this.naszlogger.info(naszPlik.getName() + ” zostal wylaczony!”);
}public void onEnable() {
PluginDescriptionFile naszPlik = this.getDescription();
this.naszlogger.info(naszPlik.getName() + ” wersja”
+ naszPlik.getVersion() + ” zostal wlaczony”);
}

Powyższy kod jest głównie odpowiedzialny za wyświetlanie naszych wiadomości w konsoli. Do znaczników OnEnable i OnDisable dodajemy kod który ma się uaktywniać gdy włączymy i wyłączymy nasz plugin.

Kod
public boolean onCommand(CommandSender sender, Command cmd, String commandLable, String[] args) { // 1Player gracz = (Player) sender; // 2if (commandLable.equalsIgnoreCase(„naszakomenda”)) { // 3
gracz.sendMessage(ChatColor.RED + „Nasza wiadomosc do wyslania”); // 4
}
return false; //5}

1. Kod komendy, możemy tu zmieniać atrybuty etc.
2. Definiujemy że nasz gracz z minecrafta jest wysyłającym komendę .
3. W javie za pomocą equalsIgnoreCase porównujemy stringi
4. Używamy wcześniejszej definicji, zwróć uwagę na ogromną możliwość opcji po wpisaniu gracz – my na początek użyjemy tylko sendMessage. Pojawił się tutaj również kolor wiadomości, cała lista kolorów ukaże nam się w menu podczas pisania kodu. Zwróć uwagę w jaki sposób łączymy zmienne
5. Bez powyższej linijki kodu boolean będzie niepoprawny

Klikamy na nasz projekt i upewniamy się że jest zaznaczony, i klikamy PPM na wolną przestrzeń obok nazwy naszej paczki. Następnie New -> File

Wpisujemy nazwę plugin.yml i zapisujemy

Kod

 

name: TutorialMinecraft
main: ja.SeeRazo.TutorialMinecraftpl.TutorialMinecraft
version: 1.0
description: >
             Plugin na potrzeby tutoriala minecraft.pl ! 
commands:
    naszakomenda:
        description: Nasza pierwsza komenda

Pierwszym krokiem będzie zaznaczenie naszego projektu prawym przyciskiem myszy i w otwartym menu wybieramy opcje Eksport

Z dostępnych rozszerzeń otwieramy katalog Java i następnie wybieramy JAR file

Upewniamy się że zaznaczyliśmy nasz projekt oraz wszystkie dopisane do niego pliki po prawej stronie

Wybieramy miejsce zapisu naszego plugina, oraz wpisujemy jego nazwę, następnie klikamy Finish

Tak wygląda efekt końcowy w konsoli:

a tak w grze

Pełny kod pluginu dla leniwych :P

 

A w następnej wersji zajmiemy się zmianą craftingu dla przedmiotów w grze. Np. siodła etc.

paź 7, 2013SeeRazo
Snapshot w piątek! [UPDATE: Wcale nie...]Snapshot 13w41a
Comments: 45
  1. TowerHunter
    12 lat temu

    Zróbcie poradnik robienia modów :)

    ReplyCancel
    • Superkocur
      12 lat temu

      A ty zjedz moje gówno i pocałuj mnie w dupe

      ReplyCancel
    • maciek
      12 lat temu

      Właśnie.

      ReplyCancel
  2. RafaelPL
    12 lat temu

    Czekałem na to tak długo lecz jednak niczym nie zostałem zaskoczony. Poradniki i ich wygląd super… Treść też niczego sobie tylko odstęp czasowy pomiędzy nimi zbyt długi ;c Czekam z ogromną „niecierpliwością” na kolejny post z owej serii! :)

    ReplyCancel
  3. Day2PlayPolska .
    12 lat temu

    zapomniałeś napisać że do porównywania stringów Z UWZGLĘDNIENIEM WIELKOŚCI LITER wykorzystuje sie equals()
    equalsIgnoreCase() jest do porównywania stringów IGNORUJAC WIELKOŚĆ LITER ;)

    ReplyCancel
    • ShookTea
      12 lat temu

      Zwykle osoby zajmujące się programowaniem muszą znać angielski, bo w tym języku jest cała dokumentacja danego języka programowania czy biblioteki. Ja w 4 klasie podstawówki dowiedziałem się, że „equals” znaczy „pasować” lub „równać się”, „ignore” – wiadomo, co to znaczy. Jedynie „Case” może sprawić trudność osobie, która zna to słowo jako „sprawa”, bo tutaj „equals ignore case” może brzmieć dość dziko.

      ReplyCancel
    • maciek
      12 lat temu

      ???

      ReplyCancel
  4. Superkocur
    12 lat temu

    kto ma mały problem z ogarnięciem Javy oraz tego artykułu, tego poproszę o odpowiedź na ten komentarz lub łapkę w górę pod tym komentarzem.

    UWAGA! TEN KOMENTARZ JEST ZASTRZEŻONY! ZAKAZ PODRÓBEK LUB KOPIOWANIA!

    Copyright © 2013 Superkocur
    PS. MAŁA INFORMACJA: Superkocur zalogowany i gość to jedna i ta sama osoba.

    ReplyCancel
    • SeeRazo
      12 lat temu

      Tak jak mówiłem wcześniej, ta seria nie będzie uczyć javy. To będą tylko gotowe przykłady kodu z opisem. Dwie pierwsze lekcje to najważniejszy wstęp bo potem ten kod będzie pojawiał się w każdym pluginie.

      ReplyCancel
      • Superkocur
        12 lat temu

        Niestety nie uczy Javy. To tak jak pisanie wypracowania w języku o którym wiesz tylko to, że istnieje.

        ReplyCancel
        • ShookTea
          12 lat temu

          Przecież napisał, że seria nie uczy Javy. Czego wy od niego chcecie?

          ReplyCancel
          • Superkocur
            12 lat temu

            No to pora trochę pospamować… Widzę już trochę miejsca na to…

            Przepraszam jeżeli te komentarze Cię wqurwiły. Chcę żebyś jedynie wiedział, że mogę zostać nowym redaktorem. Mam dużo czasu i z chęcią bym pisał o nowych updateach….

            Artykuły SeeRaza o Javie to gotowe „formułki do wypełnienia” nie mam nic przeciwko temu, oraz uważam, że te artykuły nie są jakieś złe i głupie czy coś…. Napewno pomogą wielu graczom spełnić swoje marzenia o plug-ina’ach… Chciałem jedynie powiedzieć, że same gotowe formułki nie wystarczą. Trzeba się Javy nauczyć, jeżeli chcemy napisać porządny, duży plug-in… Ale jak widzę, chyba nie do końca wskazywały na to moje poprzednie wypowiedzi…

            PS. No to zgoda będę pisał na forum swoje artykuły…….

            ReplyCancel
    • ShookTea
      12 lat temu

      A co ci dadzą komentarze lub łapki w górę? Chcesz wymusić na SeeRazo napisanie poradnika do Javy? A może bym tak napisał razem z nim?

      Przykro mi to mówić, ale ja przy nauce Javy korzystałem z 2 książek, każda po ok. 800 stron. „Java 2: Podstawy” i „Java: Tworzenie gier” (ta druga podaje też wiele informacji, których nie ma w pierwszej książce, jak np. wielowątkowość lub aplikacje sieciowe). Obydwie książki z wydawnictwa Helion. Nad pierwszą książką pracowało 2 autorów, nad drugą 4 lub 5 (nie pamiętam). Praca nad obydwoma trwała ok. 2 lat. Ty, pisząc tego typu komentarze, wnioskujesz, abyśmy przekazali całą 1600-stronicową wiedzę w kilku artykułach na tej stronie. Wcześniej od twoich komentarzy chciało mi śmiać (złośliwie, nie z rozbawieniem). Teraz zaczynam dostawać nerwów.

      ReplyCancel
      • Superkocur
        12 lat temu

        No to pora trochę pospamować… Widzę już trochę miejsca na to…

        Przepraszam jeżeli te komentarze Cię wqurwiły. Chcę żebyś jedynie wiedział, że mogę zostać nowym redaktorem. Mam dużo czasu i z chęcią bym pisał o nowych updateach….

        Artykuły SeeRaza o Javie to gotowe „formułki do wypełnienia” nie mam nic przeciwko temu, oraz uważam, że te artykuły nie są jakieś złe i głupie czy coś…. Napewno pomogą wielu graczom spełnić swoje marzenia o plug-ina’ach… Chciałem jedynie powiedzieć, że same gotowe formułki nie wystarczą. Trzeba się Javy nauczyć, jeżeli chcemy napisać porządny, duży plug-in… Ale jak widzę, chyba nie do końca wskazywały na to moje poprzednie wypowiedzi…

        PS. No to zgoda będę pisał na forum swoje artykuły…..

        ReplyCancel
  5. CraftRay
    12 lat temu

    Zróbcie plugin, który będzie działał tak ze gdy uderzy w kogoś piorun to nie zabierze mu HP, oraz nie będzie palił on przedmitów :D

    ReplyCancel
    • Superkocur
      12 lat temu

      Jeżeli ciekawi cię ta seria i ją czytasz, chcesz pisać plug-in’y, to może sam napiszesz takiego plug-in’a ….

      ReplyCancel
      • maciek
        12 lat temu

        Właśnie

        ReplyCancel
        • Superkocur
          12 lat temu

          Hmmm…… Phi hi hi hi….

          ReplyCancel
          • maciek
            12 lat temu

            ???

            ReplyCancel
          • Superkocur
            12 lat temu

            Właśnie nie wiem, co to twoje „właśnie” ma oznaczać…..
            Prawdopodobnie podzielasz moje zdanie. :D

            ReplyCancel
          • maciek
            12 lat temu

            No!

            ReplyCancel
  6. TheReduxPL
    12 lat temu

    Moim zdaniem te poradniki powinny być znacznie bardziej rozwinięte, bo prócz stworzenia pluginu na podstawie poradnika dobrze by było też wiedzieć, jak to wszystko działa. Jakieś tam wyjaśnienia są ale tu chodzi o same podstawy podstaw, czyli czym charakteryzuje się składnia Javy, co to jest „string” itd.
    Napisałeś, że „to będą tylko gotowe przykłady kodu z opisem” ale to przecież nie ma sensu bo osoba zupełnie zielona może i utworzy plugin – ale co dalej będzie mogła zrobić? Skończy się seria poradników i co dalej? Stanie w miejscu. Równie dobrze mogłeś dać gotowy kod i powiedzieć, gdzie i co pozmieniać, byłoby to samo.
    Z całym szacunkiem ale ta seria poradników nie ma sensu. I już.

    ReplyCancel
    • SeeRazo
      12 lat temu

      Sens to ma taki. Chcesz zmienić recepturę craftingu na swoim serwerze. Inaczej niż pluginem tego nie zrobisz. Czy znajdziesz gdzieś gotowy kod który to zrobi? Poradnik tłumaczy jak to zrobić i nic więcej. Jeśli chcesz się uczyć javy są od tego odpowiednie strony. Nie będę dosypywał piasku do istniejącej już piaskownicy. I już.

      Równie dobrze mogłeś dać gotowy kod i powiedzieć, gdzie i co pozmieniać, byłoby to samo. – Następne poradniki będą wyglądały podobnie.

      Jak się chce pisać pluginy w javie od podstaw to są od tego inne strony. To są tylko gotowe rozwiązania dla administratorów.

      ReplyCancel
      • TheReduxPL
        12 lat temu

        Istnieje oczywiście plugin do tworzenia własnych receptur w stole warsztatowym, przykładowy jest tutaj: http://dev.bukkit.org/bukkit-plugins/recipe-creator/

        „Poradnik tłumaczy jak to zrobić i nic więcej” – równie dobrze można było dać gotowy kod i napisać, co gdzie zmienić, potem tylko jak skompilować.

        „Jeśli chcesz się uczyć javy są od tego odpowiednie strony.” – dlatego właśnie ta seria nie ma sensu, bo jak nauczysz się Javy to opanowanie API Bukkita to kwestia kilku godzin. I będziesz miał z tego więcej pożytku i to nie tylko w Minecraft.

        ReplyCancel
        • SeeRazo
          12 lat temu

          Oczywiście jest dla CB 1.5.1-R0.2 Apr 16, 2013

          ReplyCancel
    • Superkocur
      12 lat temu

      masz trochę racji.

      ReplyCancel
  7. ssijcie pałe w waszą stronę
    12 lat temu

    a w dupie mam kur wa te wasze je bane poradniki. poj ebana ta wasza strona. zero nowych postów tylko pierd olone poradniki. konkurencja wymiata

    ReplyCancel
  8. Superkocur
    12 lat temu

    Wyszedł nowy snapshot: 13w41a Dnia: 10.10.2013r
    Oto niepełna lista zmian:
    – dodano kolorowe szybki i klocki szkła
    – usprawniono nowe komendy
    (tylko tyle zdążyłem zauważyć)
    Nareszcie będzie można robić witraże i nie tylko!

    ReplyCancel
    • heh
      12 lat temu

      superkocur na redaktora

      ReplyCancel
      • Superkocur
        12 lat temu

        No czasami… coś jest nie tak w moich komentarzach, ale chciałbym być redaktorem. Na pewno pracowałbym dynamiczniej niż obecni redaktorzy. A propo: Wyszedł snapshot 13w41b ! Poprawiono w nim 12 błędów.

        ReplyCancel
        • ShookTea
          12 lat temu

          Chyba pora pospamować i znowu napisać jedno i to samo. Zresztą, upatrzyłem już kilka innych miejsc, gdzie mogę to wstawić.

          Wy mówicie o lenistwie i niskiej spostrzegawczości, a ja mówię o do jasnej cholery dużej ilości pracy. NIE JESTEM gimbusem, który może sobie 8 godzin dziennie grać w MC. Oprócz tego, zbliża mi się teraz bierzmowanie, egzaminy, próby. Czas wolny: 0 sekund. Po raz kolejny też informuję, że można tworzyć własne artykuły na forum i przesyłać mi link na PW, a jeśli będą porządne, to je wstawię, więc zamiast marudzić o wyimaginowanym przez was lenistwie, sami ruszcie tyłki i napiszcie coś porządnego. Ciekawe, czy wam się uda.

          ReplyCancel
          • Superkocur
            12 lat temu

            No to pora trochę pospamować… Widzę już trochę miejsca na to…

            Przepraszam jeżeli te komentarze Cię wqurwiły. Chcę żebyś jedynie wiedział, że mogę zostać nowym redaktorem. Mam dużo czasu i z chęcią bym pisał o nowych updateach….

            Artykuły SeeRaza o Javie to gotowe „formułki do wypełnienia” nie mam nic przeciwko temu, oraz uważam, że te artykuły nie są jakieś złe i głupie czy coś…. Napewno pomogą wielu graczom spełnić swoje marzenia o plug-ina’ach… Chciałem jedynie powiedzieć, że same gotowe formułki nie wystarczą. Trzeba się Javy nauczyć, jeżeli chcemy napisać porządny, duży plug-in… Ale jak widzę, chyba nie do końca wskazywały na to moje poprzednie wypowiedzi…

            PS. No to zgoda będę pisał na forum swoje artykuły….

            ReplyCancel
  9. berni2905
    12 lat temu

    Snapshot dodany a tu jak zwykle nic…

    ReplyCancel
    • Superkocur
      12 lat temu

      jak to nic? a ja to co? mój komentarz jest poniżej.

      ReplyCancel
      • berni2905
        12 lat temu

        Tak, chodzi mi o to, że na serwisie nic nie piszą…

        ReplyCancel
        • Superkocur
          12 lat temu

          Masz rację. Mogli by się trochę zebrać…

          ReplyCancel
          • ShookTea
            12 lat temu

            Chyba pora pospamować i ZNOWU napisać jedno i to samo. Zresztą, upatrzyłem już kilka innych miejsc, gdzie mogę to wstawić.

            Wy mówicie o lenistwie i niskiej spostrzegawczości, a ja mówię o do jasnej cholery dużej ilości pracy. NIE JESTEM gimbusem, który może sobie 8 godzin dziennie grać w MC. Oprócz tego, zbliża mi się teraz bierzmowanie, egzaminy, próby. Czas wolny: 0 sekund. Po raz kolejny też informuję, że można tworzyć własne artykuły na forum i przesyłać mi link na PW, a jeśli będą porządne, to je wstawię, więc zamiast marudzić o wyimaginowanym przez was lenistwie, sami ruszcie tyłki i napiszcie coś porządnego. Ciekawe, czy wam się uda.

            ReplyCancel
          • Superkocur
            12 lat temu

            No to pora trochę pospamować… Widzę już trochę miejsca na to…

            Przepraszam jeżeli te komentarze Cię wqurwiły. Chcę żebyś jedynie wiedział, że mogę zostać nowym redaktorem. Mam dużo czasu i z chęcią bym pisał o nowych updateach….

            Artykuły SeeRaza o Javie to gotowe „formułki do wypełnienia” nie mam nic przeciwko temu, oraz uważam, że te artykuły nie są jakieś złe i głupie czy coś…. Napewno pomogą wielu graczom spełnić swoje marzenia o plug-ina’ach… Chciałem jedynie powiedzieć, że same gotowe formułki nie wystarczą. Trzeba się Javy nauczyć, jeżeli chcemy napisać porządny, duży plug-in… Ale jak widzę, chyba nie do końca wskazywały na to moje poprzednie wypowiedzi…

            PS. No to zgoda będę pisał na forum swoje artykuły….

            ReplyCancel
  10. SeeRazo
    12 lat temu

    Kolejny artykuł może się opóźnić. Zastanawiam się nad zmianą formy serii.

    ReplyCancel
  11. ssud16
    12 lat temu

    jeżeli chodzi o funkcje equalsIgnoreCase to się nie zgodzę że porównuje Stringi co do spójności to funkcja porównuje Stringi omijając znaczenie wielkości znaków a jeżeli ktoś chce aby porównać dokładnie trzeba użyć np. commandLable.equals(„naszakomenda”);
    2 błąd:
    na nie których serwerach sprawia to błąd wiec myślę że to jest dość ważne a mianowicie jeżeli komenda została wykonana powinieneś napisać przed zakończeniem : return true;
    czyli powinno być:

    if(commandLable.equalsIgnoreCase(„naszakomenda”)){
    gracz.sendMessage(ChatColor.RED + „Nasza wiadomość do wyslania”);
    return true;
    }
    czasami pominięcie tego sprawia crash pluginu na niektórych serwerach albo z pomocą użycia komendy na serwerze,
    ale tak po za tym cały artykuł jest ładnie napisany i myślę, że jest dobry nawet dla osób które nie znają się w Javie.

    ReplyCancel
    • ShookTea
      12 lat temu

      1. Ale właśnie chodzi o to, by użyć equalsIgnoreCase, a nie equals. Jeśli użyjesz zwykłego „equals”, to plugin będzie wykrywał różnicę między komendą /test a komendą /Test, a tego nie chcemy. Teoretycznie, ja byłem zawsze przyzwyczajany do pisania komend na np. terminalu linuxa zawsze z małej litery, ale ktoś może mieć inne przyzwyczajenia.

      2. Nie znam się na Bukkicie, wydaje mi się jednak, że faktycznie jeśli zwracany jest boolean, to gdy komenda zostaje prawidłowo wykonana, powinna zwracać true, a nie false, ale tutaj już oddaję głos @SeeRazo:disqus.

      ReplyCancel
  12. Adam Wadiak
    12 lat temu

    Dziękuję ci ekipo Microsoft za stworzenie tak genialnego systemu operacyjnego jakim jest Windows. Windows jest ojcem wujka Google i to dzięki niemu świat poznał nową technologię.. Nie bez powodu Bill Gates jest najbogatszym człowiekiem na świecie. Pewnie się zastanawiacie po co ja to piszę ? po prostu wiem, że minecraft (o którym jest ta strona) najprawdopodobniej nigdy by bez Windowsa nie powstał ! pewnie kumają tylko osoby 18 lub 15-16+ a dzieci to poprostu IDE GRACI W MAJNKRAFTA i tyle..

    ReplyCancel
    • ShookTea
      12 lat temu

      Że się tak wyrażę po programistycznemu FALSE (lub, jak kto woli, 0). Aplikacje Java można odpalać tak samo bez względu na system.

      BTW, Bill Gates od dość długiego czasu nie jest najbogatszym człowiekiem świata. Jest nim Carlos Slim Helu, który ma 6 miliardów dolarów więcej. Windows nie jest ojcem wujka Google, ojcem Google jest głównie Larry Page. Poza tym, Google i Microsoft dosyć mocno ze sobą konkurują.
      Dalej, system okienek, dzięki którym zasłynął Windows, został stworzony przez Steve’a Jobsa, który przed wydaniem pierwszego OS od Apple pochwalił się tym swojemu bliskiemu wtedy przyjacielowi, Billowi Gatesowi, a ten ukradł mu pomysł.
      Jeszcze dalej, gdyby nie IBM, Windows nigdy nie zdobyłby popularności. IBM stworzyło komputery klasy PC, czyli takie, z których korzystamy do tej pory, ale zdecydowali (co było ich ogromnym błędem), że zadanie przygotowania systemu operacyjnego zrzucą na kogoś innego. Wtedy taki jeden malutki człowieczek o imieniu Bill zaproponował swoje usługi i stworzył MS-DOS, który odniósł dużą popularność, a następnie wyewoluował w Windows 1.0. A później, wiadomo… 2.0, 3.0, 3.1, 95, 98, 99, 2000, XP, Vista, 7, 8, 8.1…

      A jeśli chodzi o „IDE GRACI W MAJNKRAFTA”… jestem za.

      ReplyCancel
      • Superkocur
        12 lat temu

        Dobre !!! „IDE GRACI W MAJNKRAFTA…”

        ReplyCancel
        • Adam Wadiak
          12 lat temu

          xD

          ReplyCancel

Dodaj komentarz Anuluj pisanie odpowiedzi

SeeRazo

Zaczynałem jako mod na freebuild.pl, dla tego serwera kupiłem konto premium :) Od 11 roku życia interesuję się tworzeniem stron, administracją for i innymi tego typu. Jestem wielkim optymistą i w każdej sytuacji widzę tylko dobre strony. Jeśli chcesz abym wykonał szablon dla ciebie, zajrzyj na ipbaddons.com. Pozdrawiam.

12 lat temu 45 komentarzy Minecraft1,476

© Copyright 2026 by Minecraft.PL – Wszelkie prawa zastrzeżone

Nasze utrzymanie!
Discord



Czym jest Minecraft?
Wyobraź sobie możliwość budowania jak za czasów klocków lego, świat nawiedzany przez przeróżne potwory, od zombie do wybuchających creeperów, przygodówkę, kiedy to wpadamy do ciemnej jaskini zapominając nagle gdzie było wyjście, połącz z wypixelowaną grafiką i masz Minecraft'a.

Czytaj dalej
|Serwery Minecraft
|Serwer Discord
|Skontaktuj się z nami!
2026 © Minecraft.PL
Strona Minecraft.pl nie jest w żaden sposób powiązana z Mojang!