Renomme des objets pour changer leur texture
Dans Minecraft, tu peux renommer n’importe quel objet sur une enclume. Un pack de ressources peut donner sa propre texture à un objet renommé : une épée en diamant appelée « Excalibur » peut briller en or pendant que toutes les autres épées en diamant restent pareilles. Java 1.21.5 et plus récent le font sans mods ; les versions plus anciennes ont besoin d’OptiFine ou du mod CIT Resewn. Le Texture Pack Maker écrit les bons fichiers pour ta version.
En faire un pas à pas
- Ouvre le Texture Pack Maker et fais un pack Java, ou ouvre un pack que tu as déjà.
- Ouvre la texture d’un objet, par exemple l’épée en diamant, et choisis Textures selon le nom dans son menu (⋮), ou Noms sous l’aperçu 3D.
- Tape le nom, par exemple Excalibur. Ajoute d’autres noms s’ils doivent partager la texture.
- Appuie sur Créer et peindre. La nouvelle texture commence comme une copie de celle de l’objet : peins par-dessus. Forme 3D lui donne aussi son propre modèle.
- Appuie sur Exporter, installe le pack, renomme l’objet sur une enclume avec exactement ce nom, et prends-le en main.
Comment les noms correspondent
- Le nom doit être exactement le même, majuscules comprises : Excalibur et excalibur sont des noms différents. Ajoute les deux si tu veux que les deux marchent.
- Plusieurs noms peuvent partager une texture, et un objet peut avoir beaucoup de textures selon le nom.
- Une enclume accepte des noms jusqu’à 50 caractères, sans codes de couleur. Un nom mis en couleur ou en gras avec des commandes ne correspond pas à un nom simple.
- Ça change l’objet en main, dans l’inventaire, au sol et dans les cadres. Un bloc posé à partir d’un objet renommé a l’air comme d’habitude.
Java 1.21.5 et plus récent : sans mods
Depuis la 1.21.5, une définition d’objet (assets/minecraft/items/<item>.json) peut choisir un modèle selon le nom de l’objet avec un minecraft:select sur la propriété minecraft:component et le composant minecraft:custom_name. Tout le reste revient au modèle normal de l’objet :
{
"model": {
"type": "minecraft:select",
"property": "minecraft:component",
"component": "minecraft:custom_name",
"cases": [
{
"when": ["Excalibur", "Sword of Light"],
"model": {
"type": "minecraft:model",
"model": "minecraft:item/names/diamond_sword/excalibur"
}
}
],
"fallback": {
"type": "minecraft:model",
"model": "minecraft:item/diamond_sword"
}
}
}Le modèle nommé est le modèle de l’objet avec la nouvelle image, donc l’épée est toujours tenue comme une épée :
{
"parent": "minecraft:item/diamond_sword",
"textures": {
"layer0": "minecraft:item/names/diamond_sword/excalibur"
}
}Si le pack change déjà cette définition d’objet, par exemple avec un modèle 3D fait dans l’éditeur de modèles, les noms passent devant. Java 1.21.4 a aussi des définitions d’objets, mais ne sait pas encore lire le nom d’un objet, donc il reçoit les fichiers OptiFine ci-dessous. Comment marchent les définitions d’objets et les objets 3D.
Avant la 1.21.5 : OptiFine ou CIT Resewn
Les versions plus anciennes ne savent pas choisir une texture selon le nom toutes seules. Les Custom Item Textures (CIT) d’OptiFine le peuvent, et le mod CIT Resewn pour Fabric aussi. L’éditeur écrit un fichier .properties par texture selon le nom dans assets/minecraft/optifine/cit/ :
# Excalibur, Sword of Light: needs OptiFine or the CIT Resewn mod
type=item
items=diamond_sword
texture=textures/item/names/diamond_sword/excalibur.png
nbt.display.Name=regex:(Excalibur|Sword of Light)Un seul nom est écrit tel quel ; plusieurs deviennent une règle regex:. Depuis la 1.20.5, l’éditeur écrit components.custom_name au lieu de nbt.display.Name ; les deux mods lisent l’un ou l’autre. Une texture avec une forme 3D utilise model= au lieu de texture=. Un pack dont la plage de versions va d’avant la 1.21.5 à après reçoit les deux sortes de fichiers.
Bedrock Edition
Les packs de ressources Bedrock ne peuvent pas changer l’apparence d’un objet selon son nom. Les noms d’objets du jeu dans Molang (comme query.is_item_name_any) sont des identifiants d’objets comme minecraft:diamond_sword, pas les noms que les joueurs leur donnent sur une enclume, donc l’éditeur ne propose pas de textures selon le nom pour les packs Bedrock.
Ouvrir un pack qui en a
Ouvre un pack Java et ses textures selon le nom s’affichent sous la texture de l’objet et dans la fenêtre : les règles CIT d’OptiFine pour un objet avec un nom et une texture ou un modèle, et les définitions d’objets 1.21.5+ qui choisissent un modèle selon le nom. Les règles qui vérifient plus que le nom (dégâts, enchantements, plusieurs objets) restent dans le pack telles quelles. Une règle avec un motif OptiFine comme ipattern:*sword* le garde, et ne continue de marcher qu’avec OptiFine et CIT Resewn.
Questions fréquentes
Mon objet renommé a toujours l’air normal. Pourquoi ?
Vérifie que le nom est exactement le même, majuscules et espaces compris, que le pack est activé et au-dessus des autres packs, et que tu joues en 1.21.5 ou plus récent, ou que tu as OptiFine ou CIT Resewn sur une version plus ancienne. Un objet renommé avant d’ajouter le pack marche aussi : le nom est vérifié chaque fois que l’objet est dessiné.
Un nom peut ignorer les majuscules ?
Pas dans Minecraft vanilla : le nom doit correspondre exactement. Ajoute chaque orthographe que tu veux comme un nom à part. Les packs OptiFine peuvent utiliser des motifs qui ignorent les majuscules ; les packs ouverts gardent les leurs.
Un objet renommé peut être en 3D ?
Oui. Appuie sur 3D shape sur une texture selon le nom pour ouvrir l’éditeur de modèles, et pars d’un objet 3D fait à partir de ta nouvelle image.
Les autres joueurs le voient ?
Les joueurs qui utilisent ton pack le voient, sur les serveurs aussi. Le nom lui-même fait partie de l’objet, donc tout le monde voit le nom ; seule la texture a besoin du pack.