Minecraft Wiki
Advertisement
El nombre de esta página no es oficial. 
Si conoces una fuente confiable, puedes trasladarla al nombre apropiado.

Los identificadores de objeto (también conocidos como líneas de nombre,[1] localizaciones de recursos,[2] o identificadores de recursos[3]) son una forma de declarar e identificar los objetos incluidos en el juego y definidos por los usuarios al jugar a Minecraft, evitando ambigüedades generadas por sus nombres.

Uso[]

Los identificadores con nombre se usan como líneas de texto para hacer referencia a bloques, objetos, tipos de entidades, recetas, funciones, logros, etiquetas y otros tipos de objetos en el juego estándar de Minecraft. Curiosamente, los estados de bloque no se consideran como estados con nombre.

Un identificador con nombre válido tiene el siguiente formato: :name, donde solo se pueden emplear ciertos caracteres.

Esta es una lista de todos los lugares que contienen IDs con espacio de nombres:

REGISTROS INCORPORADOS
Contenidos de data packs‌[Solo Java Edition]
  • Logros
  • Probabilidades de Loot
  • Funciones
  • Archivos de estructuras
  • Recetas
  • Bloques/Fluidos/Items/Tipos de entidad/Tags de funciones
Contenidos de add-ons‌[Solo Bedrock Edition]
  • Tablas de botín
  • Funciones
Contenidos de Texture packs‌[Solo Java Edition]
  • Archivos de estado de bloque
  • Modelos
  • Texturas
  • Sonidos
Otros contenidos customisados‌[Solo Java Edition]
  • Barras de vida de jefes
  • Almacenamiento de comandos
Otros contenidos no personalizables (sin mods)
  • funciones de botín
  • Condiciones de botín
  • tipos de botín
  • Tipos de argumentos de comando

Caracteres legales[]

Java Edition[]

El espacio de nombres y el nombre de una ID solo deben contener los siguientes símbolos:

  • <código>0123456789</código> Números
  • abcdefghijklmnopqrstuvwxyz letras minúsculas
  • _ guión bajo
  • - Guión/menos
  • . Punto

Los siguientes caracteres son ilegales en el espacio de nombres, pero aceptables en el nombre:

  • / barra diagonal (separador de directorio)

La convención de nomenclatura preferida para el espacio de nombres o el nombre es snake_case.

Bedrock Edition[]

El espacio de nombres y el nombre de un ID pueden contener todos los símbolos excepto barras y dos puntos.

Los siguientes caracteres son ilegales en el espacio de nombres, pero aceptables en el nombre de tablas y funciones de botín.

  • / barra diagonal (separador de directorio)

The preferred naming convention for either namespace or name is snake_case.

Conversión a cadena[]

Un ID de espacio de nombres se convertiría en una cadena agregando a su espacio de nombres un <código>:</código> (dos puntos) y su nombre.

Ejemplos:

Espacio de nombres Nombre Representación de cadenas
minecraft diamond minecraft:diamond
foo bar.baz foo:bar.baz
minecraftwiki commands/minecraft_wiki minecraftwiki:commands/minecraft_wiki

Conversión de cadena[]

A diferencia de los ID con espacios de nombres siempre se pueden convertir en cadenas, algunas cadenas no se pueden convertir en ID con espacios de nombres.

Existen una serie de restricciones:

  • La cadena puede tener como máximo un carácter : (dos puntos)
  • El resto de la cadena debe cumplir con el requisito de caracteres legales
  • Si : está presente, la parte de la cadena antes de : (el espacio de nombres) no debe contener / o .

Cuando : está presente, la parte de la cadena antes de : se convierte en el espacio de nombres y la que sigue a : se convierte en el nombre.

Cuando : está ausente, minecraft se convierte en el espacio de nombres y toda la cadena se convierte en el nombre.‌[Solo Java Edition]

Se recomienda incluir siempre un : en el formato de cadena de los ID con espacio de nombres.

Ejemplos
Cuerda Espacio de nombres resuelto Nombre resuelto En qué lo vuelve a convertir el juego
bar:code bar code bar:code
minecraft:zombie minecraft zombie minecraft:zombie
diamond minecraft[Solo Java Edition]
None‌[Solo Bedrock Edition]
diamond minecraft:diamond[Solo Java Edition]
diamond[Solo Bedrock Edition]
foo/bar:coal Carácter invalido /
minecraft/villager minecraft[Solo Java Edition]
None‌[Solo Bedrock Edition]
minecraft/villager minecraft:minecraft/villager[Solo Java Edition]
minecraft/villager[Solo Bedrock Edition]
mypack_recipe minecraft[Solo Java Edition]
None‌[Solo Bedrock Edition]
mypack_recipe minecraft:mypack_recipe[Solo Java Edition]
mypack_recipe[Solo Bedrock Edition]
mymap:schrödingers_var mymap Carácter invalido ö[Solo Java Edition]
schrödingers_var[Solo Bedrock Edition]
mymap:schrödingers_var[Solo Bedrock Edition]
custom_pack:Capital custom_pack Carácter invalido C[Solo Java Edition]
Capital[Solo Bedrock Edition]
custom_pack:Capital[Solo Bedrock Edition]

Localización de contenido en paquetes[]

Information icon
Esta característica es exclusiva de Java Edition. 

Dado que los objetos de Paquetes de recursos y los paquetes de datos son archivos, la ID con espacio de nombres también se puede usar para encontrar los archivos correspondientes que declararon objetos de la ID.

Aunque las ubicaciones varían según el tipo de objeto y el tipo de paquete al que pertenece el tipo de objeto, hay un patrón a seguir. En general, la ubicación tiene la forma de pack_type/namespace/object_type/name.suffix, donde todos los El símbolo / (barra inclinada) (puede ser parte de object_type o name) se reemplaza por el directorio dependiente del sistema operativo separador.

