Возможно вы встречались с такой проблемой, что игроки жалуются на спавн-рейт? То что у них плохо работают фармилки, хотя вы всё правильно настроили. И к тому же у вас не установлен ClearLagg, ведь так же?
И так в чём же может быть причина? Для этого мы углубимся в теорию.
Кроме как обработки условий где может спавнится тот или иной моб есть формула лимита мобов на мир, и так же из неё исходит шанс спавна мобов на игрока. Что за формула?
Mobcap = constant * chunk / 289
Mobcap - параметр отвечающий за общее количество мобов
constant - это параметр monsters, animals и т.д. который вы указываете в bukkit.yml для примера поставим 70 монстров
chunk - количество загруженных чанков, которые подходят для спавна мобов Что это за параметр? Его вы указываете в файле spigot.yml и называется: mob-spawn-range рассчитывается данный параметр так-же как и ниже. т.е. если у вас спавн-ранг = 2, то мобы будут спавнится в радиусе 3X3 или 9 чанков. Важное уточнение! параметр Chunk на серверах рассчитывается со всех игроков! Т.е. если у нас 2 игрока, то загруженных чанков 18, если 4, то загруженных чанков 36.
289 - судя из интернетов, это параметр отвечает за дальность обзора, который указан в server.properites. 289 это для сингла, по факту то, что указанно в параметре view-distance. Вы скажете, но там мой параметр (4-6). Да вы правы, вот только это параметр прямой видимости от игрока. (т.е. 4 чанка) в общем и целом view-distance при настройке в 4 равен 7X7 чанков или 49 чанков.
Ну а теперь начнём подсчёты вышестоящих переменных:
mobcap = 70 * 9 / 49 = 12 мобов.
Ох, что это значит? Всё верно!) т.е. у нас магическим образом на одного игрока не 70 мобов, а 12. Что будет если у нас станет 20 игроков? Давайте посчитаем!
mobcap = 70 * 180 / 49 = 257 агрессивных мобов на всех игроков или всё те же 12 мобов на игрока. При этом здесь будет ещё и влиять вероятность спавна на конкретного игрока. А точнее, если у игрока стоит фармилка на один чанк, то и вероятность спавна моба у него будет на все загруженные чанки, а точнее 1 к 180 (а если ещё и настроили попытку спавна мобов раз в 12 тиков, вообще табу!)
Хм, вы скажете а параметр
per-player-mob-spawns: true
, так вот. Читайте мануал от разработчиков ядра paper:"Включение этой настройки приводит к примерно одинаковому количеству мобов, но с более равномерным распределением, которое не позволяет одному игроку использовать всех мобов на сервере и обеспечивает более однопользовательский опыт.
В том и суть, что примерно, вероятность 1 к 180 никто не отменял) и у человека с фармилкой на 9 чанков шанс будет на много выше.
В общем что нужно делать? View-distance и mob-spawn-range нужно держать равными друг к другу. исходя из формулы получим точное значение мобов на игрока
mobcap = 70 * 49 / 49 = 70. прибавляем игроков 70 * (49*15) / 49 = 1050 или 70 мобов на человека.
Ещё пару уточнений.
despawn-ranges: уже работает в блоках. В чанке у нас 16 блоков. дистанцию обзора мы решили поставить 4. следовательно в данном случае идеально будет safe где-то 32 блока, а hard примерно 48-55. т.к. если моб уйдёт за view-distance и следовательно за прогруженный диапазон...и когда моб от туда вылезет...только Нотч знает.И немного о том, как работает спавн мобов. В выбранном диапазоне, в нашем случае view-distance 4 или 49 чанков. выбирается один чанк, который подходит по всем параметрам для данного моба, стаи. Чанк выбирается рандомным тиком, тем самым, который заставляет в какой-то момент траву расти. В качестве случайной точки спавна, выбирается блок в чанке. Если блок, в котором происходит спавн мобов, является непрозрачным полным кубом, то дальнейшие попытки спавна мобов отменяются. На каждую категорию мобов приходится не более 3 попыток появления. Мобы порождаются в области 41X41X1. Если попытка спавна была не удачна, спавн смещается на 4 блока в рандомную сторону. Таким образом, спавн сильно смещен в сторону центра мобов. Примерно 85% спавна находятся в пределах 5 блоков от центра мобов, а 99% - в пределах 10 блоков от центра. Если спавн входит в биом, отличный от исходного биома, остальная часть спавна и основная часть отменяется.
Каждый моб имеет свой вес на спавн. И сюда же входят параметры, размеров моба помещается ли он, освещённость, биом, поверхность, есть ли над ним небо или он в замкнутом пространстве.