Перейти к содержимому

Custom Server Messages

Мод для Minecraft, позволяющий настроить любое сообщение сервера, с поддержкой форматирования текста и плейсхолдеров.

Fabric
Загрузчики
Fabric
Скачиваний на Modrinth
2 тыс.
Подписчиков на Modrinth
15
версий
12
Обновлён
27 июня 202627 июн.
Опубликован
в 2024

Коротко о моде

Работает на Fabric
Для Minecraft 1.21–26.3
Ставится только на сервер; игрокам ставить не нужно
Последняя версия — 1.1.1 от 27 июня 2026
Нужен Fabric API
Лицензия GPL-3.0-only — бесплатно
Где нужен
В игрене нуженНа сервереобязателен

Ставится только на сервер; игрокам ставить не нужно

Версии игры1.21–26.3
Описание переведено автоматическиПоказать оригинал (EN)

Server Messages

Static Badge Static Badge Static Badge

Мод для Minecraft, позволяющий настроить любое сообщение сервера, с поддержкой форматирования текста и плейсхолдеров.


Что он делает?

Этот мод позволяет изменить любое[1] сообщение сервера на свой вкус. Можно заменить само сообщение, добавить или изменить форматирование, и даже использовать плейсхолдеры. Формат полностью совместим с форматом переведённого текста, используемым в языковых файлах.

Чаще всего мод используют, чтобы поменять цвет сообщений вроде «You have been banned», добавить информацию в сообщение «You're not whitelisted» или настроить уведомление о кике. А ещё с его помощью можно показывать какую-нибудь статистику, когда игрок заходит на сервер или выходит с него, или сделать сообщения о смерти радужными. Возможности безграничны!

badge
Для всего, что связано с чатом, я рекомендую использовать Styled Chat. Если вы так сделаете, все связанные сообщения в этом моде будут отключены во избежание конфликтов. После этого их можно менять через Styled Chat.

Как этим пользоваться?

Чтобы изменить сообщение, просто добавьте соответствующий ключ перевода в конфиг и поменяйте его значение на своё. Формат текста основан на формате переведённого текста и также поддерживает QuickText Format для форматирования текста и глобальные плейсхолдеры. Перезагрузить конфиг можно командой /reload.

Формат плейсхолдеров — ${placeholder}, и для большинства сообщений можно использовать только те плейсхолдеры, которые НЕ зависят от игрока/сущности! Так, ${server:tps} и ${world:name} (overworld) вполне подойдут, а вот ${player:name} будет работать не всегда.
Подробнее см. Контексты плейсхолдеров.

Формат конфига совместим с форматом языковых файлов Minecraft. Так что можно просто заменить конфиг языковым файлом (категорически не рекомендую) и всё будет работать. Учтите, однако, что это НЕ перезапишет языковые настройки игроков! Для справки список всех доступных сейчас языковых файлов можно найти здесь.

Если вы используете ключи перевода вручную (QuickText / STF или Text components), например в сообщениях чата или других модах, они тоже будут затронуты этим модом и станут использовать то же форматирование, что указано в конфиге. Если вам это не нужно, можно либо добавить r или raw к QuickText / STF тегам перевода (`->), либо добавить #raw**последним** аргументом к аргументам перевода. *Например,— то же самое, что, и предотвратит изменение сообщения. Для [Text components](https://minecraft.wiki/w/Text_component_format#Translated_Text) это будет выглядеть так: {"translate": "...", "with": [..., "#raw"]}`.*

badge
Любой другой мод, изменяющий сообщения сервера (например, BanHammer), почти наверняка будет иметь приоритет над изменениями этого мода.

Пример конфига

{
  // только изменить форматирование
  "multiplayer.disconnect.not_whitelisted": "<red><bold><lang multiplayer.disconnect.not_whitelisted></bold></red>",
  // заменить сообщение; использовать плейсхолдер
  "multiplayer.disconnect.server_shutdown": "<green>We'll be right back!</green>\n<gray><underline>Uptime: </>${server:uptime}</gray>",
  // добавить текст; использовать вложенный аргумент перевода
  "multiplayer.player.joined": "<yellow><lang multiplayer.player.joined '%s'>. Good to see you!</yellow>",
  // заменить сообщение; использовать аргумент перевода
  "multiplayer.player.left": "<yellow>See you soon, <bold>%s</bold>!</yellow>",
  // свой ключ перевода; добавить причину в сообщение о кике
  "multiplayer.disconnect.kicked.reason": "<lang multiplayer.disconnect.kicked>\n<yellow>%s</yellow>"
}

badge
Не копируй это как есть! Конфиг использует формат JSON, а JSON НЕ поддерживает комментарии. Комментарии в примере только для пояснения. Не копируй комментарии!

Поддерживаемые ключи перевода

Теоретически поддерживается любой ключ перевода, если он используется явно (например, в теге перевода). Но изначально сервер использует лишь несколько переводов. Поддерживаются все ключи перевода, которые обрабатываются на сервере. Это включает большинство сообщений, которые ты видишь во время игры на сервере.

Более подробный список поддерживаемых ключей смотри здесь.

badge
Информация в этом списке может быть неточной!
Хотя он может помочь получить быстрое представление, он основан только на моих находках и множестве предположений.

Контексты плейсхолдеров

Контексты — это дополнительная информация, позволяющая работать разным плейсхолдерам. Например, некоторые моды вроде AfkPlus требуют контекст player, чтобы их плейсхолдеры работали. Он может быть доступен не в каждом сообщении, поэтому проверяй дополнительные контексты нужного тебе сообщения в списке ниже.

Все сообщения поддерживают базовые контексты, то есть Server и Overworld, но НЕ Player.

Ключ(и) переводаКонтекстВерсия добавления
chat.type.advancement.*player1.0
commands.ban.successplayer1.1
commands.banip.successplayer1.1
commands.deop.successplayer1.1
commands.kick.successplayer1.0
commands.op.successplayer1.1
commands.pardon.successplayer1.1

| death.* | player | 1.0 | | multiplayer.disconnect.* | player, если игрок уже был на сервере до отключения, иначе profile.

Исключения (список неполный)
.transfers_disabled, .outdated_client, .incompatible
У них только контекст по умолчанию (server). | 1.1 (некоторые 1.0) | | multiplayer.player.joined | player | 1.0 | | multiplayer.player.joined.renamed | player | 1.0 | | multiplayer.player.left | player | 1.0 |

Если вы хотите добавить определённый контекст, пожалуйста, откройте issue или напишите мне в Discord.

Дополнительные ключи перевода

Этот мод также добавляет несколько дополнительных ключей перевода для использования в конфиге. Они позволят вам настроить некоторые сообщения, которые обычно изменить нельзя.

badge
Эти ключи перевода не предоставляются самим Minecraft и работают только при указании в конфиге мода.

Ключ переводаКонтекстПримечанияПо умолчаниюВерсия добавления
multiplayer.disconnect.kicked.reasonplayerОтправляется кикнутому игроку (игрокам), если была указана причина.

Причина — единственный аргумент (%s).
См. multiplayer.disconnect.banned.reason.
%s1.1

Зачем мне это?

Почти каждое текстовое сообщение, которое ванильный сервер отправляет игрокам, использует ключ перевода для отображения соответствующего сообщения. Так что вместо отправки настоящего текста (например, ` joined the game) он отправляет что-то вроде translate[multiplayer.player.joined]`. Затем клиент преобразует это в настоящий текст, используя выбранный игроком язык. Так игра гарантирует, что каждый игрок увидит сообщение на предпочитаемом языке. Хотя это весьма полезно, иногда такое поведение может быть не тем, что вам нужно, потому что вы не можете изменить форматирование этих сообщений, не заставляя своих игроков использовать кастомный ресурспак. Именно для этого и существует этот мод.

Обычно эти сообщения отображаются простым белым текстом, что довольно скучно. Чтобы разнообразить это, нужно иметь возможность менять эти сообщения на всём сервере. Например, можно изменить сообщение «not on whitelist», чтобы дать новым игрокам больше информации. Также можно изменить цвет сообщения «you have been banned», чтобы оно выделялось. Таких серверных сообщений, которые вы, возможно, захотите настроить, очень много, так что попробуйте!

Как это работает?

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

Чтобы предотвратить бесконечную рекурсию, все ключи перевода, используемые в ваших кастомных сообщениях, будут иметь значения по умолчанию и форматирование, а не значения, которые вы указали.


[ 1 ]: *Есть некоторые особые случаи, когда это может не работать как ожидается из-за того, как Minecraft обрабатывает определённые сообщения. Если вы столкнётесь с одним из них, пожалуйста, откройте issue, и я посмотрю, что можно сделать, чтобы они тоже работали.
Сообщения чата игроков (а также /me и т.д.), к сожалению, не поддерживаются этим модом. Используйте Styled Chat для них.*

Частые вопросы

Как установить Custom Server Messages?

Установите Fabric под свою версию Minecraft, скачайте Custom Server Messages под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть Custom Server Messages?

У Custom Server Messages есть сборки для Minecraft 1.21–26.3.

Нужен ли Custom Server Messages на сервере?

Ставится только на сервер; игрокам ставить не нужно

Лицензия и источник
GNU General Public License v3.0 onlyможно использовать и распространять; изменённые версии — под той же лицензией и с исходным кодом
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее