Poradnik
Jak zrobić plugin z questami do Minecrafta
Zaktualizowano: 18 października 2026
Questy dają graczom powód do gry: zabij 20 zombie, wykop 64 żelaza, przynieś osadnikowi 10 chlebów. Plugin z questami to trzy rzeczy: cele, które nasłuchują zdarzeń gry, postęp zapisywany dla każdego gracza i nagrody. Definiowanie questów w pliku konfiguracyjnym pozwala dodawać nowe bez ruszania kodu.
Zmień questy i nagrody na swoje.
Wygeneruj to w CodexeKrok po kroku
1.Wybierz typy celów
Zacznij od kilku: zabij typ moba, zniszcz lub postaw bloki, zbierz przedmioty, wytwórz, dotrzyj do miejsca, porozmawiaj z NPC. Każdy quest składa się z tych elementów.
2.Zdefiniuj questy w pliku
Każdy quest w
quests.yml: identyfikator, nazwa, opis, cele z ilościami, nagrody i wymagania (wcześniejszy quest, uprawnienie, poziom).3.Śledź postęp każdego gracza
Nasłuchuj zdarzeń stojących za każdym celem i dodawaj do postępu gracza. Zapisuj go w SQLite lub w pliku, żeby przetrwał wylogowania i restarty.
4.Pokazuj postęp
Menu
/questsz aktywnymi i ukończonymi questami oraz wiadomość, tytuł lub pasek bossa, gdy postęp się zmienia.5.Dawaj nagrody
Przedmioty, doświadczenie, pieniądze przez Vault albo komendy konsoli, takie jak
lp user %player% permission set ..., do wszystkiego innego.6.Zbuduj i ukończ quest w grze
Pozwól Codexe go skompilować, wejdź na serwer testowy, przyjmij quest i go ukończ. Potem zrestartuj serwer i sprawdź, czy postęp i nagrody zostały zapisane.
Cele i zdarzenia za nimi
| Cel | Zdarzenie | Szczegół do ustalenia |
|---|---|---|
| Zabijanie mobów | EntityDeathEvent | Licz tylko zabójstwa gracza czy też jego zwierzaków i strzał |
| Niszczenie bloków | BlockBreakEvent | Ignoruj bloki postawione przez gracza, inaczej gracze będą stawiać i niszczyć ten sam blok |
| Zbieranie przedmiotów | Sprawdzenie ekwipunku lub zdarzenie podniesienia | Czy przedmioty są zabierane przy oddaniu questa |
| Wytwarzanie przedmiotów | CraftItemEvent | Crafting z Shiftem tworzy kilka sztuk naraz |
| Dotarcie do miejsca | PlayerMoveEvent | Sprawdzaj tylko, gdy gracz zmienia blok, a nie przy każdym ruchu |
| Rozmowa z NPC | PlayerInteractEntityEvent | Który byt jest zleceniodawcą questa |
Zleceniodawcy questów
Najprostszym zleceniodawcą jest komenda lub menu. Dla postaci w świecie wystarczy osadnik lub stojak na zbroję z własną nazwą i tagiem PersistentDataContainer, bez innych pluginów: plugin rozpoznaje go, gdy gracz kliknie go prawym przyciskiem. Jeśli twój serwer już używa pluginu NPC, takiego jak Citizens, wymień go w prośbie, żeby plugin się pod niego podpiął.
Przykładowy opis
„Plugin z questami na Paper 1.21.4 o nazwie Quests. Typy celów: zabijanie mobów, niszczenie bloków (nie postawionych przez graczy), zbieranie przedmiotów i rozmowa z osadnikiem oznaczonym jako zleceniodawca. Questy zdefiniowane w quests.yml z nazwą, celami, wymaganym questem i nagrodami (przedmioty, doświadczenie, pieniądze z Vault, komendy konsoli). /quests otwiera menu z dostępnymi, aktywnymi i ukończonymi questami. Postęp pokazywany na pasku akcji. Maksymalnie 3 aktywne questy. Questy dzienne resetują się o północy czasu serwera. Postęp zapisywany w SQLite.”
Questy dzienne i powtarzalne
- Wpisz, kiedy się resetują: o stałej godzinie każdego dnia czy 24 godziny po ukończeniu przez gracza.
- Wpisz, czy questy dzienne są losowane dla każdego gracza osobno, czy takie same dla wszystkich.
- Zapisuj czas ostatniego ukończenia, a nie flagę, żeby resety działały także wtedy, gdy serwer jest wyłączony.
Pytania
Czy questy mogą korzystać z PlaceholderAPI?
Tak. Poproś o placeholdery, takie jak aktywny quest i jego postęp, żeby tablice wyników i lista graczy mogły je pokazywać. Wymień PlaceholderAPI w prośbie, żeby został dodany jako zależność.
Czy mogę pisać questy w Skript?
Małe systemy questów mieszczą się w skrypcie Skript ze zmiennymi. Wiele typów celów, menu i zapisany postęp setek graczy łatwiej utrzymać szybkie i uporządkowane w pluginie.
Jak sprawdzić, czy questy działają?
Zagraj w nie na serwerze testowym Codexe i dodaj testy własnymi słowami, na przykład „zwykły gracz wpisuje /quests i widzi, że otwiera się menu”. Testy sprawdzają wiadomości, przedmioty i menu, a nie moby czy bloki w świecie.
Zrób swój plugin z questami
Ten prompt otworzy się gotowy do wysłania:
“Plugin z questami na Paper 1.21.4: typy celów zabijanie mobów, niszczenie bloków nie postawionych przez graczy, zbieranie przedmiotów i rozmowa z oznaczonym osadnikiem; questy w quests.yml z celami, wymaganym questem i nagrodami (przedmioty, XP, pieniądze z Vault, komendy konsoli); menu /quests z dostępnymi, aktywnymi i ukończonymi questami; postęp na pasku akcji; maks. 3 aktywne questy; questy dzienne resetowane o północy; postęp zapisywany w SQLite.”
Wygeneruj to w Codexe