MCTOOLBOX
MC ToolboxMC TOOLBOX
Миграция команд Java

Конвертер NBT в компоненты Minecraft

Конвертируйте устаревшие NBT-данные предметов Java из 1.20.4 и более ранних версий в синтаксис компонентов предметов для 1.20.5, 1.21.x и текущих релизов 26.x. Команды остаются в вашем браузере.

Устаревший ввод

Старый NBT предмета или команда /give

Загрузить пример:

Преобразованный вывод

Текущая команда /give

/give @p minecraft:diamond_sword[minecraft:custom_name={text:'Frost Blade',color:'aqua',italic:false},minecraft:lore=[{text:'Forged below Y -59',color:'gray'}],minecraft:damage=12,minecraft:repair_cost=3,minecraft:custom_model_data={floats:[27]},minecraft:unbreakable={},minecraft:enchantments={'minecraft:sharpness':5},minecraft:tooltip_display={hidden_components:['minecraft:unbreakable']}] 1

Компонентов преобразовано

8

Обнаруженный предмет

minecraft:diamond_sword

Компонентов преобразовано

  • display.Nameminecraft:custom_name
  • display.Loreminecraft:lore
  • Damageminecraft:damage
  • RepairCostminecraft:repair_cost
  • CustomModelDataminecraft:custom_model_data
  • Unbreakableminecraft:unbreakable
  • Enchantmentsminecraft:enchantments
  • HideFlagsminecraft:tooltip_display

Распознанные поля

Названия, описание, зачарования, урон, стоимость ремонта, Unbreakable, CustomModelData, данные зелий, профили, атрибуты и предикаты режима приключений сопоставляются с компонентами.

Вывод с учетом версии

Minecraft 1.21.4 изменил CustomModelData, а 1.21.5 упростил несколько компонентов и ввел tooltip_display. Выберите версию сервера, которую вы используете.

Безопасный запасной вариант

Неизвестные теги сохраняются в minecraft:custom_data и перечислены для проверки. Конвертер не утверждает, что custom_data заставляет устаревшие игровые механики работать.

Почему Minecraft заменил NBT предметов компонентами

Minecraft Java 1.20.5 заменил старый, в основном неструктурированный тег предмета типизированными компонентами данных. В командах компоненты появляются в квадратных скобках после ID предмета, разделенные запятыми. Damage стал minecraft:damage, display.Name стал minecraft:custom_name, Enchantments стал minecraft:enchantments, а произвольные пользовательские поля переместились в minecraft:custom_data.

Это не было одноразовым изменением синтаксиса. Minecraft 1.21.4 расширил custom_model_data до списков, используемых новой системой моделей предметов. Minecraft 1.21.5 переместил видимость подсказок в minecraft:tooltip_display и упростил зачарования, атрибуты, окрашенные цвета и предикаты режима приключений. Текущие команды 26.x продолжают использовать этот новый формат компонентов.

Конвертер может сопоставлять известные поля предметов, но он не может автоматически исправлять каждый командный блок или data pack. NBT сущностей, данные блочных сущностей, функции лута, предикаты и текстовые компоненты также изменились в разных версиях. Всегда тестируйте сгенерированную команду в копии целевого мира или на тестовом сервере.

Как конвертировать старую команду /give

  1. 1Вставьте команду /give Java Edition из 1.20.4 или более ранней версии. Вы также можете вставить только состав между фигурными скобками.
  2. 2Выберите точное целевое семейство. Используйте 1.21.5 - 26.x для текущих серверов, а не старую форму компонентов 1.20.5.
  3. 3Прочитайте каждое предупреждение. Сохраненные custom_data являются безопасным хранилищем, но они не активируют устаревшие теги Damage, Potion или AttributeModifiers.
  4. 4Скопируйте сгенерированную команду и протестируйте ее во временном мире, прежде чем заменять команды в data pack или системе командных блоков.

Что этот конвертер не меняет

Он конвертирует один стак предметов или команду /give за раз. Он не сканирует весь data pack, не переписывает проверки execute if data и не обновляет предикаты предметов, хранящиеся в JSON-файлах.

Он не конвертирует JSON предметов Bedrock. Компоненты предметов Java и компоненты дополнений Bedrock - это разные системы, даже если некоторые названия выглядят похоже.

Текстовые компоненты из очень старых версий могут все еще нуждаться в ручной модернизации. Сложные профили игроков, пользовательские эффекты зелий и данные блочных сущностей должны быть проверены на соответствие целевому релизу.

Часто задаваемые вопросы по NBT в компоненты

Почему моя старая команда /give перестала работать в 1.20.5?

Java 1.20.5 переместил данные предметов из старой структуры {tag} в типизированные компоненты, записанные в квадратных скобках после ID предмета.

Могу ли я поместить каждый старый тег в minecraft:custom_data?

Вы можете сохранять произвольные поля там, но встроенные механики больше не считывают старые структурные теги, такие как Damage или Enchantments, из custom_data. Им нужны их реальные компоненты.

Какую цель мне использовать для Minecraft 26.2 или 26.3?

Используйте Minecraft 1.21.5 - 26.x. Этот вывод использует упрощенные формы зачарований и атрибутов, а также tooltip_display из новой системы компонентов.

Поддерживает ли конвертер полные команды?

Да. Он считывает устаревшую цель /give, ID предмета, NBT-состав и количество, затем перестраивает текущую команду /give. Он также принимает автономный NBT-состав.

Почему есть предупреждение для BlockEntityTag?

Текущие block_entity_data должны идентифицировать действительную блочную сущность. Некоторые старые команды полагались на тип предмета и опускали id, поэтому это поле требует ручной проверки.

Выполняется ли конвертация на сервере?

Нет. Разбор и конвертация выполняются локально в вашем браузере. Команда не загружается этим инструментом.