Príručka
Ako vytvoriť vlastné predmety pluginom
Aktualizované 18. októbra 2026
Vlastné meče, prútiky, kľúče a nástroje patria medzi najžiadanejšie funkcie pluginov. Plugin nedokáže pridať do hry naozaj nový predmet, ale môže vziať vanilla predmet, dať mu názov, lore a skrytú značku a reagovať, keď ho hráč použije. Hráči sa pripájajú s bežnou hrou, bez módov.
Zmeň predmety na svoje.
Vygeneruj to v CodexeKrok za krokom
1.Vypíš predmety
Pre každý predmet: základný materiál, zobrazovaný názov, riadky lore a čo robí. „Blaze rod s názvom Fire Wand, ktorý pri pravom kliku vystrelí ohnivú guľu, cooldown 5 sekúnd“ je kompletný predmet.
2.Označ ich cez PersistentDataContainer
Ulož ID, napríklad
fire_wand, doPersistentDataContainerpredmetu sNamespacedKey. Plugin predmet rozpozná podľa tejto značky, nie podľa názvu, takže premenovanie na nákove nevytvorí kópiu.3.Napíš schopnosti
Každá schopnosť je event listener:
PlayerInteractEventpre pravé kliky,EntityDamageByEntityEventpre zásahy,BlockBreakEventpre nástroje. Pridaj cooldowny pre každého hráča a každý predmet.4.Rozhodni, ako ich hráči získajú
Príkaz
/givepre adminov, recept na craftenie, obchod, drop z mobov alebo odmeny z truhlíc.5.Sprav všetko nastaviteľné
Názvy, lore, poškodenie, cooldowny a recepty v
config.yml, aby si mohol predmety vyvažovať bez nového buildu.6.Zostav a vyskúšaj každý predmet
Nechaj Codexe plugin skompilovať, cez Vyskúšaj teraz sa pripoj na testovací server, daj si každý predmet a použi ho.
Prečo značka a nie názov
Kontrola zobrazovaného názvu alebo lore je klasická chyba: každý hráč s nákovou môže premenovať palicu na „Fire Wand“. PersistentDataContainer (Minecraft 1.14 a novší) ukladá na predmet dáta, ktoré hráči nemôžu upraviť, a prežijú reštarty, truhlice aj obchodovanie, pretože sú súčasťou predmetu.
Vo verziách 1.8 až 1.13 PersistentDataContainer neexistuje; pluginy používajú NBT cez knižnicu alebo skrytú značku v lore. Uveď v zadaní verziu a Codexe napíše prístup, ktorý táto verzia podporuje.
Schopnosti a eventy za nimi
| Schopnosť | Udalosť | Poznámky |
|---|---|---|
| Sila na pravý klik | PlayerInteractEvent | Skontroluj ruku, spúšťa sa raz pre každú ruku |
| Extra poškodenie alebo efekty pri zásahu | EntityDamageByEntityEvent | Skontroluj, že útočník je hráč, ktorý drží predmet |
| Nástroj na plošné ťaženie | BlockBreakEvent | Rešpektuj pluginy na ochranu, napríklad WorldGuard |
| Pasívny efekt, kým ho hráč drží | Opakovaná úloha alebo PlayerItemHeldEvent | Odstráň efekt, keď hráč predmet odloží |
| Luk alebo projektil | EntityShootBowEvent, ProjectileHitEvent | Označ projektil, aby si vedel, odkiaľ prišiel |
Textúry a modely
Plugin mení to, čo predmet robí, nie ako vyzerá. Vlastný vzhľad potrebuje resource pack, ktorý si hráči stiahnu: v starších verziách nesie predmet číslo CustomModelData, ktoré pack priradí k modelu, a od 1.21.2 môže predmet ukazovať aj na vlastný model cez komponent item_model. Bez packu vyzerá predmet ako jeho základný materiál s vlastným názvom, čo mnohým serverom stačí.
Príklad popisu
„Plugin pre Paper 1.21.4 s názvom MagicItems. Tri predmety, každý označený ID v PersistentDataContainer: Fire Wand (blaze rod, pravý klik vystrelí ohnivú guľu, cooldown 5 s), Frost Blade (železný meč, zásahy dávajú Slowness II na 3 s), Miner's Pick (diamantový krompáč, ťaží 3x3, ale nie v regiónoch WorldGuardu, kde hráč nemôže stavať). /mi give <player> <item> pre magicitems.admin. Tvarované recepty pre každý. Názvy, lore, cooldowny a recepty v config.yml.“
Otázky
Plugin, alebo mod na vlastné predmety?
Plugin, ak sa majú hráči pripájať s bežnou hrou: predmety sú vanilla predmety s novým správaním. Mod, ak potrebuješ naozaj nové predmety alebo bloky s vlastným vykresľovaním, ktorý si potom nainštaluje každý hráč. Pozri plugin alebo mod.
Môžem s tým používať ItemsAdder alebo Nexo?
Tvoj plugin od nich môže závisieť, ale sú to platené pluginy: testovací server Codexe ich nevie nainštalovať, takže plugin, ktorý niektorý z nich vyžaduje, sa tam nezapne. Bezplatné závislosti uvedené v plugin.yml sa na testovací server nainštalujú za teba.
Prestanú predmety po aktualizácii fungovať?
Predmety označené cez PersistentDataContainer si značku zachovajú aj pri aktualizáciách Minecraftu. Schopnosti môžu potrebovať nový build pre nové API; pozri aktualizácia pluginu.
Vytvor svoje vlastné predmety
Toto zadanie sa otvorí pripravené na odoslanie:
“Plugin pre Paper 1.21.4 s názvom MagicItems s tromi predmetmi označenými cez PersistentDataContainer: Fire Wand (blaze rod, pravý klik vystrelí ohnivú guľu, cooldown 5 sekúnd), Frost Blade (železný meč, Slowness II na 3 sekundy pri zásahu), Miner's Pick (diamantový krompáč, ktorý ťaží 3x3). /mi give pre magicitems.admin, tvarovaný recept pre každý, názvy, lore, cooldowny a recepty v config.yml.”
Vygeneruj to v Codexe