Как работают чанки на нашем проекте

  • Просмотры Просмотры: 6 819
  • Последнее обновление Последнее обновление:

Навигация

         Активация Счета
         Вывод с сервера
         Что такое БМ?
  • Предисловие:
    Здесь вы узнаете:
    • Что такое чанки и как посмотреть границы чанка
    • Что такое такты/тики
    • Почему нужно соблюдать границы чанков?
    • Как работают чанки у нас (это важно, потому что они работают НЕ так, как везде)

    Что такое чанк и как посмотреть его границы?
    Чанк - это ячейка мира майнкрафта. Он из них состоит. Блоки --> из них состоят чанки --> из чанков состоят регионы --> из регионов компонуется мир.
    Размеры одного чанка 16 на 16 блоков в длину и ширину, 256 блоков в высоту. Это 65 536 блоков. Да, вот так много)
    Кол-во активных чанков вокруг игрока на серверах определяется настройками сервера. У нас это минимум 6 (13), максимум 12 (25) чанков (подробнее ниже).
    Чтобы посмотреть границы чанка - нажмите F9 2 раза.
    ikWxX517G0Y.jpg

    Чанк будет обозначен зеленой сеткой. Красные линии в углах - его угловые точки.

    Что такое такты или тики, или TPS
    Такт (англ. Tick) — программная единица времени Minecraft, на которой основана вся игровая механика. Представляет из себя паузу между повторами цикла обновлений игрового мира.​
    Игровой цикл повторяется двадцать раз в секунду, поэтому такт — 1⁄20 секунды или 50 миллисекунд.​
    За каждый такт меняются многие игровые аспекты: ваши механизмы работают по тактам, день и ночь сменяется так же по тактам, движущиеся объекты меняют положение в пространстве, мобы проверяют окружение и обновляют поведение, меняются здоровье и голод игрока под внешним воздействием, и многое другое.​
    Важно понимать,что при идеальных условиях сервер проверяет весь мир на изменения 20 раз в секунду. И,соответственно, за это время состояние может либо измениться,либо остаться прежним.

    Подробнее о TPS значениях нашего сервера можно узнать здесь (ссылка).

    Почему нужно соблюдать границы чанков?
    Потому что моды обрабатываются так же по чанкам. Если чанк отгружен - энергия например идти по проводам из отгруженного чанка в загруженный не будет. Мобы не будут плодится. Растения не будут расти. В механизмах остановится переработка потому что остановятся сами механизмы.
    Если вы строите что-то большое старайтесь делать это так, чтобы провода, трубы и все такое - не пересекало в замкнутой системе границ чанков. Нам это не помешает. А вот вам будет приятнее играть.

    Как работают чанки (вообще) на серверах.
    vfwMsmLlybE.jpg

    На многих (на всех) проектах чанки работают крайне хреново.
    Прогружается на 100% только чанк, в котором стоит игрок (Красная зона)
    Чанки рядом с активным чанком режуться по прогрузке на 50% (желтая зона) (то есть работают в 2 раза медленнее).
    Чанки по диагонали - режутся на 75% (синяя зона) (то есть работают на в 4 раза медленнее)
    На лагающих серверах синяя зона замещает желтую - то есть все чанки вокруг игрока работают в 4 раза медленее.
    Все чанки дальше (сиреневая зона) - отключаются вообще. То есть грубо говоря - вы имеете только один рабочий чанк - тот в котором вы стоите.
    Если на сервере стоит прогрузка чанков равная 2 (не касается прогрузки в клиенте - это серверная настройка), то выглядит это так:
    ypHjxOkbjtA.jpg

    Конечно, при условиях, что желтая зона вообще работает.
    Если прогрузка на сервере более 2, то просто увеличивается синяя зону на нужное кол-во чанков.
    Так работают чанки на всех стандартных проектах.

    Как работают чанки у нас?
    НОРМАЛЬНО. Так же, как в сингле.
    Все
    прогружаемые чанки вокруг игрока на расстоянии 6-12 чанков РАДИУСОМ (!) (зависит от нагрузки сервера в данный момент) работают на 100%.
    o2RHC72slKk.jpg

    Центральный чанк (тот, в котором игрок - работает на 100% - аналогичен красной зоне.
    Чанки вокруг игрока (зеленая зона) в кол-ве, указанном в настройках сервера (ниже написано - сколько и на каком) - работают так же на 100% (аналогичны красной зоне). Зеленая зона равна стольки чанкам, сколько прописано в конфигах серверах.
    Чанки вне зоны действия (сиреневая зона) - отключаются совсем.
    Квантум:
    Если сервер нагружен - он работает на 6 чанков вокруг игрока + чанк в котором находится игрок, итого игрок прогружает зону в 13 на 13 чанков.
    Если сервер средне загружен, обычно он прогружает до 8 чанков вокруг плюс чанк игрока, то есть до 17на 17.

    Прогружает 6 чанков. То есть от 10 на 10. изменено 02 дек 2022
    Прогружает до 10 чанков радиусом, то есть 19-20*19-20 чанков
    Это прогрузка работы "тайлов" - механизмов, труб, печек, и всего такого.
    entity-tracking-range (нагрузка на клиент) (отслеживание клиентом видимых энтити, не сервером! сервер их отслеживает на прогружаемые чанки) - игроки 48 блоков, животные 16 блоков, монстры 48 блоков, все остальное 64 блока.
    mob-spawn-range (спавн энтить вокруг игрока) - 6 чанков радиус.
    entity-activation-range (активация сервером энтить в радиусе от игрока, неактивная энтити будет пропускать тики, чтобы сохранить немношк тпсиков, работать будет - но медленее, касается только энтить): животные 10 блоков, монстры 24 блока, остальное 16 блоков
    Руна:
    Прогружает 8-12 чанков. То есть от 17 на 17 до 23 на 23 чанка.
    Прогружает 10 чанков. То есть от 19-20*19-20 чанков вокруг игрока

    ТЕС:
    Всегда прогружает 12 чанков, то есть 25 на 25.

    Арканар:
    Всегда прогружает 8 чанков, то есть 17 на 17.

    Неважно, стоите вы в этом чанке, или нет. Если вы прогружаете этот чанк и радиусом вокруг него - все они работают одинаково на 100%.

    Спасибо за внимание.

    ---
    Up От 10 июня 2018 от 25 мая 2020
    Руна: 10 чанков
    Квантум: 6 (слишком много различных механизмов, на эту машину больше выдавать пока не будем, на самом деле больше и не надо). Может быть позже поднимем до 8-10. Сейчас пока не ясно - онлайна и нагрузки для тестов не хватает.

    ---
    Up от 02 дек 2022
    Квантум поднято до 10 чанков

    hJVpFq3Qz8c.jpg
Сверху