Compartir vía


Cómo editar datos NBT de forma segura

En este artículo, se presenta la "edición NBT": el uso de herramientas para editar cadenas de datos almacenadas en entidades, elementos y algunos bloques, y cómo evitar editarlos de manera tal que probablemente cause problemas en el futuro.

Con este tutorial, aprenderás lo siguiente:

  • Qué son los datos NBT y cómo se utilizan.
  • Por qué es posible que sea necesario editar los datos NBT.
  • Prácticas recomendadas para editar los datos NBT.

Requisitos

Se recomienda que completes lo siguiente antes de comenzar este tutorial.

Durante años, ha sido una práctica común para los creadores de mapas de Minecraft usar herramientas externas para editar "NBT", los datos almacenados dentro de entidades, elementos y algunos bloques que contienen información tal como nombres, valores de daño o la edad. NBT es esencialmente una lista de etiquetas con los valores correspondientes. Por ejemplo, un hombrecerdo zombi contendría, entre muchas otras, una etiqueta ID con un valor de zombie_pigman. El uso de herramientas como MCEdit o MCCToolChest para editar NBT puede tener resultados poderosos y ahorrarles mucho tiempo a los creadores. Por ejemplo, puedes usar una herramienta para editar el nombre de una criatura simplemente cambiando el valor de su etiqueta CustomName en lugar de tener que usar una etiqueta de nombre y un anvil en el juego.

Sin embargo, hay casos en los que la edición de NBT ha dado lugar a problemas cuando Minecraft se actualiza de una manera que cambia la forma en que el juego escribe o lee una etiqueta en particular. La mayoría de las funciones de Minecraft están diseñadas para ser jugadas, no editadas mediante herramientas externas. Esas herramientas simulan jugar el juego. Podrías cambiar el contenido de un cofre en el juego, y una herramienta como MCCToolChest escribe datos en el NBT como si lo hubieras hecho. Sin embargo, a menudo surgen problemas cuando los creadores de mapas usan herramientas para editar NBT de una manera que teóricamente no se podría lograr en el juego.

Importante

La regla de oro es la siguiente: Si cambias las cosas de una manera que el juego nunca podría haber escrito solo, hay riesgo de que haya problemas. Si el juego no puede diferenciar si un valor NBT fue guardado por el juego o editado a mano, generalmente no habrá inconvenientes.

Está bien editar el NBT de un libro escrito para cambiarle el texto; pero no editar el NBT para superar el límite de caracteres de un libro dentro del juego. Cambiar el CatType (tipo) de un gato a 5 lo convierte en calicó, pero cambiarlo a 5000 probablemente sea una mala idea.

Los desarrolladores de Minecraft solo pueden esperar que su código se edite de la forma en que lo programaron para editarlo. Puedes encontrar que editar una etiqueta NBT de cierta manera te permite hacer algo interesante, pero no hay garantía de que la forma en que se maneja esa etiqueta no cambie en el futuro, ya que, en principio, no estaba pensada para que se la edite de esa forma.

Por ejemplo, los creadores de mapas solían realizar intercambios personalizados con los aldeanos editando varias de las etiquetas NBT de un aldeano. Uno de esos cambios era a menudo establecer la etiqueta TradeTier en un número negativo para que el aldeano nunca desbloquee nuevas formas de comerciar como lo hacen en Minecraft de supervivencia. Dado que los desarrolladores de Minecraft nunca tuvieron la intención de que el comercio se hiciera de esa forma, modificaron la forma básica en que funciona la etiqueta TradeTier en la actualización "Village and Pillage", y, con eso, rompieron muchos aldeanos personalizados en los mapas. Hoy en día, el comercio personalizado se maneja normalmente mediante las funciones de la mesa de botín, una característica desarrollada específicamente para tal propósito.

Existen excepciones a esta regla, que generalmente se deben creadores que hace años que editan NBT de una manera determinada para la cual los desarrolladores de Minecraft tuvieron que construir un soporte. Por ejemplo, no hay forma de escribir la etiqueta lore de un elemento en el juego, pero generalmente se considera seguro hacerlo en un editor.

Este consejo puede extenderse más allá de la edición de NBT: los comportamientos, comandos, guiones y otras características del juego pueden producir resultados interesantes cuando los usas de una manera no prevista. Minecraft es un juego vivo y las características cambian constantemente. Si bien sus desarrolladores claramente hacen todo lo posible para no romper tu contenido, solo se puede esperar que conozcan las funciones que programaron intencionalmente. Cuando los creadores dependen de estos "trucos" inesperados y el contenido se rompe por eso, el peso recae sobre el creador, sus jugadores y los desarrolladores de Microsoft, que tienen que intentar encontrar formas de evitarlo. En caso de duda, prueba siempre tu contenido con las nuevas actualizaciones para comprobar si hay cambios que rompan el contenido.