Как изменить параметры запуска сервера minecraft

Данная статья знакомит читателя с особенностями работы чистого (без модификаций) сервера Minecraft текущей версии. В отличие от клиента, распространяется бесплатно через официальный сайт игры и работает со всеми версиями клиента (пиратской и официальной). Информация в этой статье была приведена в соответствие с версией 1.15.2. Для работы сервера требуется установить на Ваш ПК пакет Java. Его можно скачать на этой странице. Но если клиент Minecraft запускается, то это индикатор того, что данный п

Данная статья знакомит читателя с особенностями работы чистого (без модификаций) сервера Minecraft текущей версии. В отличие от клиента, распространяется бесплатно через официальный сайт игры и работает со всеми версиями клиента (пиратской и официальной). Информация в этой статье была приведена в соответствие с версией 1.15.2.

Подготовка к работе

Загрузка необходимого ПО

Для работы сервера требуется установить на Ваш ПК пакет Java. Его можно скачать на этой странице. Но если клиент Minecraft запускается, то это индикатор того, что данный пакет уже установлен на компьютер. (Теперь minecraft можно установить через установщик, который сам скачивает для себя Java. В этом случае вам все равно нужно установить Java.)

Для того чтобы скачать сервер, требуется перейти на страницу загрузки официального сайта. Нажмите на соответствующую ссылку и сохраните файл в отдельной директории, которая будет основной для Вашего сервера. При создании сервера на Linux или OS X основной директорией сервера является рабочая директория; используйте команду cd /путь/до/сервера/.

Создание и настройка сервера

Знакомство с параметрами сервера

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

Рассмотрим файл server.properties. Данный файл содержит в себе все основные параметры сервера. Откройте этот файл при помощи любого текстового редактора. Вы увидите примерно такое содержимое:

#Minecraft server properties
#Wed Apr 08 20:35:49 MSK 2020
spawn-protection=16
max-tick-time=60000
query.port=25565
generator-settings=
sync-chunk-writes=true
force-gamemode=false
allow-nether=true
enforce-whitelist=false
gamemode=survival
broadcast-console-to-ops=true
enable-query=false
player-idle-timeout=0
difficulty=easy
broadcast-rcon-to-ops=true
spawn-monsters=true
op-permission-level=4
pvp=true
snooper-enabled=true
level-type=default
hardcore=false
enable-command-block=false
network-compression-threshold=256
max-players=20
max-world-size=29999984
resource-pack-sha1=
function-permission-level=2
rcon.port=25575
server-port=25565
server-ip=
spawn-npcs=true
allow-flight=false
level-name=world
view-distance=10
resource-pack=
spawn-animals=true
white-list=false
rcon.password=
generate-structures=true
online-mode=true
max-build-height=256
level-seed=
prevent-proxy-connections=false
use-native-transport=true
motd=A Minecraft Server
enable-rcon=false

Описание параметров

Параметр Значения По умолчанию Описание
allow-flight true / false true Разрешает игроку совершать полёты по миру Minecraft. Эта опция действует только на полёты в режиме Выживание и оказывает эффект только при наличии соответствующего плагина (например, Flight). На полёты в режиме Творчество никак не влияет.
allow-nether true / false true Данный параметр определяет возможность перехода в Нижний мир. Если отключить, все игроки, находившиеся в Нижнем мире, будут перемещены в обычный. Не влияет на переход в Край.
broadcast-console-to-ops true / false true Позволяет вывести результат выполнения команды в консоли всем операторам сервера.
broadcast-rcon-to-ops true / false true Позволяет вывести результат выполнения команды в консоли RCON всем операторам сервера.
announce-player-achievements true / false true Данный параметр определяет, должен ли сервер отправлять в чат сообщения о получении достижений.
difficulty Строка easy Уровень сложности:

peaceful — Мирный
easy — Лёгкий
normal — Нормальный
hard — Сложный
enable-command-block true / false false Позволяет использовать командный блок. Эта опция не генерируется при первой загрузке, а появляется при первой попытке использования командного блока.
enable-jmx-monitoring true / false false Позволяет включить MBean (функция в Java, позволяющая предоставлять определенные статистические данные для мониторинга) с объектом net.minecraft.server:type=Server и двумя атрибутами:

averageTickTime — среднее время на совершение одного тика (в миллисекундах),

tickTimes — время cовершения порядка 100 последних тиков (в наносекундах).

Связано с термином TPS.

Чтобы включить выполнение JMX в Java, необходимо задать соответствующие флаги запуска JVM. Более подробно описано в этой документации

sync-chunk-writes true / false true Включает синхронную запись чанков.
enable-status true / false true Включает отображение сервера как «онлайн» (если он запущен).

Если значение установлено на false, то в меню сетевой игры работающий сервер будет отображаться как «оффлайн», однако также сможет принимать подключения игроков.

entity-broadcast-range-percentage Число (0-500) 100 Позволяет изменять дистанцию рендера энтити для клиентов в процентах. Более высокие значения могут привести к снижению производительности сервера, поскольку чем выше значение, тем выше дальность прорисовки энтити и больше ресурсов нужно для их обработки.

Это настройка выражается в процентах (100% по умолчанию). Например, установка этого значения на 50 уменьшит дальность рендера энтити вдвое. Представляет собой серверный аналог изменения прорисовки у клиента.

enable-query true / false false Позволяет активировать протокол GameSpy4 для прослушки сервера (получении информации о сервере).
enable-rcon true / false false Позволяет использовать удаленный доступ к консоли сервера.
force-gamemode true/false false Если true, то при подключении к серверу режим игры игрока изменятся на стандартный, указанный в gamemode.
gamemode Строка survival Стандартный игровой режим, автоматически устанавливаемый всем впервые зашедшим на сервер игрокам. Режим отдельного игрока меняется командой /gamemode.

survival — Выживание
creative — Творчество
adventure — Приключение
spectator — Наблюдение
function-permission-level Число (1-4) 2 Устанавливает уровень доступа для функций.
generator-settings нет Строка Эта строка задает шаблон генерации суперплоского мира. См. суперплоскость для подробностей.
generate-structures true / false true Генерировать ли структуры (сокровищницы, крепости, деревни…)
hardcore true / false false Включает на сервере режим Хардкор. После смерти — переход в режим наблюдателя.
level-name Имя папки world Название папки с файлами карты, которую будет использовать сервер во время игры. Данная папка размещена в том же каталоге, где находится сервер. Если её не окажется, сервер автоматически сгенерирует новый мир и поместит его файлы в папку с этим названием.
level-seed Любое допустимое зерно Входные данные (зерно) для генератора уровня. Если вы хотите создать случайный мир — оставьте данное поле пустым.
level-type DEFAULT / FLAT / LARGEBIOMES / AMPLIFIED DEFAULT Определяет тип мира.
max-build-height Число, кратное 16 (64 — 256) 256 Указывает максимальную высоту постройки на вашем сервере. Выше этого уровня нельзя будет ломать или ставить блоки. Местность может генерироваться выше этого уровня, также можно разрушать блоки при помощи ТНТ и огня. Кроме того, выше границы работают вёдра (ошибка).
max-players Число (0-2147483647) 20 Указывает максимальное допустимое количество игроков на сервере.
motd Строка не более 60 символов A Minecraft Server Описание сервера, отображаемое при подключении в списке серверов. Поддерживает форматирование текста.
online-mode true / false true Этот параметр позволяет включить/выключить режим онлайна. Если его выключить, то на сервер смогут заходить только по локальной сети или с этого компьютера и с любым аккаунтом (даже пиратским).
op-permission-level Число (1-4) 4 Позволяет изменять права операторов.

1 — Операторы могут ломать / ставить блоки внутри радиуса защиты территории спауна.
2 — Операторы могут использовать команды /clear, /difficulty, /effect, /gamemode, /gamerule, /give, /tp, и могут изменять командные блоки.
3 — Операторы могут использовать команды /ban, /deop, /kick, и /op.
4 — Операторы могут использовать команду /stop.
player-idle-timeout Число 0 Если не поставлен ноль, то игроки будут автоматически отключаться от сервера, если они ничего не делали в течение указанного времени (в минутах).
pvp true / false true Включает/отключает получение урона игрокам от атак других игроков на сервере. При true игроки смогут «воевать» между собой, убивая друг друга. Если уставлено значение false, игроки не смогут наносить прямой урон один другому.
query.port Число (1-65535) 25565 Порт для получения информации о сервере. Появляется автоматически при enable-query=true.
rcon.password Строка нет Пароль для удаленного доступа к серверу. Появляется автоматически при enable-rcon=true.
rcon.port Число (1-65535) 25575 Порт для удаленного контроля сервера. Появляется автоматически при enable-rcon=true.
resource-pack Имя файла нет Местоположение ресурсов, которые сервер предложит загрузить игроку при соединении. В данном поле нужно указать прямую ссылку на zip-архив.
server-ip Любой допустимый IP-адрес нет Указывает IP-адрес сервера, который будет использоваться другими игроками для подключения к этому серверу. Данное поле рекомендуется оставлять пустым, но если вы хотите дать серверу особый IP-адрес, то можно воспользоваться этим параметром, чтобы задать его. (Нельзя указывать ip-адрес своего компьютера, из-за этого сервер просто вылетит и не будет запускаться, пока не замените его на другой).
server-port Число (1-65535) 25565 Данный параметр определяет значение порта в протоколах TCP и UDP, который будет использовать сервер игры. Стандартный для Minecraft порт — 25565. Рекомендуется не изменять значение, т.к. для входа на сервер, использующий стандартный порт, игроку будет достаточно набрать IP или DNS адрес, без указания порта, а также при использовании других портов есть вероятность того, что этот порт уже будет занят другим сетевым ресурсом. Если вы всё же хотите указать порт вручную, выбирайте числа побольше и избегайте популярных портов: 80 и 8080 (web-сервер), 21 (ftp-сервер), 22 (ssh-сервер), 143 (imap), 6969 и 6881—6889 (bittorrent) и др. Например, порт 23000 подойдёт.

При выборе порта вы можете руководствоваться данным списком стандартных портов, которые могут принадлежать другим сетевым службам и программам.

snooper-enabled true / false true Разрешает серверу отправлять некоторую статистику и данные разработчикам.
spawn-animals true / false true Аналогично spawn-monsters, но для дружелюбных мобов (коровы, свиньи, овцы…).
spawn-monsters true / false true Если значение параметра true, то, как и в одиночной игре, в ночное время и в тёмных пещерах на карте будут появляться враждебные мобы и будут стараться нанести вред игрокам на сервере. Если значение false, враждебные мобы (например, скелеты, зомби) не будут автоматически появляться во время игры, однако их можно заспаунить с помощью яиц призывания. Все находившиеся на карте мобы останутся.
spawn-npcs true / false true Разрешить появление NPC в деревнях.
spawn-protection Число (1-100) 16 Радиус защиты территории спауна в блоках (эту территорию смогут изменять только операторы). Радиус 0 дает защиту единственного блока, 1 — зоны 3×3 и так далее. Эта опция не генерируется при первой загрузке, а появляется, когда первый игрок заходит на сервер. После 1.4.2 защита спауна автоматически отключается, если у сервера нет ни одного оператора.
view-distance Число (3-15) 10 Регулирует радиус обновляемых чанков для отсылки игроку. Для справки: дальность прорисовки Far в версиях до 1.7 отображает область в радиусе 10 чанков.
white-list true / false false Позволяет включать/отключать использование вайтлиста на сервере. При true администратору сервера необходимо будет вручную добавлять ники игроков в белый список. Если установлено значение false, любой игрок сможет зайти на данный сервер, зная его IP-адрес и порт. Администраторы сервера имеют возможность зайти на сервер вне зависимости от белого списка.
enforce-whitelist true / false false Позволяет включать/отключать перезагрузку вайтлиста при заходе игрока, прежде чем отключить его от сервера.

Когда эта опция включена, сервер кикнет игрока только после того, как автоматически перезагрузит вайтлист для поиска изменений.

false — Игроки не будут отключены от сервера, если их нет в вайтлисте.
true — Игроки будут отключены от сервера, если их нет в вайтлисте.

Требуется проверка перевода.

max-world-size Число (1-29999984) 29999984
Устанавливает границу мира на выбранном радиусе, считая от нулевой координаты. Установка границы, выходящей за пределы мира не сделает ничего.

Например

  • Если указан радиус в 1000 блоков, то вы получите рабочее пространство 2000 х 2000 блоков.
  • Если указан радиус в 4000 блоков, то вы получите рабочее пространство 8000 х 8000 блоков.
network-compression-threshold Число n 256 По умолчанию он позволяет пакетам размером n-1 байт нормально работать, но пакет, состоящий из n байтов или более, будет сжат. Таким образом, меньшее число означает большее сжатие, но сжатие небольшого количества байтов может на самом деле привести к большему результату, чем то, что произошло.

-1 — отключить сжатие
0 — сжать все

Примечание: интернет требует, чтобы пакеты размером менее 64 байтов дополнялись до 64 байтов. Таким образом, установка значения ниже 64 может быть нецелесообразной. Также не рекомендуется превышать 1500 байт.

resource-pack-sha1 Строка blank Необязательный SHA-1 дайджест пакета ресурсов, в шестнадцатеричном виде в нижнем регистре. Рекомендуется указать это. Это не используется для проверки целостности пакета ресурсов, но повышает эффективность и надежность кэширования.
use-native-transport true / false true Улучшение производительности сервера Linux: оптимизировать отправку / получение пакетов в Linux

true — Включить
false — Выключить
max-tick-time Число (0 — (2^63 — 1)) 60000 Максимальное количество миллисекунд, которое может занять один тик, прежде чем серверный сторожевой таймер останавливает сервер с сообщением. Один тик сервера занял 60,00 секунд (должно быть не более 0,05 сек); Считая, что он потерпел крах, сервер принудительно завершит работу. Как только этот критерий удовлетворен, он вызывает System.exit (1).

-1 — полностью отключить сторожевой таймер (эта опция была добавлена в 14w32a)

Первая строчка «#Minecraft server properties» необходима для определения сервером, что это именно тот действующий файл server.properties, который он будет использовать в данный момент.

Вторая строчка «#Thu Jul 07 16:45:52 MSK 2016» описывает даты последнего изменения сервером данного файла. Важно помнить, что сервер берёт те дату и время, которые установлены операционной системой.

Формат:

‘#’ <Первые три буквы дня недели на английском языке> <Первые три буквы месяца на английском языке> <Число> <Время ЧЧ:ММ:СС> <Часовой пояс> <Год>

Непосредственно перед началом игры на сервере вы можете настроить указанные выше параметры сервера.

  • Поле server-ip лучше всего оставить пустым — игра сама определит и настроит данный параметр. Но если вы хотите присвоить серверу особый IP-адрес, то можете изменить этот параметр.
  • Поле gamemode указывает на игровой режим, который автоматически будет включен всем игрокам, зашедшим на сервер. Игровой режим для конкретного игрока можно сменить во время работы.
  • Если вы включили white-list, сделайте себя оператором или добавьте себя в белый список.
  • При заполнении поля max-build-height неподходящим числом сервер автоматически подбирает ближайшее число, возможное для использования.

Любое изменение настроек в этом файле требует перезапуск сервера. Кроме того, сервер иногда может записывать изменения в этот файл, поэтому перенастройку лучше производить при отключенном сервере.

Настройка подключения к серверу

Стоит отметить, что на сервере могут одновременно играть игроки как из локальной сети, так и из сети Интернет.

Подключение к собственному серверу

Если вы держите сервер на том же компьютере, на котором собираетесь играть, для подключения достаточно ввести адрес 127.0.0.1 или localhost. Этот адрес задействует виртуальный сетевой интерфейс (loopback), который доступен всегда, даже если у компьютера нет сетевой карты.

