BroadcastSystem

BroadcastSystem

A lightweight Hytale plugin that sends configurable automatic and manual chat and title announcements, plus join messages, with legacy & color codes and placeholders.

188.0 загрузок
Обновлён 18 дней назад

Скриншоты

Описание

1.1 будет окончательной версией. Я предпочитаю иметь надежный плагин без ошибок, чем плагин с несколькими методами и ошибками или задержками..

 

Ищете простой способ отображения советов сервера, правил, ссылок Discord или объявлений? Система вещания обеспечивает Две независимые системы автовещания (Чат + Заголовок), плюс сообщения, ручные команды, и Цвета, заполнители и чистая конфигурация JSON.

 

Особенности:

  • Чат-трансляция (многоуровневая поддержка)
  • Титульные передачи (Заголовок события / «большой заголовок» в середине экрана)

Он также включает:

  • Ручное вещание команд
  • Присоединяйтесь к сообщениям (частное сообщение для всех + публичное сообщение для всех)
  • Minecraft-стиль и Цветные коды
  • ✅ Помещики как % игроков % и %joiner%
  • ✅ простой Конфигурация JSON ()config.json)

Особенности

1) Две независимые системы вещания

Каждая система имеет свои настройки:

  • включенный/отключенный
  • интервал в секундах
  • режим перетасовки (случайный) или кругло-робиновый порядок

Вы можете бегать:

  • Чат каждый 120с
  • Название каждого 300с
  • Или полностью отключить.

2) Общий пул объявлений с целевыми показателями на вход

Вы определяете объявления один раз в "объявления" Выберите, куда они идут, используя:

  • "цели": ["ЧАТ"]
  • "цели": [титул]

Каждое объявление может содержать:

  • "чат" Контент (многолинейный блок)
  • "заголовок" содержание
  • "подзаголовок" Содержание (факультативно)

3) Присоединяйтесь к сообщениям (факультативно)

Два выделенных раздела сообщений о присоединении:

  • присоединитьсяОтправлено только вступающему игроку
  • присоединятьсяТрансляция для всех онлайн-игроков

Обе поддержки:

  • Цели чата и/или заголовка
  • многолинейные блоки
  • держатели
  • опциональное отключение сообщения Vanilla join

4) Форматирование текста

Наследие цветовых кодов

Поддерживает Minecraft-подобные коды:

  • Цвета: 0 то и 9, и то &f
  • Форматирование: ил (смелый), и (итальянский), &r (перезагрузка)
  • Работает с обоими и и §

Многолинейные блоки

Для сообщений чата (и присоединиться к чату) вы можете использовать:

"чат": "----nLine 1\nLine 2\n---"

Или просто использовать n Новые линии.

5) Держатели помещений

 

  • % игроков %
    Заменить его на Имя игрока-получателя (игрок, который получает сообщение).
  • %joiner%
    Заменить его на Имя игрока (только для обмена сообщениями).
  • % мирового %
    Заменить его на Текущий мир игрока-получателя (наилучшие усилия: имя/id/uuid в зависимости от наличия API)
  • % игроков_online %
    Заменить его на Количество игроков в настоящее время онлайн.
  • %online % (Алии) % игроков_online %)
    Как и выше, более короткое название.
  • %server_uptime %
    Заменить его на Сервер / плагин Uptime (время после загрузки плагина), отформатированный как:
    12м 05с, 3h 12m 09s, 2d 04h 01m 33s
  • % % % %
    текущий сервер местное время: HH:mm:ss
    Пример: 21:43:10
  • % Дата %
    текущий Местная дата сервера: yyyy-MM-dd
    Пример: 2026-01-15
  • % дата-время %
    текущий Местная дата сервера + время: yyyy-MM-dd HH:mm:ss
    Пример: 2026-01-15 21:43:10
  • % дневной %
    текущий день недели (вверху): Понедельник, Вторники т.д.
  • % таймзон %
    текущий серверная система timezone id (пример: Европа/Париж)

Случайное целое число

  • %random_int:min:max%
    генерирует a случайное целое число между мин. и макс (включительно).
    Примеры:
  • %random_int:1:100% ? 42
  • %random_int:-5:5% ? -1
  • %random_int:10:10% ? 1010

Случайный выбор

  • %random_choice: a | b | c %
    Случайный выбор Один вариант из одного ! Разделенный список.
    Примеры:
  • %random_choice: Присоединяйся к раздору / Join Discord Пользование/помощь%
  • %random_choice: Привет. Здравствуйте, %

Поддержка заполнителей внутри опцийНапример:

  • %random_choice:Online: %online% | World: %world% | Time: %time%%

командование

Главное командование: /hb

/bs скачать

Перезарядка config.json и перезапускает расписание вещания.

/bs статус

Показывает текущий статус:

  • Включены ли системы чата/титула
  • интервалы
  • размеры бассейна
  • Путь конфигурирования файлов

/b/s Теперь [chat |title |оба]

Мгновенно отправляет трансляцию из настроенного пула.

Примеры:

  • /bs сейчас
  • /bs теперь чат
  • /bs название

/bs start [chat |title | оба]

Начинает вещание.

Примеры:

  • /bs начало
  • /bs начать чат

/bs stop [chat |title |both]

Прекратить вещание.

Примеры:

  • /bs остановка
  • Заголовок остановки

/bs send chat <сообщение...>

Отправляет объявление в чат всем игрокам.

Пример:

  • /bs send chat &aHello world!

/bs send title <message...>

Отправляет ручное объявление заголовка всем игрокам.
Поддержка n Чтобы заставить многострочный титул.

Пример:

  • /bs send title &eServer Restart\n&7 За 5 минут

Разрешения

Разрешение администратора (полный контроль)

Broadcast_system.admin
Позволяет:

  • перезаряжать
  • статус
  • старт/стоп
  • теперь

Отправка разрешений (только для ручного вещания)

- broadcast_system.send
Позволяет:

  • /hb Отправить чат
  • /hb Отправить Заголовок

резервный оператор

Если ваш сервер использует ролевые разрешения, плагин также позволяет:

  • Роль.оператор

конфигурация

Плагин создает:

  • mods/Yanisssch_BroadcastSystem/config.json 

Ключевые разделы:

  • болтать
  • титул
  • присоединиться
  • присоединяться
  • объявления

Важные заметки

  • Если "ShowSubtitle": ложныйСубтитры будут скрыты, даже если они предоставлены.
  • Если подзаголовок пуст, title.defaultSubtitle Используется (при включении).
  • Если Скачать DefaultJoinMessage Это верно для конфигураций присоединения, ванильная передача присоединения отключена.
  • Не используйте цвета для заголовка, это не работает.
  • Не используйте обе цели для объявления (в настоящее время устранение проблемы с этой целью).
  • Будьте осторожны при создании конфигурации, сохраняйте резервную копию в случае, если ваши ошибки, «» и «» очень важны и не используют «в чате или заголовке он может сломать сам конфигурацию ;
  • Потратьте время, чтобы протестировать плагин и прочитать весь файл конфигурации
  • И этот плагин является первым, который я сделал для Hytale, я все еще изучаю api, поэтому, если вы видите некоторые ошибки, не стесняйтесь сказать мне на диссонансе «Yanisssch_Sori».

Пример конфигурирования