Asignaciones de tipo de objeto a las variables pack_type, object_type y suffix

Object Type Object's pack pack_type substitution object_type substitution suffix substitution
Estados de bloque Paquete de recursos assets blockstates json
Modelos Paquete de recursos assets models json
Partículas Paquete de recursos assets particles json
Texturas Paquete de recursos assets textures png
Logros Paquetes de datos data advancements json
Funciones Paquetes de datos data functions mcfunction
Tablas de botín Paquetes de datos data loot_tables json
Recetas Paquetes de datos data recipes json
Estructuras Paquetes de datos data structures nbt
Etiquetas de bloque Paquetes de datos data tags/blocks json
Etiquetas de tipo de entidad Paquetes de datos data tags/entity_types json
Etiquetas de objeto Paquetes de datos data tags/items json
Etiquetas de fluido Paquetes de datos data tags/fluids json
Etiquetas Función Paquetes de datos data tags/functions json

Nota: Ciertos elementos en el paquete de recursos no necesariamente están respaldados por un objeto con ID de espacio de nombres, como texturas GUI.

Dado el tipo de contenido que queremos localizar, podemos encontrar el correspondiente pack_type, object_type y suffix . Luego, podemos sustituirlo y averiguar la ubicación final del archivo del contenido.

Espacios de nombres[]

Este no es un concepto nuevo, pero pensé que debería reiterar qué es un "espacio de nombres". La mayoría de las cosas en el juego tienen un espacio de nombres, de modo que si agregamos algo y un mod (o mapa, o lo que sea) agrega algo, ambos son algo diferentes

s. Cada vez que se le pida que nombre algo, por ejemplo, una tabla de botín, también se espera que proporcione de qué espacio de nombres proviene esa cosa. Si no especificas el espacio de nombres, por defecto usamos minecraft. Esto significa que something y minecraft:something son lo mismo.|Dinnerbone|espacios de nombres[4]|Nathan Adams Mojang avatar.png}}

Un espacio de nombres es un dominio para los contenidos. Es para evitar posibles conflictos de contenido o anulaciones no intencionales de objetos con el mismo nombre.

Por ejemplo, dos paquetes de datos agregan dos mecanismos de minijuegos a "Minecraft"; ambos tienen una función llamada start. Sin espacios de nombres, estas dos funciones chocarían y los minijuegos se romperían. Cuando tienen diferentes espacios de nombres de minigame_one y minigame_two, las funciones se convertirían en minigame_one:start y minigame_two:start, que ya no entran en conflicto.

Espacio de nombres minecraft[]

Minecraft reserva el espacio de nombres minecraft; cuando no se especifica un espacio de nombres, una ID de espacio de nombres recurre a minecraft[Solo Java Edition]. Como resultado, los creadores de contenido solo deben usar el espacio de nombres minecraft cuando el contenido necesita sobrescribir o modificar los datos Minecraft existentes, como agregar una funcióna minecraft:load etiqueta de función.

Espacio de nombres personalizados[]

El espacio de nombres debe ser distinto para diferentes proyectos o creaciones de contenido (por ejemplo, un paquete de datos, un paquete de recursos, un mod, datos de respaldo/paquetes de recursos para un personalizado mapa, etc)

Para evitar posibles conflictos, el espacio de nombres debe ser lo más particular posible.

  • Evite sopas de letras. Por ejemplo, un proyecto llamado "nave nuclear" no debe usar el espacio de nombres nc, ya que es demasiado ambiguo.
  • Evite palabras demasiado vagas. battle_royale tampoco sería informativo, pero player_name_battle_royale sería mucho mejor.

En cualquier caso, estos espacios de nombres mal elegidos reducen la exposición de un proyecto y presentan dificultades para la depuración cuando se aplican múltiples creaciones de contenido al juego.

Otros espacios de nombres incorporados[]

El paquete de recursos predeterminado de Minecraft declara el archivo de idioma orientado a los Realms en el espacio de nombres realms (ubicado en assets/realms/lang/<language-code>.json) y archivos de idioma relacionados con el juego en el espacio de nombres minecraft, aunque las claves de traducción no son ID de espacio de nombres. El propio jar de reinos también declara su archivo de idioma en_us.json y sus diversas texturas en el espacio de nombres realms.

En los ID de los tipos de argumentos de comando, también aparece un espacio de nombres brigadier para los tipos de argumentos de comando que son nativos deBrigadier.[5]

Historial[]

Java Edition
1.6.113w21aSe agregaron ID de espacios de nombres junto con el prefijo minecraft para identificar activos.
1.7.213w37aLos comandos ahora aceptan ID de nombre además de ID numéricos.
1.1116w32aLos ID con espacio de nombres ahora tienen una restricción de caracteres.
Caracteres en mayúsculas no permitidos en ID con espacios de nombres.
1.1317w47aDespués del flattening, los ID con espacios de nombres son la única forma de ID aceptada.
pre4Los ID con espacio de nombres ahora se usan para identificar canales de mensajes de complementos.[6]
1.14.4pre1El espacio de nombres realms se agrega al paquete de recursos integrado de client jar.
1.1620w14aLos atributos ahora son ID de espacio de nombres.
Pocket Edition Alpha
0.16.0build 1Se agregaron comandos, que admiten ID de cadena. Sin embargo, estos ID aún no tenían espacios de nombres.
Bedrock Edition
1.12.0beta 1.12.0.2Los ID ahora tienen un espacio de nombres con el prefijo minecraft, para admitir elementos personalizados que se agregan a través de add-on.

Véase también[]

Referencias[]

Enlaces externos[]

Advertisement