Если вы не можете подключиться даже через петлевой интерфейс, это повод проверить настройки антивируса и файерволла. Добавьте в исключения Minecraft Server и порт 25565.

Сервер в локальной сети

Процесс настройки сервера игры по локальной сети намного проще создания доступного из Интернета, и является более простым в плане возникновения ошибок при подключении к серверу.

С версии 1.3.1 вы можете открыть свой мир из одиночной игры для локальной сети, для этого достаточно загрузить мир, нажать паузу и выбрать «Открыть мир для локальной сети». Однако, такой способ несколько ограничивает возможности владельца сервера.

Подключение к локальному серверу

Чтобы игроки смогли подключится к вашему серверу, их компьютеры должны быть объединены с компьютером-сервером по локальной сети (LAN). В строке ввода IP-адреса сервера они должны написать внутренний IP-адрес компьютера, на котором создан сервер. Локальный IP-адрес желательно должен быть статическим (быть прописанным в настройках сетевого подключения вручную) или привязанным к MAC-адресу.

В качестве локальной сети может выступать как ваша домашняя локальная сеть, так и локальная сеть провайдера или псевдолокальная сеть (VPN), предоставляемая программами вроде Hamachi.

Определение внутреннего IP-адреса

Определение внутреннего IP-адреса сервера под управлением Windows.

Определение внутреннего IP-адреса сервера под управлением Linux.

Чтобы узнать внутренний IP-адрес сетевой соединения, на котором вы создаете LAN сервер, выполните следующие пункты:

  • Windows
  1. Нажмите комбинацию клавиш на клавиатуре Windows + R
  2. В открывшемся окне «Выполнить» в строке ввода введите cmd
  3. В новом открывшемся окне напишите команду ipconfig

После этого программа ниже отобразит основные данные про сети, к которым подключен компьютер. Внутренний IP-адрес отвечает строке «IP-адрес» в блоке «Home Network — Ethernet адаптер:».

  • Linux, OS X
  1. Выполните в терминале команду ifconfig
  2. Ваш локальный IP-адрес указан после «inet addr» или «inet» в секции вашего сетевого интерфейса.

Настройка сервера для игры по Интернету

Для того, чтобы понять возможность подключения к вашему серверу из Интернета нужно сначала определить тип IP-адреса, который используется. Данная информация может быть размещена в условии договора с провайдером интернета или на личной странице пользователя на сайте провайдера.

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

Для того, чтобы различить внешний и внутренний адрес, стоит сравнить адрес, под которым вы видны в сети и адрес, который получает ваш компьютер или роутер/модем, подключенный к линии провайдера (как правило, доступен по адресу 192.168.1.1 или 192.168.0.1). Существует много сайтов, которые определяют IP-адрес посетителя в онлайн-режиме, например, 2IP.ru.

Кроме того, ваш адрес может быть постоянным, статическим, или меняться при каждом переподключении к провайдеру, то есть быть динамическим. Самым легким способом определения типа адреса является переподключение модема и сравнение внешних IP-адресов. Если после повторного подключения модема IP-адрес изменился, то это значит, что у вас динамический IP-адрес. Динамические адреса являются более распространенными, чем статические, но при создании сервера игры рекомендуется иметь статический IP-адрес, так как динамический адрес меняется при каждом переподключении к провайдеру (и вам придется постоянно сообщать новый адрес вашим игрокам). Тем не менее, статический адрес — необязательное условие для работы сервера.

К тому же, существуют сервисы (в том числе и бесплатные), предоставляющие домены третьего уровня, например, dyn.com/dns/. Обновление адреса производится обычно при помощи специальной программы, которую вы должны будете установить на компьютер, но некоторые модемы и роутеры могут сами выполнять эту функцию (посмотрите в интерфейсе маршрутизатора на предмет Dynamic DNS). Многие провайдеры предлагают статический IP-адрес в качестве дополнительной услуги.

Подключение к серверу

Чтобы подключиться к Вашему серверу, игроки в строке ввода IP-адреса сервера в клиенте игры должны ввести Ваш внешний IP-адрес или домен (адрес сайта) и нажать кнопку подключения к серверу. Внешний IP-адрес может узнать владелец сервера и сказать его игрокам, которые хотят подключиться к его серверу. Узнать ваш внешний IP-адрес могут помочь сайты: SpeedTest.net, 2IP.ru, Smart-IP.net.

Если игроки не могут подключиться к вашему серверу, смотрите раздел FAQ.

Сервер через VPN

Если у вас возникают проблемы с внутренним IP-адресом, можно попробовать Hamachi, P2PLauncher, EasyVPN, Garena или подобные сервисы. Самым популярным из них является Hamachi. Создатель сервера и подключающиеся должны скачать и установить Hamachi. Далее:

Для сервера:

  1. Создать комнату.
  2. server-ip оставить пустым.
  3. Запустить сервер.
  4. Сообщить свой IP в Hamachi (рядом с кнопкой подключения) подключающимся.

Для игроков:

  1. Зайти в комнату с сервером.
  2. Попробовать подключиться по полученному IP.

Самая простая в использовании — это программа P2PLauncher, соединяющая компьютеры через сеть peer-to-peer. Просто поместите её в папку с игрой и запустите.
На сервере:

  1. Введите никнейм (он же — будущее имя сервера) и название комнаты, нажмите «Запустить сервер».
  2. Сообщите название комнаты и свой ник, тому кто хочет к вам присоединиться.

На клиенте:

  1. Запустите P2PLauncher. Введите свой никнейм и название комнаты, нажмите «Запустить клиент».
  2. В качестве имени сервера используйте ник игрока, создавшего сервер.

Открытие портов

Открытие, или проброс портов (Port Forwarding) позволяет клиентам, подключащимся из Интернета, получать доступ к серверу, который находится за маршрутизатором или модемом. Проблема с открытием портов часто встречается при создании сервера в локальной подсети. Маршрутизатор или модем могут блокировать порт, который пытается использовать сервер игры. Для разных моделей эта процедура происходит немного по-разному.

Есть 2 способа открытия портов:

  • На сайте portforward.com представлена сборка специального ПО, которое предназначено для открытия портов на различных моделях модемов. Зайдите на этот сайт и в списке найдите модель своего модема или маршрутизатора. Перейдите на страницу вашей модели и скачайте оттуда утилиту, предназначенную для открытия портов. С помощью неё откройте порт, который использует ваш сервер (по умолчанию 25565).
  • Зайдите в веб-интерфейс вашего модема или маршутизатора через веб-браузер. Как правило, чтобы зайти в него, в строке ввода веб-адреса нужно ввести 192.168.1.1 или 192.168.0.1. После того, как вы оказались в меню веб-интерфейса, найдите пункт Port Forwarding или NAT. После открытия этого меню вам потребуется ввести некоторые параметры. Параметры, которые могут потребоваться: Start Port — 25565, End Port — 25565, IP adress — локальный IP-адрес компьютера, на котором вы создаете сервер (например, 192.168.1.2), Protocol — сначала введите TCP, а после этого повторите всю процедуру снова для протокола UDP. Примеры открытия портов для многих моделей модемов можно найти на portforward.com.

Пример использования программы PFPortChecker

Чтобы проверить, удалась ли процедура открытия порта, попросите кого-нибудь вне вашей локальной сети подключиться к серверу, используя внешний IP-адрес (вы также можете попробовать подключиться к себе по внешнему адресу самостоятельно, но неудача в этом случае не всегда означает недоступность сервера). Или же загрузите и установите программу PFPortChecker. В поле Port введите номер порта, который вы пытались открыть. В поле Protocol сначала выберите UDP, а потом TCP. Затем нажмите кнопку проверки. После окончания проверки программа выведет 3 итога для TCP и 3 для UDP. Если текст всех 6 результатов проверки будет зелёного цвета, значит процедура удалась полностью. Для примера смотрите скриншот справа.

Иногда некоторые провайдеры, предоставляют пользователям «серые» IP-адреса. Если в вашем маршрутизаторе указан IP-адрес из диапазонов ниже, то тогда вы не сможете открыть порты на вашем компьютере.

Список наиболее частых «серых» IP:

  • От 10.0.0.0 до 10.255.255.255 с маской 255.0.0.0 или /8
  • От 172.16.0.0 до 172.31.255.255 с маской 255.240.0.0 или /12
  • От 192.168.0.0 до 192.168.255.255 с маской 255.255.0.0 или /16
  • От 100.64.0.0 до 100.127.255.255 с маской подсети 255.192.0.0 или /10; данная подсеть рекомендована согласно rfc6598 для использования в качестве адресов для CGN (Carrier-Grade NAT)

Администрирование сервера

В данном разделе описаны элементы администрирования сервера — процесс управления и поддержания корректной работы сервера во время его работы при использовании командной строки и элементов графического интерфейса.

Описание GUI

GUI окна сервера состоит из следующих элементов:

SMP-GUI.png

  1. Окно информации. В данном окне отображается информация про объем использованной оперативной памяти, идет динамическое построение графика используемого объема RAM и т.д.
  2. Список игроков. В данном окне отображается список никнеймов всех игроков, которые подключены к серверу.
  3. Лог и чат. Здесь отображается информация о состоянии работы сервера, ошибки, итог выполнения операций, применение игроками команд управления сервером и т.д. Здесь же отображаются все сообщения, отправленными игроками в чат. Вся информация, которая есть в окне лога, автоматически записывается в файл server.log, находящемся в том же каталоге, где расположен сервер.
  4. Командная строка. Данная панель является самой важной часть GUI. Из нее администратор может осуществлять администрирование сервером: добавлять в вайтлист, банить, давать игрокам предметы или полномочия операторов (см. дальше), делать сохранения карты, остановку работы сервера и т.д.

Консольный режим

В консольном, или nogui, режиме присутствуют только лог и командная строка. Они исполняют те же функции, что и соответствующие окна графического режима.

Запустить в консольном режиме можно только .jar-версию сервера (server.jar). Для этого нужно в команде запуска указать параметр nogui:

java -Xmx1024M -Xms1024M -jar server.jar nogui

Описание доступных команд

Команды в игре делятся на две группы: для операторов и игроков. С их помощью можно получить доступ к некоторым полезным возможностям, а операторам осуществлять контроль за состоянием сервера.

FAQ

Q: Игроки не могут разрушать блоки, всё сломанное возвращается обратно. Как это исправить?
A: Рядом с точкой спауна есть защищенная зона, блоки в которой могут ставить и уничтожать только операторы сервера. То есть, игрокам нужно просто отойти ровно на столько блоков в любую сторону, сколько стоит в spawn-protection в настроечном файле сервера.

Q: В логе сервера всё время появляется сообщение «Can’t keep up! Is server overloaded or system time changed?» Что это значит?
A: Это значит, что сервер в данный момент перегружен и его работа может быть не совсем исправна. Уменьшить нагрузку на сервер можно, закрыв все сторонние программы, тем самым снизив нагрузку на процессор и освободив дополнительный объём оперативной памяти. Можно попробовать перезапустить сервер. Скорость работы сервера сильно зависит от количества игроков, играющих на нём.

Q: Игроки жалуются на то, что сервер жутко лагает. Как мне исправить это?
A: Возможно, скорость подключения к сети Интернет недостаточная, или аппаратное обеспечение компьютера слишком «слабое». Постарайтесь минимизировать использование интернет-трафика (закрыть интернет-браузеры, торрент-клиенты и прочее) и снизить нагрузку на использование ресурсов компьютера. Добавьте Server.jar в список исключений Вашего фаерволла/антивируса, а лучше всего выключите их. Попробуйте перезапустить сервер. Попросите игроков, у которых лагает, переподключиться к серверу — возможно, проблема лагов на стороне клиента.

Q: Игроки не могут подключиться к моему серверу. Что делать?
A: Сначала попробуйте подключиться к нему самому, использовав в качестве IP-адреса сервера localhost. Если Вам не удалось подключиться, сервер создан полностью неправильно. Возможно, Вы допустили ошибку при конфигурации файла server.properties, или Ваш антивирус агрессивно блокирует сервер игры. Если же Вам удалось подключиться к собственному серверу, проверьте, правильно ли Вы определили собственный IP-адрес. Возможно, Вы забыли открыть порты, которые использует сервер игры. Просмотрите лог сервера на наличие ошибок — они могут указать Вам на причину возникновения проблемы.

Q: При подключении игроки получают сообщение «Outdated server!» / «Outdated client!»
A: Сервер и клиент должны быть одной и той же версии, внимательно проверьте это.

Q: Я хочу запустить на сервере свою карту из одиночной игры. Как мне это сделать?
A: Из папки saves, которая находится в каталоге установленной игры (.minecraft), перенесите папку с Вашей картой (например, New World) в папку, где лежит сервер игры. Не забудьте поменять level-name в файле server.properties, если ваша папка называется не так, как текущая папка сервера. Перенос должен осуществляться при выключенном сервере.

Q: Как мне создать новый мир?
A: Удалите все файлы из Вашей папки мира сервера или укажите новое имя мира в параметре level-name в файле server.properties.

Q: Я хочу обновить сервер. Что для этого нужно?
A: Сначала сделайте бекап — если что-то пойдет не так, Вы сможете восстановить сервер из резервной копии. Затем заново скачайте с официального сайта исполняемый файл сервера и замените им Ваш старый. Затем запустите сервер — все настройки, карты и игроки должны сохраниться.

Q: Как мне добавить на сервер функции /home /warp /spawn и другие?
A: Поищите в плагинах к Bukkit. Например, есть большой плагин CommandBook.

Q: При создании сервера в логе появляется сообщение: «FAILED TO BIND TO PORT. Perhaps a server is already running on that port?». Что делать?
A: Это значит, что порт, который использует сервер, уже занят, или доступ к нему закрыт. Отключите Ваш антивирус и файерволл, программы использующие интернет. Вероятно, вы указали порт, использующийся другой программой (например, веб-сервером или торрент-клиентом) или перед началом создания сервера Вы забыли проделать процедуру открытия портов на модеме/маршрутизаторе. Чтобы узнать, как её сделать, смотрите последний раздел данной статьи.

Q: В логе сервера появляется сообщение: «[INFO] %username% lost connection: End of stream». Что мне делать?
A: Такая проблема может иногда случаться на операционной системе Windows XP SP3. Попробуйте запустить сервер на виртуальной машине (например, VirtualBox) или смените операционную систему.

Q: При запуске сервера я получаю ошибку, что моя версия Java устарела. Как мне узнать, какая у меня версия Java?
A: Для работы игры требуется Java 8. Чтобы проверить Вашу версию, сделайте следующее:

  1. Откройте командную строку (консоль, терминал):
    • Windows: [Win+R] -> cmd -> [Enter]
    • Linux: размещение в меню различается в зависимости от оболочки, обычно это Приложения -> Системные / Стандартные -> Терминал
    • OS X: В Доке или Finder’е: Программы -> Служебные программы -> Терминал
  2. В командной строке введите java -version и нажмите Enter
  3. В ответе найдите строку начинающуюся с java version. Число, стоящее далее — версия Java.

Если в ответ вы получили сообщение такого вида:

java не является внутренней или внешней командой, исполняемой программой или пакетным файлом (Windows)

bash: java: command not found (Linux & OS X)

то это означает, что Java у Вас не установлена или не настроены переменные среды (последнее обычно только для Windows). Попробуйте сделать следуещее:

  1. Нажмите правой кнопкой мыши на Мой компьютер
  2. Кликните на Свойства
  3. Кликните на Расширенные параметры системы
  4. Кликните на Переменные среды
  5. В списке системных переменных найдите переменную Path
  6. Кликните Редактировать и допишите в конец: ;%ProgramFiles(x86)%Javajre6bin
  7. Откройте командную строку заново и попробуйте снова

