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

WhatsUp

Активный

Установок

10

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

2 года назад

Версии

1.19.4 — 1.20.1
Сервер
Forge
Quilt
Библиотеки
Управление
Утилиты

WhatsUp

Для работы версии под Quilt потребуются: QSL и GroovyDuvet

Версия для Forge требует наличия: GML

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

Мод вводит два основных понятия: слушатели (listeners) и предикаты (predicates). Слушатели определяются в файлах по пути data/<namespace>/whatsup/listeners/<name>.json и имеют следующую структуру:

  • endpoint - URL-адрес, который будет опрашиваться слушателем
  • frequency - целое число, определяющее интервал в секундах между запросами к эндпоинту
  • actions - перечень действий, выполняемых на основе ответа от эндпоинта. Каждое действие содержит:
    • predicate - идентификатор предиката для проверки результата запроса
    • function - идентификатор функции, которая выполнится при успешной проверке предиката
    • levels - (необязательный параметр; по умолчанию ["overworld"]) список измерений, в которых будет запущена указанная функция
    • then - (необязательный) перечень других слушателей для последовательного выполнения
    • storage - (необязательный) сопоставление имен свойств с хранилищами данных команд, доступными для предиката

Предикаты размещаются в файлах data/<namespace>/whatsup/predicates/<name>.groovy и представляют собой скрипты на языке Groovy. В среде выполнения Groovy предикаты получают доступ к переменной context, содержащей следующие свойства:

  • text - необработанный текст ответа
  • json - Map с данными ответа в формате JSON, либо null, если ответ не является JSON-объектом
  • storage - содержит свойства для каждого хранилища данных, указанного в действии; хранилища можно запрашивать и изменять

Пример рабочего датапака доступен в релизах на GitHub.

Мод также предоставляет команду /whatsup для удобного тестирования датапаков - она позволяет немедленно запустить любой слушатель.

Участники проекта
lukebemish

lukebemish

Разработчик

Создан: 18 июн 2023

ID: 14731