Расставляем карточки...

Minecraft Java Server – 1 урок (Начало)

by | Mar 10, 2020 | GameDev | 0 comments

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

Для успешного старта в этой сфере вам понадобится хостинг/сервер с такими параметрами:

  • Хотя бы 1/2 Гб ОЗУ (желательно 3+)
  • Хранилище на минимум 100 Мб для работы. (желательно 1 Гб+)
  • Хорошее интернет подключение и хоста (сервера)

 

Ядро версии игры 1.12.2:
? spigot-1.12.2.jar

Официальный сайт Spigot:
www.spigotmc.org

Установка сервера

Вариантов ядер для сервера куча: bukkit, spigot, paper, sponge, spongeforge, forge, magma, vanilla и другие. Мы же будем работать с самым гибким и удобным для работы с плагинами. Forge моды он не поддерживает, однако имеет совместимость с bukkit плагинами на основе ядра которого был написан. Все плагины можно найти на форумах spigot.mc и просто во время поиска в интернетах.

Чтобы установить ядрышко нам нужно залить наш spigot-1.12.2.jar на сервер где мы будем с ним работать, или создать папку для сервера в нужном месте уже локально (на ПК установки). Для запуска .jar файлика ядра нужно поставить свежую Java с официального сайта Oracle. После установки джавы можно начать нашу работу с ядром.

1. Запустите ядро используя джаву. На Windows делается двойным кликом, а вот на Linux командой java -jar spigot-1.12.2.jar когда вы находитесь в директории файла.
2. После запуска ядра выключите машину на винде закрыв окно, или на Linux прожав комбинацию Ctrl + C. Сейчас нужно открыть eula.txt файл и изменить значение в нём на true.
3. Теперь заново запускаем ядро, и ждём загрузки сервера.

Супер, наш сервер работает. Почти работает. Нам нужно изменить стандартную конфигурацию в файле server.properties. Это текстовый файл, его нужно открывать простым блокнотом или любым другим удобным текстовым редактором. Удобен Notepad++, но сойдёт даже системный блокнот.

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

 

 

Параметр
Значения
По умолчанию
Описание
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-blocktrue / false
false
Позволяет использовать командный блок. Эта опция не генерируется при первой загрузке, а появляется при первой попытке использования командного блока.
enable-jmx-monitoring
true / false
false
Позволяет включить MBean (функция в Java, позволяющая классам предоставлять часть своих данных извне) с объектом net.minecraft.server:type=Server и двумя атрибутамиaverageTickTime и tickTimes, которые выводят затраченное время на обработку 1 тика на сервере в секундах (связано с термином 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)


If you have found a spelling error, please, notify us by selecting that text and pressing Ctrl+Enter.

0 Comments

Submit a Comment

Spelling error report

The following text will be sent to our editors: