Príručka
Ako vytvoriť plugin s questami pre Minecraft
Aktualizované 18. októbra 2026
Questy dávajú hráčom dôvod hrať: zabi 20 zombíkov, vyťaž 64 železa, prines dedinčanovi 10 chlebov. Plugin s questami tvoria tri veci: ciele, ktoré počúvajú herné eventy, postup uložený pre každého hráča a odmeny. Keď questy definuješ v konfiguračnom súbore, môžeš pridávať nové bez zásahu do kódu.
Zmeň questy a odmeny podľa seba.
Vygeneruj to v CodexeKrok za krokom
1.Vyber typy cieľov
Začni s niekoľkými: zabiť určitý typ moba, zničiť alebo položiť bloky, zozbierať predmety, vycraftiť, dostať sa na miesto, porozprávať sa s NPC. Každý quest sa skladá z týchto.
2.Definuj questy v súbore
Každý quest v
quests.yml: ID, názov, popis, ciele s počtami, odmeny a požiadavky (najprv iný quest, oprávnenie, úroveň).3.Sleduj postup každého hráča
Počúvaj eventy za každým cieľom a pripočítavaj k postupu hráča. Ukladaj ho do SQLite alebo do súboru, aby prežil odhlásenia aj reštarty.
4.Zobraz postup
Menu
/questss aktívnymi a dokončenými questami plus správa, titulok alebo boss bar pri zmene postupu.5.Rozdávaj odmeny
Predmety, skúsenosti, peniaze cez Vault alebo príkazy z konzoly, napríklad
lp user %player% permission set ..., na všetko ostatné.6.Zostav plugin a dokonči quest v hre
Nechaj Codexe plugin skompilovať, pripoj sa na testovací server, prijmi quest a dokonči ho. Potom server reštartuj a skontroluj, či sa postup a odmeny uložili.
Ciele a eventy za nimi
| Cieľ | Udalosť | Detail na rozhodnutie |
|---|---|---|
| Zabiť moby | EntityDeathEvent | Počítať iba zabitia hráčom, alebo aj jeho zvieratami a šípmi |
| Zničiť bloky | BlockBreakEvent | Ignoruj bloky, ktoré položil hráč, inak budú hráči klásť a ničiť ten istý blok |
| Zozbierať predmety | Kontrola inventára alebo event zdvihnutia | Či sa predmety pri odovzdaní questu zoberú |
| Vycraftiť predmety | CraftItemEvent | Craftenie so shift-klikom vyrobí niekoľko kusov naraz |
| Dostať sa na miesto | PlayerMoveEvent | Kontroluj iba vtedy, keď hráč zmení blok, nie pri každom pohybe |
| Porozprávať sa s NPC | PlayerInteractEntityEvent | Ktorá entita zadáva quest |
Zadávatelia questov
Najjednoduchší zadávateľ questov je príkaz alebo menu. Pre postavu vo svete funguje bez ďalších pluginov dedinčan alebo armor stand s vlastným menom a značkou v PersistentDataContainer: plugin ho rozpozná, keď naň hráč klikne pravým tlačidlom. Ak tvoj server už používa plugin na NPC, napríklad Citizens, spomeň ho v zadaní, aby sa naň plugin napojil.
Príklad popisu
„Plugin s questami pre Paper 1.21.4 s názvom Quests. Typy cieľov: zabiť moby, zničiť bloky (nepoložené hráčmi), zozbierať predmety a porozprávať sa s dedinčanom označeným ako zadávateľ questov. Questy definované v quests.yml s názvom, cieľmi, požadovaným questom a odmenami (predmety, skúsenosti, peniaze z Vaultu, príkazy z konzoly). /quests otvorí menu s dostupnými, aktívnymi a dokončenými questami. Postup zobrazený v action bare. Najviac 3 aktívne questy. Denné questy sa resetujú o polnoci podľa času servera. Postup uložený v SQLite.“
Denné a opakovateľné questy
- Uveď, kedy sa resetujú: v pevnú hodinu každý deň, alebo 24 hodín po tom, čo ich hráč dokončil.
- Uveď, či sú denné questy pre každého hráča náhodné, alebo pre všetkých rovnaké.
- Ukladaj čas posledného dokončenia, nie príznak, aby resety fungovali, aj keď je server vypnutý.
Otázky
Môžu questy používať PlaceholderAPI?
Áno. Požiadaj o placeholdery, napríklad aktívny quest a jeho postup, aby ich mohli zobrazovať scoreboardy a tab listy. Spomeň PlaceholderAPI v zadaní, aby sa pridalo ako závislosť.
Môžem questy napísať v Skripte?
Malé systémy questov sa zmestia do Skriptu s premennými. Veľa typov cieľov, menu a uložený postup pre stovky hráčov sa v plugine ľahšie udržia rýchle a prehľadné.
Ako overím, že questy fungujú?
Zahraj si ich na testovacom serveri Codexe a pridaj testy vlastnými slovami, napríklad „bežný hráč spustí /quests a uvidí, že sa otvorí menu“. Testy kontrolujú správy, predmety a menu, nie moby ani bloky vo svete.
Vytvor svoj plugin s questami
Toto zadanie sa otvorí pripravené na odoslanie:
“Plugin s questami pre Paper 1.21.4: typy cieľov zabiť moby, zničiť bloky nepoložené hráčmi, zozbierať predmety a porozprávať sa s označeným dedinčanom; questy v quests.yml s cieľmi, požadovaným questom a odmenami (predmety, XP, peniaze z Vaultu, príkazy z konzoly); menu /quests s dostupnými, aktívnymi a dokončenými questami; postup v action bare; najviac 3 aktívne questy; denné questy sa resetujú o polnoci; postup uložený v SQLite.”
Vygeneruj to v Codexe