Ajouter un drop à un bloc dans un datapack Minecraft vanilla (loot table) — guide Java Edition

Les Loot tables définissent ce que les mobs, coffres, la pêche et le minage de blocs laissent tomber dans Minecraft. Ce sont des fichiers JSON utilisés dans les datapacks pour personnaliser les drops avec une randomisation pondérée, une logique conditionnelle et des modifications d’objets. Notre générateur crée des JSON de loot table valides que vous pouvez déposer directement dans votre datapack.

1. Définir le type de Loot Table adapté

Choisissez le type qui correspond à votre cas d’utilisation et à votre bloc ciblé :

  • Block pour les drops liés au minage d’un bloc - exemple: roche, minerai, blocs spécifiques.
  • Entity pour les drops d’un mob spécifique (ou de groupes d’ennemis).
  • Chest pour le butin provenant de coffres (donjons, temples, cités de l’éther).
  • Fishing pour les récompenses de la pêche.
  • Generic pour des tables générales utilisées avec la commande /loot.

Pour ajouter un drop à un bloc vanilla, le type Block est généralement le plus pertinent. Il détermine comment le minage du bloc influence le contenu du loot.

2. Configurer les Pools et les Entries

Chaque pool représente un groupe d’items possibles. La configuration clé est la suivante :

  • rolls : nombre d’items à tirer dans le pool (peut être une valeur fixe ou une plage aléatoire).
  • entries : liste des objets ou d’actions à tirer, avec des poids pour contrôler la rareté.
  • Utilisez des empty entries pour représenter les issues « rien ne tombe ».

Pour augmenter la variété, vous pouvez ajouter plusieurs Pool avec des conditions différentes et des poids variés. Les poids plus élevés rendent un item plus fréquent.

Exemple conceptuel d’entries typiques dans un pool :

  • Bloc_ingot avec poids élevé
  • Équipement_boosté avec poids moyen
  • Rien (empty) avec poids faible

3. Ajouter des fonctions et conditions

Les functions modifient les drops après leur sélection, et les conditions restreignent ou étendent les drops selon le contexte.

  • set_count : modifie la quantité d’un item.
  • enchant_randomly : ajoute des enchantements de manière aléatoire.
  • set_name : donne un nom personnalisé à l’objet.

En associant ces fonctions à des entries et en les liant à des conditions (par exemple, if une certaine difficulté, if le joueur porte une item spécifique, etc.), vous pouvez créer des loot tables riches et adaptées à votre serveur ou votre monde en datapack.

4. Étapes pratiques pour ajouter le drop à un bloc

  1. Créez ou ouvrez votre datapack et placez le fichier JSON de loot table dans data//loot_tables/blocks/ (pour les blocks).
  2. Configurez le type Block et définissez vos pools, entries et éventuelles conditions.
  3. Ajoutez les fonctions nécessaires pour ajuster le compte, les enchantements et le nom des drops.
  4. Testez le comportement en jeu et ajustez les poids et les conditions pour obtenir le résultat souhaité.

Conseil pratique : pour les blocs similaires à des minerais, envisagez d’utiliser plusieurs pools avec des drops « minerais communs » et « minerais rares » afin d’obtenir une expérience de minage plus riche et dynamique.

5. Bonnes pratiques et exemples utiles

  • Équilibrez les drops en fonction de la difficulté et du contexte du monde de jeu.
  • Utilisez des empty entries pour conserver des chances de rien tomber lorsque nécessaire.
  • Combinez des pools avec des conditions liées à l’état du jeu (par exemple, jour/nuit, niveau d’ernie, etc.) pour des drops conditionnels.

Pour aller plus loin, vous pouvez mixer le type Block avec des entries qui déclenchent des drops spéciaux lorsque le joueur exploite le bloc avec des outils enchantés ou des effets spécifiques.

Infographie: Structure d'une loot_table Block (Pool, Entries, Weights, Functions)

Exemple d’application concrète

Imaginons que vous vouliez qu’un bloc minerai spécial donne 1-2 unités du minerai courant, avec une chance rare de lancer un bonus d’objet lié à l’outil utilisé. Vous pourriez structurer le JSON en plusieurs pools, configurer des rolls et ajouter des fonctions pour définir le compte et les noms des objets obtenus. Grâce au générateur, vous pouvez générer un JSON valide à déposer directement dans votre datapack et modifier les poids selon vos préférences.

How to Make Custom Loot Tables in Minecraft 1.21.4 | Minecraft Data Pack Tutorial

Tables et formats utiles

Les loot tables s’organisent en pools et en entries, avec des champs typiques comme weight, rolls, entries et functions. Le système permet une pondération des drops et des modifications des items obtenus. Utilisez des conditions pour affiner les drops selon le contexte de jeu et le comportement des joueurs.

Carte conceptuelle: Flux de génération d’un drop via loot table Block

En suivant les étapes et les bonnes pratiques ci-dessus, vous pouvez créer des drops de bloc riches et dynamiques qui enriching l’expérience de minage dans Minecraft vanilla via datapacks.

tags: #ajouter #un #drop #a #un #block