Конфигурация сервера
Конфигурация выделенного сервера:
CPU: Ryzen 9 7950x, разгон до 5,7 Ghz на водяном охлаждении.
RAM: 32 GB
SSD: 560GB NVME от компании Samsung
ОС: Debian 11
Местоположение: Россия, Москва.
Ядро сервера:
У нас стоит Purpur
Статья очень старая. Настройки ядра здесь указаны только для мира построек.
В мире ферм никаких изменений не было.
Ограничение по мобам:
Ограничение интеллекта жителей:
В ядре PurpurMC есть функция lobotomize, которая используется для "лоботомизации" жителей, если они не могут двигаться (например, если они застряли в стене или блоках). Эта функция не отключает возможность торговли с жителем. Функция lobotomize реализована в классе EntityVillager и содержит следующий код:
Как вы можете видеть, функция проверяет, жив ли житель
и может ли он двигаться. Если житель мертв или не может двигаться, то его профессия устанавливается на VillagerProfession.NONE, что приводит к его "лоботомии". Чтобы предотвратить лоботомию жителей, необходимо обеспечить им достаточно пространства для передвижения. Жители могут быть лоботомизированы, если они застревают в блоках или находятся в узких пространствах, где нет возможности свободного движения. Чтобы избежать этого, рекомендуется обеспечить жителям достаточное пространство, чтобы они могли ходить и перемещаться по своим домам и рабочим местам. Также стоит избегать строительства домов и сооружений с очень узкими проходами, которые могут препятствовать движению жителей. Если вы обнаружили лоботомизированного жителя, то можно попробовать переместить его в более просторное место, где он сможет свободно передвигаться. Если это не помогает, то единственный способ восстановить жителя - заменить его на другого жителя той же профессии.
Почему это сделано? Жители могут создавать некоторую нагрузку на сервер, особенно если на сервере находится большое количество жителей, тем более нужно учитывать что за этот сезон посетило более 3500 игроков. Однако, есть различные способы оптимизации сервера, которые могут помочь справиться с этой нагрузкой, такие как использование плагинов для управления жителями, ограничение количества жителей на сервере и т.д. Но это не дает никаких плюсов, потому что мы тогда ограничим в использовании всех жителей по серверу. Поэтому мы прибегли к мере лоботомии и ничего сложного в этом нет.
Ограничение остальных мобов:
Если вы играете на сервере, то необходимо знать, что в каждом чанке может быть установлено ограничение на количество мобов, которые могут появляться. Обычно это ограничение составляет 25 мирных мобов и 25 монстров в каждом чанке, а также 25 жителей. Эти ограничения были введены для обеспечения более стабильной игровой производительности и снижения нагрузки на сервер.
Важно отметить, что превышение определенного количества мобов в одном чанке может привести к задержкам игры или даже к вылету игроков с сервера. Поэтому, если вы планируете строить большие фермы или другие механизмы, которые могут привлечь большое количество мобов, следите за количеством созданий в пределах чанка и не превышайте ограничений.
Знание этих ограничений поможет вам избежать проблем с производительностью игры и гарантировать более приятный игровой процесс на сервере.
Конфиг сервера:
Тут можно узнать как часто спавнятся мобы, от скольки блоков спавнятся и десавнятся, видят игрока и многие других технические настройки.
bukkit.yml
Подробнее о каждом параметре https://bukkit.fandom.com/wiki/Bukkit.yml/ru
spigot.yml
Подробнее о каждом параметре https://www.spigotmc.org/wiki/spigot-configuration/
paper-global.yml
Подробнее о каждом параметре https://docs.papermc.io/paper/reference/global-configuration
paper-world-defaults.yml
Подробнее о каждом параметре https://docs.papermc.io/paper/reference/world-configuration
pufferfish.yml
Подробнее о каждом параметре https://docs.pufferfish.host/setup/pufferfish-fork-configuration/
Спавн и деспавн мобов:
Ниже приведен график, который показывает, как работает механика спавна мобов в игре. Это является стандартным поведением игры, которое называется "ванильной механикой". Однако, мы внесли изменение в значение Hard Despawn с 128 до 54 блоков.
Ниже приведено пояснение графика:
На графике изображены две сферы и цилиндр, которые определяют диапазон появления и активации мобов в игровом мире.
Красная сфера показывает зону появления мобов, которая находится между 24 и 54 блоками от игрока. Если игрок находится в этой зоне, он может столкнуться с мобами.
Зеленая сфера указывает на безопасную зону, свободную от мобов. Эта зона находится до 24 блоков от игрока, и мобы не будут появляться так близко к нему.
Цилиндр является областью, где мобы находятся в состоянии активности. Любой моб, находящийся в этом диапазоне до 32 блоков (измеряемых от центра игрока), будет двигаться и взаимодействовать с окружающей средой в нормальном режиме.
Если моб находится между кольцом из 32–54 блоков, его скорость тикания будет замедлена. И, наконец, если моб находится за пределами 54-го блока, он мгновенно исчезает.
После обновления до версии 1.19, почему моя ферма, построенная в более старой версии, теперь работает медленнее, хотя ничего не менялось?
В Minecraft происходит проверка спавна между самым нижним и самым высоким блоком (от Y0 до Y265 в версии 1.17), чтобы убедиться, что блок соответствует требованиям для возможной попытки спавна. Затем есть 24% шанс успеха спавна на этой конкретной высоте Y. Фермы рассчитываются на основе этого правила, и их оптимальное местоположение выбирается соответствующим образом.
Большой периметр - создание большого периметра вокруг вашей фермы устраняет все другие возможные места спавна, кроме указанного места на платформе фермы. (Это можно увидеть на сервере SciCraft и в большинстве обучающих материалов по фермам, которые используют плоский мир без блоков для демонстрации).
Ферма эндерменов на высоте Y0 - советуется строить фермы эндерменов на высоте Y0, так как это наиболее эффективное место.
Ферма в Нижнем мире над крышей Нижнего мира - фермы в Нижнем мире обычно строятся высоко над крышей Нижнего мира, так как создание большого периметра из-за большого количества лавы затруднительно, и перемещаясь выше в крышу Нижнего мира, вы перемещаете сферу деспауна высоко в небо, чтобы устранить все возможности возникновения мобов где-либо за пределами платформы вашей фермы.
С этим в виду, ваша ферма может быть менее эффективной из-за изменения высоты мира. Вместо проверки возможности спавна от Y0 до Y265, теперь она происходит от Y-64 до Y320 для поиска самого низкого и самого высокого блока для выполнения попыток спавна. Ваша ферма из версии 1.17, расположенная на высоте Y0, теперь имеет дополнительно 64 блока ниже, что замедляет спавн мобов.
КАК РЕШИТЬ ПРОБЛЕМЫ...
Перестройте вашу ферму в самом низком месте мира, которое теперь находится на высоте Y-64. (Это наиболее идеальное решение, но также и самое болезненное).
Выкопайте еще больший периметр и очистите все ниже фермы от Y-64 до Y0 (только блоки воздуха).
Примите и поймите, что спавн мобов в многопользовательских серверах по своей природе содержит недостатки, и более подробное объяснение будет представлено в per-player-mob-spawns позже.
Кратко: наиболее эффективным местом для фермы является самый низкий уровень Y с пустыми блоками сверху. Из-за изменения высоты мира ваша ферма больше не находится в наиболее подходящем месте.
Last updated