Водич
Како направити Minecraft плагин за квестове
Ажурирано 18. октобар 2026.
Квестови дају играчима разлог да играју: убиј 20 зомбија, ископај 64 гвожђа, донеси сељаку 10 хлебова. Плагин за квестове чине три ствари: циљеви који слушају догађаје у игри, напредак сачуван за сваког играча и награде. Ако квестове дефинишеш у конфигурационом фајлу, можеш да додајеш нове без дирања кода.
Промени квестове и награде по својој мери.
Генериши ово уз CodexeКорак по корак
1.Изабери врсте циљева
Почни са неколико: убиј одређену врсту моба, ломи или постављај блокове, сакупи предмете, направи предмет, стигни до неког места, разговарај са NPC-јем. Сваки квест се прави од ових.
2.Дефиниши квестове у фајлу
Сваки квест у
quests.yml: id, име, опис, циљеви са количинама, награде и услови (претходни квест, дозвола, ниво).3.Прати напредак по играчу
Слушај догађаје иза сваког циља и додај их играчевом напретку. Чувај га у SQLite-у или фајлу да преживи одјаве и рестартовања.
4.Прикажи напредак
Мени
/questsса активним и завршеним квестовима, плус порука, наслов или boss bar кад се напредак промени.5.Дај награде
Предмети, искуство, новац преко Vault-а или конзолне команде као што је
lp user %player% permission set ...за све остало.6.Направи билд и заврши квест у игри
Пусти Codexe да га компајлира, уђи на тест сервер, прихвати квест и заврши га. Затим рестартуј и провери да ли су напредак и награде сачувани.
Циљеви и догађаји иза њих
| Циљ | Догађај | Детаљ о коме треба одлучити |
|---|---|---|
| Убиј мобове | EntityDeathEvent | Рачунај само убиства играча или и убиства његових љубимаца и стрела |
| Ломи блокове | BlockBreakEvent | Игнориши блокове које је играч поставио, иначе ће играчи постављати и ломити исти блок |
| Сакупи предмете | Провера инвентара или догађај подизања | Да ли се предмети одузимају кад се квест преда |
| Направи предмете | CraftItemEvent | Израда shift-кликом прави више комада одједном |
| Стигни до места | PlayerMoveEvent | Проверавај само кад играч пређе на други блок, а не при сваком покрету |
| Разговарај са NPC-јем | PlayerInteractEntityEvent | Који ентитет даје квест |
Даваоци квестова
Најједноставнији давалац квеста је команда или мени. За лик у свету, сељак или armour stand са сопственим именом и ознаком PersistentDataContainer ради без других плагина: плагин га препознаје кад га играч кликне десним кликом. Ако твој сервер већ користи NPC плагин као што је Citizens, наведи га у захтеву да би се плагин повезао са њим.
Пример описа
„Paper 1.21.4 плагин за квестове под називом Quests. Врсте циљева: убиј мобове, ломи блокове (које нису поставили играчи), сакупи предмете и разговарај са сељаком означеним као давалац квеста. Квестови дефинисани у quests.yml са именом, циљевима, потребним квестом и наградама (предмети, искуство, Vault новац, конзолне команде). /quests отвара мени са доступним, активним и завршеним квестовима. Напредак се приказује у action bar-у. Највише 3 активна квеста. Дневни квестови се ресетују у поноћ по времену сервера. Напредак се чува у SQLite-у.“
Дневни и поновљиви квестови
- Наведи кад се ресетују: у одређено време сваког дана или 24 сата након што их је играч завршио.
- Наведи да ли су дневни квестови насумични за сваког играча или исти за све.
- Чувај време последњег завршетка, а не заставицу, да би ресетовања радила и док је сервер угашен.
Питања
Могу ли квестови да користе PlaceholderAPI?
Да. Затражи placeholder-е као што су активни квест и његов напредак, да би scoreboard-и и tab листе могли да их приказују. Наведи PlaceholderAPI у захтеву да би био додат као зависност.
Могу ли да пишем квестове у Skript-у?
Мали системи квестова стају у Skript скрипту са променљивама. Много врста циљева, менији и сачуван напредак за стотине играча лакше се држе брзим и уредним у плагину.
Како да проверим да ли квестови раде?
Одиграј их на Codexe тест серверу и додај тестове својим речима, на пример „обичан играч покреће /quests и види да се отвара мени“. Тестови проверавају поруке, предмете и меније, а не мобове или блокове у свету.
Направи свој плагин за квестове
Овај промпт се отвара спреман за слање:
“Paper 1.21.4 плагин за квестове: врсте циљева убиј мобове, ломи блокове које нису поставили играчи, сакупи предмете и разговарај са означеним сељаком; квестови у quests.yml са циљевима, потребним квестом и наградама (предмети, XP, Vault новац, конзолне команде); мени /quests са доступним, активним и завршеним квестовима; напредак у action bar-у; највише 3 активна квеста; дневни квестови се ресетују у поноћ; напредак се чува у SQLite-у.”
Генериши ово уз Codexe