{
"_comment": "BroadcastSystem config.json - примеры". Цвета (только для чата - не заголовки!): &a, &6, &l, &r... Владельцы мест: % игрок = получатель, % участник = присоединившийся игрок. Блоки n позволяют многострочный текст только для чата, а не заголовков!
"_help_targets": "targets for JoinSelf and JoinServer can be: [\"CHAT\", [\"TITLE\"], and for announcement can be [\"BOTH\"] (или [\"CHAT\",\"TITLE\")). ,

"чат": {
«_comment»: «Автоматические объявления в чате».
"Включено": правда,
"Интервал Вторые": 120,
"перетасовка": ложная,
"префикс": "&6&l [INFO]&r"
?

"название": {
«_comment»: «Автоматические объявления в качестве центрального названия (EventTitle)».
"Включено": правда,
"Интервал Вторые": 300,
"перетасовка": ложная,
"ShowSubtitle": правда,
"defaultSubtitle": "&eAnnouncement",
«Одушевленный»: правда
?

"Присоединяйся": {
"_комментарий": "Сообщение отправлено ТОЛЬКО присоединяющемуся игроку (частному)".
"Включено": правда,
"disableDefaultJoinMessage": правда,
"цели": ["обе"],
"Чат": "-----" Привет &f%player%&a!\n&7Добро пожаловать! Пожалуйста, прочтите &f/rules&7 :)\n----",
«Приветствуем % игроков % в ServerName!»
"подзаголовок": "Развлекайтесь";)

"_example_title": {
"_комментарий": "АЛЬТЕРНАТИВНЫЙ ПРИМЕР: покажите заголовок вместо чата",
"включено": ложное,
"disableDefaultJoinMessage": правда,
"цели": [титул],
"титул": "Добро пожаловать",
"подзаголовок": "&7Правила: &f/Правила"
?

"_example_chat":
"_комментарий": "АЛЬТЕРНАТИВНЫЙ ПРИМЕР: покажите чат вместо названия",
"включено": ложное,
"disableDefaultJoinMessage": правда,
"цели": ["ЧАТ"],
"Чат": "-----" Привет &f%player%&a!\n&7Добро пожаловать! Пожалуйста, прочтите &f/rules&7 :)\n---"
?
?

"Сервис": {
"_comment": "Сообщение, отправленное каждому, когда кто-то присоединяется".
"Включено": правда,
"disableDefaultJoinMessage": правда,
"цели": ["ЧАТ"],
«chat»: «-----------------&r &e%joiner% &ahas присоединился к серверу!» ,

"_example_both": {
"_comment": "ALTERNATIVE EXAMPLE: send both CHAT + TITLE at same time".
"включено": ложное,
"disableDefaultJoinMessage": правда,
"цели": ["обе"],
«chat»: «-----------------&r &e%joiner% &ahas присоединился к серверу!» ,
Оригинальное название: "&aNew Player!"
"подзаголовок": "&e%joiner%"
?
?

"_комментарий": "Для объявления нет ОБО для цели (в настоящее время устранение проблемы с этой частью)",
"объявления":
{
"_comment": "Пример 1: CHAT multi-line announcement (с ----n block)". ,
"цели": ["ЧАТ"],
"чат": "-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
?

{
"_comment": "Пример 2: Заголовок сообщения".
"цели": [титул],
"титул": "Добро пожаловать",
"подзаголовок": "Повеселись!"
?

{
"_comment": "Пример 3: Наименование без субтитров". ,
"цели": [титул],
«Заголовок»: «Нужна помощь?»
"подзаголовок": ""
?

{
"_комментарий": "Пример 4: ЧАТ Объявление о разладе".
"цели": ["ЧАТ"],
"чат": "----------------------------------------------------------------------------------------------------------------------------------------------------------------
?

]
? 

Случаи использования

  • Советы сервера / Напоминания правил
  • Вращение диссонансных связей
  • Объявления о событиях
  • Приветственные сообщения

установка

  • Скачать .jar
  • Поместите его в папку модов в файлах вашего сервера
  • Перезагрузить сервер
  • Проверьте файл конфигурации в /mods/Yanisssch_BroadcastSystem
  • Перезагрузить сервер или сделать /hbs перезагрузку
  • Проверьте результат
  • И вуаля;)

поддержка

Вы можете связаться со мной только по причине разногласий: Yanisssch_Sori (я могу ответить от 6 до 12 часов)

 
Показать оригинальное описание (English)

The 1.1 will be a final version for now. I prefer to have a reliable plugin without errors than a plugin with multiple methods and errors or lags.

 

Looking for an easy way to display server tips, rules, Discord links, or announcements? BroadcastSystem provides two independent auto-broadcast systems (Chat + Title), plus join messages, manual commands, & colors, placeholders, and a clean JSON configuration.

 

Features:

  • Chat broadcasts (multi-line supported)
  • Title broadcasts (Event Title / “big title” in the middle of the screen)

It also includes:

  • Manual broadcast commands
  • Join messages (private message to joiner + public message to everyone)
  • ✅ Minecraft-style & color codes
  • ✅ Placeholders like %player% and %joiner%
  • ✅ Simple JSON configuration (config.json)

Features

1) Two independent broadcast systems

Each system has its own settings:

  • enabled/disabled
  • interval in seconds
  • shuffle mode (random) or round-robin order

So you can run:

  • Chat every 120s
  • Title every 300s
  • Or disable one entirely.

2) Shared announcement pool with per-entry targets

You define announcements once in "announcements" and choose where they go using:

  • "targets": ["CHAT"]
  • "targets": ["TITLE"]

Each announcement can contain:

  • "chat" content (multi-line block)
  • "title" content
  • "subtitle" content (optional)

3) Join messages (optional)

Two dedicated join message sections:

  • joinSelf: only sent to the joining player
  • joinServer: broadcast to all online players

Both support:

  • chat and/or title targets
  • multi-line blocks
  • placeholders
  • optional disabling of vanilla join message

4) Text formatting

Legacy color codes

Supports Minecraft-like codes:

  • Colors: &0 to &9, &a to &f
  • Formatting: &l (bold), &o (italic), &r (reset)
  • Works with both & and §

Multi-line blocks

For chat messages (and join chat), you can use:

"chat": "----\nLine 1\nLine 2\n----"

Or simply use \n newlines.

5) Placeholders 

 

  • %player%
    Replaced with the recipient player name (the player who receives the message).
  • %joiner%
    Replaced with the joining player name (only meaningful for join messages).
  • %world%
    Replaced with the recipient player’s current world (best-effort: name/id/uuid depending on API availability).
  • %players_online%
    Replaced with the number of players currently online.
  • %online% (alias of %players_online%)
    Same as above, shorter name.
  • %server_uptime%
    Replaced with the server/plugin uptime (time since plugin boot), formatted like:
    12m 05s, 3h 12m 09s, 2d 04h 01m 33s
  • %time%
    Current server local time: HH:mm:ss
    Example: 21:43:10
  • %date%
    Current server local date: yyyy-MM-dd
    Example: 2026-01-15
  • %datetime%
    Current server local date + time: yyyy-MM-dd HH:mm:ss
    Example: 2026-01-15 21:43:10
  • %day%
    Current day of week (uppercase): MONDAY, TUESDAY, etc.
  • %timezone%
    Current server system timezone id (example: Europe/Paris)

Random integer

  • %random_int:min:max%
    Generates a random integer between min and max (inclusive).
    Examples:
  • %random_int:1:100%42
  • %random_int:-5:5%-1
  • %random_int:10:10%10

Random choice

  • %random_choice:a|b|c%
    Randomly picks ONE option from a | separated list.
    Examples:
  • %random_choice:Read /rules|Join Discord|Use /help%
  • %random_choice:Hello|Hi|Hey%

Supports placeholders inside options, for example:

  • %random_choice:Online: %online%|World: %world%|Time: %time%%

Commands

Main command: /hb

/bs reload

Reloads config.json and restarts the broadcast schedulers.

/bs status

Shows current status:

  • whether chat/title systems are enabled
  • intervals
  • pool sizes
  • config file path

/bs now [chat|title|both]

Instantly sends a broadcast from the configured pool.

Examples:

  • /bs now
  • /bs now chat
  • /bs now title

/bs start [chat|title|both]

Starts broadcasting.

Examples:

  • /bs start
  • /bs start chat

/bs stop [chat|title|both]

Stops broadcasting.

Examples:

  • /bs stop
  • /bs stop title

/bs send chat <message...>

Sends a manual chat announcement to all players.

Example:

  • /bs send chat &aHello world!

/bs send title <message...>

Sends a manual title announcement to all players.
Supports \n to force multi-line title.

Example:

  • /bs send title &eServer Restart\n&7In 5 minutes

Permissions

Admin permission (full control)

- broadcast_system.admin
Allows:

  • reload
  • status
  • start/stop
  • now

Send permission (manual broadcasts only)

- broadcast_system.send
Allows:

  • /hb send chat ...
  • /hb send title ...

Operator fallback

If your server uses role permissions, the plugin also allows:

  • role.operator

Configuration

The plugin creates:

  • mods/Yanisssch_BroadcastSystem/config.json 

Key sections:

  • chat
  • title
  • joinSelf
  • joinServer
  • announcements

Important notes

  • If "showSubtitle": false, subtitles will be hidden even if provided.
  • If subtitle is empty, title.defaultSubtitle is used (when enabled).
  • If disableDefaultJoinMessage is true for join configs, vanilla join broadcast is disabled.
  • Do not use colors for Title, this not work….
  • Do not use BOTH target for announcement (currently fixing an issue with this target)
  • Be careful when making the config, keep backup in case your making errors, the "," and "{}" are very important and do not use " in the chat or title it can break the config itself ;)
  • Take time to test the plugin and read all the config file
  • And, this plugin is the first i made for Hytale, i'm still learning the api so if you see some bugs do not hesitate to tell me on discord "Yanisssch_Sori"

Example Config 

{
  "_comment": "BroadcastSystem config.json - examples. Colors(only for the chat - not the titles!): &a, &6, &l, &r… Placeholders: %player% = recipient, %joiner% = joining player. '\n' blocks allow multi-line text only for chat, not titles!",
  "_help_targets": "targets for JoinSelf and JoinServer can be: [\"CHAT\"], [\"TITLE\"], and for announcement can be [\"BOTH\"] (or [\"CHAT\",\"TITLE\"]).",

  "chat": {
    "_comment": "Automatic announcements in chat.",
    "enabled": true,
    "intervalSeconds": 120,
    "shuffle": false,
    "prefix": "&6&l[INFO]&r "
  },

  "title": {
    "_comment": "Automatic announcements as center title (EventTitle).",
    "enabled": true,
    "intervalSeconds": 300,
    "shuffle": false,
    "showSubtitle": true,
    "defaultSubtitle": "&eAnnouncement",
    "animate": true
  },

  "joinSelf": {
    "_comment": "Message sent ONLY to the joining player (private).",
    "enabled": true,
    "disableDefaultJoinMessage": true,
    "targets": ["BOTH"],
    "chat": "----\n&aHi &f%player%&a!\n&7Welcome! Please read &f/rules&7 :)\n----",
    "title": "Welcome %player% to ServerName!",
    "subtitle": "Have fun ;)",

    "_example_title": {
      "_comment": "ALTERNATIVE EXAMPLE: show a Title instead of chat",
      "enabled": false,
      "disableDefaultJoinMessage": true,
      "targets": ["TITLE"],
      "title": "WELCOME",
      "subtitle": "&7Rules: &f/rules"
    },

    "_example_chat": {
      "_comment": "ALTERNATIVE EXAMPLE: show a Chat instead of title",
      "enabled": false,
      "disableDefaultJoinMessage": true,
      "targets": ["CHAT"],
      "chat": "----\n&aHi &f%player%&a!\n&7Welcome! Please read &f/rules&7 :)\n----"
    }
  },

  "joinServer": {
    "_comment": "Message sent to EVERYONE when someone joins.",
    "enabled": true,
    "disableDefaultJoinMessage": true,
    "targets": ["CHAT"],
    "chat": "----\n&6&l[JOIN]&r &e%joiner% &ahas joined the server!\n----",

    "_example_both": {
      "_comment": "ALTERNATIVE EXAMPLE: send both CHAT + TITLE at the same time.",
      "enabled": false,
      "disableDefaultJoinMessage": true,
      "targets": ["BOTH"],
      "chat": "----\n&6&l[JOIN]&r &e%joiner% &ahas joined the server!\n----",
      "title": "&aNew player!",
      "subtitle": "&e%joiner%"
    }
  },

  "_comment": "For the announcement, no BOTH for the target (Currently fixing an issue with this part)",
  "announcements": [
    {
      "_comment": "EXAMPLE 1: CHAT multi-line announcement (with ----\n block).",
      "targets": ["CHAT"],
      "chat": "----\n&bWelcome &f%player%&b!\n&7Make sure to read &f/rules&7 :)\n----"
    },

    {
      "_comment": "EXAMPLE 2: TITLE announcement.",
      "targets": ["TITLE"],
      "title": "WELCOME",
      "subtitle": "Have fun!"
    },

    {
      "_comment": "EXAMPLE 3: TITLE without subtitle).",
      "targets": ["TITLE"],
      "title": "Need help?",
      "subtitle": ""
    },

    {
      "_comment": "EXAMPLE 4: CHAT Discord announcement.",
      "targets": ["CHAT"],
      "chat": "----\n&bDiscord: &ddiscord.gg/....\n&7Come say hi!\n----"
    }

  ]
}

Use cases

  • Server tips / rules reminders
  • Discord link rotations
  • Event announcements
  • Welcome messages

Installation

  • Download the .jar
  • Put it in the mods folder in your server files
  • Restart the server
  • Check the config file at /mods/Yanisssch_BroadcastSystem
  • Restart the server or do /hbs reload
  • And check the result 
  • And voila ;)

SUPPORT

You can contact me on discord only: Yanisssch_Sori (i can take 6 to 12hours to respond)

 

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

BroadcastSystem-1.1.jar

Early Access 16.01.2026 47.3 КБ
Скачать

BroadcastSystem.jar

Early Access 15.01.2026 43.3 КБ
Скачать