KawaMood's Waystones - путевые камни для телепортации
Датапак KawaMood's Waystones добавляет в Майнкрафт крафтабельные путевые камни для быстрой телепортации между точками интереса. Работает в одиночной игре и на серверах, есть гибкие настройки видимости, защиты и стоимости телепорта.
Если вы играли с модом Waystones от BlayTheNinth, то сразу поймёте идею: крафтишь камень, ставишь на базе, и дальше мгновенно прыгаешь между всеми своими точками в мире. KawaMood's Waystones - это датапак, который повторяет эту механику без единого мода. Работает и в одиночной игре, и на сервере, причём игрокам даже не нужно ничего ставить себе на клиент. Скачайте датапак KawaMood's Waystones, закиньте в папку datapacks вашего мира - и лишние часовые пробежки по карте останутся в прошлом.
Телепортация работает в любом измерении, включая кастомные из других датапаков. Плюс при прыжке вы забираете с собой транспорт (лодку, лошадь) и мобов на поводке, что делает камни ещё и удобным способом перевозки живности между базами. По вайбу это классическая механика быстрого перемещения из RPG вроде Skyrim или The Witcher - нашёл точку, открыл, путешествуй.
Чем датапак отличается от мода Waystones
Главное отличие - камни не генерируются естественно в мире. В оригинальном моде они спавнятся в деревнях и случайных структурах, тут же каждый камень нужно скрафтить самому. С одной стороны это честнее для выживания, с другой - даёт админу сервера полный контроль над экономикой телепортов. Зато датапак получает все плюсы ванильного формата: не нужны Fabric или Forge, ничего не сломается при обновлении версии Minecraft так драматично, как с модами, и работает на любом Paper/Spigot сервере.
Если хотите поиграть с друзьями онлайн, датапак отлично ставится на BungeeHost (https://bungee.host) - арендовать сервер Майнкрафт там можно за пару минут, и установка датапаков проходит без танцев с бубном. Для кооперативного выживания с друзьями связка "свой сервер + вейстоуны" - по факту маст-хэв: никто не будет полчаса добираться до общей фермы.
Как скрафтить и использовать путевой камень
Рецепт крафта одинаковый для всех вариантов, меняются только базовые блоки:
- 1x Магнетит (Lodestone)
- 2x Осколка аметиста
- 1x Око Эндера
- и 3x базовых блока
Базовый блок определяет внешний вид камня. Вариантов десять, под любой стиль постройки:
- Андезит - андезитовый камень
- Песчаник - песчаный камень
- Незер-кирпичи - незерский камень
- Замшелые каменные кирпичи - замшелый камень
- Глубинносланцевая брусчатка - сланцевый камень
- Медный блок - медный камень
- Призмариновые кирпичи - призмариновый камень
- Туф - туфовый камень
- Красный песчаник - красный песчаный камень
- Кварцевый блок - кварцевый камень
Перед установкой камня очень советую переименовать его на наковальне. Имя попадёт в общий список телепортов, и через месяц игры вы скажете себе спасибо, когда вместо "Waystone #14" увидите нормальные подписи вроде "База", "Ферма железа" или "Портал в Энд".
Иконка камня в списке зависит от блока, на который вы его поставили. Фишка в том, что иконки учитывают NBT-данные - поставьте камень на кастомную голову игрока, и эта голова станет иконкой в меню. Удобно делать визуальные метки: голова крипера для фермы пороха, голова свиньи для хлева и т.д.
Клик ПКМ по верхней части камня открывает интерфейс. На первых двух строках - список доступных вам камней, в нижней - панель инструментов для настройки атрибутов и перелистывания страниц. ЛКМ по камню из списка - и вы уже на месте.
Атрибуты путевых камней
В панели инструментов интерфейса есть три кнопки посередине. Они доступны владельцу камня и менеджерам - остальные игроки менять настройки чужого камня не смогут. Если камней много, по углам появятся кнопки пагинации.
Видимость
Три режима на выбор:
- Discoverable (открываемый) - другие игроки не увидят камень в списке, пока сами до него не доберутся и не кликнут хотя бы раз. Классика жанра, как в том же Скайриме.
- Private (приватный) - камень видите только вы, менеджеры и игроки из списка "Shared With".
- Public (публичный) - виден абсолютно всем игрокам сервера.
Защита
По умолчанию защита выключена: камень может сломать кто угодно, включая взрывы криперов и ТНТ. Если включить, снять камень смогут только владелец и менеджеры. Для публичных камней на спавне сервера - включать обязательно.
Shared With - список доступа
Третья кнопка открывает список игроков, с которыми вы делитесь приватным камнем. Работает это через книгу с пером: пишете ники друзей и кладёте книгу в слот. Есть важный нюанс - из-за технических ограничений игры на каждой странице книги должен быть ровно один ник. Зато игроков можно добавить сколько угодно.
Внимательно с регистром букв: "kawamood" и "KawaMood" - разные ники. И проверяйте, чтобы в конце или начале страницы не затесались лишние пробелы или переносы строк - это частая причина "почему друг не видит мой камень". Список можно в любой момент отредактировать или удалить, кликнув по слоту ещё раз.
Роль менеджера
Менеджер обходит почти все ограничения механики и настроек датапака: видит и редактирует любые камни, включая чужие приватные. Роль выдаётся и снимается командами:
/tag <ник> add pk.waystones.manager
/tag <ник> remove pk.waystones.manager
Пример - выдать роль менеджера игроку Bob:
/tag Bob add pk.waystones.manager
Настройки датапака
Всё настраивается через команды /function, конфиг-файлов нет. Ниже разбор каждой опции.
Расход опыта на телепортацию
Если включить, игрокам придётся тратить уровни опыта на перемещение. Стоимость бывает фиксированной или рассчитывается по расстоянию между камнями:
/function pk_waystones:settings/xp_consumption/set {value:<число>, mode:<режим>}
Параметры:
- mode - "fixed", "manhattan" или "euclidean". Два последних - способы считать дистанцию.
- "manhattan" считает по сетке мира: камень на координатах 0, 64, 0 и камень на 1000, 64, 1000 будут разделены 2000 блоками.
- "euclidean" - дистанция напрямик, по вектору. В том же примере получится примерно 1414 блоков.
- value зависит от режима.
- С "fixed" - просто количество уровней за любой телепорт.
- С "euclidean" или "manhattan" - за сколько блоков пути снимать 1 уровень. Например, камни в 5000 блоках друг от друга при значении 1000 обойдутся в 5 уровней.
- Значение 0 или меньше отключает настройку.
Пример - телепорт всегда стоит 5 уровней:
/function pk_waystones:settings/xp_consumption/set {mode:"fixed", value:5}
Пример - 1 уровень за 1000 блоков, расчёт по евклидовой дистанции:
/function pk_waystones:settings/xp_consumption/set {mode:"euclidean", value:1000}
Полное отключение:
/function pk_waystones:settings/xp_consumption/set {mode:"euclidean", value:0}
Узнать текущие значения:
/function pk_waystones:settings/xp_consumption/get
Практический совет: фиксированная стоимость в 1-3 уровня - золотая середина для сервера выживания. Телепорты перестают быть бесплатным читом, но и не бесят игроков.
Чёрный список измерений
Настройка управляет измерениями в чёрном списке. Работает и с ванильными, и с кастомными измерениями из датапаков или мирами Multiverse. В заблокированном измерении ставить камни могут только менеджеры.
/function pk_waystones:settings/blacklist_dimensions/add {dimension:<id_измерения>}
/function pk_waystones:settings/blacklist_dimensions/remove {dimension:<id_измерения>}
/function pk_waystones:settings/blacklist_dimensions/list
Пример - запретить установку камней в Незере:
/function pk_waystones:settings/blacklist_dimensions/add {dimension:"minecraft:the_nether"}
Подсказка: id текущего измерения видно на экране отладки (F3), слева под координатами.
Плавающие таблички над камнями
Если включить, над камнями появятся парящие надписи с именами - ориентироваться на базе становится заметно проще.
/function pk_waystones:settings/display_nameplates/true
/function pk_waystones:settings/display_nameplates/false
/function pk_waystones:settings/display_nameplates/get
Игнорировать монстров рядом
Если выключить, игроки не смогут телепортироваться, пока рядом с камнем бродят враждебные мобы. Логика та же, что у кроватей. По умолчанию настройка включена, то есть монстры игнорируются.
/function pk_waystones:settings/ignore_monsters/true
/function pk_waystones:settings/ignore_monsters/false
/function pk_waystones:settings/ignore_monsters/get
Для хардкорных серверов выключение этой опции добавляет перца - сбежать с фермы опыта посреди ночи уже не выйдет.
Классические текстуры
Если включить, камни будут использовать обычные текстуры блоков вместо кастомных. Полезно, если на сервере играют с ресурспаками высокого разрешения, где авторские текстуры датапака могут выбиваться из стиля.
/function pk_waystones:settings/legacy_textures/true
/function pk_waystones:settings/legacy_textures/false
/function pk_waystones:settings/legacy_textures/get
Видимость по умолчанию
Меняет режим видимости, который получает камень при установке. Изначально это "discoverable". Доступные значения: "discoverable", "private", "public":
/function pk_waystones:settings/default_visibility/set {visibility:<режим>}
Пример - все новые камни приватные по умолчанию:
/function pk_waystones:settings/default_visibility/set {visibility:"private"}
Узнать текущее значение:
/pk_waystones:settings/default_visibility/get
Защита по умолчанию
Аналогично - меняет стандартное состояние защиты. Изначально выключена.
Включить защиту по умолчанию:
/function pk_waystones:settings/default_protection/set {protection:"enabled"}
Выключить обратно:
/function pk_waystones:settings/default_protection/set {protection:"disabled"}
Узнать текущее состояние:
/pk_waystones:settings/default_protection/get
Лимит камней на игрока и на сервер
Можно ограничить, сколько камней максимум принадлежит одному игроку. Лимит индивидуальный: поставите 5 - каждый игрок сможет иметь по 5 камней.
/function pk_waystones:settings/limit_per_player/set {count:<число>}
Пример - максимум 5 камней на игрока:
/function pk_waystones:settings/limit_per_player/set {count:5}
Значение -1 или меньше снимает лимит:
/function pk_waystones:settings/limit_per_player/set {count:-1}
Узнать текущий лимит:
/function pk_waystones:settings/limit_per_player/get
Отдельно есть глобальный лимит на весь сервер - та же логика, но считаются все камни суммарно:
/function pk_waystones:settings/limit_per_server/set {count:<число>}
/function pk_waystones:settings/limit_per_server/set -1
/function pk_waystones:settings/limit_per_server/get
Оба лимита комбинируются: например, 3 камня на игрока и 100 на весь сервер. Для слабого железа и многолюдных серверов это ещё и защита от лишних энтити в прогруженных чанках.
Скрыть координаты в интерфейсе
Если включить, координаты камней в меню не увидит никто, кроме менеджеров. Хорошо заходит на серверах, где админы не хотят палить локации баз через GUI телепортов.
/function pk_waystones:settings/hide_coordinates/true
/function pk_waystones:settings/hide_coordinates/false
/function pk_waystones:settings/hide_coordinates/get
Есть и команда для обычных игроков - она скрывает координаты только для их персонажа. О ней ниже в разделе "Другие команды".
Публичные камни первыми в списке
Если включить, публичные камни будут показываться в начале списка. По умолчанию они идут после открытых и приватных.
/function pk_waystones:settings/list_public_waystones_first/true
/function pk_waystones:settings/list_public_waystones_first/false
/function pk_waystones:settings/list_public_waystones_first/get
Задержка дропа (совместимость с WorldGuard и плагинами защиты)
Настройка задаёт минимальную задержку, после которой сломанный камень может дропнуться как предмет. Нужна, если на сервере стоит плагин защиты территорий.
Проблема вот в чём: WorldGuard запоминает и возвращает последний блок, который игрок попытался поставить. Но камень успевает существовать один тик и дропнуться, пока плагин его отменяет - получается дюп. Задержка в 2 тика это решает. По умолчанию задержки нет.
/function pk_waystones:settings/lootable_delay/set {delay:<тики>}
Пример - задержка в 2 тика:
/function pk_waystones:settings/lootable_delay/set {delay:2}
Узнать текущее значение:
/function pk_waystones:settings/lootable_delay/get
Очистка предметов из GUI каждый тик (защита от дюпов на модифицированных серверах)
Paper и похожие ядра иногда странно работают с контейнерами. Чтобы игроки не могли вытащить предметы из интерфейса камня и задюпать их, включите тиковую очистку:
/function pk_waystones:settings/tick_clear_gui_items/true
/function pk_waystones:settings/tick_clear_gui_items/false
/function pk_waystones:settings/tick_clear_gui_items/get
Если запускаете сервер Майнкрафт на Paper - просто включите эту опцию сразу и не думайте о ней больше.
Задержка открытия контейнера (совместимость с Paper)
Минимальная задержка перед срабатыванием события "открытие" камня. Введена как обход бага #13839 на Paper начиная с версии 26.1.2 build #17. На Paper-серверах датапак сам выставит значение 2 тика.
/function pk_waystones:settings/open_container_delay/set {value:<тики>}
Пример - задержка в 2 тика:
/function pk_waystones:settings/open_container_delay/set {value:2}
Узнать текущее значение:
/function pk_waystones:settings/open_container_delay/get
Права: смена атрибута "Видимость"
Позволяет запретить игрокам использовать конкретные режимы видимости. Менеджеры от этих ограничений не страдают. По умолчанию игрокам доступны все режимы.
Разрешить, запретить или проверить публичную видимость:
/function pk_waystones:settings/permissions/change/visibility/public/true
/function pk_waystones:settings/permissions/change/visibility/public/false
/function pk_waystones:settings/permissions/change/visibility/public/get
То же самое для приватной:
/function pk_waystones:settings/permissions/change/visibility/private/true
/function pk_waystones:settings/permissions/change/visibility/private/false
/function pk_waystones:settings/permissions/change/visibility/private/get
И для режима discover:
/function pk_waystones:settings/permissions/change/visibility/discover/true
/function pk_waystones:settings/permissions/change/visibility/discover/false
/function pk_waystones:settings/permissions/change/visibility/discover/get
Или управлять всеми сразу одной командой:
/function pk_waystones:settings/permissions/change/visibility/all/true
/function pk_waystones:settings/permissions/change/visibility/all/false
/function pk_waystones:settings/permissions/change/visibility/all/get
Права: смена атрибута "Защита"
Запрещает игрокам менять защиту собственных камней. По умолчанию разрешено.
/function pk_waystones:settings/permissions/change/protection/true
/function pk_waystones:settings/permissions/change/protection/false
/function pk_waystones:settings/permissions/change/protection/get
Права: смена атрибута "Shared With"
Запрещает игрокам редактировать список доступа своих камней. По умолчанию разрешено.
/function pk_waystones:settings/permissions/change/shared_with/true
/function pk_waystones:settings/permissions/change/shared_with/false
/function pk_waystones:settings/permissions/change/shared_with/get
Права: телепорт между измерениями
Если выключить, игроки будут видеть в меню только камни из своего текущего измерения. Полезно на серверах с Multiverse, где прыжки между мирами нежелательны. По умолчанию включено - телепортируйся куда хочешь.
/function pk_waystones:settings/permissions/tp/in_other_dimensions/true
/function pk_waystones:settings/permissions/tp/in_other_dimensions/false
/function pk_waystones:settings/permissions/tp/in_other_dimensions/get
Права: телепорт в бою
Если выключить, игрок не сможет телепортироваться в течение 15 секунд после получения урона от живого существа. На PvP-серверах это прямо обязательная опция - иначе любой замес будет заканчиваться мгновенным сливом через камень. По умолчанию включено, то есть телепорт доступен всегда.
/function pk_waystones:settings/permissions/tp/in_fight/true
/function pk_waystones:settings/permissions/tp/in_fight/false
/function pk_waystones:settings/permissions/tp/in_fight/get
Другие команды
Несколько полезных функций, часть из которых доступна и обычным игрокам.
Выдать себе путевой камень
Если у вас есть права оператора или включены читы в одиночном мире:
/function pk_waystones:cmd/give/waystone/andesite
/function pk_waystones:cmd/give/waystone/sand
/function pk_waystones:cmd/give/waystone/deepslate
/function pk_waystones:cmd/give/waystone/nether
/function pk_waystones:cmd/give/waystone/mossy
Установить камень командой
Позволяет напрямую разместить камень с заданным набором атрибутов. Это находка для разработчиков датапаков - например, можно встроить генерацию вейстоунов в собственные структуры, как в оригинальном моде.
Функция принимает параметр waystone с данными камня. Все свойства можно опустить - они получат значения по умолчанию. Но есть два важных момента:
- Если не указать
owner, камень будет "незанятым". Первый игрок, который им воспользуется, автоматически станет владельцем. Удобно для камней на спавне. - Координаты берутся из контекста выполнения команды. Но: если не указать
location>dimension, камень зарегистрируется в обычном мире. Динамически определить кастомное измерение, когда команду выполняет не игрок, игра не даёт.
Команда должна выполняться в прогруженной области. Для точной установки можно заранее форслоадить чанк и выгрузить его после.
Примеры:
Камень с настройками по умолчанию в текущей позиции:
/function pk_waystones:cmd/setblock/waystone {waystone:{}}
Незанятый сланцевый камень в текущей позиции:
/function pk_waystones:cmd/setblock/waystone {waystone:{variant:"deepslate"}}
Незанятый, защищённый, публичный камень на координатах 0 80 0 в Энде:
/execute in minecraft:the_end positioned 0 80 0 run forceload add ~ ~
/execute in minecraft:the_end positioned 0 80 0 run function pk_waystones:cmd/setblock/waystone {waystone:{location:{dimension:"minecraft:the_end"},protected:true,visibility:"public"}}
/execute in minecraft:the_end positioned 0 80 0 run forceload remove ~ ~
Структура данных параметра waystone:
waystone (compound)
├─ id (int): id камня
├─ variant (string): вариант (regular, sand, deepslate, nether...)
├─ name (text component): имя камня
├─ owner (массив из 4 int): UUID владельца
├─ location (compound): расположение камня
│ └─ dimension (string): id измерения, по умолчанию "minecraft:overworld"
├─ discovered_by (array): список игроков, взаимодействовавших с камнем
│ └─ (compound)
│ └─ uuid (массив из 4 int): UUID игрока
├─ shared_with (array): игроки, с которыми поделились камнем
│ └─ (compound)
│ ├─ uuid (массив из 4 int): UUID игрока
│ └─ name (string): имя, если игрока ещё нет в базе
├─ protected (boolean): защищён ли камень (true/false)
├─ visibility (string): "public", "private" или "discover"
└─ render_item (compound):
└─ id (string): id предмета-иконки камня в списке
└─ tag (compound) [1.20.4 и ниже]: дополнительные теги предмета
└─ components (compound) [1.20.5 и выше]: компоненты предмета
Стоит ли ставить
По факту, это одна из самых проработанных ванильных реализаций вейстоунов на датапаках. Видно, что автор продумал болячки реальных серверов: защита от дюпов на Paper, совместимость с WorldGuard, запрет телепорта в бою, лимиты на игрока. Обычно в датапаках такого уровня тонкой настройки просто нет.
Для одиночной игры датапак тоже отлично заходит - крафт через магнетит и Око Эндера выглядит честной ценой за удобство, а режим discoverable сохраняет азарт исследования. На сервер выживания с друзьями - вообще без вопросов: запустите сервер Майнкрафт на BungeeHost, закиньте датапак, выдайте паре доверенных людей роль менеджера, и транспортный вопрос закрыт навсегда. Скачать KawaMood's Waystones можно прямо на этой странице.
Единственное, к чему стоит привыкнуть - все настройки делаются командами, конфиг-файла нет. Зато всё меняется на лету, без перезагрузки мира.
Скриншоты KawaMood's Waystones - путевые камни для телепортации
Часто задаваемые вопросы
Совместимость
Зависимости
Создатели
Детали
Версии датапака KawaMood's Waystones - путевые камни для телепортации
Доступно 52 версий. Сначала показаны самые популярные и самые свежие.