Guía

Renombra objetos para cambiar su textura

En Minecraft puedes renombrar cualquier objeto en un yunque. Un paquete de recursos puede darle a un objeto renombrado su propia textura: una espada de diamante llamada «Excalibur» puede brillar dorada mientras las demás espadas de diamante siguen igual. Java 1.21.5 y posteriores lo hacen sin mods; las versiones anteriores necesitan OptiFine o el mod CIT Resewn. El Texture Pack Maker escribe los archivos correctos para tu versión.

Actualizado el

Paso a paso

  1. Abre el Texture Pack Maker y crea un paquete de Java, o abre uno que ya tengas.
  2. Abre la textura de un objeto, por ejemplo la espada de diamante, y elige Texturas por nombre en su menú (⋮), o Nombres debajo de la vista previa 3D.
  3. Escribe el nombre, por ejemplo Excalibur. Añade más nombres si deben compartir la textura.
  4. Pulsa Crear y pintar. La nueva textura empieza como una copia de la del objeto, así que pinta encima. Forma 3D le da también un modelo propio.
  5. Pulsa Exportar, instala el paquete, renombra el objeto en un yunque exactamente con ese nombre y tenlo en la mano.

Cuándo coincide un nombre

  • El nombre debe ser exactamente igual, mayúsculas incluidas: Excalibur y excalibur son nombres distintos. Añade los dos si quieres que funcionen ambos.
  • Varios nombres pueden compartir una textura, y un objeto puede tener muchas texturas por nombre.
  • El yunque acepta nombres de hasta 50 caracteres, sin códigos de color. Un nombre coloreado o en negrita con comandos no coincide con un nombre normal.
  • Cambia el objeto en la mano, en el inventario, en el suelo y en los marcos. Un bloque colocado desde un objeto renombrado se ve como siempre.

Java 1.21.5 y posteriores: sin mods

Desde la 1.21.5, una definición de objeto (assets/minecraft/items/<objeto>.json) puede elegir un modelo según el nombre del objeto con un minecraft:select sobre la propiedad minecraft:component y el componente minecraft:custom_name. Cualquier otro nombre muestra el modelo normal del objeto:

{
  "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"
    }
  }
}

El modelo del nombre es el propio modelo del objeto con la nueva imagen, así que la espada se sigue sujetando como una espada:

{
  "parent": "minecraft:item/diamond_sword",
  "textures": {
    "layer0": "minecraft:item/names/diamond_sword/excalibur"
  }
}

Si el paquete ya cambia esa definición de objeto, por ejemplo con un modelo 3D hecho en el editor de modelos, los nombres van delante. Java 1.21.4 también tiene definiciones de objeto, pero todavía no puede leer el nombre de un objeto, así que recibe los archivos de OptiFine de abajo. Cómo funcionan las definiciones de objeto y los objetos 3D.

Antes de la 1.21.5: OptiFine o CIT Resewn

Las versiones anteriores no pueden elegir una textura por nombre por sí solas. Las Custom Item Textures (CIT) de OptiFine sí pueden, y también el mod CIT Resewn para Fabric. El editor escribe un archivo .properties por cada textura por nombre en 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 solo nombre se escribe tal cual; varios se convierten en una regla regex:. Desde la 1.20.5 el editor escribe components.custom_name en lugar de nbt.display.Name; los dos mods leen ambos. Una textura con forma 3D usa model= en lugar de texture=. Un paquete cuyo rango de versiones va de antes de la 1.21.5 a después recibe los dos tipos de archivos.

Bedrock Edition

Los paquetes de recursos de Bedrock no pueden cambiar el aspecto de un objeto según su nombre. Los nombres de objeto en Molang (como query.is_item_name_any) son identificadores como minecraft:diamond_sword, no los nombres que los jugadores ponen en un yunque, así que el editor no ofrece texturas por nombre para paquetes de Bedrock.

Abrir un paquete que las tenga

Abre un paquete de Java y sus texturas por nombre aparecen debajo de la textura del objeto y en la ventana: reglas CIT de OptiFine para un objeto con un nombre y una textura o un modelo, y definiciones de objeto de la 1.21.5+ que eligen un modelo por nombre. Las reglas que comprueban más que el nombre (daño, encantamientos, varios objetos) se quedan en el paquete tal cual. Una regla con un patrón de OptiFine como ipattern:*sword* lo conserva y sigue funcionando solo con OptiFine y CIT Resewn.

Preguntas frecuentes

Mi objeto renombrado se sigue viendo normal. ¿Por qué?

Comprueba que el nombre sea exactamente igual, mayúsculas y espacios incluidos, que el paquete esté activado y por encima de otros paquetes, y que juegues a la 1.21.5 o posterior, o que tengas OptiFine o CIT Resewn en una versión anterior. Un objeto renombrado antes de añadir el paquete también funciona: el nombre se comprueba cada vez que se dibuja el objeto.

¿Un nombre puede ignorar las mayúsculas?

En Minecraft sin mods no: el nombre debe coincidir exactamente. Añade cada forma de escribirlo que quieras como un nombre más. Los paquetes de OptiFine pueden usar patrones que ignoran las mayúsculas; los paquetes abiertos conservan los suyos.

¿Un objeto renombrado puede ser 3D?

Sí. Pulsa Forma 3D en una textura por nombre para abrirla en el editor de modelos y empieza con un objeto 3D hecho a partir de tu nueva imagen.

¿Lo ven otros jugadores?

Lo ven quienes usan tu paquete, también en servidores. El nombre forma parte del objeto, así que todos lo ven; solo la textura necesita el paquete.