Перейти к основному содержимому

Система улучшения предметов

С элитных предметов можно снимать привязку, разбирать их, чинить и зачаровывать. Это руководство объясняет необходимые материалы, стоимость и возможные результаты.

Свитки, лом и билеты должны быть включёнными кастомными предметами с соответствующим материалом и consumable.type, равным unbind, repair_scrap или lucky_ticket. Для ремонтного лома также требуется целое число consumable.tier от 1 до 5; два других типа не допускают tier. Одного совпадения названия или описания недостаточно. Неверная настройка расходного предмета отключает этот кастомный предмет.

Сводка затрат по системам​

СистемаТребуемые предметыСтоимость в валютеШанс успеха
Разбор на ломЭлитный предметНет75% (по умолчанию)
Снятие привязкиЭлитный предмет + свиток снятия привязкиНет100%
ПочинкаЭлитный предмет + ломНет100%
ЗачарованиеЭлитный предмет + зачарованная книга (+ счастливый билет по желанию)(вес чар+1)^4 монетПеременный (см. формулу)

Снятие привязки с предметов

Если у вас есть свиток снятия привязки предмета, вы можете обратиться к NPC Unbinder и объединить 1 свиток с 1 предметом, чтобы снять с него привязку.

Свиток расходуется однократно. Снятие привязки удаляет владельца Soulbind и старую метку престижа. После этого предмет можно продать или передать другому игроку. Меню принимает элитные предметы с метаданными прочности и проверяет владельца свитка.


Разбор предметов на лом

Элитные предметы можно разобрать на лом у NPC Scrapper. При разборе предметов, в зависимости от уровня предмета, вы получите следующий лом:

  • Уровень 0-49: крошечный лом (elite_scrap_tiny.yml)
  • Уровень 50-99: малый лом (elite_scrap_small.yml)
  • Уровень 100-149: средний лом (elite_scrap_medium.yml)
  • Уровень 150-199: большой лом (elite_scrap_large.yml)
  • Уровень 200+: огромный лом (elite_scrap_huge.yml)

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

Ступень лома определяется округлённым уровнем предмета. Уровень 100 даёт средний лом; доступные ступени зависят от предметов, выдаваемых вашим сервером.

Лом — основа всей остальной Системы предметов.

Шанс успешного разбора: по умолчанию он равен 75% для каждого предмета в переданной стопке. Если нужный лом можно создать, расходуются все переданные предметы, включая неудачные результаты. Меню сообщает число успехов и неудач. Лом, не поместившийся в инвентарь, выпадает рядом с игроком.


Починка Элитных предметов

Элитные предметы можно чинить у NPC Repairman с помощью лома. Степень повреждения вашего предмета определяет количество и размер лома, необходимого для починки.

Объём починки: каждый тип лома восстанавливает фиксированное количество прочности:

  • Крошечный лом: 100 прочности
  • Малый лом: 200 прочности
  • Средний лом: 300 прочности
  • Большой лом: 400 прочности
  • Огромный лом: 500 прочности

Каждая починка расходует одну единицу лома и восстанавливает до указанного количества прочности, не превышая максимум. Сильно повреждённым предметам могут понадобиться несколько починок или более качественный лом. Подтверждение починки неповреждённого предмета тоже расходует лом.


Зачарование Элитных предметов

Прежде чем перейти к описанию того, как зачаровывать предметы, желательно ознакомиться с предметами, необходимыми для зачарования, и понять их назначение.

Элитный предмет
Элитный предмет — это любая добыча, доступная в магазинах EliteMobs, выпадающая с Elite Mobs или получаемая в награду за выполнение задания, а также из других источников.

Зачарованные книги
Зачарованные книги обычно выпадают с Elite Mobs или вручаются игрокам в качестве наград на Аренах или за Задания. Они содержат чары, которые игроки могут перенести на нужные им предметы.

Счастливые билеты
Счастливые билеты, обычно получаемые с Elite Mobs или в качестве наград на Аренах или за Задания, позволяют игрокам удвоить свои шансы на успех при зачаровании предметов.

Игроки могут открыть меню зачарования, посетив NPC Enchanter в Гильдии искателей приключений или используя меню /em.

Имея одновременно Элитный предмет и Зачарованную книгу, игроки могут попытаться добавить хранящиеся в книге чары к своему предмету. Каждая попытка стоит игрокам некоторое количество Элитных монет. Также они могут удвоить свои шансы, использовав Счастливый билет, если он у них есть.

Стоимость зачарования: цена равна (вес чар + 1)^4 элитных монет. Вес учитывает уровни, а не число разных названий: уровни нативных чар или чар в книге, уровни кастомных эффектов и поддерживаемые усиления нативных чар сверх ванильных пределов. Например, Острота III добавляет три нативных уровня. Меню показывает расчёт для конкретного предмета.

Примеры:

  • Вес 0: 1 монета
  • Вес 1: 16 монет
  • Вес 2: 81 монета
  • Вес 5: 1 296 монет
  • Вес 10: 14 641 монета

Шансы успеха: базовая вероятность равна min(1, 4 / (вес чар + 1)) и округляется до двух знаков после запятой перед случайным выбором. Например:

  • Вес 0: 400% (ограничивается 100%)
  • Вес 1: 200% (ограничивается 100%)
  • Вес 5: 67%
  • Вес 10: 36%

По умолчанию счастливый билет удваивает неокруглённую вероятность успеха до применения ограничения и округления. Он также делит пополам настроенный коэффициент критической неудачи. Итоговая вероятность уничтожения зависит от остатка и округления, поэтому она не равна просто половине показанного шанса без билета.

Суммирование чар: уровни складываются: Острота III + Острота II = Острота V. Весь результат должен соответствовать настроенным пределам уровней и проверкам совместимости. Нативные чары должны быть включены; кастомным эффектам нужен действующий поставщик и соответствие профилю снаряжения или магического оружия цели. Недопустимые сочетания отклоняются до оплаты. Нативной зачарованной книге не нужен ID кастомного предмета EliteMobs, но она должна содержать допустимые поддерживаемые чары.

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

  • Успех: чара добавлена к предмету. (Вероятность зависит от текущих чар)
  • Неудача: безуспешная попытка, приводящая к потере Зачарованной книги и Элитных монет. Предмет возвращается в целости. (Оставшаяся вероятность после успеха, критической неудачи и испытания)
  • Критическая неудача: теряются книга, монеты и предмет. Настроенный коэффициент составляет 1% вероятности, оставшейся после успеха, и делится пополам с билетом; полученная вероятность округляется до двух знаков после запятой.
  • Испытание: сражение с боссом с 10% вероятностью критической неудачи в случае поражения. Если игроки побеждают, предмет зачаровывается. (30% от оставшейся вероятности после расчёта успеха и критической неудачи)

Предмет с весом чар больше 10 может вызвать объявление на сервере. Текущая реализация читает successAnnouncement и как логическое значение, и как строку сообщения; отдельного YAML-ключа announceImportantEnchantments нет. Из-за этого конфликта типов параметр нельзя использовать как надёжный независимый переключатель объявлений.

Если выпало испытание, но нет доступного установленного испытания или событие запуска отменено, попытка сразу завершается успехом. Сбой после постановки запуска в очередь прерывает попытку и запускает возврат предметов и оплаты. Испытания личные: вход группой и присоединение других игроков запрещены. Совместимость поставщиков проверяется во время испытания и перед завершением.

Покупка проверяет текущие предметы и совместимость поставщиков до и после списания монет. Закрытие меню до покупки возвращает предметы. При завершении предметы, не поместившиеся в инвентарь, выпадают рядом с игроком; неопределённые выдачи и выдачи игрокам вне сети записываются для восстановления.

Если нельзя надёжно определить результат оплаты, возврата денег или выдачи предметов, сервер сохраняет запись в plugins/EliteMobs/enchantment_recovery/ и сообщает игроку её ID. Администратор должен вручную сверить состояния платежей и предметов: нельзя вслепую повторять выдачу или списание с неизвестным результатом. Прерывание из-за сбоя инфраструктуры пытается вернуть исходный предмет, книгу, билет и оплату; обычная игровая неудача расходует купленную попытку.

Настройка зачарования​

Настройки зачарования находятся в SpecialItemSystems.yml, а шанс успешного разбора на лом — в конфигурации меню разборщика.

