Ghid
Cum faci obiecte custom cu un plugin
Actualizat 18 octombrie 2026
Săbiile, baghetele, cheile și uneltele custom sunt printre funcțiile de plugin cele mai cerute. Un plugin nu poate adăuga în joc un obiect cu adevărat nou, dar poate lua un obiect vanilla, să îi dea un nume, lore și un tag ascuns, și să reacționeze când un jucător îl folosește. Jucătorii intră cu jocul normal, fără moduri.
Schimbă obiectele cu ale tale.
Generează asta cu CodexePas cu pas
1.Enumeră obiectele
Pentru fiecare obiect: materialul de bază, numele afișat, liniile de lore și ce face. „Un toiag de blaze numit Bagheta de Foc care trage o minge de foc la click dreapta, cooldown de 5 secunde” este un obiect complet.
2.Marchează-le cu PersistentDataContainer
Stochează un id precum
fire_wandînPersistentDataContainer-ul obiectului, cu unNamespacedKey. Pluginul recunoaște obiectul după acel tag, nu după nume, așa că redenumirea lui la o nicovală nu creează o copie.3.Scrie abilitățile
Fiecare abilitate este un event listener:
PlayerInteractEventpentru click dreapta,EntityDamageByEntityEventpentru lovituri,BlockBreakEventpentru unelte. Adaugă cooldown-uri per jucător și per obiect.4.Decide cum le obțin jucătorii
O comandă de admin
/give, o rețetă de crafting, un magazin, drop-uri de la mobi sau recompense din crate-uri.5.Fă totul configurabil
Numele, lore-ul, damage-ul, cooldown-urile și rețetele în
config.yml, ca să poți echilibra obiectele fără un build nou.6.Construiește și încearcă fiecare obiect
Lasă Codexe să compileze pluginul, intră pe serverul de testare cu Încearcă acum, dă-ți fiecare obiect și folosește-l.
De ce un tag și nu numele
Verificarea numelui afișat sau a lore-ului este greșeala clasică: orice jucător cu o nicovală poate redenumi un băț în „Bagheta de Foc”. PersistentDataContainer (Minecraft 1.14 și mai nou) stochează pe obiect date pe care jucătorii nu le pot edita și care supraviețuiesc repornirilor, cuferelor și schimburilor, pentru că fac parte din obiect.
Pe 1.8 până la 1.13 nu există PersistentDataContainer; plugin-urile folosesc NBT printr-o bibliotecă sau un marcaj ascuns în lore. Scrie versiunea în cerere, iar Codexe scrie metoda pe care o suportă acea versiune.
Abilitățile și evenimentele din spatele lor
| Abilitate | Eveniment | Note |
|---|---|---|
| Putere la click dreapta | PlayerInteractEvent | Verifică mâna, evenimentul se declanșează o dată pentru fiecare mână |
| Damage sau efecte în plus la lovire | EntityDamageByEntityEvent | Verifică dacă atacatorul este un jucător care ține obiectul |
| Unealtă de minat pe suprafață | BlockBreakEvent | Respectă plugin-urile de protecție precum WorldGuard |
| Efect pasiv cât timp e ținut în mână | Un task repetat sau PlayerItemHeldEvent | Elimină efectul când obiectul este pus deoparte |
| Arc sau proiectil | EntityShootBowEvent, ProjectileHitEvent | Marchează proiectilul ca să știi de unde a venit |
Texturi și modele
Un plugin schimbă ce face un obiect, nu cum arată. Un aspect custom are nevoie de un resource pack pe care jucătorii îl descarcă: pe versiunile mai vechi obiectul poartă un număr CustomModelData pe care pack-ul îl leagă de un model, iar de la 1.21.2 un obiect poate indica și propriul model prin componenta item_model. Fără pack, obiectul arată ca materialul de bază cu un nume custom, ceea ce e în regulă pentru multe servere.
Exemplu de descriere
„Un plugin Paper 1.21.4 numit MagicItems. Trei obiecte, fiecare marcat cu un id PersistentDataContainer: Bagheta de Foc (toiag de blaze, click dreapta trage o minge de foc, cooldown 5 s), Lama de Gheață (sabie de fier, loviturile dau Slowness II timp de 3 s), Târnăcopul Minerului (târnăcop de diamant, sparge 3x3, dar nu în regiunile WorldGuard unde jucătorul nu poate construi). /mi give <player> <item> pentru magicitems.admin. Rețete cu formă pentru fiecare. Numele, lore-ul, cooldown-urile și rețetele în config.yml.”
Întrebări
Plugin sau mod pentru obiecte custom?
Un plugin dacă jucătorii trebuie să intre cu jocul normal: obiectele sunt obiecte vanilla cu comportament nou. Un mod dacă ai nevoie de obiecte sau blocuri cu adevărat noi, cu randare proprie, pe care apoi fiecare jucător le instalează. Vezi plugin vs mod.
Pot folosi ItemsAdder sau Nexo cu el?
Pluginul tău poate depinde de ele, dar sunt plugin-uri plătite: serverul de testare Codexe nu le poate instala, așa că un plugin care cere unul dintre ele nu se va activa acolo. Dependențele gratuite listate în plugin.yml sunt instalate pentru tine pe serverul de testare.
Obiectele nu mai funcționează după un update?
Obiectele marcate cu un PersistentDataContainer își păstrează tag-ul de la un update Minecraft la altul. Abilitățile pot avea nevoie de un build nou pentru noul API; vezi actualizarea unui plugin.
Fă-ți obiectele custom
Acest prompt se deschide gata de trimis:
“Un plugin Paper 1.21.4 numit MagicItems cu trei obiecte marcate prin PersistentDataContainer: Bagheta de Foc (toiag de blaze, click dreapta trage o minge de foc, cooldown de 5 secunde), Lama de Gheață (sabie de fier, Slowness II timp de 3 secunde la lovire), Târnăcopul Minerului (târnăcop de diamant care minează 3x3). /mi give pentru magicitems.admin, o rețetă cu formă pentru fiecare, numele, lore-ul, cooldown-urile și rețetele în config.yml.”
Generează asta cu Codexe