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

Ограничение снаряжения на основе навыков

Изменение в EM10

Начиная с EliteMobs 10, старый ограничитель лута по уровням гильдии заменён системой ограничения снаряжения на основе навыков. Уровни гильдии больше не существуют. Вместо этого игроки прокачивают отдельные навыки оружия и брони, убивая elite-мобов, и уровни их навыков определяют, какое снаряжение они могут экипировать.

Как это работает

В EliteMobs 10 у каждого игрока есть независимые уровни навыков для каждого типа оружия и брони:

  • Броня (повышается с 1/3 скорости оружия)
  • Мечи
  • Топоры
  • Луки
  • Арбалеты
  • Трезубцы
  • Мотыги
  • Булавы
  • Копья

Когда в AdventurersGuild.yml включена настройка skillBasedGearRestriction (включена по умолчанию), игроки не могут экипировать снаряжение выше соответствующего уровня навыка. Например, меч 30 уровня нельзя экипировать, пока навык «Мечи» игрока не достигнет хотя бы 30 уровня. Элементы брони проверяются по навыку «Броня».

Если игрок пытается экипировать снаряжение выше своего уровня навыка, он получит сообщение с указанием требуемого уровня навыка.

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

Выпадающий лут не ограничивается

В отличие от старой системы уровней гильдии, выпадающий лут больше не понижается в зависимости от прогрессии игрока. Elite-мобы будут выбрасывать предметы их естественного уровня независимо от уровней навыков игрока. Однако игроки не смогут экипировать предметы, превышающие их текущий уровень навыка, что выступает в роли естественного ограничителя снаряжения.

Как повышаются навыки

Игроки зарабатывают опыт навыков, убивая elite-мобов. Опыт начисляется на основе:

  • Опыт оружия: определяется типом оружия в основной руке в момент смерти моба. Получаемый опыт растёт квадратично с уровнем моба (моб 50 уровня даёт 2 500 опыта, моб 100 уровня даёт 10 000 опыта).
  • Опыт брони: всегда начисляется при каждом убийстве, но с 1/3 скорости опыта оружия. Это означает, что навык брони естественным образом отстаёт от навыков оружия.
  • Вклад в урон: при групповых убийствах опыт распределяется пропорционально вкладу каждого игрока в урон.

Формула опыта до следующего уровня

Опыт, необходимый для перехода с одного уровня навыка на следующий, следует кубической прогрессии:

  • Уровни 1–100: XP до следующего уровня = 8.5 * L^3 (где L — текущий уровень)
  • Уровни выше 100 (мягкий потолок): XP до следующего уровня = 8.5 * L^3 * (1 + ((L - 100)^2 / 100))

Множитель мягкого потолка непрерывен на 100 уровне (1.0x) и растёт квадратично сверх него, делая прогресс всё более трудным. Например, на 150 уровне множитель достигает примерно 26x, что делает дальнейшую прогрессию почти невозможной.

Убийства боссов также получают множитель опыта на основе множителей здоровья и урона босса. Компонент здоровья сублинеен (hpMultiplier^0.6), а компонент урона сильно демпфирован (1 + (dmgMultiplier - 1) * 0.15), поэтому босс с 10x HP даёт примерно 4x опыта, а босс с 25x HP даёт примерно 7x опыта (при обычном уроне). Мобы-подкрепления и ездовые животные не дают опыта навыков вообще.

Боевой уровень

Общий боевой уровень игрока вычисляется как: (высший навык оружия + второй по величине навык оружия + навык брони) / 3

Этот боевой уровень определяет, какие естественные elite-мобы спавнятся рядом с игроком, заменяя старый потолок уровня мобов на основе уровня гильдии.

Бонус к здоровью

Уровень навыка брони даёт бонус к максимальному здоровью: +1 сердце (2 HP) за каждый уровень навыка брони выше 1. Например, игрок с навыком «Броня» 50 уровня получает 49 бонусных сердец (98 бонусных HP) поверх ванильных 20 HP.

Защита от разницы уровней

  • У мобов, превышающих ваш боевой уровень более чем на 5 уровней, уровень награды опытом и лутом ограничивается так, как если бы они были всего на 5 уровней выше (эффективный уровень награды равен combatLevel + 5).
  • Для опыта навыка оружия дополнительно требуется, чтобы моб был не более чем на 5 уровней ниже уровня этого навыка оружия; в противном случае этот навык не получает опыта за убийство.
  • Настройка lootLevelDifferenceLockout в ItemSettings.yml (по умолчанию 10) блокирует ливень монет/лута, когда абсолютная разница между уровнем моба и вашим боевым уровнем превышает это значение — это предотвращает фарм мобов, которые намного ниже (или намного выше) уровня вашего снаряжения.

Уровни процедурных предметов

Процедурно генерируемые предметы получают визуальный уровень скина (skin tier) на основе уровня предмета. Эти уровни влияют на 3D-модель предмета и внешний вид надетой текстуры через ресурспак. Уровни таковы:

УровеньМинимальный уровеньОписание
Bronze20Первый уровень пользовательского скина, применяется при начале ограничений снаряжения
Palladium40Уровень середины прогрессии
Corrupted60Продвинутый уровень с искажённой (corrupted) визуальной темой
Living80Уровень высокого уровня с органическими визуальными эффектами
Ultimatium100Уровень эндгейма, высший визуальный уровень

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

Предотвращение паверлевелинга

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