КлючФайлПо умолчаниюЭффект
luckyTicketMultiplierSpecialItemSystems.yml2.0Множитель, применяемый к шансу успеха при использовании Счастливого билета
criticalFailureChanceV2SpecialItemSystems.yml0.01Доля оставшейся (неуспешной) вероятности, которая становится критической неудачей. Уменьшается вдвое Счастливым билетом
challengeChanceSpecialItemSystems.yml0.30Доля вероятности, оставшейся после успеха и критической неудачи, которая становится испытанием с боссом
criticalFailureChanceDuringChallengeChanceSpecialItemSystems.yml0.10Шанс потерять предмет, если вы проиграете бой-испытание
scrapChanceконфигурация меню разборщика0.75Шанс того, что предмет при разборе действительно даст лом

Вероятности рассчитываются по порядку с округлением каждой до двух знаков после запятой: успех, критическая неудача из остатка без успеха, испытание из следующего остатка, затем обычная неудача. Исход выбирается одним случайным числом. При стандартных настройках, весе 10 и без билета меню показывает 36% успеха, 1% критической неудачи, 19% испытания и 44% неудачи. Вероятность успеха 100% гарантирует успех. Недопустимые вероятности или цена вне поддерживаемого диапазона целых чисел блокируют покупку.

Наглядный пример

Видео MagmaGuy с объяснением некоторых систем.

Создайте собственные Зачарованные книги​

Ниже приведено краткое руководство, объясняющее, как можно создать собственные Зачарованные книги.


isEnabled​

Определяет, включён ли предмет.

КлючЗначенияПо умолчанию
isEnabledBooleantrue
Пример
isEnabled: true

name​

Задаёт название предмета. Поддерживает Color Codes.

КлючЗначенияПо умолчанию
nameStringнет
Пример
name: '&aElite Custom Enchanted Book'

create_book_name.jpg


lore​

Задаёт описание (lore) предмета. Поддерживает Color Codes.

КлючЗначенияПо умолчанию
loreString Listнет
Пример
lore:
- '&2Use this custom book to'
- '&2enchant items at the enchanter!'

create_book_lore.jpg


material​

Используйте ENCHANTED_BOOK. Зачарователь требует настоящую зачарованную книгу; обычный BOOK с метаданными чар не принимается.

КлючЗначенияПо умолчанию
materialENCHANTED_BOOKнет
Пример
material: ENCHANTED_BOOK

create_book_material.jpg


enchantments​

Задаёт, какие чары должен нести предмет.

КлючЗначенияПо умолчанию
enchantmentsMineCraft Enchantments или EliteMobs Enchantmentsнет
Пример
enchantments:
- elitemobs:earthquake,1

create_book_enchantments.jpg


itemType​

Задаёт, откуда можно получить предмет. Установите значение custom, если хотите, чтобы ваша книга выпадала со случайных элит и продавалась в магазинах.

Либо установите unique, чтобы она выпадала только из настроенных таблиц добычи.

КлючЗначенияПо умолчанию
itemTypeЗначениянет
Пример
itemType: custom

soulbound​

Определяет, привязывается ли книга к получателю. Укажите false, чтобы разрешить обмен.

КлючЗначенияПо умолчанию
soulboundBooleantrue
Пример
soulbound: true

Пример Зачарованной книги​

Пример конфигурации Зачарованной книги
isEnabled: true
material: ENCHANTED_BOOK
name: '&5Excellent Mining Enchanted Book'
lore:
- '&2Used to enchant items at the enchanter!'
enchantments:
- MENDING,1
- elitemobs:drilling,1
itemType: UNIQUE
soulbound: false

Как видите, создание Зачарованных книг не так уж сложно. Большинство настроек — это обычные настройки, которые вы использовали бы при создании предмета.

Книга из примера содержит нативные чары MENDING и кастомный эффект elitemobs:drilling.

Это делает нашу книгу-пример отличной книгой, которую захочется применить к кирке.


Для администраторов серверов: таблица перечисляет настраиваемые вероятности. Формула цены с четвёртой степенью и объёмы починки фиксированы в текущей реализации. Перед подтверждением игрокам стоит проверить расчёт в меню и настройки сервера.