Если Ваша версия ниже 1.6.1 или Java у Вас не установлена, перейдите на страницу загрузки Java и скачайте последнюю версию.

Q: У меня динамический IP! А покупать статический адрес ради сервера Minecraft’a не хочется…
A: Используя сервисы вроде DynDNS или No-IP, Вы можете получить статический домен третьего уровня (myminecraft.dyndns.org, serverminecraft.zapto.org…)

См. также

  • Сервер
  • Bukkit
  • Cauldron
  • WorldEdit
  • CommandBook
  • WorldGuard
  • LWC
  • CraftBook

Minecraft Selectel

Minecraft сегодня принадлежит к числу самых популярных сетевых игр. За неполных три года (первый официальный релиз состоялся осенью 2011 года) у него появились миллионы поклонников по всему миру.

Разработчики игры сознательно ориентируются на лучшие образцы двадцатилетней давности, когда многие игры были по сегодняшним меркам примитивными с точки зрения графики и несовершенными с точки зрения юзабилити, но при этом — по-настоящему захватывали.

Как и все игры-песочницы, Minecraft предоставляет пользователю огромные возможности для творчества — в этом, собственно, и заключается главный секрет его популярности.

Организацией серверов для игры в многопользовательском режиме занимаются сами игроки и их сообщества. Сегодня в Интернете функционируют десятки тысяч игровых серверов (см., например, список здесь).

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

Выбираем платформу

В состав игры Minecraft входят следующие архитектурные элементы:

  1. сервер — программа, с помощью которой игроки взаимодействуют друг с другом по сети;
  2. клиент — программа для подключения к серверу, устанавливаемая на компьютере игрока;
  3. плагины — дополнения к серверу, добавляющие новые функции или расширяющие старые;
  4. моды — дополнения к игровому миру (новые блоки, предметы, возможности).

Для Minecraft существует много серверных платформ. Самыми распространенными и популярными являются Vanilla и Bukkit.

Vanilla это официальная платформа от разрабочиков игры. Распространяется как в графическом, так и в консольном варианте. Новая версия Vanilla всегда выходит одновременно с новой версией Minecraft.

Недостатком Vanilla является чрезмерное потребление памяти (примерно 50 МБ на одного игрока). Еще один существенный недостаток — отсутствие плагинов.

Bukkit был создан группой энтузиастов, предпринявших попытку усовершенствовать официальный сервер Minecraft. Попытка оказалась вполне удачной: по функциональности Bukkit намного шире, чем Vanilla — в первую очередь благодаря поддержке разнообразных модов и плагинов. При этом он потребляет меньше памяти на каждого игрока — примерно 5–10 МБ.

Минусы Bukkit заключаются в том, что при запуске он забирает слишком много оперативной памяти. Кроме того, чем дольше сервер работает, тем больше ему требуется памяти (даже если игроков мало). Выбирая в качестве сервера Bukkit, следует учитывать, что его новые версии, как правило, содержат ошибки; стабильная версия обычно появляется примерно через 2-3 недели после выхода официальной версии Minecraft.

Кроме того, в последнее время набирают популярность и другие платформы (например, Spout, MCPC и MCPC+), но они отличаются ограниченной совместимостью с Vanilla и Bukkit и крайне ограниченной поддержкой модов (например, для Spout вообще можно только писать моды c нуля). Если их и использовать — то только для экспериментов.

Для организации игрового сервера мы рекомендуем использовать платформу Bukkit, так как она отличается наибольшей гибкостью; кроме того, под нее существует множество разнообразных модов и плагинов. Стабильная работа сервера Minecraft во многом зависит от грамотного выбора аппаратной платформы. Рассмотрим этот вопрос более подробно.

Аппаратные требования

И сервер, и клиент Mineсraft очень требовательны к системным ресурсам.
При выборе аппаратной платформы следует учитывать, что многоядерный процессор больших преимуществ не даст: ядро сервера Minecraft может использовать лишь один поток вычисления. Второе ядро, впрочем, будет нелишним: некоторые плагины выполняются в отдельных потоках, да и Java тоже потребляет немало ресурсов…

Поэтому для Minecraft-сервера лучше выбирать процессор, у которого выше производительность одного ядра. Более мощный двухядерный процессор будет более предпочтительным, чем многоядерный, но менее мощный. На специализированных форумах рекомендуется использоваться процессоры с тактовой частотой не ниже 3ГГц.

Для нормального функционирования сервера Minecraft требуется большое количество оперативной памяти. Bukkit занимает примерно 1ГБ оперативной памяти; кроме того, под каждого игрока, как уже было сказано выше, отводится от 5 до 10 МБ. Плагины и моды тоже потребляют довольно много памяти. Для сервера на 30 — 50 игроков, таким образом, потребуется не менее 4 ГБ оперативной памяти.

В Minecraft очень многое (например, загрузка тех же плагинов) зависит от скорости работы файловой системы. Поэтому предпочтительно выбирать сервер с SSD-диском. Шпиндельные диски вряд ли подойдут по причине низкой скорости случайного чтения.

Огромное значение имеет и скорость интернет-подключения. Для игры 40-50 человек вполне хватит канала 10 Мб/c. Однако тем, кто планирует более масштабный minecraft-проект, включающий сайт, форум и динамическую карту, крайне желательно иметь канал с большей пропускной способностью.

Какую конкретную конфигурацию лучше всего выбрать? Из предлагаемых нами конфигураций рекомендуем обратить внимание на следующие:

  • Intel Core 2 Duo E8400 3ГГц, 6ГБ RAM, 2×500ГБ SATA, 3000 руб/мес.;
  • Intel Core 2 Quad Q8300 2.5ГГц, 6ГБ RAM, 2×500ГБ SATA, 3500 руб/мес. — данную конфигурацию мы используем для нашего тестового сервера MineCraft, на которым вы прямо сейчас можете поиграть (как это сделать — написано ниже);
  • Intel Core i3-2120 3.3ГГц, 8ГБ RAM, 2×500ГБ SATA, 3500 руб/мес.

Эти конфигурации вполне подойдут для создания серверa Minecraft на 30-40 игроков. Некоторым минусом является отсутствие SSD-дисков, но мы даем другое немаловажное преимущество: гарантированный канал 100 Мб/с без каких-либо ограничений и соотношений. При заказе всех перечисленных выше конфигураций установочный платеж не взимается.

Есть у нас и более производительные, но при этом, естественно, более дорогие серверы (при заказе этих конфигураций установочный платеж также не взимается):

  • 2х Intel Xeon 5130, 2ГГц, 8ГБ RAM, 4×160ГБ SATA, 5000 руб/мес;
  • 2х IntelXeon 5504, 2ГГц, 12ГБ RAM, 3×1ТБ SATA, 9000 руб/мес.

Рекомендуем также обратить внимание на новую бюджетную модель с SSD-диском на базе процессора Intel Atom C2758: Intel Atom C2758 2.4ГГц, 16 ГБ RAM, 2×240ГБ SSD, 4000 руб/мес., установочный платеж — 3000 руб.

Установка и запуск сервера Bukkit в OC Ubuntu

Прежде чем устанавливать сервер, создадим нового пользователя и добавим его в группу sudo:

$ sudo useradd -m -s /bin/bash <имя пользователя>
$ sudo adduser <имя пользователя> sudo

Далее зададим пароль, под которым созданный пользователь будет подключаться к серверу:

$ sudo passwd <имя пользователя>

Переподключимся к серверу под новой учетной записью и приступим к установке.
Minecraft написан на Java, поэтому на сервере обязательно нужно установить Java Runtime Environment.

Обновим список доступных пакетов:

$ sudo apt-get update

Затем выполним следующую команду:

$ sudo apt-get install default-jdk

Для установки и запуска Bukkit желательно также установить терминальный мультиплексор — например, screen (можно использовать и другие терминальные мультиплексоры — см. наш обзор):

$ sudo apt-get install screen

Screen понадобится, если мы будем подключаться к игровому серверу по ssh. С его помощью можно будет запускать сервер Minecraft в отдельном окне терминала, и даже после закрытия клиента ssh сервер будет работать.

Создадим директорию, в которой будут храниться файлы сервера:

$ mkdir bukkit
$ cd bukkit

После этого зайдем на страницу загрузок официального сайта Bukkit. В правой верхней части страницы можно увидеть ссылку на последнюю рекомендованную к использованию cборку сервера (recommended build). Советуем скачивать именно ее:

$ wget <ссылка на рекомендованную версию>

Теперь запустим screen:

$ sudo screen

и выполним следующую команду:

$ java -Xmx1024M -jar craftbukkit.jar -o false

Поясним, что означают используемые параметры:

  • Xmx1024M — максимальное количество оперативной памяти на сервер;
  • jar craftbukkit.jar — ключ до сервера;
  • o false — разрешает доступ к серверу с пиратских клиентов.

Сервер будет запущен.
Остановить сервер можно, набрав в консоли команду stop.

Настройка и конфигурирование сервера

Настройки сервера хранятся в конфигурационном файле server.properties. Он содержит следующие параметры:

  • generator-settings — задает шаблон генерации суперплоского мира;
  • allow-nether — определяет возможность перехода в Нижний мир. По умолчанию для этого параметра установлено значение true. Если установлено значение false, то все игроки из Нижнего мира будут перемещены в обычный;
  • level-name — имя папки с файлами карты, которая будет использоваться во время игры. Папка размещается в той же директории, где находятся файлы сервера. Если такой директории нет, сервер автоматически создает новый мир и помещает его в директорию с таким же именем;
  • enable-query — при установленном значении true активирует протокол GameSpy4 для прослушивания сервера;
  • allow-flight — разрешает полеты по миру Minecraft. По умолчанию имеет значение false (полеты запрещены);
  • server-port — указывает порт, который будет использоваться сервервом игры. Стандартный порт для Minecraft — 25565. Значение этого параметра изменять не рекомендуется;
  • level-type — определяет тип мира (DEFAUT/FLAT/LARGEBIOMES);
  • enable-rcon — открывает удаленный доступ к консоли сервера. По умолчанию он отключен (false);
  • level-seed — входные данные для генератора уровней. Чтобы иметь возможность создавать случайные миры, это поле нужно оставить пустым;
  • force-gamemode — уставливает для игроков, подключающихся к серверу, стандартный режим игры;
  • server-ip — указывает IP-адрес, который будет использоваться игроками для подключения к серверу;
  • max-build-height — указывает максимальную высоту постройки на сервере. Его значение должно представлять собой число, кратное 16 (64, 96, 256 и т.п.);
  • spawn-npcs — разрешает (если установлено значение true) или запрещает (если установлено значение false) появление NPС в деревнях;
  • white-list — включает и отключает использование белого списка игроков на сервере. Если установлено значение true, то администратор сможет формировать белый список, добавляя в него ники игроков вручную. Если же установлено значение false, то на сервер может заходить любой пользователь, знающий его IP-адрес и порт;
  • spawn-animals — разрешает автоматическое появление дружелюбных мобов, если установлено значение true);
  • snooper-enabled — разрешает серверу отправлять статистику и данные разработчикам;
  • hardcore — включает на сервере режим Хардкор;
  • texture-pac — файл текстур, который будет использоваться при подключении игрока к серверу. В качестве значения этого параметра указывается имя zip-архива с текстурами, который хранится в той же директории, что и сервер;
  • online-mode — включает проверку премиум-аккаунтов пользователей, подключающихся к серверу. Если для этого параметра установлено значение true, но на сервер смогут заходить только владельцы премиум-аккаунтов. Если проверка аккаунтов отключена (установлено значение false), то на сервер могут заходить любые пользователи (в том числе, например, и игроки, подделавшие ник), что создает дополнительные риски безопасности. При отключенной проверке можно играть в Minecraft по локальной сети, без доступа к Интернету;
  • pvp — разрешает или запрещает игрокам воевать друг с другом. Если этот параметр имеет значение true, то игроки могут уничтожать друг друга. Если установлено значение false, то игроки не могут наносить друг другу прямой урон;
  • difficulty — задает уровень сложности игры. Может принимать значения от 0 (самый легкий) до 3 (самый сложный);
  • gamemode — указывает, какой игровой режим будет установлен для заходящих на сервер игроков. Может принимать следующие значения: 0 — Survival, 1-Creative, 2-Adventure;
  • player-idle-timeout — время бездействия (в минутах), по истечении которого игроки автоматически отключаются от сервера;
  • max-players — максимальное допустимое количество игроков на сервере (от 0 до 999);
  • spawn-monsters — разрешает (если установлено значение true) порождение враждебных мобов;
  • generate-structures — включает (true)/отключает (false) генерацию структур (сокровищницы, крепости, деревни);
  • view-distance — регулирует радиус обновляемых чанков для отсылки игроку; может принимать значения от 3 до 15.

Логи сервера minecraft записываются в файл server.log. Он хранится в той же папке, что и файлы сервера. Лог постоянно увеличивается в размере, забирая все больше и больше дискового пространства. Упорядочить работу механизма логирования можно с помошью так называемой ротации логов. Для ротации используется специальная утилита — logrotate. Она ограничивает число записей в логе определенным пределом.

Можно настроить ротацию логов так, что все записи будут удаляться, как только файл лога достигнет определенного размера. Можно также установить срок, по истечении которого все старые записи будут признаны неактуальными и удалены.

Основные настройки ротации находятся в файле /etc/logrotate.conf; кроме того, для каждого приложения можно создавать индивидуальные настройки. Файлы с индивидуальными настройками хранятся в директории /etc/logrotate.d.

Создадим текстовый файл /etc/logrotate.d/craftbukkit и впишем в него следующие параметры:

/home/craftbukkit/server.log {
  rotate 2
  weekly
  compress
  missingok
  notifempty
}

Рассмотрим их значения более подробно:

  • параметр rotate указывает число ротаций до удаления файла;
  • weekly указывает, что ротация будет производиться еженедельно (можно установить и другие параметры: monthly — ежемесячно и daily — ежедневно);
  • compress указывает, что архивные логи нужно сжимать (обратная опция — nocompress);
  • missingok указывает, что при отсутствии файла лога нужно продолжать работу и не выводить сообщения об ошибке;
  • notifempty указывает не сдвигать файл лога, если он пуст.

Более подробно о настройках ротации логов можно прочитать здесь.

Советы по оптимизации

Сразу же оговоримся, что в этом разделе будут приведены советы, касающиеся только оптимизации игрового сервера. Вопросы тонкой настройки и оптимизации сервера, на котором установлен Mineсraft, представляют собой отдельную тему, выходящую за рамки этой статьи; заинтересованные читатели без труда смогут найти нужную информацию в Интернете.

Одной из самых распространенных проблем, возникающих при игре в Minecraft, являются так называемые лаги — ситуации, когда программа вовремя не реагирует на пользовательский ввод. Они могут быть обусловены проблемами как на стороне клиента, так и на стороне сервера. Ниже мы дадим рекомендации, которые помогут снизить вероятность возникновения проблем на серверной стороне.

Регулярно контролируйте расход памяти сервером и плагинами

Потребление памяти можно отслеживать при помощи специализированных административных плагинов — например, LagMeter.

Следите за обновлениями плагинов

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

Старайтесь не пользоваться множеством плагинов со сходной функциональностью

Большие плагины (например, Essentials, AdminCMD, CommandBook) очень часто включают в себя функциональность многих мелких плагинов. Например, тот же Essential содержит функции плагинов iConomy, uHome, OpenInv, VanishNoPacket, Kit. Мелкие плагины, функциональность которых полностью покрывается функциональностью одного большого, в большинстве случаев можно удалить, чтобы не перегружать сервер.

