Скачать World Primer — Minecraft Моды — MetaMods

World Primer

Активный

Установок

1

Последнее обновление

1 год назад

Версии

1.7.10 — 1.12.2
Сервер
Forge
Управление
Утилиты

Описание мода World Primer

Добавление автоматических сценариев в Minecraft

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

Настройка системы срабатывания

Все параметры настраиваются через внутриигровое меню конфигурации.

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

Важное замечание: Команды в файле конфигурации не должны содержать символ слеша в начале! Слеш используется только в чате или консоли сервера для обозначения команд. Исключением являются команды World Edit, которые обычно используют двойной слеш в чате - в конфигурации для них указывается одинарный слеш.

Настройки команд для различных событий

  • dimensionLoadingCommands - выполняются каждый раз при загрузке измерения
  • earlyWorldCreationCommands - выполняются при первоначальном создании мира, до генерации и загрузки чанков спавна
  • earlyWorldLoadingCommands - выполняются при каждой загрузке мира (при запуске сервера), до загрузки любых миров
  • playerChangedDimensionEnterCommands - выполняются при переходе игрока в другое измерение (после самого перехода)
  • playerChangedDimensionLeaveCommands - выполняются при выходе игрока из измерения при смене измерений (Важно: выполняются уже после перехода в новое измерение)
  • playerDeathCommands - выполняются при смерти игрока
  • playerJoinCommands - выполняются при подключении игрока к серверу
  • playerQuitCommands - выполняются при отключении игрока от сервера
  • playerRespawnCommands - выполняются при воскрешении игрока после смерти
  • postWorldCreationCommands - выполняются при первоначальном создании мира, после генерации и загрузки чанков спавна
  • postWorldLoadingCommands - выполняются при каждой загрузке мира (при запуске сервера), после загрузки чанков спавна Основного мира

Периодические команды

  • timedCommands - выполняются на основе игрового времени. Формат: worldprimer-timed-command <время> <измерение> <команда>, где <время> - общее время мира в тиках
  • Время можно предварить символом % для периодического выполнения с указанным интервалом
  • С периодическим временем можно использовать смещения:
worldprimer-timed-command %1200-80 0 say Что-то произойдет через 4 секунды!
worldprimer-timed-command %1200 0 say Что-то происходит сейчас!
worldprimer-timed-command %1200+80 0 say Что-то произошло 4 секунды назад!

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

Дополнительные настройки

  • enableDebugLogging - выводит сообщения и информацию о выполнении команд для отслеживания событий
  • enableDimensionLoadTracking / enableDataTracking - включает отслеживание количества загрузок измерений, запусков сервера, подключений игроков и т.д. Необходимо для работы префиксов, основанных на подсчете

Рекомендуется использовать опцию enableDebugLogging при тестировании настроек!

Префиксы команд для фильтрации

worldprimer-dim-command

Позволяет выполнять команды загрузки измерений только при загрузке определенного измерения:

worldprimer-dim-command <id измерения> <команда>

Например:

worldprimer-dim-command 1 say Измерение Энда загружено!

Если использовать просто команду без префикса в dimensionLoadingCommands, она будет выполняться при загрузке любого измерения.

worldprimer-dim-command-nth

Запускает команду при определенной (или кратной) числе загрузок измерения. Требует включения опции enableDimensionLoadTracking.

Синтаксис (версия 0.6.0 и новее):

worldprimer-dim-command-nth <число загрузок> <id измерения> <команда>

Примеры:

worldprimer-dim-command-nth 1 -1 say Ад впервые загружен!
worldprimer-dim-command-nth 6 1 say Загружена 6-я загрузка Энда!
worldprimer-dim-command-nth %5 1 say Загружено число загрузок Энда, кратное 5!

Внимание: Порядок аргументов для этого префикса изменился между версиями мода!

worldprimer-tracked-command-nth

Ограничивает выполнение команд для игроков по количеству событий. Например в playerRespawnCommands:

worldprimer-tracked-command-nth 3 say Игрок {PLAYER_NAME} воскрес в третий раз в точке {PLAYER_X}, {PLAYER_Y}, {PLAYER_Z}
worldprimer-tracked-command-nth %5 say Игрок {PLAYER_NAME} воскрес число раз, кратное 5

Подстановки строк в командах

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

Доступные подстановки для любых команд:

  • {DIMENSION} - ID измерения
  • {RAND:min,max} - случайные числа, например {RAND:5,15} или {RAND:1.2,3.9}
  • {SPAWN_X}, {SPAWN_Y}, {SPAWN_Z} - координаты точки спавна измерения
  • {SPAWN_POINT_X}, ... - координаты непосредственно точки спавна (отличается для Энда)
  • {TIME_TICK} - общее время мира в тиках
  • {TIME_TICK_DAY} - время суток в тиках
  • {TIME_Y} - реальный год (4 цифры: 2017)
  • {TIME_M} - реальный месяц (2 цифры: 03)
  • {TIME_D} - реальный день (2 цифры: 04)
  • {TIME_H} - реальный час (2 цифры: 09)
  • {TIME_I} - реальная минута (2 цифры: 05)
  • {TIME_S} - реальная секунда (2 цифры: 07)
  • {TOP_Y:x,z} - Y-координата верхнего блока в указанных координатах, например: {TOP_Y:-37,538}
  • {TOP_Y_RAND:x,z;x-range,z-range} - координаты верхнего блока в случайном месте вокруг заданной точки

Для игрокоспецифичных команд:

  • {PLAYER_NAME} - имя игрока
  • {PLAYER_X}, {PLAYER_Y}, {PLAYER_Z} - текущая позиция игрока
  • {PLAYER_BED_X}, {PLAYER_BED_Y}, {PLAYER_BED_Z} - последняя установленная точка спавна (кровать)
  • {PLAYER_BED_SPAWN_X}, {PLAYER_BED_SPAWN_Y}, {PLAYER_BED_SPAWN_Z} - альтернативная точка спавна с проверкой наличия кровати

Пример использования подстановок

Создание камеры спавна под землей в postWorldCreationCommands:

gameRule spawnRadius 0
setworldspawn {SPAWN_X} 7 {SPAWN_Z}
fill {SPAWN_X}-3 6 {SPAWN_Z}-3 {SPAWN_X}+3 10 {SPAWN_Z}+3 minecraft:cobblestone
fill {SPAWN_X}-2 7 {SPAWN_Z}-2 {SPAWN_X}+2 9 {SPAWN_Z}+2 minecraft:air

Это создаст комнату 5x5x3 из булыжника с воздушной полостью в центре для появления игрока.

Встроенные команды

Команды для работы со схематиками

  • create-structure - сохраняет область в формате .schematic или .nbt
  • place-structure - размещает схематик в мире
  • Файлы сохраняются в config/worldprimer/structures/

Версии добавления:

  • create-structure - 1.12.2-0.6.0-dev.20180502.210326
  • place-structure - 1.12.2-0.6.0-dev.20171010.003436

Подсказка: Автодополнение работает для всего.

/worldprimer create-structure <x1> <y1> <z1> <x2> <y2> <z2> <schematic | vanilla> <название>
/worldprimer place-structure <x> <y> <z> <название> [вращение] [отражение] [центрирование] [функции-данных]

Внутренняя команда загрузки чанков

worldprimer-load-chunks <chunkXMin> <chunkZMin> <chunkXMax> <chunkZMax>

Примечание: Не является зарегистрированной командой, используется только из конфигурационного файла.

Загружает область чанков, чтобы команды типа /fill и /setblock могли работать в них. Чанки сразу же ставятся в очередь на выгрузку.

Пример для создания коробки из бедрока в Енде при первой загрузке:

worldprimer-dim-command-nth 1 1 worldprimer-load-chunks -1 -1 0 0
worldprimer-dim-command-nth 1 1 fill 10 0 10 -10 7 -10 minecraft:bedrock
worldprimer-dim-command-nth 1 1 fill 9 1 9 -9 6 -9 minecraft:air
worldprimer-dim-command-nth 1 1 say Коробка построена!

Команда распределения игроков

/worldprimer spread-player [параметры] <имена_игроков>

Режимы поиска локаций: grid (сетка) и random (случайный).

Параметры:

  • --find-surface=<true | false> - позиционирование по верхнему блоку
  • --grid=<целое> - использование поиска по сетке
  • --max-radius=<целое> - максимальное расстояние от 0,0
  • --min-separation=<целое> - минимальное расстояние до других позиций и игроков
  • --new - генерация новой позиции при повторном выполнении
  • --y=<целое> - фиксированная высота Y
  • --y-offset=<целое> - смещение от поверхности
  • --y-max=<целое> - максимальная координата Y
  • --y-min=<целое> - минимальная координата Y

Пример:

/worldprimer spread-player --find-surface=true --min-separation=1024 --max-radius=10000 --new player_name
Участники проекта
masa

masa

Разработчик

masady

masady

Создан: 29 окт 2023

ID: 11001