1. Wiki
  2. /Objets
  3. /Ton premier objet personnalisé

Ton premier objet personnalisé

Crée un rubis pour Minecraft Bedrock : le fichier de l'objet, la texture de son icône, son nom dans le fichier de langue, et comment l'obtenir avec /give.

Dans ce guide, tu vas créer un rubis : une simple gemme brillante qui s'empile jusqu'à 64, qui apparaît dans l'inventaire créatif et qui a son propre nom et sa propre icône. Il ne fait rien de spécial pour l'instant, mais chaque épée, nourriture et pièce d'armure que tu créeras plus tard part exactement de ce fichier.

Il y a deux façons de faire. La méthode rapide prend deux minutes sur ton téléphone. La méthode à la main te montre chaque fichier, pour que tu comprennes ce qui se passe.

La méthode rapide : GodCraft

GodCraft crée pour toi le fichier de l'objet, la texture, le nom et les fichiers du pack. Tu n'ouvres jamais un fichier JSON.

  1. Ouvre l'Atelier et ajoute un Objet à ton add-on.
  2. Dessine l'icône dans l'éditeur de pixels, ou pars d'une texture vanilla et change ses couleurs.
  3. Tape le nom et choisis les réglages que tu veux, comme la taille de pile.
  4. Appuie sur Exporter. GodCraft écrit les manifestes, les UUID et les fichiers de langue, et te donne un .mcaddon à ouvrir dans Minecraft.

Tu te demandes ce qu'il y a dans ce .mcaddon ? Continue ta lecture.

À la main

Il te faut un pack de comportements (BP) et un pack de ressources (RP) déjà prêts. Si tu ne les as pas encore, suis d'abord Préparer le projet. Dans chaque exemple, nous utilisons l'espace de noms myname. Remplace-le par ton propre nom court, en minuscules, partout où il apparaît.

Voici les fichiers que tu vas créer ou modifier :

FichierPackCe qu'il fait
items/ruby.jsonBPDéclare que l'objet existe et comment il se comporte
textures/items/ruby.pngRPL'image
textures/item_texture.jsonRPDonne un nom court à l'image
texts/en_US.langRPLe nom que lisent les joueurs

Étape 1 : le fichier de l'objet

Crée un dossier appelé items dans ton pack de comportements et ajoute ce fichier :

BP/items/ruby.json
{
  "format_version": "1.26.30",
  "minecraft:item": {
    "description": {
      "identifier": "myname:ruby",
      "menu_category": {
        "category": "items"
      }
    },
    "components": {
      "minecraft:icon": {
        "textures": {
          "default": "myname_ruby"
        }
      },
      "minecraft:display_name": {
        "value": "item.myname:ruby.name"
      },
      "minecraft:max_stack_size": 64
    }
  }
}

Voyons-le morceau par morceau.

  • format_version indique au jeu quelle version des règles d'objet ton fichier suit. Utilises-en une récente pour que tous les composants modernes marchent.
  • identifier est l'ID unique de l'objet. C'est toujours namespace:name. N'utilise jamais l'espace de noms minecraft pour un nouvel objet : il appartient au jeu.
  • menu_category décide où l'objet apparaît dans l'inventaire créatif. La category peut être construction, nature, equipment, items ou none (caché). Tu peux aussi ajouter un group comme "minecraft:itemGroup.name.sword" pour le ranger dans un dossier existant.
  • components est l'endroit où l'objet reçoit ses fonctionnalités. Chaque composant est une fonctionnalité.

Les trois composants utilisés ici :

  • minecraft:icon choisit l'image. default est le nom court que tu définiras dans item_texture.json à l'étape 3, pas un chemin de fichier.
  • minecraft:display_name définit le nom. Ici, il pointe vers une clé du fichier de langue, pour que le nom puisse être traduit.
  • minecraft:max_stack_size indique combien d'exemplaires tiennent dans un emplacement. Utilise un nombre de 1 à 64.

Une fonctionnalité, un composant

Tu veux que l'objet brille comme un livre enchanté ? Ajoute minecraft:glint avec true. Tu veux qu'il résiste à la lave ? Ajoute minecraft:fire_resistant. Chaque composant a sa propre page de référence avec tous ses champs.

Étape 2 : la texture

Dessine un PNG de 16x16 pixels et enregistre-le dans ton pack de ressources :

RP/textures/items/ruby.png
A 16x16 PNG with a transparent background

Garde le fond transparent, sinon l'icône sera un carré. Si tu débutes en pixel art, Textures pixel art donne des astuces pour que les petites images rendent bien.

Étape 3 : enregistrer la texture

Le jeu ne lit pas les fichiers PNG par leur chemin depuis l'objet. À la place, item_texture.json donne un nom court à chaque image, et l'objet utilise ce nom. Crée (ou ouvre) ce fichier :

RP/textures/item_texture.json
{
  "resource_pack_name": "myname",
  "texture_name": "atlas.items",
  "texture_data": {
    "myname_ruby": {
      "textures": "textures/items/ruby"
    }
  }
}

Remarque deux choses :

  1. La clé myname_ruby correspond à la valeur default du composant d'icône de l'objet.
  2. Le chemin ne se termine pas par .png.

Quand tu ajouteras d'autres objets plus tard, mets-les tous dans ce même fichier, comme entrées supplémentaires dans texture_data. Ne crée pas un deuxième item_texture.json.

Étape 4 : le nom

Ouvre (ou crée) le fichier de langue anglais et ajoute une ligne :

RP/texts/en_US.lang
item.myname:ruby.name=Ruby

La partie avant le = doit correspondre exactement à la value de minecraft:display_name. La partie après, c'est ce que voient les joueurs. Les fichiers lang sont du texte brut : une entrée par ligne, sans guillemets ni virgules.

Étape 5 : le tester

  1. Copie les deux packs dans Minecraft, ou exporte-les (voir Exporter et installer).
  2. Crée un nouveau monde et active les deux packs dans ses paramètres.
  3. Ouvre le chat et tape la commande /give :
Chat
/give @s myname:ruby 64

Tu devrais recevoir une pile complète de rubis avec ton icône et le nom « Ruby ». Dans un monde créatif, tu le trouveras aussi dans l'onglet Objets de l'inventaire.

Quand quelque chose ne marche pas

Ce que tu voisCause la plus probable
/give dit que l'objet n'existe pasUne faute de frappe dans l'identifiant, ou le pack de comportements n'est pas activé
L'objet a une icône rose et noireLa clé dans item_texture.json ne correspond pas à l'icône, ou le chemin est faux
Le nom ressemble à item.myname:ruby.nameLa clé de langue ne correspond pas, ou le fichier lang n'est pas dans texts
Rien du pack ne se chargeUne erreur de syntaxe JSON, comme une virgule manquante

Active le Journal de contenu (Content Log) dans les paramètres créateur de Minecraft pour voir les messages d'erreur exacts. Tu trouveras d'autres solutions dans Dépannage.

Et ensuite ?

Ton rubis est un objet tout simple. Maintenant, donne-lui un rôle :

Pour voir comment Mojang construit ses propres objets, parcours les objets vanilla.

Objets: Guides

We use cookies to improve your experience and analyse site traffic. Learn more