Дискорд
Интеграция с Discord позволяет отправлять сообщения (Discord ↔ Minecraft) между сервером Minecraft и Discord сервером.

Для корректной работы бота, включи три настройки для твоего бота в Discord Developer Portal

А также выдай права боту на чтение сообщений, создание сообщений и использование webhooks
Типы сообщений
| Тип | Объяснение |
|---|---|
CHAT_GLOBAL | Сообщение из чата global |
CHAT_LOCAL | Сообщение из чата local |
AFK | Сообщение от действия afk |
ADVANCEMENT | Сообщение от достижения |
DEATH | Сообщение от смерти |
JOIN | Сообщение, когда игрок зашёл на сервер |
QUIT | Сообщение, когда игрок вышел с сервера |
FROM_DISCORD_TO_MINECRAFT | Сообщение из Discord в Minecraft |
FROM_TWITCH_TO_MINECRAFT | Сообщение из Twitch в Minecraft |
FROM_TELEGRAM_TO_MINECRAFT | Сообщение из Telegram в Minecraft |
COMMAND_ME | Сообщение комманды /me |
COMMAND_BALL | Сообщение комманды /ball |
COMMAND_BAN | Сообщение комманды /ban |
COMMAND_BROADCAST | Сообщение комманды /broadcast |
COMMAND_COIN | Сообщение комманды /coin |
COMMAND_DICE | Сообщение комманды /dice |
COMMAND_DO | Сообщение комманды /do |
COMMAND_HELPER | Сообщение комманды /helper |
COMMAND_MUTE | Сообщение комманды /mute |
COMMAND_POLL_CREATE_MESSAGE | Сообщение комманды /poll |
COMMAND_SPY | Слежка за игроками, которая отправляется в /spy |
COMMAND_STREAM | Сообщение комманды /stream |
COMMAND_TRANSLATETO | Сообщение комманды /translateto |
COMMAND_TRY | Сообщение комманды /try |
COMMAND_WARN | Сообщение комманды /warn |
COMMAND_KICK | Сообщение комманды /kick |
SERVER_ENABLE | Сообщение при включении сервера |
SERVER_DISABLE | Сообщение при выключении сервера |
Если у тебя есть собственные чаты со своими именами, например admin, тебе нужно будет указать CHAT_ADMIN. Если есть свои собственные группы из модуля vanilla, тебе нужно указать их название
🌍 Локализация
Путьlocalizations → язык.yml → integration.discord
discord:
null_player: "Игрок не найден"
format_reply: "<fcolor:4><hover:show_text:'<fcolor:4><reply_message>'>[Ответ на @<reply_user>]</hover> "
custom_command:
ping:
content: "Пинг игрока <player> равен <replacement:ping>"
info_channel:
айди: "ТПС <replacement:tps>"
message_channel:
FROM_DISCORD_TO_MINECRAFT:
content: "<fcolor:2><global_name> <fcolor:1>» <fcolor:4><reply><message>"
CHAT_GLOBAL:
content: "<final_message>"discord:
null_player: "This player does not exist"
format_reply: "<fcolor:4><hover:show_text:'<fcolor:4><reply_message>'>[Reply to @<reply_user>]</hover> "
custom_command:
ping:
content: "<player>'s ping is <replacement:ping>"
info_channel:
id: "TPS <replacement:tps>"
message_channel:
FROM_DISCORD_TO_MINECRAFT:
content: "<fcolor:2><global_name> <fcolor:1>» <fcolor:4><reply><message>"
CHAT_GLOBAL:
content: "<final_message>"null_player
Сообщение, если введённый игрок через custom_command не найден
format_reply
Формат сообщения для тега <reply>, когда сообщение является ответом на другое
custom_command
Список кастомных комманд интеграции, где ключом является название комманды, а значением её формат сообщения
custom_command:
tps:
content: "<tps>"Комманда, чтобы получить значение tps на сервере. Не забудь сделать её в inegration.yml
Плейсхолдеры
Ты можешь использовать все плейсхолдеры, которые используются в начальном сообщении для майнкрафта
Там есть плейсхолдер <reason>, значит я могу использовать <reason> внутри дискорд сообщений
Также есть плейсхолдеры, которые ТОЧНО будут заменяться в любом сообщении
<final_message>сообщение, отправленное в майнкрафт<final_clear_message>сообщение, отправленное в майнкрафт без unicode-смайлов<player>ник игрока, который отправил сообщение<message>сырое сообщение, которое написал игрок<plain_message>отформатированное сообщение, которое написал игрок<reply>отформатированное сообщение-ответ, оно будет пустым, если основное сообщение не ответ- Очевидно, что все плейсхолдеры из
PlaceholderAPIиFlectonePulseтоже будут работать
У сообщения, которое будет отправлено из Дискорда в Майнкрафт есть свои плейсхолдеры:
| Плейсхолдер | Что возвращает |
|---|---|
<name> | Глобальное имя участника в Discord |
<global_name> | Глобальное имя участника в Discord |
<nickname> | Никнейм участника в Discord |
<display_name> | Отображаемое имя участника в Discord |
<user_name> | Тег участника в Discord |
info_channel
Список айди каналов и их названий, для отображения какой-нибудь информации, например TPS
message_channel
Список сообщений с их настройкой
название_сообщения:
content: ""
webhook_avatar: "https://mc-heads.net/avatar/<skin>/32.png"
embed:
color: ""
title: ""
url: ""
author:
name: ""
url: ""
icon_url: "https://mc-heads.net/avatar/<skin>/16.png"
description: ""
thumbnail: ""
fields:
- name: ""
value: ""
inline: false
image: ""
timestamp: true
footer:
text: ""
icon_url: "https://mc-heads.net/avatar/<skin>/16.png"Пример сообщения со всеми параметрами

Если параметр пустой или он не написан, то он не будет использован в итоговом сообщении
⚙️ Настройка
Путьintegration.yml → discord
discord:
enable: false
ignore_all_bots: true
token: ""
custom_command:
ping:
need_player: true
aliases:
- "!ping"
presence:
enable: true
status: "ONLINE"
activity:
enable: true
type: "PLAYING"
name: "FlectonePulse"
url: "https://flectone.net/pulse/"
channel_info:
enable: false
ticker:
enable: true
period: 1200
message_channel:
FROM_DISCORD_TO_MINECRAFT:
- "123456"
CHAT_GLOBAL:
- "123456"
destination:
type: "CHAT"
sound:
enable: falseenable
Включает или выключает работоспособность модуля
- Перед включением, вставь токен бота Discord
- После включения, ЖЕЛАТЕЛЬНО перезагрузить сервер, иначе плагин может вызвать зависание
ignore_all_bots
Если включено, то любые сообщения пользователей, которые являются ботами, будут игнорироваться. Иначе будут игнорироваться только собственные сообщения от текущего бота
token
Токен дискорд бота для подключения. Можно использовать environment variables, например ${VALUE}
custom_command
Список кастомных комманд интеграции, ключом является название комманды и оно может быть любым. Комманды могут быть ТОЛЬКО информационными, на сервере они ничего не выполняют и не будут выполнять
| Параметр | Объяснение |
|---|---|
need_player | Проверять ли первый аргумент комманды на имя игрока, например !ping TheFaser |
aliases | Список псевдонимов для использования комманды |
custom_command:
tps:
need_player: false
aliases:
- "!tps"
- "!tickpersecond"Комманда, чтобы получить значение tps на сервере с помощью !tps или !tickpersecond. Не забудь сделать сообщение в локализации
presence

channel_info

message_channel
Список типов сообщений и ID каналов в Discord
Копирую ID канала в дискорде 1286666844358316083
Прописываю COMMAND_BAN: "1286666844358316083"
message_channel:
COMMAND_BAN:
- "1286666844358316083"Локализацию можно не настраивать, по умолчанию сообщение будет отправляться с форматом <final_message>
destination
Куда будет отправлено сообщение
| Тип | Объяснение | Требует дополнительной настройки? |
|---|---|---|
ACTION_BAR | Сообщение над инвентарём игрока | Да |
BOSS_BAR | Сообщение в верхней части экрана | Да |
BRAND | Сообщение в F3 | Нет |
CHAT | Сообщение в чат | Нет |
TEXT_SCREEN | Сообщение в любое место экрана | Да |
TITLE | Сообщение на весь экран | Да |
SUBTITLE | Сообщение на весь экран (нижняя строчка) | Да |
TAB_HEADER | Сообщение в ТАБ (сверху) | Нет |
TAB_FOOTER | Сообщение в ТАБ (снизу) | Нет |
TOAST | Сообщение в правом верхнем углу (достижение) | Да |
sound
Проигрывание звука
🔐 Права
Путьpermission.yml → integration.discord
discord:
name: "flectonepulse.module.integration.discord"
type: "TRUE"
sound:
name: "flectonepulse.module.integration.discord.sound"
type: "TRUE"name
Название права
type
Вид права
| Вид | Объяснение |
|---|---|
TRUE | Доступно для любого игрока |
FALSE | Никому не доступно, должно быть выдано отдельно (например с помощью LuckPerms) |
OP | Доступно для операторов сервера |
NOT_OP | Доступно для НЕ операторов сервера |
sound
Право для использования звука
Последнее обновление
Редактировать на GitHub
FlectonePulse