Ограничивайте карту и прогружайте ее самостоятельно

Если не ограничивать карту, то нагрузка на сервер существенно увеличится. Ограничить карту можно при помощи плагина WorldBorder. Для этого нужно запустить этот плагин и выполнить команду /wb 200, а затем прорисовать карту при помощи команды /wb fill.

Прорисовка, конечно, займет немало времени, но лучше это сделать один раз, закрыв сервер на технические работы. Если карту будет прорисовывать каждый игрок — сервер будет работать медленно.

Замените тяжеловесные плагины на более быстрые и менее ресурсоемкие

Далеко не все плагины для Minecraft можно назвать удачными: часто они содержат много лишних и ненужных функций, а иногда еще и потребляют много памяти. Неудачные плагины лучше заменять на альтернативные (их существует довольно много). Например, плагин LWC можно заменить на Wgfix+MachineGuard, а плагин DynMap — на Minecraft Overviewer.

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

Дропом в играх называются предметы, выпадающие при смерти моба или разрушении некоторых блоков. Хранение и обработка дропов занимают очень много системных ресурсов.

Чтобы сервер работал быстрее, дроп желательно удалять. Это лучше делать при помощи специальных плагинов — например, NoLagg или McClean.

Не используйте античиты

На игровых серверах часто устанавливаются так называемые античиты — программы, которые блокируют попытки воздействовать на игру нечестными способами.

Существуют античиты и для Minecraft. Любой античит — это всегда дополнительная нагрузка на сервер. Предпочтительнее устанавливать защиты для лаунчера (которые, впрочем, абсолютной гарантии безопасности не дают и легко ломаются — но этой уже тема для отдельного разговора) и для клиента.

Вместо заключения

Любые инструкции и рекомендации оказываются гораздо более эффективными, если они подкреплены конкретными примерами. Основываясь на приведенных выше инструкциях по установке, мы создали свой сервер MineCrаft и поместили на карту кое-что интересное.

Вот что у нас получилось:

  • Сервер Bukkit — стабильная рекомендованная версия 1.6.4;
  • Плагин Statistics — чтобы собирать статистику об игроках;
  • Плагин WorldBorder — чтобы прорисовать и ограничить карту;
  • Плагин WorldGuard (+WorldEdit как зависимость) — чтобы защитить некоторые области.

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

mncrft.slc.tl

.

Будем рады, если в комментариях вы поделитесь собственным опытом установки, настройки и оптимизации серверов MineCraft и расскажете, какие моды и плагины вам интересны и почему.

Классная новость: С 1 августа установочный платеж на выделенные серверы фиксированной конфигурации снижен на 50%. Теперь разовый установочный платеж составляет всего 3000 руб.

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

На чтение 24 мин. Просмотров 5k. Опубликовано 08.02.2021

«белый список» перенаправляется сюда. Информацию о команде см. В разделе Команды/белый список.

Файл server.properties по умолчанию для Java Edition.

server.properties — это файл, в котором хранятся все настройки для многопользовательского ( Minecraft или Minecraft Classic) сервера.

При редактировании server.properties важно, чтобы использовалась та же структура, что и в оригинале, хотя порядок строк произвольный. Текст перед знаком равенства — это ключ, который нельзя изменять. Текст после знака равенства — это значение свойства, которое можно редактировать. Строки, начинающиеся с # , являются комментариями — изменение или удаление этих строк не влияет на игру.

После внесения изменений на сервер .properties , необходимо перезапустить сервер, чтобы они вступили в силу. Другой вариант — использовать команду /reload в консоли сервера или в игре, что также позволит перезагрузить изменения.

Если server.properties не перечисляет все свойства (например, если новая версия сервера добавляет новые свойства или файл не существует), то при запуске сервер перезаписывает файл server.properties с новыми перечисленными свойствами и установите для них значения по умолчанию.

Файл server.properties представляет собой обычный текстовый файл с кодировкой UTF-8, несмотря на то, что он расширение, и поэтому его можно редактировать с помощью любого текстового редактора, такого как Блокнот для Windows, TextEdit для Mac или nano и vim для Linux.

Содержание

  1. Расположение файла
  2. Java Edition
  3. Bedrock Edition
  4. server.properties
  5. Java Edition
  6. Bedrock Edition
  7. Minecraft свойства сервера
  8. Java Edition
  9. Bedrock Edition
  10. Minecraft Свойства классического сервера
  11. История

Расположение файла

Java Edition

Этот файл автоматически создается при первом запуске сервера (если он не существует).

OS Местоположение файла Примечания
Windows Тот же каталог, что и serve r.jar
Linux

UnixUnix/Mac

Путь к рабочему каталогу (pwd)

Если проигрыватель запускает его из своего домашнего каталога (/home/name ) файлы сервера создаются в/home/name. Следуйте этим рекомендациям, чтобы убедиться, что файлы сервера генерируются там, где их ожидал игрок.

  • Выделите весь каталог для всех файлов сервера. ( Все может запутаться, если игрок этого не сделает ).
    • Здесь нужно разместить server.jar игрока.
  • Используйте этот сценарий в качестве руководства для настройки сценария запуска для сервера Minecraft ..
    • Он должен быть в исполняемом файле проигрывателя $PATH
    • Не забудьте добавить разрешение на выполнение в сценарий запуска (chmod + x имя_файла или используйте диспетчер папок)
      • minecraft_server.sh

Bedrock Edition

Этот файл загружается с помощью bedrock_server.exe

OS Местоположение файла
Windows Тот же каталог, что и bedrock_server.exe
Linux Тот же каталог, что и bedrock_server

server.properties

Это настройки по умолчанию для недавно установленного Minecraft server:

Java Edition

 # Свойства сервера Minecraft # (отметка времени последней загрузки) enable-jmx-monitoring = falsercon.port = 25575level-seed = gamemode = Survivalenable-  command-block = falseenable-query = falsegenerator-settings = level-name = worldmotd = Сервер Minecraftquery.port = 25565pvp = truegenerate-str  uctures = truedifficulty = easynetwork-compress-threshold = 256max-tick-time = 60000max-Players = 20use-native-transport = trueonline-mode = trueenable-status = trueallow-flight = falsebroadcast-rcon-to-ops = trueview-distance =  10max-build-height = 256server-ip = allow-nether = trueserver-port = 25565 enable-rcon = falsesync-chunk-write = trueop-permission-level = 4prevent-proxy-connections = falseresource-pack = entity-broadcast-range-  процент = 100rcon.password = player-idle-timeout = 0force-gamemode = falserate-limit = 0hardcore = falsewhite-list = falsebroadcast-console-to-ops = truespawn-npcs = truespawn-animals = truesnooper-enabled = truefunction-permission-  level = 2level-type = defaultspawn-monsters = trueenforce-whitelist = falseresource-pack-sha1 = spawn-protection = 16max-world-size = 29999984 

По умолчанию с 20w28a.

Bedrock Edition

 server-name = Dedicated Server # Используется как имя сервера # Допустимые значения: Any stringgamemode = Survival # Устанавливает игровой режим для новых игроков. # Допустимые значения: "survival  "," творческий "или" адвен "  ture "сложно = легко # Устанавливает сложность мира. # Допустимые значения:" мирный "," легкий "," нормальный "или" жесткий "allow-cheats = false # Если true, то можно использовать читы, такие как команды. #  Допустимые значения: "true" или "false" max-Players = 10 # Максимальное количество игроков, которые могут играть на сервере. # Допустимые значения: любое положительное целое число online-mode = true # Если true, то все подключенные игроки должны быть аутентифицированы  Xbox Live. # Клиенты, подключающиеся к удаленным (не LAN) серверам, всегда будут требовать аутентификацию Xbox Live независимо от этого параметра. # Если сервер принимает подключения из Интернета, настоятельно рекомендуется включить онлайн-режим. # Допустимые значения: "  true "или" false "white-list = false # Если true, то все подключенные игроки должны быть перечислены в отдельном файле whitelist.json. # Допустимые значения:" true "или" false "server-port = 19132 # Какой IPv4 порт  сервер должен слушать. # Допустимые значения: целые числа в диапазоне [1, 65535] server-portv6 = 19133 # порт IPv6, который сервер должен слушать. # Допустимые значения: целые числа в диапазоне [1, 65535] view-distance = 32 # Максимально разрешенный  просмотреть расстояние в количестве блоков. # Допустимые значения: Любое положительное целое число. tick-distance = 4 # Мир будет отмечен галочкой на таком расстоянии от любого игрока. # Допустимые значения: Целые числа в диапазоне [4, 12] player-idle  -timeout = 30 # После того, как игрок простаивает в течение такого количества минут, он будет исключен.  Если установлено значение 0, игроки могут бездействовать бесконечно. # Допустимые значения: любое неотрицательное целое число. Max-thread = 8 # Максимальное количество потоков, которые сервер будет пытаться использовать.  Если установлено значение 0 или удалено, то он будет использовать как можно больше. # Допустимые значения: любое положительное целое число. Level-name = Bedrock level # Допустимые значения: Any stringlevel-seed = # Использовать для рандомизации мира # Допустимые значения: Любые строковые значения по умолчанию  -player-permission-level = member # Уровень разрешений для новых игроков, присоединяющихся впервые. # Допустимые значения: "visitor", "member", "operator" texturepack-required = false # Заставить клиентов использовать пакеты текстур в текущем  world # Допустимые значения: "true" или "false" content-log-file-enabled = false # Включает запись ошибок содержимого в файл # Допустимые значения: "true" или "false" Compression-threshold = 1 # Определяет наименьший размер  необработанной сетевой полезной нагрузки для сжатия # Допустимые значения: 0-65535server-authoritative-motion = server-auth # Допустимые значения: "client-auth", "server-auth" # Включает принудительное перемещение сервера.  Если "server-auth", сервер воспроизведет ввод локального пользователя на # сервере и отправит исправления, если позиция клиента не совпадает с позицией сервера. # Исправления будут происходить только в том случае, если для параметра "right-player-motion" установлено значение true.player  -movement-score-threshold = 20 # Количество неконгруэнтных временных интервалов, необходимых для сообщения о ненормальном поведении. # Отключено server-authoritative-motion.player-motion-distance-threshold = 0.3 # Разница между позициями сервера и клиента, которая требует  должно быть превышено до того, как будет обнаружено ненормальное поведение. # Отключено server-authoritative-motion.player-motion-duration-threshold-in-ms = 500 # Продолжительность времени, в течение которого позиции сервера и клиента могут быть не синхронизированы (как определено  player-motion-distance-threshold) # до того, как увеличится счет аномального движения.  Это значение определяется в миллисекундах. # Отключено server-authoritative-moving.correct-player-motion = false # Если true, позиция клиента будет скорректирована относительно позиции сервера, если оценка движения превысит порог. 

По умолчанию с 1.16.100.04.

Minecraft свойства сервера

Java Edition

Ключ Тип Значение по умолчанию Описание
allow-flight boolean false Позволяет пользователям используйте полет на сервере в режиме выживания, если у них установлен мод, обеспечивающий полет.

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

false — Полет запрещен (игроки, находящиеся в воздухе не менее 5 секунд, получают кик) .
true — Полет разрешен и используется, если у игрока установлен мод для полета.
allow-nether boolean true Позволяет игрокам путешествовать в Пустоту.

false — Порталы Пустоты не работают.
true — сервер позволяет порталам отправлять игроков в Пустоту.
broadcast-console-to-ops boolean true Отправлять выходные данные консольных команд всем онлайн-операторам.
broadcast-rcon-to-ops логическое true Отправлять вывод команды консоли rcon всем онлайн-операторам.
затруднение string easy Определяет сложность (например, урон, наносимый мобами, и влияние голода и яда s игроков) сервера.

Если указан прежний номер сложности, он автоматически преобразуется в название сложности.

мирный (0)
easy (1)
normal (2)
жесткий (3)
enable-command-block boolean false Включает блоки команд
enable-jmx-monitoring boolean false Предоставляет объект MBean с именем объекта net.minecraft.server: type = Server и двумя атрибутами averageTickTime и tickTimes с указанием времени тика в миллисекундах.

Чтобы включить JMX в среде выполнения Java, вам также необходимо добавить пару флагов JVM в запуск, как описано здесь.

enable-rcon boolean false Разрешает удаленный доступ к консоли сервера.
sync-chunk-write логический an true Включает синхронную запись фрагментов.
enable- status boolean true Заставляет сервер отображаться как «в сети» в списке серверов.

Если установлено значение false, ответы от клиентов будут подавляться. Это означает, что он будет отображаться как офлайн, но по-прежнему будет принимать соединения.

enable-query boolean false Включает прослушиватель сервера протокола GameSpy4. Используется для получения информации о сервере.
force-gamemode boolean false Заставить игроков присоединиться в игровом режиме по умолчанию.

false — Игроки присоединяются в игровом режиме, в котором они вышли.
true — игроки всегда присоединяются в игровом режиме по умолчанию.
уровень-разрешения-функции целое число (1-4) 2 Устанавливает уровень разрешений по умолчанию для функций.

Подробнее о 4 уровнях см. # Op-permission-level.

gamemode string Survival Определяет режим игрового процесса.

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

survival (0)
творческий (1)
приключения (2)
зритель (3)
generate-структуры boolean true Определяет, могут ли конструкции (например, деревни) быть сгенерировано.

false — структуры не создаются в новых блоках.
true — Структуры создаются в новых блоках.

Примечание. Подземелья все равно генерируются, если для этого параметра установлено значение false.

generator-settings строка blank Параметры, используемые для настройки генерации мира. Следуйте его формату и напишите соответствующую строку JSON. Не забудьте экранировать все : с помощью :.
хардкор boolean false Если установлено значение true , сложность сервера игнорируется и устанавливается на жесткий, а игроки переходят в режим наблюдателя в случае смерти.
level-name строка world Значение «level-name» используется как имя мира и имя его папки. Игрок также может скопировать сюда свою папку с сохраненной игрой и изменить имя на то же, что и у этой папки, чтобы загрузить ее вместо этого.

Символы, такие как ‘(апостроф), возможно, нужно будет экранировать, добавив перед ними обратная косая черта.
level-seed string blank Устанавливает начальное значение мира для мира игрока, как в одиночной игре. Если оставить поле пустым, мир генерируется случайным семенем.

Вот некоторые примеры: minecraft, 404, 1a2b3c.
level-type string default Определяет тип создаваемой карты.

default — Стандартный мир с холмами, долинами, водой и т. д.
плоский — плоский мир без функций, может быть изменен с помощью generator-settings .
largeBiomes — То же, что и по умолчанию, но все биомы больше.
Amplified — То же, что и по умолчанию, но предел высоты мирового поколения увеличен.
шведский стол — только для 1.15 или ранее. То же, что и по умолчанию, если не задано generator-settings .
max-build-height integer 256 Максимальная высота, разрешенная для строительства. Ландшафт все еще может естественным образом генерироваться выше низкого предела высоты. 256 — это максимально возможное число, оно также должно быть кратно 8.
max-player integer (0- (2 ^ 31-1)) 20 Максимальное количество игроков, которые могут играть на сервере одновременно время. Обратите внимание, что большее количество игроков на сервере потребляют больше ресурсов. Также обратите внимание, что соединения оперативных игроков не должны учитываться при расчете максимального количества игроков, но операторы в настоящее время не могут присоединиться к полному серверу. Однако это можно изменить, перейдя к файлу с именем ops.json в каталоге сервера игрока, открыв его, найдя операцию, которую игрок хочет изменить, и изменив параметр bypassesPlayerLimit на true (по умолчанию false). Это означает, что этой операции не нужно ждать, пока игрок уйдет, чтобы присоединиться. Чрезвычайно большие значения для этого поля приводят к тому, что список пользователей на стороне клиента не работает.
max-tick-time integer (0– (2 ^ 63-1)) 60000 Максимальное количество миллисекунд один тик может занять до того, как сторожевой таймер сервера остановит сервер с сообщением, Один тик сервера занял 60,00 секунд (должно быть максимум 0,05); Считая его аварийным, сервер будет принудительно завершен. Как только этот критерий будет соблюден, он вызывает System.exit (1).

-1 — полностью отключить сторожевой таймер (эта опция отключения была добавлена ​​в 14w32a)
max-world-size целое число (1-29999984) 29999984 Устанавливает максимально возможный размер в блоки, выраженные как радиус, которые может получить мировая граница. Установка большей границы мира приводит к успешному выполнению команд, но фактическая граница не выходит за пределы этого ограничения блока. Установка max-world-size выше значения по умолчанию, похоже, ничего не дает.

Примеры:

  • Установка max-world-size на 1000 позволяет Игрок должен иметь границу мира 2000 × 2000.
  • Установка max-world-size на 4000 дает игроку границу мира 8000 × 8000.
motd string Сервер Minecraft Это сообщение, которое отображается в списке серверов клиента под именем.

  • MOTD поддерживает коды цвета и форматирования.
  • MOTD поддерживает специальные символы, такие как «♥». Однако такие символы должны быть преобразованы в экранированную форму Unicode. Онлайн-конвертер можно найти здесь.
  • Если MOTD превышает 59 символов, список серверов может сообщить об ошибке связи..
network-compression-threshold integer 256 По умолчанию он позволяет пакетам размером n-1 байт проходить нормально, но пакет размером n байтов или более сжимается. Таким образом, меньшее число означает большее сжатие, но сжатие небольших объемов байтов на самом деле может привести к большему результату, чем полученный.

-1 — отключить сжатие полностью
0 — сжать все

Примечание: Спецификация Ethernet требует, чтобы пакеты размером менее 64 байтов дополнялись до 64 байтов. Таким образом, установка значения ниже 64 может оказаться невыгодной. Также не рекомендуется превышать MTU, обычно 1500 байт.

online-mode boolean true Сервер проверяет подключающихся игроков по базе данных учетных записей Minecraft . Установите значение false, только если сервер игрока не подключен к Интернету. Хакеры с поддельными учетными записями могут подключиться, если для этого параметра установлено значение false! Если minecraft.net не работает или недоступен, игроки не смогут подключиться, если для этого параметра установлено значение true. Умышленное отключение этой переменной называется «взломом» сервера, а серверы, которые присутствуют с выключенным онлайн-режимом, называются «взломанными» серверами, что позволяет игрокам с нелицензионными копиями Minecraft присоединиться.

true — включен. Сервер предполагает, что у него есть подключение к Интернету, и проверяет каждого подключающегося игрока.
false — отключено. Сервер не пытается проверять подключенных игроков.
op-permission-level integer (1-4) 4 Устанавливает уровень разрешений по умолчанию для операций при использовании /op . Все уровни наследуют способности и команды от уровней до них.

1 — Операции могут обходить защиту от появления.
2 — Операторы могут использовать все команды читов для одиночной игры (кроме /publish , поскольку он не находится на серверах; вместе с /debug ) и использовать командные блоки. Командные блоки вместе с владельцами/операторами Realms имеют те же разрешения, что и этот уровень.
3 — Операторы могут использовать большинство эксклюзивных многопользовательских команд, включая /debug и команды, управляющие игроками (/ban , /op и т. д.).
4 — Операторы могут использовать все команды, включая /stop , /save-all , /save-on и /save-off.
player-idle-timeout integer 0 Если ненулевое значение, игроки выгнаны с сервера, если они простаивают более этого количества минут.

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

  • Нажмите «Окно»
  • Enchant Item
  • Обновить знак
  • Копание игрока
  • Блок игрока Размещение
  • Изменение удерживаемого элемента
  • Анимация (поворотный рычаг)
  • Действие объекта
  • Статус клиента
  • Сообщение чата
  • Использовать объект
prevent-proxy-connections boolean false Если ISP/AS, отправленный с сервера, отличается от ISP/AS, отправленного с сервера аутентификации Mojang Studios, игрок выгружается

true — включен. Сервер запрещает пользователям использовать VPN или прокси.
false — отключено. Сервер не запрещает пользователям использовать VPN или прокси.
pvp boolean true Включить PvP на сервере. Игроки, стреляющие в себя стрелами, получают урон, только если включен PvP.

true — Игроки могут убивать друг друга.
false — Игроки не могут убивать других игроков (также известное как Игрок против Среды ( PvE )).

Примечание: Непрямые источники урона, создаваемые игроками (такие как лава, огонь, тротил и в некоторой степени вода, песок и гравий), все еще наносят ущерб другим игрокам.

query.port integer (1- (2 ^ 16-2)) 25565 Устанавливает порт для сервера запросов (см. enable-query ).
rate-limit целое число 0 Устанавливает максимальное количество пакетов, которое пользователь может отправить до того, как его выкинут. Значение 0 отключает эту функцию.
rcon.password string blank Устанавливает пароль для RCON: протокола удаленной консоли, который может позволить другим приложениям подключаться и взаимодействовать с Сервер Minecraft через Интернет.
rcon.port целое число (1- (2 ^ 16-2)) 25575 Устанавливает сетевой порт RCON.
resource-pack string blank Необязательный URI для пакета ресурсов. Игрок может использовать его.

Обратите внимание, что (в некоторых версиях до 1.15.2) символы «:» и «=» необходимо экранировать обратной косой чертой (), например http ://somedomain.com/somepack.zip? someparam = somevalue

Размер файла пакета ресурсов не может превышать 100 МБ (до версии 1.15: 50 МБ (≈ 50,4 МБ) ). Обратите внимание, что успех или сбой загрузки регистрируется клиентом, а не сервером.

resource-pack-sha1 string blank Необязательный SHA- 1 дайджест пакета ресурсов в шестнадцатеричном формате в нижнем регистре. Рекомендуется указать это, потому что он используется для проверки целостности пакета ресурсов..

Примечание. Если пакет ресурсов отличается, при запуске сервера в консоли появляется желтое сообщение «Недопустимый sha1 для пакета ресурсов-sha1». Из-за природы хэш-функций вероятность возникновения ошибок мала, поэтому это последствия не имеют никакого эффекта.

require-resource-pack boolean false Когда этот параметр включен (установлен на true), игроки будет предложено ответить и будет отключено, если они отклонят требуемый пакет.
server-ip строка blank Игрок должен установить это, если он хочет, чтобы сервер привязался к определенному IP. Настоятельно рекомендуется, чтобы игрок оставил поле server-ip пустым.

Установите пустое значение или IP, на котором игрок хочет запускать (прослушивать) свой сервер.
порт-сервера целое число (1- (2 ^ 16-2) ) 25565 Изменяет порт, на котором сервер размещает (прослушивает). Этот порт необходимо перенаправить, если сервер размещен в сети с использованием NAT (если у плеера есть домашний маршрутизатор/брандмауэр).
с включенным отслеживанием boolean true Устанавливает, будет ли сервер регулярно отправлять данные отслеживания на http://snoop .minecraft.net.

false — отключить отслеживание.
true — включить отслеживание.
spawn-animals boolean true Определяет, могут ли животные появляться.

true — Животные появляются как обычно .
false — Животные немедленно исчезают.

Если у игрока большая задержка, рекомендуется выключить/установить значение false.

spawn-monsters boolean true Определяет, могут ли монстры появляться.

true — включен. Монстры появляются ночью и в темноте.
false — отключено. Никаких монстров.

Этот параметр не действует, если сложность = 0 (мирный). Если сложность не = 0, монстр все еще может появиться из источника.

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

spawn-npcs логическое true Определяет, могут ли жители деревни появляться.

true — Включено. Жители появляются.
false — отключено. Нет жителей.
Защита от появления целое число 16 Определяет длину стороны квадратной области защиты от спауна как 2 x +1. Установка этого значения в 0 отключает защиту от появления. Значение 1 защищает квадрат 3 × 3 с центром в точке появления. 2 защищает 5 × 5, 3 защищает 7 × 7 и т. Д. Эта опция не генерируется при первом запуске сервера и появляется, когда присоединяется первый игрок. Если на сервере не заданы операции, защита от спауна также автоматически отключается..
text-filtering-config [ требуется дополнительная информация ] [ требуется дополнительная информация ] [ требуется дополнительная информация ]
use-native-transport boolean true Улучшения производительности сервера Linux: оптимизирована отправка/получение пакетов на Linux

true — включен. Включить оптимизацию отправки/получения пакетов Linux
false — отключено. Отключить оптимизацию отправки/получения пакетов Linux
view-distance integer (3-32) 10 Устанавливает количество мировых данных, которые сервер отправляет клиенту, измеряется порциями в каждом направлении игрока. (радиус, а не диаметр). Он определяет расстояние просмотра на стороне сервера.

10 по умолчанию/рекомендуется. Если у плеера большая задержка, рекомендуется уменьшить это значение.

white-list boolean false Включает белый список на сервере.

Если белый список включен, пользователи не в белом списке не могу подключиться. Предназначен для частных серверов, например, для реальных друзей или незнакомцев, тщательно выбранных в процессе подачи заявки.

false — Белый список не используется.
true — файл whitelist.json используется для создания белого списка.

Примечание. Операции автоматически заносятся в белый список, и нет необходимости добавлять их в белый список.

enforce-whitelist boolean false Применяет белый список на сервере.

Когда эта опция включена, пользователи, которые не присутствуют в белом списке (если он включен), удаляются с сервера после сервера перезагружает файл белого списка.

false — ни один пользователь не будет выгнан, если он не находится в белом списке.
true — пользователи, не включенные в белый список, будут исключены.

Bedrock Edition

Имя параметра Возможные значения Значение по умолчанию Когда оно используется Использовать Примечания
имя-сервера Любая строка Выделенный сервер Всегда Используется как имя сервера Это имя сервера, отображаемое в списке серверов в игре.
режим игры выживание, творчество, приключения выживание Всегда Устанавливает игровой режим для новых игроков. Применяется во время первого присоединения игрока к серверу. Изменение этого параметра не изменит режим игры для существующих игроков..

Значения соотносятся с целочисленными режимами игры следующим образом:

выживание (0)

creative (1)

приключения (2)

трудность мирный , easy, normal, hard easy Always Устанавливает сложность мира. Значения соотносятся с целочисленными режимами игры следующим образом:

мирный (0)

easy (1)

normal (2)

жесткий (3)

allow-cheats true, false false Всегда Если true, то можно использовать читы, такие как команды.
max-Players Положительное целое число 10 Всегда Максимальное количество игроков, которые могут играть на сервере. Более высокие значения влияют на производительность.
online-mode true, false true Всегда Если true, то все подключенные игроки должны пройти аутентификацию в Xbox Live.
white-list правда, ложь false Всегда Если true, то все подключенные игроки должны быть перечислены в отдельном whitelist.json файл.
server-port Целые числа в диапазоне [1, 65535] 19132 Always Какой порт IPv4 сервер должен прослушивать.
server-portv6 Целые числа в диапазоне [ 1, 65535] 19133 Всегда Какой порт IPv6 сервер должен слушать.
расстояние обзора Любое целое число 10 Всегда Максимально допустимое расстояние просмотра в количестве блоков. Более высокие значения влияют на производительность .
tick-distance Целое число в диапазоне [ 4, 12] 4 Всегда Мир находится на таком большом расстоянии от любого игрока. Более высокие значения влияют на производительность.
player-idle-timeout Любое целое число 30 Всегда После того, как игрок простаивал в течение за такое количество минут их удаляют. После того, как игрок бездействует в течение такого количества минут, его удаляют.
max-threads Любое целое 8 Всегда Максимум количество потоков, которые пытается использовать сервер. Если установлено значение 0 или удалено, используется как можно больше. Максимальное количество потоков, которые пытается использовать сервер.
имя-уровня Любая строка Уровень основания Всегда Значение «level-name» используется как имя мира и имя его папки. Игрок также может скопировать сюда свою папку с сохраненной игрой и изменить имя на то же, что и у этой папки, чтобы загрузить ее. Имя уровня, который будет использоваться/сгенерирован. Каждый уровень имеет свою папку в /worlds.
level-seed Любая строка По умолчанию пусто (th34f1ju34facjn5f871df312h) Создание мира Используется для рандомизации мира Начальное значение, которое будет использоваться для рандомизации мира. Если оставить пустым, начальное число выбирается случайным образом.
level-type ПЛОСКИЙ, НАСЛЕДИЕ, ПО УМОЛЧАНИЮ ПО УМОЛЧАНИЮ Создание мира Определяет тип создаваемой карты.
default-player-permission-level посетитель, участник, оператор member Всегда Уровень разрешений для новых игроков, присоединяющихся впервые. Уровень разрешений, который получают новые игроки при первом присоединении.
texturepack-required true, false false Always Заставить клиентов использовать пакеты текстур в текущем мире Если мир использует какие-либо определенные пакеты текстур, тогда этот параметр заставляет клиента использовать их.
content-log-file -enabled true, false false Всегда Включает ведение журнала содержимого ошибки в файл
сжатие-th eshold Целые числа в диапазоне [1, 65535] 1 Всегда Определяет наименьший размер необработанной сетевой полезной нагрузки для сжатия
server-authoritative-move client-auth, server-auth server-auth Всегда Включает авторитетное перемещение сервера. Если server-auth, сервер будет воспроизводить ввод локального пользователя на сервере и отправлять исправления, когда позиция клиента не совпадает с позицией сервера. Исправления будут происходить только в том случае, если правильное движение игрока установлен на server-auth.
player-motion-score-threshold Любой положительное целое число 20 Всегда Количество неконгруэнтных временных интервалов, необходимых для сообщения о ненормальном поведении. Отключено движением-авторитетным сервером.
порог-дистанции-движения-игрока Любое положительное число 0,3 Всегда Разница между позициями сервера и клиента, которая должна быть превышена до выхода из строя обнаружено поведение. Отключено авторитетным-движением сервера.
player-motion-duration- порог в мс Любое положительное целое число 500 Всегда Продолжительность времени, в течение которого сервер и клиент t позиций могут быть не синхронизированы (как определено порогом дистанции-движения игрока) до того, как счет аномального движения будет увеличен. Это значение определяется в миллисекундах. Отключено серверным-авторитарным-перемещением..
correct-player-movement true, false false Always Если true, позиция клиента будет скорректирована относительно позиции сервера, если оценка движения превышает пороговое значение.

Minecraft Свойства классического сервера

Ключ Тип Значение по умолчанию Описание
verify-names boolean true Если включено, сервер гарантирует, что клиент вошел в систему с тем же IP-адресом, что и на Minecraft.net. Это вызвало проблемы у людей, пытающихся играть на том же компьютере, на котором размещен сервер, поскольку сервер видит локальный IP-адрес (127.0.0.1), а Minecraft.net видит внешний IP-адрес. Рекомендуется включить это, если игрок не хочет играть на сервере игрока с того же компьютера, на котором он размещен.

true — Включено . Сервер проверяет все имена с помощью Minecraft.net
false — отключено. Сервер проверяет соответствие IP
admin-slot boolean false Разрешить операциям присоединяться, даже если сервер заполнен.
public boolean Должен ли сервер отображаться в списке серверов или нет.

true — сервер отображается в списке серверов — его может видеть любой.
false — только люди с URL-адресом, который можно найти в externalurl.txt, и люди, которые знают IP и порт, могут присоединиться к серверу
server-name строка Имя сервера. Это отображается в списке серверов, и когда кто-то присоединяется к серверу

  • Одна строка текста. Такие символы, как ‘(апостроф), возможно, потребуется экранировать, добавив перед ними обратную косую черту.
max-player integer (0-256) Максимальное количество игроков, которые могут играть на сервере одновременно. Обратите внимание, что если на сервере больше игроков, он использует больше ресурсов. Также обратите внимание, что административные соединения не учитываются в максимальном количестве игроков.
max-connections integer (1-3) Максимальное количество подключений, которые сервер принимает с того же IP-адреса.

Примечание: Если установлено больше 3, оно меняется обратно на 3.

motd строка MOTD — это сокращение от «Сообщение дня», хотя игроку не нужно менять его каждый день. MOTD отображается, когда люди присоединяются к серверу.
grow-tree boolean Позволяет ли сервер вырасти посаженным саженцам в деревья.

true — сервер позволяет саженцам вырасти в деревья. деревья.
false — сервер не позволяет саженцам вырасти в деревья.

История

Java Edition Classic
server 1.5 Добавлено max-connections , который ограничивает максимальное количество подключений с одного IP.
server 1.9.1 Добавлено grow-tree , который не будет выращивать деревья, если не задано значение true.
server 1.10 Добавлено предупреждение, когда verify-names был отключен.
Добавлен admin-slot , который не позволяет не администраторы, если количество игроков почти достигнуто.
Java Edition Alpha
server 0.2.0 Добавлен параметр monsters , если установлено значение true, будут включены монстры.
server 0.2.4 Добавлена ​​опция no-animals , если установлено значение true, животные отключатся.
server 0.2.5 Добавлена ​​опция pvp для отключения или включения боя между игроком и игроком.
Переименовал monsters в spawn-monsters и установил значение по умолчанию на true
no-animals переименован в spawn-animals.
Java Edition. Бета
1.6 Добавлен allow-nether , который, если установлен в false, запрещает вход в нижнее.
Добавлен параметр view-distance , который устанавливает максимальное расстояние обзора.
Java Edition
1.0.0 Beta 1.9 Prerelease 4 Добавлены debug , enable-query , enable-rcon , query.port , rcon.password и rcon.port.
1.1 11w49a Добавлен spawn-npcs.
12w01a Добавлен тип уровня.
релиз Добавлены generate-structures.
1.2.1 12w07a Добавлен max-build-height.
1.4.2 12w40a Добавлен spawn-protection.
1.5 13w05a Установка для spawn-protection значения 0 теперь отключает защиту от появления, вместо защиты области 1 × 1 (MC-666).
1.7.2 13w38a Добавлена ​​опция, позволяющая отключить объявления о достижениях в чате.
1.8 14w17a Добавлены параметры генератора .
14w28a Добавлена ​​опция для настройки сжатия сети.
1.11 16w38a Добавлено prevent-proxy-connections.
1.12 17w18a Удалена опция объявить-достижения-игрока , поскольку она была заменена игровым правилом announceAdvancements .
1. 14 18w48a сложность и настройки gamemode теперь принимают строковые имена; целочисленные значения по-прежнему разрешены как устаревший вариант.
1.14.4 Pre-Release 4 Добавлен параметр уровень разрешения-функции , который определяет, какие функции уровня разрешения имеют.
1.15 Pre-Release 5 Увеличен лимит размера пакета ресурсов сервера до 100 МБ.
1.16 20w14a Добавлена ​​опция sync-chunk-write для отключения новой синхронной записи фрагментов.
20w16a Добавлен параметр enable-jmx-monitoring , который предоставляет компонент MBean, который показывает время тика в миллисекундах.
20w18a Добавлены enable-status и entity-broadcast-range-percent параметры.
1.16.2 20w28a Добавлено rate-limit , чтобы установить ограничение скорости пакетов для пользователя.
1.16.4 Pre- выпуск 1 Добавлен text-filtering-config .
Предстоящая версия Java Edition
1.17 20w45a Добавлен require-resource-pack , который заставляет пользователей принимать пакет ресурсов.
Bedrock Edition
1.6.1 Первоначальный выпуск выделенного сервера Bedrock.
Текущие параметры включают имя-сервера , режим игры , сложность , allow-cheats , max-Players , онлайн-режим , белый список , server-port , server-port-v6 , view-distance , tick-distance , player-idle-timeout , max-threads , имя-уровня , level- семя , разрешение-проигрыватель по умолчанию , texturepack-required.
1.7.0 default-player-permission переименован в default-player-permission-level .
1.12.0.28 Добавлен content-log-file-enabled , который позволяет регистрировать ошибки содержимого в файл.
1.13.0 Добавлен порог сжатия , авторитетный-сервер-движение , порог-движения-игрока , порог-расстояние-движения-игрока , порог-длительность-движения-игрока в мс , correct-player-movement.
1.16.100 Изменено значение по умолчанию server-authoritative -vement с «true» на «server-auth» (false теперь «client-auth»)

Citizens — как создавать ботов на сервере Майнкрафт? (настройка мобов, жителей, NPC, охранников, торговцев и квестов)

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Мы запускаем серию из 4-х видео роликов по созданию…

DeathMessages — сообщение после смерти игрока на сервере Майнкрафт.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Ни для кого не секрет, что существуют десятки…

ImageMaps — настройка и обзор плагина. Как вставить любое изображение на свою карту в Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ В сегодняшнем видео уроке мы расскажем Вам как…

MultiWorld — Переход между мирами. Как добавить другие миры на сервере Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ После изучение данного материала, Вы узнаете — «Как…

Player Report — как жаловаться на игроков на сервере Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Являетесь администратором сервера? Тогда Вам просто…

SkinsRestorer — установка скинов на сервер Майнкрафт без лицензии.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ С помощью установки скинов Вы сможете изменить…

TitleManager — плагин для красивого оформления в Майнкрафт. Приветствие и статистика ScoreBoard.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ TitleManager — очееееень важный и полезный плагин…

WorldEdit — Как копировать и перемещать постройки в Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Сегодня разберём полезную тему: «Как копировать и…

Как заменить музыку на сервере Майнкрафт? Как добавить песни в Minecraft.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Огромное количество игроков хотят заменить штатную…

Как играть в Майнкрафт с разных версий?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Сегодня мы разберём очень крутую тему! Нам часто…

Как отключить задержку сервера Minecraft перед запуском?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Очень популярный вопрос: «Как отключить задержку…

Как разговаривать на сервере Майнкрафт? Голосовой чат.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ По многочисленным просьбам мы подготовили для Вас…

Как сделать авторестарт сервера. Планировщик команд в Майнкрафт. (Расписание)

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Как сделать мини игры на сервере майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Сперва предлагаем посмотреть видео ролик на тему:…

Как сделать оружие на сервере Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Как сделать приват на сервере Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Как сделать реалистичную графику на сервере Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Как сделать цветное название сервера?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Как удалить регион в майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Предлагаем к Вашему вниманию короткий видео ролик…

Как устанавливать дата паки на сервер Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Как установить и настроить плагин DYNMAP на сервере Майнкрафт? Динамическая карта.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Друзья, сегодня мы рассмотрим с Вами очень крутой…

Как установить ресурс паки в майнкрафте?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Многих интересует вопрос: «Как установить…

Как установить скачанный спавн на сервер Майнкрафт?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ В интернете в открытом доступе опубликовано…

НАДЁЖНАЯ защита админки на сервере Майнкрафт. Блокировка команд.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Друзья, Вы должны чётко понимать, что создать и…

Настройка WhiteList на сервере Майнкрафт.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Ошибка lost connection: Internal Exception. Не подключается к серверу, как исправить?

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Если Вы видите такую ошибку:

[15:32:42] [Server…

Плагин PlasmoVoice — настройка конфига, как установить и настроить.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Для всех любителей НЕ читать инструкцию от плагина…

Плагин Simple Voice Chat — настройка конфига

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Для всех любителей НЕ читать инструкцию от плагина…

Префиксы для сервера Майнкрафт.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Простая настройка RCON на сервере Майнкрафт через панель управления.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Наша команда специалистов подготовила для Вас…

Честное ПВП. Анти-релог на сервере. Бан за выход во время боя.

⭐️ ПРИВЕТСТВУЕМ НА HOSTING-MINECRAFT.RU⭐️
✔️ Сегодня мы расскажем Вам о плагинах для наказаний в…

Метки:

  • .yml
  • bukkit.yml
  • paper
  • paper.yml
  • server.properties
  • spigot
  • spigot.yml
  • настройка
  • оптимизация
  • ядро
  1. Привет всем! У меня есть статья Создание сервера с нуля от А до Я. В ней есть пункт про оптимизацию сервера. На просторах RuBukkit я не нашел свежих статей по настройке сервера и оптимизации сервера в частности.

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

    Сущность (entity) — все динамические и движущиеся объекты в мире Minecraft. Например, все мобы, игроки и даже падающие блоки гравия/песка и т.п.
    tps (tick per second) — тиков в секунду. В Minecraft 1 секунда = 20 тикам.

    Если вы используете ядра Vanilla (CraftBukkit), Fabric или Spigot — зайдите в свой server.properties и измените sync-chunk-writes на false. Эта опция принудительно отключена в Paper и его форках, но на других ядрах вам нужно отключить ее вручную. Это позволяет серверу сохранять чанки вне основного потока, снижая нагрузку на сервер.

    1. Вступление
    Никогда не будет руководства, которое даст вам идеальные результаты. Каждый сервер имеет свои собственные потребности и ограничения на то, чем вы можете или готовы пожертвовать. Цель данного руководства — помочь вам понять, какие параметры влияют на производительность и что именно они меняют.

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

    Рекомендуемые ядра:
    Paper — Самое популярное ядро, направленное на повышение производительности и исправление несоответствий в геймплее и механике.
    Pufferfish — форк ядра Paper, направленный на улучшение производительности сервера.
    Purpur — форк ядра Paper, ориентированный на функциональность и свободу настройки параметров сервера.

    Sponge — ядро отличное от Paper, в основном используется для серверов с модами. Но также хорошо себя показывает и на серверах без них. Только вот плагины написанные под Spigot/PaperSpigot не будут работать на нем из-за специфичного API ядра. Ядро подойдет для энтузиастов :cool:

    Вам следует держаться подальше от:
    — Любых платных ядер, авторы которых утверждают, что он асинхронный — 99,99% вероятность того, что это мошенничество.
    — Bukkit/CraftBukkit/Spigot — Крайне устаревшие в плане производительности по сравнению с другими ядрами.
    — Любой плагин/программное обеспечение, которое включает/выключает/перезагружает плагины во время выполнения. См. этот раздел, чтобы понять почему.

    Многие форки от Pufferfish или Purpur, будут сталкиваться с нестабильностью и другими проблемами. Если вы ищете большего прироста производительности, оптимизируйте свой сервер или создайте личный форк :nerd:

    3. Предзагрузка карты (чанков карты)
    Предварительная генерация карт — один из самых важных шагов в улучшении малобюджетного сервера. Это больше всего помогает серверам, размещенным на общем процессоре/одноядерном процессоре, поскольку они не могут полностью использовать асинхронную загрузку чанков. Вы можете использовать такой плагин, как Chunky, для предварительной генерации мира. Обязательно установите границу мира, чтобы ваши игроки не генерировали новые чанки! Обратите внимание, что предварительная генерация может занять несколько часов, в зависимости от радиуса, который вы установите настройках плагина. Имейте в виду, что при использовании Paper загрузка чанков не влияет на ваш tps, но скорость загрузки чанков может значительно замедлиться, если процессор вашего сервера перегружен.

    Важно помнить, что обычный мир, ад и край имеют отдельные границы мира, которые должны быть установлены для каждого мира. Размеры ада в 8 раз меньше размеров обычного мира (если они не изменены с помощью датапака), поэтому если вы неправильно установите размер, ваши игроки могут оказаться за границей мира!

    Обязательно установите стандартную (ванильную) границу мира (/worldborder set [радиус]), так как она ограничивает некоторые функции, например, диапазон поиска карт сокровищ, что может вызвать лаги.

    3.Конфигурации
    3.1 Сетевая часть
    server.properties
    network-compression-threshold

    Рекомендуемое значение: 256

    Это позволяет установить предельный размер пакета (в байтах) перед тем, как сервер попытается его сжать. Установка большего значения может сэкономить некоторые ресурсы процессора за счет пропускной способности, а установка значения -1 отключает эту функцию. Установка большего значения также может навредить игрокам с медленным интернетом. Если ваш сервер находится в сети с прокси-сервером (например, bungeecord) или на той же машине (с пингом менее 2 мс), отключение этого параметра (-1) будет полезно, так как скорость внутренней сети обычно может справиться с дополнительным несжатым трафиком.

    3.2 Чанки
    server.properties
    simulation-distance

    Рекомендуемое значение: 4

    Это расстояние в чанках вокруг игрока, которое будет обрабатывать сервер. По сути, это расстояние от игрока, на котором будут происходить события. Это включает в себя переплавку в печах, рост растений и т.д. Это параметр, который вы устанавливаете специально низким, где-то около 3 или 4, из-за наличия параметра view-distance. Это позволяет загружать больше чанков, не обрабатывая в них что-либо. Это позволяет игрокам видеть дальше без такого же влияния на производительность.

    view-distance
    Рекомендуемое значение: 7

    Это расстояние в чанках, которое будет отображено игрокам (дальность прорисовки), аналогично no-tick-view-distance у Paper. В версии 1.18 игрок теперь учитывает дальность прорисовки на стороне сервера, что приводит к появлению уродливого тумана при низком значении этого параметра.

    Общая дальность прорисовки будет равно наибольшему значению между параметрами simulation-distance и view-distance. Например, если simulation-distance установлено на 4, а view-distance — на 12, то у игрока будет отображено 12 чинков.

    spigot.yml
    view-distance

    Рекомендуемое значение: изначально указанное в конфиге (default)

    Это значение перезаписывает одно из значений server.properties, если оно не установлено по умолчанию. Вы должны оставить его по умолчанию, чтобы параметры симуляции окружения и дальности прорисовки были в одном месте и их было проще изменить.

    paper.yml
    delay-chunk-unloads-by
    Рекомендуемое значение: 10

    Этот параметр позволяет вам настроить, как долго (в секундах) чанки будут оставаться загруженными после ухода игрока из них. Это помогает не загружать и выгружать одни и те же чанки постоянно, когда игрок перемещается туда-сюда. Слишком высокие значения могут привести к тому, что одновременно будет загружаться слишком много чанков. Для мест, в которые часто телепортируются и загружаются, например, спавн, подумайте о том, чтобы держать их постоянно загруженными. Это будет легче для вашего сервера, чем постоянно загружать и выгружать чанки.

    prevent-moving-into-unloaded-chunks
    Рекомендуемое значение: true

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

    prevent-moving-into-unloaded-chunks
    Рекомендуемые значения:

          experience_orb: 16
          arrow: 16
          dragon_fireball: 3
          egg: 8
          ender_pearl: 8
          eye_of_ender: 8
          fireball: 8
          small_fireball: 8
          firework_rocket: 8
          potion: 8
          llama_spit: 3
          shulker_bullet: 8
          snowball: 8
          spectral_arrow: 16
          experience_bottle: 3
          trident: 16
          wither_skull: 4
          area_effect_cloud: 8
    
    С помощью этой записи вы можете установить ограничения на то, сколько сущностей определенного типа может быть сохранено. Вы должны установить лимит для каждого снаряда, по крайней мере, чтобы избежать проблем с сохранением огромного количества снарядов и падением сервера при их загрузке. Вы можете указать здесь любую сущность, см. Документацию Spigot’a, чтобы найти типы сущностей. Пожалуйста, настройте лимит по своему вкусу. Рекомендуемое значение для всех снарядов — около 10. Вы также можете добавить в этот список другие сущности. Этот параметр конфигурации не предназначен для того, чтобы помешать игрокам создавать большие фермы мобов.
    Последнее редактирование: 21 мар 2022
  2. Быстрая раскрутка сервера Minecraft

  3. 3.3 Мобы
    bukkit.yml
    spawn-limits

    Рекомендуемые значения:

        monsters: 20
        animals: 5
        water-animals: 2
        water-ambient: 2
        water-underground-creature: 3
        axolotls: 3
        ambient: 1
    
    Математически ограничение мобов выглядит так: [playercount] * [limit], где playercount — текущее количество игроков на сервере. Логично, что чем меньше число, тем меньше мобов вы увидите. per-player-mob-spawn накладывает дополнительный лимит на это, обеспечивая равномерное распределение мобов между игроками. Снижение этого показателя — палка о двух концах; да, у вашего сервера будет меньше работы, но в некоторых игровых режимах естественный спавн мобов является важной частью игрового процесса. При правильной настройке параметра mob-spawn-range вы можете дойти до 20 или меньше. Если установить меньшее расстояние спавна мобов, будет казаться, что вокруг каждого игрока больше мобов. Если вы используете Paper, вы можете установить ограничения мобов для каждого мира в файле paper.yml.

    ticks-per
    Рекомендуемые значения:

        monster-spawns: 10
        animal-spawns: 400
        water-spawns: 400
        water-ambient-spawns: 400
        water-underground-creature-spawns: 400
        axolotl-spawns: 400
        ambient-spawns: 400
    
    Эта опция устанавливает, как часто (в тиках) сервер пытается спавнить определенных мобов. Водные/амбиентные мобы не обязательно должны появляться каждый тик, так как их обычно не убивают так быстро. Что касается монстров: Небольшое увеличение времени между спавнами не должно повлиять на частоту спавнов даже на фермах мобов. В большинстве случаев все значения этого параметра должны быть больше 1. Установка этого значения также позволит вашему серверу лучше справляться с зонами, где спавн мобов отключен.

    spigot.yml
    mob-spawn-range

    Рекомендуемое значение: 2

    Позволяет уменьшить диапазон (в чанках), в котором мобы будут спавниться вокруг игрока. В зависимости от игрового режима вашего сервера и количества игроков, вы можете уменьшить это значение вместе с spawn-limits в bukkit.yml. Если установить это значение ниже, вам будет казаться, что вокруг вас больше мобов. Это значение должно быть меньше или равно дальности прорисовки (view-distance), и никогда не должно быть больше расстояния жесткого деспауна / 16.

    entity-activation-range
    Рекомендуемые значения:

          animals: 16
          monsters: 24
          raiders: 48
          misc: 8
          water: 8
          villagers: 16
          flying-monsters: 48
    
    Вы можете установить, на каком расстоянии от игрока должен находиться моб, чтобы он мог активироваться (выполнять какие-либо действия, то бишь, работал их интеллект). Уменьшение этих значений повышает производительность, но может привести к тому, что мобы не будут реагировать, пока игрок не подойдет к ним очень близко. Слишком сильное уменьшение этого параметра может привести к поломке некоторых ферм мобов, чаще всего страдают фермы железа.

    entity-tracking-range
    Рекомендуемые значения:

          players: 48
          animals: 48
          monsters: 48
          misc: 32
          other: 64
    
    Это расстояние в блоках, с которого мобы будут видны/отображаться. Если установить слишком низкое значение, это может привести к тому, что мобы будут появляться из ниоткуда рядом с игроком. В большинстве случаев этот параметр должен быть выше, чем параметр entity-activation-range.

    tick-inactive-villagers
    Рекомендуемое значение: false

    Это позволяет вам контролировать, должны ли жители быть активными вне диапазона активации (параметр entity-activation-range). Это заставит жителей действовать как обычно и игнорировать диапазон активации. Отключение этого параметра повысит производительность, но может запутать игроков в некоторых ситуациях. Это может вызвать проблемы с фермами железа и пополнением торговых запасов.

    nerf-spawner-mobs
    Рекомендуемое значение: true

    Вы можете сделать так, чтобы мобы, порожденные спавнером монстров, не имели ИИ. В таком случае мобы не будут ничего делать. Вы можете заставить их прыгать в воде (то есть, не тонуть в ней), изменив spawner-nerfed-mobs-should-jump на true в paper.yml.

    paper.yml
    despawn-ranges

    Рекомендуемые значения:

          monster:
            soft: 30
            hard: 56
          creature:
            soft: 30
            hard: 56
          ambient:
            soft: 30
            hard: 56
          axolotls:
            soft: 30
            hard: 56
          underground_water_creature:
            soft: 30
            hard: 56
          water_creature:
            soft: 30
            hard: 56
          water_ambient:
            soft: 30
            hard: 56
          misc:
            soft: 30
            hard: 56
    
    Позволяет настраивать расстояния деспавна сущностей (в блоках). Уменьшите эти значения, чтобы быстрее деcпавнить мобов, находящихся далеко от игрока. Параметр soft должен быть около 30, а hard — немного больше, чем значение параметра simulation-distance, чтобы мобы не деcпавнились сразу, когда игрок проходит чуть дальше точки загрузки чанка (это хорошо работает благодаря delay-chunk-unloads-by в paper.yml). Когда моб находится за пределами hard значения, он будет мгновенно деспавниться. Когда моб находится между soft и hard значениями, он будет деспавниться со случайным шансом. Hard радиус действия должен быть больше soft. Вы должны настроить его в соответствии с дальностью прорисовки (view-distance), используя (simulation-distance * 16) + 8. Это частично учитывает чанки, которые еще не были выгружены после посещения их игроком.

    per-player-mob-spawns
    Рекомендуемое значение: true

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

    max-entity-collisions
    Рекомендуемое значение: 2

    Перезаписывает одноименную опцию в spigot.yml. Она позволяет вам решить, сколько столкновений может обработать одна сущность за один раз. Значение 0 приведет к невозможности толкать другие сущности, включая игроков. Значения 2 должно быть достаточно в большинстве случаев.Стоит отметить, что игровое правило maxEntityCramming станет бесполезным, если его значение превысит значение этого параметра.

    update-pathfinding-on-block-update
    Рекомендуемое значение: false

    Отключение этой опции приведет к тому, что поиск пути будет выполняться реже, что увеличит производительность. В некоторых случаях это приведет к тому, что мобы будут выглядеть более лагнутыми; они будут просто пассивно обновлять свой путь каждые 5 тиков (0,25 секунды).

    fix-climbing-bypassing-cramming-rule
    Рекомендуемое значение: true

    Включение этого параметра исправит то, что сущности не будут тесниться при лазании. Это предотвратит образование абсурдного количества мобов в небольших пространствах, даже если они карабкаются (например, пауки).

    armor-stands-tick
    Рекомендуемое значение: false

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

    armor-stands-do-collision-entity-lookups
    Рекомендуемое значение: false

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

    tick-rates
    Рекомендуемые значения:

          sensor:
            villager:
              secondarypoisensor: 80
              nearestbedsensor: 80
              villagerbabiessensor: 40
              playersensor: 40
              nearestlivingentitysensor: 40
          behavior:
            villager:
              validatenearbypoi: 60
              acquirepoi: 120
    
    Это определяет, как часто в тиках запускаются указанные поведения и датчики. «acquirepoi» (я не смог найти понятный перевод этому слову) для жителей кажется самым тяжелым поведением, поэтому этот параметр был сильно увеличен. Уменьшите это значение если у жителей возникают проблемы с поиском дороги.
  4. 3.4 Разное
    spigot.yml
    merge-radius

    Рекомендуемые значения:

    Этот параметр определяет расстояние между сливающимися предметами и опытом, уменьшая количество предметов на земле. Слишком высокое значение приведет к иллюзии исчезновения предметов или сфер опыта при их слиянии. Слишком высокое значение приведет к поломке некоторых ферм, а также позволит предметам телепортироваться через блоки. Нет никаких проверок, чтобы предотвратить слияние предметов через стены. Сферы опыта сливаются только при создании.

    hopper-transfer
    Рекомендуемое значение: 8

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

    hopper-check
    Рекомендуемое значение: 8

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

    paper.yml
    alt-item-despawn-rate

    Рекомендуемые значения:

          enabled: true
          items:
              COBBLESTONE: 300
              NETHERRACK: 300
              SAND: 300
              RED_SAND: 300
              GRAVEL: 300
              DIRT: 300
              GRASS: 300
              PUMPKIN: 300
              MELON_SLICE: 300
              KELP: 300
              BAMBOO: 300
              SUGAR_CANE: 300
              TWISTING_VINES: 300
              WEEPING_VINES: 300
              OAK_LEAVES: 300
              SPRUCE_LEAVES: 300
              BIRCH_LEAVES: 300
              JUNGLE_LEAVES: 300
              ACACIA_LEAVES: 300
              DARK_OAK_LEAVES: 300
              CACTUS: 300
              DIORITE: 300
              GRANITE: 300
              ANDESITE: 300
              SCAFFOLDING: 600
    
    Этот список позволяет вам установить альтернативное время (в тиках) для деспавна определенных типов выпавших предметов быстрее или медленнее, чем по умолчанию. Этот параметр можно использовать вместо плагинов очистки предметов вместе с merge-radius для повышения производительности.

    use-faster-eigencraft-redstone
    Рекомендуемое значение: true

    Если опция включена, то редстоун система (механизмы) заменяется более быстрой и альтернативной версией, которая уменьшает избыточные обновления блоков, снижая объем работы, которую приходится выполнять вашему серверу. Включение этой функции может значительно повысить производительность, не внося несоответствий в игровой процесс. Включение этой функции даже исправит некоторые несоответствия редстоуна из craftbukkit.

    disable-move-event
    Рекомендуемое значение: false

    Отключает событие InventoryMoveItemEvent для API. Если вы не знаете что это и для чего используете — оставьте значение этого параметра false.

    ignore-occluding-blocks
    Рекомендуемое значение: true

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

    mob-spawner-tick-rate
    Рекомендуемое значение: 2

    Эта опция позволяет настроить частоту активации спавнеров (не спавна мобов, а именно их активацию). Более высокие значения снизят нагрузку на сервер, если у вас много спавнеров. Хотя если установить слишком высокое значение (относительно задержки спавнеров), скорость спавна мобов снизится.

    optimize-explosions
    Рекомендуемое значение: true

    Установка этого значения в true заменяет обычный алгоритм взрыва на более быстрый, ценой небольшой неточности при расчете урона от взрыва. Обычно это незаметно.

    enable-treasure-maps
    Рекомендуемое значение: false

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

    treasure-maps-return-already-discovered
    Рекомендуемое значение: true

    Значение по умолчанию (false) этого параметра заставляет вновь сгенерированные карты искать неисследованные структуры, которые обычно находятся за пределами вашей предварительно сгенерированной местности. Установка значения на true заставляет карты вести к ранее обнаруженным структурам. Если вы не установите это значение в true, вы можете столкнуться с зависанием или падением сервера при генерации новых карт сокровищ.

    grass-spread-tick-rate
    Рекомендуемое значение: false

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

    container-update-tick-rate
    Рекомендуемое значение: 1

    Время в тиках между обновлениями контейнеров. Увеличение этого параметра может помочь, если обновление контейнеров вызывает у вас проблемы (такое случается редко), но облегчает игрокам десинхронизацию при взаимодействии с инвентарем (призрачные предметы).

    non-player-arrow-despawn-rate
    Рекомендуемое значение: 20

    Время в тиках, по истечении которого стрелы, выпущенные мобами, должны исчезать после попадания во что-то. Игроки все равно не могут их подбирать, поэтому можно установить значение 20 (1 секунда).

    creative-arrow-despawn-rate
    Рекомендуемое значение: 20

    Время в тиках, по истечении которого стрелы, выпущенные игроками в творческом режиме, должны исчезать после попадания во что-то. Игроки все равно не могут их подбирать, поэтому можно установить значение 20 (1 секунда).
  5. 3.5 Вспомогательное

    paper.yml
    anti-xray

    Рекомендуемое значение: true

    Поставьте значение true, чтобы скрыть руды от x-ray (читы). Для детальной настройки этой функции ознакомьтесь с рекомендуемыми настройками Stonar96. Включение этой функции действительно снизит производительность, однако она гораздо эффективнее, чем любой плагин анти-ксрей. В большинстве случаев влияние на производительность будет незначительным.

    remove-corrupt-tile-entities
    Рекомендуемое значение: true

    Измените значение на true, если ваша консоль засыпана ошибками, связанными с сущностями тайлов. Это приведет к удалению всех тайловых сущностей, вызывающих ошибку, вместо того, чтобы игнорировать ее. Если вы часто получаете предупреждения о тайловых сущностях, выясните, почему они ломаются. Это не является решением основной проблемы.

    nether-ceiling-void-damage-height
    Рекомендуемое значение: 127

    Если этот параметр больше 0, игроки, находящиеся выше заданного уровня y-координаты, будут получать повреждения, как если бы они находились в пустоте. Это не позволит игрокам использовать выход за бедрок в аду. Обычно пустота имеет высоту 128 блоков, поэтому лучше установить значение 127. Если вы каким-либо образом изменяете высоту ада, вам следует установить значение [ваша_высота_ада] — 1.

    4. Плагины из разряда «Слишком хорошо, чтобы быть правдой»

    1) Плагины, удаляющие наземные предметы
    Абсолютно не нужны, поскольку их можно заменить настройками merge-radius и alt-item-despawn-rate, и, честно говоря, они менее настраиваемы, чем основные конфигурации сервера. Они используют больше ресурсов для сканирования и удаления предметов, чем для того, чтобы не удалять предметы вообще.

    2) Плагины для складывания (стакания) мобов
    Очень трудно оправдать их использование. Стакание естественно порожденных существ вызывает больше лагов, чем отсутствие их вообще, из-за того, что сервер постоянно пытается породить больше мобов. Единственный «приемлемый» вариант использования — это сервера с большим количеством спавнеров.

    3) Плагины, включающие/отключающие другие плагины
    Все, что включает или отключает плагины во время выполнения, крайне опасно. Загрузка такого плагина может привести к фатальным ошибкам с данными отслеживания, а отключение плагина может привести к ошибкам из-за удаления зависимости. Команда /reload страдает от точно таких же проблем, и вы можете прочитать о них подробнее в статье блога me4502

    5. Что такое лаги? — измерение производительности

    mspt


    Paper предлагает команду /mspt, которая сообщит вам, сколько времени потребовалось серверу для расчета последних тиков. Если первое и второе значение, которое вы видите, меньше 50, то поздравляю, ваш сервер не отстает! Если третье значение больше 50, это означает, что по крайней мере один тик занял больше времени. Это совершенно нормально и случается время от времени, так что не паникуйте.

    timings (тайминги)
    Отличный способ узнать, что может происходить, когда ваш сервер лагает — тайминг. Тайминги — это инструмент, позволяющий увидеть, какие задачи занимают больше всего времени. Это самый базовый инструмент поиска и устранения неполадок, и если вы обратитесь за помощью по поводу лагов, вас, скорее всего, попросят предоставить тайминги.
    Чтобы получить тайминги вашего сервера, достаточно выполнить команду /timings paste и перейти по ссылке, которую вам предоставят. Вы можете поделиться этой ссылкой с другими людьми, чтобы они могли помочь вам. Также легко ошибиться, если вы не знаете, что делаете. Существует подробный видеоурок от Aikar о том, как их читать.

    spark
    Spark — это плагин, который позволяет вам профилировать использование процессора и памяти ваших серверов. О том, как его использовать, вы можете прочитать на его вики. Также есть руководство о том, как найти причину лагов.

    Последнее редактирование: 21 мар 2022
  6. Дополнение про настройку Anti-Xray от stonar96. Оригинальная статья

    Anti-Xray может быть настроен для каждого мира в конфигурационном файле paper.yml. Чтобы понять, как работает конфигурация для каждого мира, пожалуйста, сначала прочитайте эту статью. Обратите внимание, что после изменения любых настроек Anti-Xray необходимо перезагрузить сервер. Выполнение команды /reload (вы никогда не должны этого делать) не применит настройки к уже загруженным мирам.

    Официальную документацию по настройкам Anti-Xray и их значению можно найти здесь.

    В основном Anti-Xray имеет два различных режима:
    engine-mode: 1 заменяет указанные руды на «фальшивые» каменные, нетеррасовые или концевые каменные блоки в зависимости от типа мира
    engine-mode: 2 случайным образом размещает указанные фальшивые руды, когда клиенту отправляется пакет чанков. На следующей картинке показано, как это выглядит для игрока, использующего Xray на вашем сервере.
    xray.png

    engine-mode: 1 менее требователен к вычислениям, но режим engine-mode: 2 лучше работает для предотвращения Xray. Как вы можете видеть на картинке выше, режим engine-mode: 1 не идеален, потому что только те руды, которые полностью закрыты твердыми блоками, могут быть скрыты. Это означает, что руды, находящиеся под воздействием воздуха, например, в пещерах, все равно видны.
    В engine-mode: 2 фальшивые руды загораживают вид на эти руды, и дополнительно можно добавить фальшивые воздушные блоки.

    Настройки по умолчанию

    Это настройки по умолчанию для Anti-Xray. Как уже упоминалось выше, вам следует ознакомиться с официальной документацией. В комментариях ниже я добавил некоторую дополнительную информацию, которой там нет.

    world-settings:
      default:
        # Другие настройки мира по умолчанию.
        anti-xray:
          # «enabled» управляет состоянием включения/выключения системы Anti-Xray.
          enabled: false
          # «engine-mode» описан выше.
          engine-mode: 1
          # Начиная с версии 1.15.2 build #248 режим chunk-edge-mode больше не существует.
          # Эта настройка больше не нужна, потому что соседние чанки теперь обычно загружаются в любом случае.
          # Устанавливает, как движок обрабатывает края чанков.
          # Где 1 - не обфусцировать (не смешивая/путая) края чанков с незагруженными соседями,
          # 2 - не отправлять чанк, пока не появятся его соседи,
          # и 3 - загрузить соседний чанк, чтобы он мог правильно замаскировать текущий край.
          chunk-edge-mode: 2
          # Начиная с версии 1.17 build #1 «max-chunk-section-index» больше не существует.
          # Этот параметр заменен параметром «max-block-height».
          # «max-chunk-section-index» контролирует высоту, до которой должен работать движок.
          # y = (max-chunk-section-index + 1) * 16
          # Значение «max-chunk-section-index» больше 15 по умолчанию равно 15. Значение «max-chunk-section-index» меньше 0 не имеет смысла.
          max-chunk-section-index: 3
          # «max-block-height» контролирует высоту (y-координату), на которой должен работать движок.
          # Возможные значения - только целые числа, кратные 16.
          # Если указано другое значение, оно "округляется" до ближайшего кратного 16.
          # Начиная с версии 1.18 некоторые руды генерируются намного выше.
          # Пожалуйста, отрегулируйте настройку max-block-height по своему усмотрению.
          # https://minecraft.fandom.com/wiki/Ore может быть полезен.
          max-block-height: 64
          #  update-radius - радиус для обновления блоков, которые отправляют реальные блоки игроку, когда блок разрушен.
          # Есть только 3 допустимых варианта: 0, 1 и 2.
          # Радиус обновления больше 2 по умолчанию равен 2. Радиус обновления меньше 0 по умолчанию равен 0.
          # Не используйте update-radius: 0 на основном (боевом) сервере. Это только тестовый режим.
          update-radius: 2
          # Нужно ли обфусцировать (смешивать/скрывать) блоки, соприкасающиеся с лавой.
          # Не очень хорошо работает с некаменными текстурами руды.
          lava-obscures: false
          # Включать или нет поддержку разрешения paper.antixray.bypass.
          # В зависимости от вашего плагина разрешения, это может вызвать проблемы с производительностью.
          use-permission: false
          # В режиме engine-mode: 1 скрытые блоки заменяются на stone, netherrack или end_stone в зависимости от типа мира.
          #                    все типы воздушных блоков игнорируются в этом списке.
          # В режиме engine-mode: 2 скрытые блоки размещаются случайным образом.
          #                   в этом списке игнорируются тайловые сущности, такие как сундук или спавнер.
          #                   блоки могут быть добавлены в этот список несколько раз, соответственно, они используются чаще.
          #                   пустой или недействительный список или список, содержащий только игнорируемые блоки, приводит к [diamond_ore].
          #                   по умолчанию размещаются состояния блоков.
          hidden-blocks:
          - copper_ore
          - deepslate_copper_ore
          - gold_ore
          - deepslate_gold_ore
          - iron_ore
          - deepslate_iron_ore
          - coal_ore
          - deepslate_coal_ore
          - lapis_ore
          - deepslate_lapis_ore
          - mossy_cobblestone
          - obsidian
          - chest
          - diamond_ore
          - deepslate_diamond_ore
          - redstone_ore
          - deepslate_redstone_ore
          - clay
          - emerald_ore
          - deepslate_emerald_ore
          - ender_chest
          # В режиме engine-mode: 1 блоки замены не используются. Изменение этого списка в режиме engine-mode: 1 не имеет никакого эффекта.
          # В режиме engine-mode: 2 блоки замены и скрытые блоки случайным образом заменяются скрытыми блоками.
          #                   тайловые сущности, такие как сундук или спавнер, игнорируются в скрытых блоках.
          #                   тайловые сущности могут быть добавлены в блоки-заменители.
          #                   все типы воздушных блоков не заменяются, независимо от того, куда они добавлены.
          replacement-blocks:
          - stone
          - oak_planks
          - deepslate
        # Другие настройки мира по умолчанию.
    

    Рекомендуемые настройки

    Engine-Mode 1

    world-settings:
      default:
        # Другие настройки мира.
        anti-xray:
          enabled: true
          engine-mode: 1
          chunk-edge-mode: 2
          max-chunk-section-index: 3
          max-block-height: 64
          update-radius: 2
          lava-obscures: false
          use-permission: false
          hidden-blocks:
          # Нет возможности спрятать сундуки в подземелье, но зарытые сокровища будут спрятаны.
          - chest
          - coal_ore
          - deepslate_coal_ore
          - copper_ore
          - deepslate_copper_ore
          - raw_copper_block
          - diamond_ore
          - deepslate_diamond_ore
          - emerald_ore
          - deepslate_emerald_ore
          - gold_ore
          - deepslate_gold_ore
          - iron_ore
          - deepslate_iron_ore
          - raw_iron_block
          - lapis_ore
          - deepslate_lapis_ore
          - redstone_ore
          - deepslate_redstone_ore
          replacement-blocks:
          - stone
          - oak_planks
          - deepslate
        # Другие настройки мира.
    
      # world_nether: нужно изменить, если ваш мир называется по-другому.
      world_nether:
        anti-xray:
          max-chunk-section-index: 7
          max-block-height: 128
          hidden-blocks:
          - ancient_debris
          - nether_gold_ore
          - nether_quartz_ore
      # world_the_end: нужно изменить, если ваш мир называется по-другому.
      world_the_end:
        anti-xray:
          enabled: false
    

    Engine-Mode 2

    world-settings:
      default:
        # Другие настройки мира.
        anti-xray:
          enabled: true
          engine-mode: 2
          chunk-edge-mode: 2
          max-chunk-section-index: 3
          max-block-height: 64
          update-radius: 2
          lava-obscures: false
          use-permission: false
          hidden-blocks:
          # Здесь можно добавить воздух, чтобы генерировалось много отверстий.
          # Это хорошо работает против пещероискателей, но может вызвать падение FPS у всех игроков.
          - air
          - copper_ore
          - deepslate_copper_ore
          - raw_copper_block
          - diamond_ore
          - deepslate_diamond_ore
          - gold_ore
          - deepslate_gold_ore
          - iron_ore
          - deepslate_iron_ore
          - raw_iron_block
          - lapis_ore
          - deepslate_lapis_ore
          - redstone_ore
          - deepslate_redstone_ore
          replacement-blocks:
          # Сундук - это плиточный объект и не может быть добавлен к скрытым блокам в режиме engine-mode: 2.
          # Но добавление сундука сюда позволит спрятать зарытые сокровища, если увеличить max-chunk-section-index.
          - chest
          - amethyst_block
          - andesite
          - budding_amethyst
          - calcite
          - coal_ore
          - deepslate_coal_ore
          - deepslate
          - diorite
          - dirt
          - emerald_ore
          - deepslate_emerald_ore
          - granite
          - gravel
          - oak_planks
          - smooth_basalt
          - stone
          - tuff
        # Другие настройки мира.
    
      # world_nether: нужно изменить, если ваш мир называется по-другому.
      world_nether:
        anti-xray:
          max-chunk-section-index: 7
          max-block-height: 128
          hidden-blocks:
          # Смотри примечание о воздухе выше.
          - air
          - ancient_debris
          - bone_block
          - glowstone
          - magma_block
          - nether_bricks
          - nether_gold_ore
          - nether_quartz_ore
          - polished_blackstone_bricks
          replacement-blocks:
          - basalt
          - blackstone
          - gravel
          - netherrack
          - soul_sand
          - soul_soil
      # world_the_end: нужно изменить, если ваш мир называется по-другому.
      world_the_end:
        anti-xray:
          enabled: false
    
    Последнее редактирование: 21 мар 2022
  7. Руководство по настройкам для каждого мира. Оригинальная статья

    Наиболее неизвестная функция в Spigot/Paper — это возможность настраивать параметры мира для каждого мира. Это означает, что вы можете выбирать, какие параметры вы хотите (или не хотите) в каждом мире.

    По умолчанию

    Раздел настроек мира «по умолчанию» будет генерироваться автоматически в ваших .yml. Настройки, применяемые в разделе по умолчанию применяются ко ВСЕМ мирам, если вы не выделите новый файл .yml для конкретного мира. Вообще говоря, вы должны оставить большинство настроек по умолчанию, так как большинство из них действуют во всех мирах, либо они уже являются общими. Если значение не действует в мире, оно просто ничего не будет делать. Пример scan-for-legacy-ender-dragon из Paper не будет работать в аду, поэтому нет необходимости отключать его там.

    Для каждого мира

    Есть некоторые параметры, которые вы, возможно, захотите изменить в определенных мирах (по соображениям производительности).
    Рассмотрите эти параметры (все в paper.yml) как вероятных кандидатов на отключение/изменение в некоторых мирах:
    keep-spawn-loaded
    Нужен ли вам «спавн», загруженный в каждом мире?

    anti-xray
    Хотите ли вы выделять CPU на сокрытие руды в аду и краю?

    auto-save-interval
    Изменение интервала между сохранениями мира может повысить производительность.

    Последнее редактирование: 21 мар 2022
  8. Дополнение про вред команды /reload. Оригинал статьи.

    Команда /reload присутствует в Bukkit с первых дней его существования. Целью было позволить владельцам серверов быстро и легко перезагружать конфигурационные файлы плагинов и сервера. Однако, чтобы облегчить задачу разработчикам плагинов, эта команда в итоге получила фатальный недостаток, который сделал ее небезопасной для использования. Это решение отличалось от предыдущих серверных платформ, таких как hMod, которые вели себя гораздо более контролируемо. Команда Bukkit решила, что команда /reload должна отключать каждый плагин, а затем пытаться включить его снова.

    Поскольку Java не предоставляет поддерживаемого или безопасного способа выгрузки или перезагрузки уже загруженного кода, это начало вызывать несколько тонких проблем и ошибок. Повторная загрузка в некоторых случаях вызывала конфликты между первоначальной загрузкой и загрузкой при перезагрузке. Эта проблема особенно сильно проявлялась при замене jar-файлов плагинов. Из-за этого Spigot и Paper никогда не рекомендовали использовать команду /reload. Значительное неприятие команды /reload из-за проблем, которые она вызывала, было заметно уже в 2011 году, вскоре после запуска Bukkit. С тех пор эти проблемы стали значительно хуже.

    По мере развития Minecraft то, что требовало перезагрузки, становилось все сложнее, пока сама концепция перезагрузки не стала абсолютно невыполнимой. В каждом последнем обновлении команда перезагрузки вызывала новые проблемы. Сейчас никто и никогда не должен использовать команду /reload ни при каких обстоятельствах. Она вызывает значительные нестабильности в Minecraft, Bukkit, Spigot, Paper и почти всех плагинах, использующих API Bukkit. В настоящее время такое простое действие, как проверка прав доступа игрока, может вызвать проблемы после перезагрузки. Если плагин выдает ошибку после перезагрузки, это (скорее всего) не вина плагина, а симптом принципиально неработающей команды перезагрузки.

    Если вам необходимо:
    — Добавить новый плагин
    — Обновить существующий плагин
    — удалить плагин
    то… ПЕРЕЗАГРУЗИ СЕРВЕР!

    Если вам необходимо:
    — Перезагрузить конфигурацию плагина
    то… Используйте команду reload, предоставляемую самим плагином, например, /cb reload перезагрузит конфигурацию CraftBook. Если у используемого вами плагина нет такой команды, попросите разработчика плагина добавить ее или перезагрузите сервер.
    Если вы заменили какие-либо jar-файлы, перезагрузка сервера приведет к возникновению проблем, даже если вы этого не заметите. Команда /reload ВСЕГДА небезопасна и чревата ошибками.

    Замечание о PlugMan
    Использование плагинов, таких как PlugMan, для включения или отключения плагинов по-прежнему проблематично. Это не только приводит к тем же проблемам, что и выше, но и нарушает ожидания, которые плагины связывают с сервером. Поскольку Bukkit не предназначен для самостоятельной загрузки плагинов, это может привести к проблемам, когда плагины находятся в недопустимом состоянии. Мало того, обычно плагины предполагают, что сервер только что запустился, когда плагин загружается, поэтому при последующем запуске плагин может работать с неверными данными.

    Примечание #1!
    Это предупреждение не относится к команде перезагрузки Sponge. Команда Sponge /reload не делает того, что делает Bukkit, а вместо этого посылает плагинам событие, сообщающее, что была запрошена перезагрузка. После этого плагин несет ответственность за перезагрузку конфигураций.

    Примечание #2!
    Если вы хотите использовать команду Minecraft /reload для перезагрузки датапаков на Bukkit, вы можете смело использовать /minecraft:reload.

    Последнее редактирование: 21 мар 2022

  9. Overwrite

    Overwrite
    Активный участник
    Пользователь

    Баллы:
    96
    Имя в Minecraft:
    artcart

    Но purpur не форк ядра Puffrefish, а обычный форк бумаги…

Поделиться этой страницей

Русское сообщество Bukkit

Bukkit по-русски - свой сервер Minecraft

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить параметры запуска презентаций ответы на вопросы
  • Как изменить параметры запуска майнкрафт
  • Как изменить параметры запуска компьютера
  • Как изменить параметры запуска для ярлыка
  • Как изменить параметры запуска виндовс 10

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии