Как починить чанки на сервере
[Ремонт карты MineCraft] Region-Fixer GUI
У многих администраторов игровых серверов MineCraft рано или поздно появляется проблема с поврежденными участками карты(чанками).
Некий пользователь Alejandro Aguilera (Fenixin) написал скрипт, который позволяет отремонтировать поврежденные участки, что позволяет обойтись без удаления карты.
В связи с тем, что не каждый пользователь может прочесть инструкцию, открыть консоль или же просто разобраться в скрипте, я написал GUI, который поможет Вам в несколько кликов починить Вашу карту.
Прямая ссылка: Скачать
Зеркало: Скачать
1) Скачайте Вашу карту себе на компьютер.
2) Укажите путь до этой карты в программе.
Вы можете, так же, указать количество ядер процессора, которое необходимо выделить на выполнение задачи(опционально).
3) Дождитесь окончания результата и загрузите карту обратно на сервер.
Внимание! Старую карту нужно удалить совсем. Заменять новыми файлами отремонтированной карты не рекомендуется!
Требования:
Для работы скрипта требуется Python версии 2.7.x. С версией 3.x работать не будет!
Ссылка на страницу загрузки: Link
x32: 2.7.6
x64: 2.7.6
У многих администраторов игровых серверов MineCraft рано или поздно появляется проблема с поврежденными участками карты(чанками).
Некий пользователь Alejandro Aguilera (Fenixin) написал скрипт, который позволяет отремонтировать поврежденные участки, что позволяет обойтись без удаления карты.
В связи с тем, что не каждый пользователь может прочесть инструкцию, открыть консоль или же просто разобраться в скрипте, я написал GUI, который поможет Вам в несколько кликов починить Вашу карту.
Прямая ссылка: Скачать
Зеркало: Скачать
1) Скачайте Вашу карту себе на компьютер.
2) Укажите путь до этой карты в программе.
Вы можете, так же, указать количество ядер процессора, которое необходимо выделить на выполнение задачи(опционально).
3) Дождитесь окончания результата и загрузите карту обратно на сервер.
Внимание! Старую карту нужно удалить совсем. Заменять новыми файлами отремонтированной карты не рекомендуется!
Требования:
Для работы скрипта требуется Python версии 2.7.x. С версией 3.x работать не будет!
Ссылка на страницу загрузки: Link
x32: 2.7.6
x64: 2.7.6
У многих администраторов игровых серверов MineCraft рано или поздно появляется проблема с поврежденными участками карты(чанками).
Некий пользователь Alejandro Aguilera (Fenixin) написал скрипт, который позволяет отремонтировать поврежденные участки, что позволяет обойтись без удаления карты.
В связи с тем, что не каждый пользователь может прочесть инструкцию, открыть консоль или же просто разобраться в скрипте, я написал GUI, который поможет Вам в несколько кликов починить Вашу карту.
Прямая ссылка: Скачать
Зеркало: Скачать
1) Скачайте Вашу карту себе на компьютер.
2) Укажите путь до этой карты в программе.
Вы можете, так же, указать количество ядер процессора, которое необходимо выделить на выполнение задачи(опционально).
3) Дождитесь окончания результата и загрузите карту обратно на сервер.
Внимание! Старую карту нужно удалить совсем. Заменять новыми файлами отремонтированной карты не рекомендуется!
Требования:
Для работы скрипта требуется Python версии 2.7.x. С версией 3.x работать не будет!
Ссылка на страницу загрузки: Link
x32: 2.7.6
Чанки
Визуализация одного чанка.
На снегу нанесены границы отдельных чанков
Чанки (от англ. Chunk — ячейка, кусок, осколок) — метод, который использует игра для разделения бесконечных карт на части.
Содержание
Генерация [ ]
Размеры одного чанка — 16 блоков в ширину, 16 блоков в длину и 256 блоков (384 блока [ заплан. : 1.18] ) в глубину. Это составляет 65 536 блоков. При прогрузке новой области карты, генерируется и становится активным 441 чанк вокруг игрока, или больше, если была установлена дальность прорисовки свыше 10 чанков. Чанки генерируются с помощью зерна карты, а это означает, что они будут всегда одинаковыми если вы будете использовать одно и то же зерно снова.
Прогрузка чанков [ ]
Количество активных чанков вокруг игрока в одиночной игре определяется дальностью прорисовки: от 25 на минимальной (2 чанка) до 4225 на максимальной (32 чанка). В многопользовательском режиме чанки по умолчанию загружаются в радиусе 10 от игрока (21*21 чанк). Радиус может быть сконфигурирован от 2 до 16, в зависимости от мощности оборудования и скорости подключения. На этих чанках могут появляться мобы, деревья, вода, предметы и прочее, когда активность на всех других чанках на карте остановлена и они являются полностью статичными. Если игрок переместится на область уже сгенерированных чанков, то эти чанки восстановятся и наполнятся динамическими объектами. С 20 декабря 2010 года сервер сохраняет чанки реже, чем раньше. Чанки не пересохраняются, если они уже были сохранены 30 секунд назад.
В некоторых версиях игры существует ошибка, в связи с которой один или несколько чанков на сервере не загружается, и игрок видит перед собой огромную пропасть до дна, но не может в неё упасть. Для ликвидации этой ошибки нужно переподключиться к серверу, изменить дальность прорисовки ( F3 + F ), перезагрузить чанки без изменения дистанции прорисовки ( F3 + A ), или установить факел неподалеку от этой дыры.
Спаун чанков [ ]
Чанки в области, непосредственно окружающей точку появления мира, являются особыми чанками, которые никогда не выгружаются из памяти, пока хотя бы один игрок находится в обычном мире. Это означает, что такие вещи, как механизмы из красного камня и мобофермы продолжают работать, даже когда все игроки находятся далеко.
Влияние на производительность [ ]
Чанки обычно загружаются в энергозависимую память только тогда, когда они необходимы для отображения. Это управление памятью «до тех пор, пока оно не понадобится» обычно используется в играх с процедурно-генерируемым ландшафтом, чтобы компьютерам игроков не приходилось одновременно отслеживать и обновлять сотни растений и мобов.
Механизм рендеринга Minecraft использует функцию отображения списка OpenGL, чтобы разделить мировой блок на шестнадцать больших списков отображения 16×16×16 блоков, чтобы значительно ускорить рендеринг. Их необходимо перестраивать каждый раз, когда блок внутри них изменяется, и их можно визуализировать несколько раз, например, для достижений, прозрачности. [1]
Чанки со слизнями [ ]
Слизни могут спауниться только на чанках, определяемых расчетами его координат, а также на чанках болота и в плоском мире. Существуют специальные программы и модификации, которые позволяют указать, где они могут спауниться.
Нахождение краев чанков [ ]
Сочетание клавиш F3 + G может использоваться для отображения границ чанка.
Кроме того, нажатие кнопки «F3» открывает экран «Отладка», который показывает координаты X, Y и Z игрока в дополнение к переменной «c». Эти координаты меняются по мере перемещения игрока. Игрок может узнать блок, в котором он находится, по переменной «c», которая находится рядом с переменными «x» и «z». Число в скобках указывает, как далеко игрок находится от северо-западного угла чанка, поэтому, если «с» рядом с Х было 3 (5), а «с» рядом с Z было 2 (4), то игрок находится на чанке (3, 2) и в блоке (5, 4) с северо-западного угла.
Координаты X и Z, которые делятся на 16, представляют границы между кусками. EG.: (96, −32) — это угол, где встречаются четыре чанка. Один из этих фрагментов находится между координатами X от 80 до 96 и координатами Z от −48 до −32. Другой находится между координатами X 96-112 и координатами Z-32-16, и так далее. Когда X или Z пересекают кратное 16, игрок перемещается через куски.
По сути, игрок находится в верхнем левом углу (северо-запад) чанка, когда обе координаты x и z делятся на 16.
Кроме того, игрок может узнать чанк, в котором он находится, по следующей формуле:
Х чанка — Floor(Х / 16),
Z чанка — Floor(Z / 16),
Где Floor(N) — целое число, меньшее, чем N. Например, Floor(27.9561) = 27.
Другими словами, если X было 27, Z было 15, то координаты чанка — это (Floor(27/16), Floor(-15/16)), что означает, что игрок находится в чанке (1, −1)
Также игрок может узнать, как далеко он находится от северо-западного угла по формуле:
(координата X или Z) И 15
В Bedrock Edition, при переключении причудливой графики, мир рендерится снова, загружая только часть, в которой находится игрок, в течение доли секунды, кратко показывая границы фрагментов.
Как работают чанки на нашем проекте
Навигация
Заглавная страница Wiki
Что такое такты или тики, или TPS
Важно понимать,что при идеальных условиях сервер проверяет весь мир на изменения 20 раз в секунду. И,соответственно, за это время состояние может либо измениться,либо остаться прежним.
Подробнее о TPS значениях нашего сервера можно узнать здесь (ссылка).
Как работают чанки (вообще) на серверах.
Конечно, при условиях, что желтая зона вообще работает.
Если прогрузка на сервере более 2, то просто увеличивается синяя зону на нужное кол-во чанков.
Так работают чанки на всех стандартных проектах.
Как работают чанки у нас?
НОРМАЛЬНО. Так же, как в сингле.
Все прогружаемые чанки вокруг игрока на расстоянии 6-12 чанков РАДИУСОМ (!) (зависит от нагрузки сервера в данный момент) работают на 100%.
Спасибо за внимание.
Обработка чанков в майнкрафте
При размещении и ломании блоков, а также при загрузке новых видимых чанков игра должна обновлять 3D-модель местности, которая видна игроку.
Эта настройка отвечает за алгоритм, используемый игрой в процессе пре-рендеринга для «компиляции» в единую 3D-модель местности блоков в чанках, изначально существующих лишь в виде строчек данных. Сгенерированная модель впоследствии передаётся графическому процессору для визуализации (создания картинки).
В 1.18 таких алгоритма 3:
• Потоковый
Алгоритм использует асинхронное построение 3D-модели в нескольких потоках, чтобы ускорить процесс обработки. Из-за того, что алгоритм параллельно (одновременно отдельно друг от друга) в разных потоках обрабатывает разные данные, вычисления могут выполняться с разной скоростью. Результат вычислений в одном потоке отправляется на ГП немедленно, не дожидаясь завершения остальных (они откладываются на следующий кадр), из-за чего модель местности может создаваться не полностью, приводя к визуальным дырам на месте некоторых чанков, однако устраняется проблема долгого ожидания завершения обработки всех обновлений. Визуальные дыры – кратковременный эффект, так как рано или поздно модель всё же будет сгенерирована и отрисована. Особенно это заметно при быстрой загрузке чанков.
Это самый быстрый алгоритм из предоставленных.
Примерно такой же используется в моде Sodium ещё со времён 1.16.1 (и dev-сборок на 1.15), но там он не вызывает визуальных багов.
• По событию
Каждый новый размещённый или сломанный блок приводит к необходимости перестроения модели местности. Если предыдущий алгоритм позволял не дожидаться завершения процесса построения модели, этот вариант будет ожидать завершения обновления всех размещённых игроком блоков, однако изменение блоков вдали будет второстепенным, как в предыдущем варианте. Именно отложенные обновления дальних блоков и могут приводить к визуальным дырам.
• Блокирующий
Правильнее было бы перевести как «принудительный». Этот алгоритм идентичен тому, что использовался игрой ранее (до снапшота 21w37a). Он не использует многопоточность для ускорения процесса (по крайней мере, раньше не использовал точно) и не отправляет модель местности на рендеринг до тех пор, пока не будет сформирована вся модель. Это довольно медленный алгоритм, однако самый бесшовный, который не вызывает визуальных багов.
Исходя из вышеперечисленного – юзайте Sodium и не парьтесь над проблемами оптимизации.