В этой статье я опишу работу с плагином Dynmap и помогу самостоятельно настроить его для вашего Minecraft сервера. С этим плагином можно быстро и легко создать 3D карту вашего сервера, просматривать ее в браузере и выставить ее на всеобщее обозрение.
Для работы с этим плагином вам прежде всего понадобится установить сам сервер Bukkit. Подойдет и любой другой сервер – Spigot или Paper. Статья по установке серверов на Java (ПК) и для мобильных устройств (Bedrock Edition) есть у меня на сайте.
Установка
Установка данного плагина проста до безобразия. Достаточно зайти на страницу разработчика плагина и скачать оттуда один файл в формате .jar для сервера.
После этого просто закинуть данный файл в папку вашего сервера в директорию /plugins и запустить ваш сервер.
После успешной инициализации плагина Dynmap можно приступать к следующему этапу – Настройке.
Настройка Dynmap
По умолчанию плагин автоматически с запуском сервера инициализирует веб-сервер, на который уже можно зайти через любой браузер. Открыть эту карту можно по этому адресу – http://localhost:8123
Как правило, этот адрес с вашей карты сервера привязан к вашему IP-адресу (локальному или онлайн) и порту. Например: localhost:8123
или 192.168.0.100:8123
(ваш адрес карты в локальной сети), а чтобы можно было зайти на вашу карту через интернет из любой точки земли, то для этого необходимо узнать динамический или статический IPv4 адрес (в зависимости от провайдера) при помощи сторонних сайтов типа myIp.com, whatismyipaddress.com или в личном кабинете роутера (WAN IP).
Чтобы страница карты успешно открывалась, вам возможно также понадобится открыть порт TCP 8123 (по умол.) в настройках роутера.
С адресом карты разобрались. Не пугайтесь если вы открыли адрес карты вашего сервера и вместо вашего мира вы видите просто черное окно. Для отрисовки нам понадобятся некоторые команды, которые перечислены ниже. Использовать их можно как в командной строке, так и в самой игре (с правами администратора)
dynmap fullrender <имя мира> - Полностью отрисовывает карту мира и сохраняет ее на диск. dynmap radiusrender <имя мира> <X><Z><число чанков> - Отрисовывает карту в радиусе чанков по координатам X, Z. Координаты можно узнать прямо на странице карты в окне location. dynmap cancelrender - отменить текущую отрисовку карты dynmap reload - перезагрузка плагина dynmap hide <никнейм игрока> - скрыть отображение игрока на карте dmarker add <имя> icon: <ID иконки> - добавить маркер на карту в местоположении игрока dmarker list - список всех размещенных маркеров на карте dmarker delete id:<ID маркера> - удалить маркер с карты
Командой /dynmap fullrender world
(стандартное имя карты) вы создаете карту вашего сервера и всех связанных миров (Ад, Ендер мир и прочие). Эта команда так же полностью (по умолчанию) отрисовывает карту в 3D наклонной плоскости и показывает подземные уровни.
Если по какой-то причине вы видите не отрисованный черный куб на вашей карте, можно использовать команду (можно использовать через консоль или внутри игры) /dynmap radiusrender имя_мира X Z число_чанков
. При помощи нее, вы указываете координаты в мире и число блоков, которые следует заново отрисовать и обновить изображение мира.
Детальное руководство по настройке Dynmap можно найти на странице разработчика или же на русскоязычной википедии.
FAQ / Решение проблем
Самые распространенные вопросы по этому плагину перечислены ниже:
Как изменить качество прорисовки карты?
- В файле configuration.txt, который лежит в директории /plugins/dynmap найти первую строчку – deftemplatesuffix: и после двоеточия написать hires (для высокого качества); vlowres (для самого низкого качества).
Работает ли Dynmap с другими серверами (Spigot, Bukkit, Paper)?
- Да. Плагин совместим со всеми версиями серверов, но для этого понадобится найти подходящую версию .jar файла для полной совместимости.
Как отключить рендер 3D (Surface) поверхности карты?
- Для начала нам понадобится открыть файл configuration.txt и в начале найти строку deftemplatesuffix: lowres (по умолчанию) которая отвечает за тип рендера карты. В зависимости от выбранного значения – lowres, vlowres, hires переходим в папку /dynmap/templates/ и выбираем (для обычного мира) соответствующий файл normal-lowres.txt.
- Внутри, в конце этого файла находим две секции кода предназначенные для рендера пещер (caves) и 3D поверхности (surface). Пример указан ниже.
- class: org.dynmap.hdmap.HDMap
name: surface
title: "Surface"
prefix: t
perspective: iso_SE_60_lowres
shader: stdtexture
lighting: shadows
# Adjust extra zoom in levels - default is 2
mapzoomin: 2
- class: org.dynmap.hdmap.HDMap
name: cave
title: "Cave"
prefix: ct
perspective: iso_SE_60_lowres
shader: cave
lighting: default
# Adjust extra zoom in levels - default is 2
mapzoomin: 2
- Удаляем эти строчки кода (которые показаны выше) оставляя только один -class и сохраняем документ. Таким же способом можно удалить рендер поверхностей для the_end-lowres.txt; nether-lowres.txt и других дополнительных карт.
- После этого, так же рекомендуется в папке /dynmap/web/tiles/ очистить все данные существующих карт world, world_nether и др. (в зависимости от имени карты)
После выполненных действий, ваш плагин больше не будет рендерить карты поверхности (Surface) и вы сможете по желанию сделать полный рендер карты с командой /dynmap fullrender <название_мира>
Где изменить порт веб-сервера?
- В файле configuration.txt в строчке webserver-port:. Не рекомендуется указывать туда порт самой игры (25565). Из-за этого могут возникнуть проблемы подключения.
Как переименовать название мира на карте?
- Откройте файл конфигурации, который находится в /dynmap/world.txt и в категории ‘worlds:’ найдите строку # -name: world и # title: “World”. Для активации строки удалите символ “#”, а в кавычках укажите свое название для карты. Это так же можно применить к дополнительным картам, которые есть на сервере.
Как переместить центрирование веб-карты по умолчанию (от спавна)?
- Используйте команду
/dmap worldset [название мира] x y z
. Эту команду можно использовать как в самой консоли сервера, так и в игре. Узнать координаты можно в самой веб-карте или игре по нажатию клавиши F3.
Как зайти на свою карту через браузер?
- Для личного пользования будет достаточно адреса
localhost:8123
. Для того чтобы другие игроки могли пользоваться вашей картой, вам понадобится узнать свой сетевой адрес (для локальной сети или интернета отдельно). Узнать этот IP можно в настройках роутера, командной строке (ipconfig) или стороннем сайте myip.com
Как изменить IP адрес веб-сервера?
- В файле configuration.txt в строчке webserver-bindaddress: 0.0.0.0. Рекомендуется менять только если у вас статический адрес от провайдера или если вы используете виртуальную сеть Hamachi / Radmin
Как выключить/включить чат на странице карты?
- В файле configuration.txt изменить строку allowwebchat: true (true – вкл; false – выкл).
Как можно отключить отображение мира на карте?
- Любую карту на сервере можно скрыть этой командой:
/dmap worldset <название_мира> enabled:false
Как добавить маркер на интерактивную карту?
- При помощи команды в игре:
/dmarker add "Имя" icon:#
. После # указывается иконка для маркера. Названия всех иконок можно найти в папке /plugins/dynmap/web/tiles/_markers_ - Для удаления маркера используйте команду:
/dmarker delete "Имя"
- Список добавленных маркеров можно узнать командой:
/dmarker list
Можно ли поменять иконку (favicon) для веб-карты?
- Изменить иконку при помощи плагина нельзя. Но можно сделать это вручную заменив стандартный favicon из папки plugins/dynmap/web/images/dynmap.ico на любую другую картинку в формате .ico с разрешением 16×16.
Как узнать, сколько осталось времени на рендер всей карты?
- В консоли/чате не пишет оставшееся время или % до конца рендера, но вы можете зайти на страницу веб-карты в браузере и примерно оценить сколько еще чанков осталось отобразить для вашей карты. Учтите, что карта сначала отображает увеличенные чанки и затем к общему плану от центра спавна и до самого края исследованного мира.
Как очистить рендер карты?
- Можно воспользоваться командой
/dynmap fullrender
для обновления чанков на веб-карте, либо полностью удалить папку /plugins/dynmap/web/tiles/Название_мира в которой находятся все изображения для конкретного мира. После этого потребуется повторно запустить рендер карты.
Как обновить плагин до новой версии?
- Новую версию плагина можно найти на сайтах Bukkit, Spigot либо Paper. Перед этим обязательно сверяйте версию сервера и поддерживаемую версию плагина.
В заключении
Данная статья не охватывает всевозможный функционал этого плагина, а лишь рассказывает о его ключевых особенностях. Подробное описание всех настроек рендеринга карты, кастомных текстур паков, маркеров, систему регистрации и интеграций с другими плагинами можно найти в официальном руководстве автора.