

Styled Chat
Активный0.0
Установок
Последнее обновление
Версии
Styled Chat
Преобразите внешний вид чата на вашем сервере
Этот мод предоставляет администраторам Minecraft-серверов полный контроль над оформлением чата. Вы можете настроить отображение всех типов сообщений, создавая уникальную атмосферу для игроков.
Расширенные возможности форматирования
Мод поддерживает современные методы оформления текста, которые часто игнорируются другими плагинами. Интеграция с Placeholder API позволяет использовать динамические данные в сообщениях.
Индивидуальные стили для игроков
Настраивайте внешний вид чата для разных групп пользователей с помощью системы разрешений. Поддерживаются LuckPerms и PlayerRoles для гибкого управления доступом.
Работает исключительно на Fabric Mod Loader и совместимых платформах.
Доступные команды
/styledchat
- Основная команда (разрешениеstyledchat.main
, доступно по умолчанию)/styledchat reload
- Перезагружает конфигурацию и стили (требуетstyledchat.reload
)/styledchat set <игрок> <тип> <значение>
- Изменяет персональный стиль игрока (требуетstyledchat.set
)/styledchat get <игрок> <тип>
- Показывает текущий стиль игрока (требуетstyledchat.get
)/styledchat clear <игрок> <тип>
- Сбрасывает настройки стиля (требуетstyledchat.clear
)
Настройка конфигурации
Файл конфигурации находится по пути ./config/styled-chat.json
и использует упрощенный текстовый формат с поддержкой плейсхолдеров.
{
"CONFIG_VERSION_DONT_TOUCH_THIS": 3,
"_comment": "Перед изменением настроек ознакомьтесь с документацией",
"text_formatting": {
// Включает распознавание ссылок в чате
"parse_links": true,
// Активирует поддержку markdown
"markdown": true,
// Разрешает использование устаревших кодов (&x) в чате
"legacy_formatting": false,
// Поддерживает форматирование из других модов
"formatting_from_other_mods": false
},
"chat_preview": {
// Отправляет полное сообщение в предпросмотре
"send_full_message": false,
// Требует предпросмотр для применения форматирования
"require_for_formatting": false
},
"auto_completion": {
// Автодополнение для тегов
"tags": false,
// Автодополнение для псевдонимов тегов
"tag_aliases": false,
// Автодополнение для эмотиконов
"emoticons": false
},
// Настройки стиля по умолчанию
"default": {
"display_name": "${default}",
"message_formats": {
"chat": "<${player}> ${message}",
"joined_the_game": "<yellow><lang:multiplayer.player.joined:'${player}'></yellow>",
"joined_after_name_change": "<yellow><lang:multiplayer.player.joined.renamed:'${player}':'${old_name}'></yellow>",
"joined_for_first_time": "<yellow><lang:multiplayer.player.joined:'${player}'></yellow>",
"left_game": "<yellow><lang:multiplayer.player.left:'${player}'></yellow>",
"base_death": "${default_message}",
"advancement_task": "<lang:chat.type.advancement.task:'${player}':'${advancement}'>",
"advancement_challenge": "<lang:chat.type.advancement.challenge:'${player}':'${advancement}'>",
"advancement_goal": "<lang:chat.type.advancement.goal:'${player}':'${advancement}'>",
"sent_team_chat": "<lang:'chat.type.team.sent':'<hover\:'<lang\:chat.type.team.hover>\'><suggest_command\:'/teammsg \'>${team}':'${displayName}':'${message}'>",
"received_team_chat": "<lang:'chat.type.team.text':'<hover\:'<lang\:chat.type.team.hover>\'><suggest_command\:'/teammsg \'>${team}':'${displayName}':'${message}'>",
"sent_private_message": "<gray><italic><lang:commands.message.display.outgoing:'${receiver}':'${message}'>",
"received_private_message": "<gray><italic><lang:commands.message.display.incoming:'${sender}':'${message}'>",
"say_command": "[${player}] ${message}",
"me_command": "<lang:'chat.type.emote':'${player}':'${message}'>",
"pet_death": "${default_message}"
},
"link_style": "<underline><c:#7878ff>${link}",
"spoiler_style": "<gray>${spoiler}",
"spoiler_symbol": "▌",
"formatting": {
"dark_red": true,
"green": true,
"underline": true,
"dark_green": true,
"black": true,
"yellow": true,
"bold": true,
"italic": true,
"dark_blue": true,
"dark_purple": true,
"gold": true,
"red": true,
"aqua": true,
"gray": true,
"light_purple": true,
"blue": true,
"white": true,
"dark_aqua": true,
"dark_gray": true,
"spoiler": true,
"strikethrough": true
},
"emoticons": {
"potion": "🧪",
"item": "[%player:equipmentslot mainhand%]",
"trident": "🔱",
"rod": "🎣",
"shrug": "¯\_(ツ)/¯",
"bow": "🏹",
"bell": "🔔",
"heart": "❤",
"bucket": "🪣",
"sword": "🗡",
"shears": "✂",
"pos": "%player:pos_x% %player:pos_y% %player:pos_z%",
"fire": "🔥",
"table": "(╯°□°)╯︵ ┻━┻",
"$emojibase:builtin:joypixels": "${emoji}"
}
},
"styles": [
{
"require": {
"type": "..."
}
}
]
}
Форматирование в чате
Игроки с соответствующими разрешениями могут использовать упрощенные текстовые теги в своих сообщениях. В настройках можно активировать поддержку markdown и устаревшего форматирования.
Пример конфигурации
{
"CONFIG_VERSION_DONT_TOUCH_THIS": 3,
"_comment": "Пример настройки сервера",
"text_formatting": {
"legacy_formatting": true,
"parse_links": true,
"markdown": true,
"formatting_from_other_mods": true
},
"chat_preview": {
"send_full_message": false,
"require_for_formatting": false
},
"auto_completion": {
"tags": false,
"tag_aliases": false,
"emoticons": true
},
"default": {
"display_name": "${vanillaDisplayName}",
"message_formats": {
"chat": "${player} <dark_gray>»</dark_gray> ${message}",
"joined_the_game": "<gray>✚</gray> <color:#85ff8f><lang:multiplayer.player.joined:'${player}'>",
"joined_after_name_change": "<gray>✚</gray> <color:#85ff8f><lang:multiplayer.player.joined.renamed:'${player}':'${old_name}'>",
"joined_for_first_time": "<yellow><lang:multiplayer.player.joined:'${player}'></yellow>",
"left_game": "<gray>☁</gray> <color:#ff8585><lang:multiplayer.player.left:'${player}'>",
"base_death": "<gray>☠</gray> <color:#d1d1d1>${default_message}",
"advancement_task": "<lang:chat.type.advancement.task:'${player}':'${advancement}'>",
"advancement_challenge": "<lang:chat.type.advancement.challenge:'${player}':'${advancement}'>",
"advancement_goal": "<lang:chat.type.advancement.goal:'${player}':'${advancement}'>",
"sent_team_chat": "<lang:'chat.type.team.sent':'<hover\:'<lang\:chat.type.team.hover>\'><suggest_command\:'/teammsg \'>${team}':'${displayName}':'${message}'>",
"received_team_chat": "<lang:'chat.type.team.text':'<hover\:'<lang\:chat.type.team.hover>\'><suggest_command\:'/teammsg \'>${team}':'${displayName}':'${message}'>",
"sent_private_message": "<gray>[<green>PM</green> → ${receiver}] <dark_gray>»<reset> ${message}",
"received_private_message": "<gray>[<green>PM</green> ← ${sender}] <dark_gray>»<reset> ${message}",
"say_command": "<red>[${player}] ${message}",
"me_command": "<green>* ${player} ${message}",
"pet_death": "Oh no! ${default_message}"
},
"link_style": "<underline><blue>${link}",
"spoiler_style": "<dark_gray>${spoiler}",
"spoiler_symbol": "▌",
"formatting": {
"dark_red": true,
"underline": true,
"yellow": true,
"italic": true,
"dark_blue": true,
"dark_purple": true,
"gold": true,
"red": true,
"aqua": true,
"gray": true,
"light_purple": true,
"white": true,
"pos": true,
"dark_gray": true,
"spoiler": true,
"strikethrough": true,
"st": true,
"b": true,
"item": true,
"green": true,
"dark_green": true,
"black": true,
"i": true,
"bold": true,
"blue": true,
"darkaqua": true
},
"emoticons": {
"potion": "🧪",
"trident": "🔱",
"rod": "🎣",
"shrug": "¯\_(ツ)/¯",
"bow": "🏹",
"bell": "<yellow>🔔",
"heart": "<red>❤",
"bucket": "🪣",
"sword": "🗡",
"shears": "✂",
"fire": "🔥",
"table": "<rb>(╯°□°)╯︵ ┻━┻"
}
},
"styles": [
{
"require": {
"type": "permission",
"permission": "group.admin",
"operator": 4
},
"display_name": "<dark_gray>[<red>Admin</red>]</dark_gray> <c:#ffe8a3>${vanillaDisplayName}</c>",
"message_formats": {
"chat": "${player} <dark_gray>»</dark_gray> <orange>${message}",
"base_death": ""
},
"formatting": {},
"emoticons": {}
},
{
"require": {
"type": "permission",
"permission": "group.default"
},
"display_name": "<dark_gray>[<aqua>Player</aqua>]</dark_gray> <dark_aqua>${vanillaDisplayName}</dark_aqua>",
"message_formats": {},
"formatting": {},
"emoticons": {}
},
{
"require": {
"type": "permission",
"permission": "group.vip",
"operator": 3
},
"message_formats": {},
"formatting": {},
"emoticons": {
"potato": "<rb>Potato"
}
}
]
}