Healthy DietFEATURE GUIDEРусский
03 / QUALITY & RARITY

Качество, редкость и отдельные предметы настраиваются раздельно.

Качество определяет дополнительную метку качества, редкость меняет отображение редкости предмета; регистрация предмета качества создаёт новый ID предмета. Это три разные настройки.

Привязка качестваПереопределение редкостиОтдельный ID предмета
Важное различие: изменение качества/редкости существующего предмета не равно регистрации нового предмета. Добавление или удаление отдельного зарегистрированного предмета связано с регистрацией при запуске; не путайте горячую перезагрузку определений с регистрацией новых предметов.

01Чем различаются три функции

КачествоСтроковый ID определяет текст качества, стиль сегментов и необязательный оверлей; существующие предметы привязываются через поле quality.
РедкостьИспользуется для названия предмета и метки редкости; можно выбрать пользовательскую или ванильную редкость. Новый ID предмета не создаётся.
Зарегистрированный предметРегистрирует отдельный ID на основе исходного предмета; можно задать качество, имя, модель, свойства употребления и лимит стака.
Источник: ItemConfig.quality, ItemConfig.rarity, QualityRegistryEntry.

02Определение и привязка качества

ID качества — строка, а не старый числовой уровень. Допустимы 1–64 строчных латинских буквы, цифры, _, -, ..

Определение каждого качества берётся из датапака data/<пространство имён>/healthy_diet/quality_levels/<id>.json. Можно задать текст, цвет или схему цветов, сегментированный текст и текстуру оверлея; ID доступен для привязки к существующим предметам и для ссылки при регистрации новых.

Пример пути настройки

config/healthy_diet/datapack/data/healthy_diet/healthy_diet/quality_levels/fresh.json

Здесь fresh — лишь пример допустимого имени файла, а не обязательно существующее качество по умолчанию.

Откройте /hdui create, чтобы управлять определениями качества; держите предмет и откройте /hdui, чтобы привязать качество к предмету. Изменения определений можно обновлять и синхронизировать; видимость оверлея зависит от ресурсов клиента и используемого компонента отображения.

/hdui create · вкладка «Качество» · Только для чтения, HTML-схема по исходному коду; не скриншот игры и не данные сервера в реальном времени. Пустые поля означают новое создание.
HD Создание  [Создать] [Удалить] [+]
+ Новый элементСписок существующих качеств (значения не показаны)
IDВводится при создании; после сохранения только чтение
ОверлейПуть / [1 → 2 → 3 → ? цикл] / предпросмотр текстуры
Текст[Редактировать текст (сегменты)] [Очистить]
Предпросмотр: текущий черновик текста (не реальное значение сервера)
При недопустимом ID, тексте или оверлее показывается ошибка; при создании удалять нечего.
После выбора существующего ID в списке можно изменить или удалить определение качества; редактирование сегментов включает текст, цвет и анимацию каждого сегмента. Создание определения само по себе не привязывает качество ни к одному предмету.
Основа интерфейса: HdCreateScreen.buildQualityForm/qualityErrors; подписи страницы сверены с текущим zh_cn.
Порядок действий

Сначала создайте или проверьте ID качества, затем задайте ссылку quality для существующего предмета. Создание определения не добавляет качество всей еде автоматически; указание несуществующего ID не создаёт текст или текстуру. Предметы, уже привязанные к этому ID, используют обновлённое определение.

Источник: QualityLevelConfig.ID_PATTERN, segments, overlay, HdCreateScreen.

03Редкость: назначение степени редкости предмету

Редкость настраивает текст, цвета и анимацию. Привязка к предмету: /hdset rarity <id редкости> [ID предмета] (OP2) или выбор в редакторе предмета; снятие переопределения: /hdset rarity clear [ID предмета] (OP2). Без явного ID целью является вариант NBT, совпавший с основной рукой; с ID изменяется резервная запись уровня предмета.

Вкладка «Редкость» в /hdui create (OP4) управляет определениями редкости; ID допускает 1–64 строчные буквы, цифры и _. После редактирования сегментов можно создать, изменить или удалить определение и посмотреть состояние. Новые допустимые определения редкости сразу доступны через прокси-редкость и синхронизируются; не считайте историческую подсказку «требуется перезапуск» общим условием для всех редкостей. При недопустимом определении проверьте текст и цвета.

/hdui create · вкладка «Редкость» · Только для чтения, HTML-схема по исходному коду; не скриншот игры и не данные сервера в реальном времени. Не выдаёт себя за существующие редкости сервера.
HD Создание  [Создать] [Удалить] [+]
+ Новый элементСписок существующих редкостей (значения не показаны)
IDВводится при создании; существующие элементы только для чтения
Текст[Редактировать текст (сегменты)] [Очистить]
СостояниеНовая редкость: сразу после сохранения действует и синхронизируется
При недопустимом ID/тексте показывается ошибка и сохранение отключается; для удаления выберите существующий элемент.
Здесь редактируются только определения редкости, привязка к предмету в руке не выполняется; состояние существующего определения показывает «действует» или причину недопустимости.
Основа интерфейса: HdCreateScreen.buildRarityForm/rarityErrors, CPacketCreateEntry.RARITY_ID_PATTERN и текущие подписи zh_cn.
Разные цвета для вариантов одного предмета

Сначала задайте общую редкость предмета, затем при необходимости отдельную для варианта NBT: переопределение используют только совпавшие варианты, остальные остаются на общей редкости. Чтобы снять редкость совпавшего варианта, держите его и выполните /hdset rarity clear без ID; команда с ID предмета снимает резервную запись в item_rarities.json. После снятия проверьте следующий уровень; «снятие переопределения» не гарантирует белое имя.

  • 1Приоритет у совпавшего варианта NBT; затем общая запись, резервная item_rarities.json уровня предмета и, наконец, исходная ванильная редкость.
  • 2Новые определения редкости можно показывать через прокси-редкость и обновлять на лету; не считайте историческую подсказку «нужен перезапуск» фактическим требованием для всех редкостей.
  • 3Изменение редкости влияет только на степень редкости и внешний вид, но не создаёт новый зарегистрированный предмет качества.
Источник: ItemConfig.rarity, RarityManager.DATAPACK_PROXY_ID, HDSetCommand.

04Отдельные зарегистрированные предметы

Через /hdui registry (OP4) открывается менеджер регистрации качества: просмотр, обновление и удаление записей. Три вкладки /hdui create не регистрируют новые предметы. Каждое определение указывает исходный предмет и задаёт имя регистрации, ID качества, действие употребления или питья, количество в стаке и т. п.

В отличие от привязки к существующему предмету, регистрация создаёт новый ID healthy_diet; регистрация происходит на этапе запуска. Определения хранятся локально в config/healthy_diet/quality_registry/*.json; менеджер изменяет план, действующий при следующем запуске, и /hdreload не добавляет совершенно новый ID в текущий реестр предметов.

От определения до выдачи

Сначала определите исходный предмет и имя регистрации, затем выберите существующий ID качества, возможность употребления и параметры стака/ресурсов; после сохранения распространите одинаковый список регистрации и нужные ресурсы клиента, перезапустите по процедуре регистрации на сервере и клиенте. /hdreload перечитывает список ожидающих определений, но не вставляет новые ID в работающий мир.

Мультисервер: при добавлении новых ID регистрации сервер и клиент должны иметь одинаковые определения и ресурсы. Не выдавайте новые незарегистрированные предметы игрокам после одной лишь горячей перезагрузки сервера; сначала завершите распространение и перезапуск по процедуре регистрации.
Источник: QualityRegistryEntry, план регистрации ConfigManager, HDReloadCommand.
СвязанноеСтроки качества, отображение редкости и схемы градиентов описаны в главе оформления.
Открыть оформление →