Guide

Comment créer des objets personnalisés avec un plugin

Mis à jour le 18 octobre 2026

Épées, baguettes, clés et outils personnalisés comptent parmi les fonctionnalités de plugin les plus demandées. Un plugin ne peut pas ajouter un objet vraiment nouveau au jeu, mais il peut prendre un objet vanilla, lui donner un nom, un lore et un tag caché, et réagir quand un joueur l'utilise. Les joueurs se connectent avec le jeu normal, sans mods.

Remplacez les objets par les vôtres.

Générer ceci avec Codexe

Étape par étape

  1. 1.Listez les objets

    Pour chaque objet : le matériau de base, le nom affiché, les lignes de lore et ce qu'il fait. « Un bâton de blaze appelé Fire Wand qui tire une boule de feu au clic droit, 5 secondes de recharge » est un objet complet.

  2. 2.Taguez-les avec PersistentDataContainer

    Stockez un identifiant comme fire_wand dans le PersistentDataContainer de l'objet avec une NamespacedKey. Le plugin reconnaît l'objet grâce à ce tag, pas à son nom, donc le renommer dans une enclume ne crée pas de copie.

  3. 3.Écrivez les capacités

    Chaque capacité est un écouteur d'événement : PlayerInteractEvent pour les clics droits, EntityDamageByEntityEvent pour les coups, BlockBreakEvent pour les outils. Ajoutez des temps de recharge par joueur et par objet.

  4. 4.Décidez comment les joueurs les obtiennent

    Une commande admin /give, une recette d'artisanat, une boutique, des drops de mobs ou des récompenses de caisses.

  5. 5.Rendez tout configurable

    Noms, lore, dégâts, temps de recharge et recettes dans config.yml, pour équilibrer les objets sans nouveau build.

  6. 6.Compilez et essayez chaque objet

    Laissez Codexe compiler le plugin, rejoignez le serveur de test avec Tester maintenant, donnez-vous chaque objet et utilisez-le.

Pourquoi un tag et pas le nom

Vérifier le nom affiché ou le lore est l'erreur classique : n'importe quel joueur avec une enclume peut renommer un bâton en « Fire Wand ». Le PersistentDataContainer (Minecraft 1.14 et plus récent) stocke sur l'objet des données que les joueurs ne peuvent pas modifier, et elles survivent aux redémarrages, aux coffres et aux échanges car elles font partie de l'objet.

De la 1.8 à la 1.13, il n'y a pas de PersistentDataContainer ; les plugins utilisent le NBT via une bibliothèque ou un marqueur caché dans le lore. Indiquez la version dans la demande et Codexe écrit l'approche que cette version prend en charge.

Les capacités et les événements derrière elles

CapacitéÉvénementRemarques
Pouvoir au clic droitPlayerInteractEventVérifiez la main, il se déclenche une fois par main
Dégâts ou effets supplémentaires à l'impactEntityDamageByEntityEventVérifiez que l'attaquant est un joueur qui tient l'objet
Outil de minage en zoneBlockBreakEventRespectez les plugins de protection comme WorldGuard
Effet passif tant qu'il est en mainUne tâche répétée ou PlayerItemHeldEventRetirez l'effet quand l'objet est rangé
Arc ou projectileEntityShootBowEvent, ProjectileHitEventTaguez le projectile pour savoir d'où il vient

Textures et modèles

Un plugin change ce que fait un objet, pas son apparence. Une apparence personnalisée nécessite un resource pack que les joueurs téléchargent : sur les anciennes versions, l'objet porte un numéro CustomModelData que le pack associe à un modèle, et depuis la 1.21.2 un objet peut aussi pointer vers son propre modèle via le composant item_model. Sans pack, l'objet ressemble à son matériau de base avec un nom personnalisé, ce qui suffit à beaucoup de serveurs.

Exemple de description

« Un plugin Paper 1.21.4 appelé MagicItems. Trois objets, chacun tagué avec un identifiant PersistentDataContainer : Fire Wand (bâton de blaze, le clic droit tire une boule de feu, 5 s de recharge), Frost Blade (épée en fer, les coups infligent Lenteur II pendant 3 s), Miner's Pick (pioche en diamant, casse en 3x3 mais pas dans les régions WorldGuard où le joueur ne peut pas construire). /mi give <player> <item> pour magicitems.admin. Une recette avec forme pour chacun. Noms, lore, temps de recharge et recettes dans config.yml. »

Questions

Plugin ou mod pour des objets personnalisés ?

Un plugin si les joueurs doivent se connecter avec le jeu normal : les objets sont des objets vanilla avec un nouveau comportement. Un mod si vous avez besoin d'objets ou de blocs vraiment nouveaux avec leur propre rendu, que chaque joueur devra alors installer. Voir plugin ou mod.

Puis-je l'utiliser avec ItemsAdder ou Nexo ?

Votre plugin peut en dépendre, mais ce sont des plugins payants : le serveur de test de Codexe ne peut pas les installer, donc un plugin qui en exige un ne s'activera pas dessus. Les dépendances gratuites listées dans plugin.yml sont installées pour vous sur le serveur de test.

Les objets cessent-ils de fonctionner après une mise à jour ?

Les objets tagués avec un PersistentDataContainer gardent leur tag d'une mise à jour de Minecraft à l'autre. Les capacités peuvent nécessiter une recompilation pour la nouvelle API ; voir mettre à jour un plugin.

Créez vos objets personnalisés

Ce prompt s'ouvre prêt à être envoyé :

“Un plugin Paper 1.21.4 appelé MagicItems avec trois objets tagués par PersistentDataContainer : Fire Wand (bâton de blaze, le clic droit tire une boule de feu, 5 secondes de recharge), Frost Blade (épée en fer, Lenteur II pendant 3 secondes à l'impact), Miner's Pick (pioche en diamant qui mine en 3x3). /mi give pour magicitems.admin, une recette avec forme pour chacun, noms, lore, temps de recharge et recettes dans config.yml.”

Générer ceci avec Codexe
Comment créer des objets personnalisés avec un plugin Minecraft | Codexe