Discord
Integration with Discord allows sending messages:
- from Minecraft to Discord
- from Discord to Minecraft
Message Types
Type | Explanation |
---|---|
CHAT_GLOBAL | global chat message |
CHAT_LOCAL | local chat message |
AFK | Message from the afk action |
ADVANCEMENT | Achievement message |
DEATH | Death message |
JOIN | Message when a player joins the server |
QUIT | Message when a player leaves the server |
FROM_DISCORD_TO_MINECRAFT | Message from Discord to Minecraft |
FROM_TWITCH_TO_MINECRAFT | Message from Twitch to Minecraft |
FROM_TELEGRAM_TO_MINECRAFT | Message from Telegram to Minecraft |
COMMAND_ME | Message from the /me command |
COMMAND_BALL | Message from the /ball command |
COMMAND_BAN | Message from the /ban command |
COMMAND_BROADCAST | Message from the /broadcast command |
COMMAND_COIN | Message from the /coin command |
COMMAND_DICE | Message from the /dice command |
COMMAND_DO | Message from the /do command |
COMMAND_HELPER | Message from the /helper command |
COMMAND_MUTE | Message from the /mute command |
COMMAND_POLL_CREATE_MESSAGE | Message from the /poll command |
COMMAND_SPY | Player messages tracking for /spy command |
COMMAND_STREAM | Message from the /stream command |
COMMAND_TRANSLATETO | Message from the /translateto command |
COMMAND_TRY | Message from the /try command |
COMMAND_WARN | Message from the /warn command |
COMMAND_KICK | Message from the /kick command |
NOTE
If you have custom chats with their own names, for example admin
, you will need to specify CHAT_ADMIN
. If you have custom groups from the vanilla
module, you need to specify their name
🌍 Localization
📂 Path localizations → locale.yml → integration.discord
⚖️ Default
discord:
for_minecraft: "<fcolor:2><name> <fcolor:1>» <fcolor:4><message>"
info_channel:
айди: "ТПС <tps>"
message_channel:
CHAT_GLOBAL:
content: "<final_message>"
discord:
for_minecraft: "<fcolor:2><name> <fcolor:1>» <fcolor:4><message>"
info_channel:
id: "TPS <tps>"
message_channel:
CHAT_GLOBAL:
content: "<final_message>"
Placeholders
You can use all placeholders used in the initial message for Minecraft
EXAMPLE FOR BAN MESSAGE
There is a <reason>
placeholder, so I can use <reason>
inside Discord messages
There are also placeholders that will DEFINITELY be replaced in any message
<final_message>
message sent to Minecraft<final_clear_message>
message sent to Minecraft without unicode emojis<player>
nickname of the player who sent the message<message>
raw message written by the player<plain_message>
formatted message written by the player- Obviously, all placeholders from
PlaceholderAPI
andFlectonePulse
will also work
for_minecraft
Format of the message that will be sent from Discord to Minecraft
info_channel
List of channel IDs and their names, for displaying some information, for example TPS
message_channel
List of messages with their settings
Message configuration
INFO
If a parameter is empty or not written, it will not be used in the final message
content
Message content
webhook_avatar
Enable Discord webhook with player's avatar. Best to use https://mc-heads.net/avatar/<skin>/32.png
embed
Discord embed message
color
Color of the embed
message
title
Title of the embed
message
url
URL for the embed
message
author
Author of the embed
message
name
Name of the embed
message author
url
URL of the embed
message author
icon_url
URL of the embed
message author's avatar. If you change it to your own, the URL must contain <skin>
description
Description of the embed
message
thumbnail
Small image inside the embed
message
fields
Bottom fields inside the embed
message
name
Name of the field inside the embed
message
value
Value of the field inside the embed
message
inline
If enabled, the field will be placed in a column with other fields
image
Main image of the embed
message
timestamp
If enabled, the embed
message will include creation time
footer
Bottom part of the embed
message
text
Text in the bottom part of the embed
message
icon_url
Image in the bottom part of the embed
message
INFO
Message with all parameters
message_name:
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"
⚙️ Setting
📂 Path integration.yml → discord
⚖️ Default
discord:
enable: false
token: ""
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: ""
CHAT_GLOBAL: ""
destination:
type: "CHAT"
enable
Enables or disables the functionality of the module
WARNING
- Before enabling, insert the Discord bot token
- After enabling, it's RECOMMENDED to restart the server, otherwise the plugin may cause freezing
token
Discord bot token for connection. You can use environment variables, for example ${VALUE}
presence
Bot status configuration
enable
Enables or disables custom bot status
status
Mode | Explanation |
---|---|
UNKNOWN | - |
ONLINE | Online |
DO_NOT_DISTURB | Do not disturb (Online) |
IDLE | Online but idle |
INVISIBLE | Invisible |
OFFLINE | Offline |
activity
Bot activity in Discord
enable
Enables or disables activity
type
Type | Explanation |
---|---|
UNKNOWN | - |
STREAMING | Streaming |
LISTENING | Listening |
WATCHING | Watching |
CUSTOM | - |
COMPETING | Competing |
name
Activity name
url
Activity URL
channel_info
Information channels configuration
enable
Whether information channel is needed
ticker
Updates every certain interval of time
message_channel
List of message types and channel IDs in Discord
For example I want messages from Minecraft command /ban
to be sent to Discord
- Copy the Discord channel ID
1286666844358316083
- Write
COMMAND_BAN: "1286666844358316083"
message-channel:
COMMAND_BAN: "1286666844358316083"
You don't need to configure localization, by default the message will be sent with the format <final_message>
destination
Where the message will be sent
Type | Explanation | Requires additional configuration? |
---|---|---|
ACTION_BAR | Message above the player's inventory | Yes |
BOSS_BAR | Message at the top of the screen | Yes |
BRAND | Message in F3 | No |
CHAT | Message in the chat | No |
TITLE | Full-screen message | Yes |
SUBTITLE | Full-screen message (bottom line) | Yes |
TAB_HEADER | Message in TAB (top) | No |
TAB_FOOTER | Message in TAB (bottom) | No |
TOAST | Message in the top-right corner (achievement) | Yes |
Replace the value type: here
and restart FlectonePulse
using the /flectonepulse reload
command. Additional settings will appear AUTOMATICALLY
If type is ACTION_BAR
destination:
type: "ACTION_BAR"
times:
stay: 60
times
Field | Explanation |
---|---|
stay | Time in ticks to hold the message |
If type is BOSS_BAR
destination:
type: "BOSS_BAR"
duration: 100
health: 1.0
overlay: "PROGRESS"
color: "BLUE"
play-boos-music: false
create-world-fog: false
darken-screen: false
duration
Duration of the message display
health
How full the boss bar will be
overlay
Type | Explanation |
---|---|
PROGRESS | Single line |
NOTCHED_6 | Divided into 6 parts |
NOTCHED_10 | Divided into 10 parts |
NOTCHED_12 | Divided into 12 parts |
NOTCHED_20 | Divided into 20 parts |
color
Display color
Type |
---|
PINK |
BLUE |
RED |
GREEN |
YELLOW |
PURPLE |
WHITE |
play_boos_music
Whether music will play with the message
create_world_fog
Whether fog will appear with the message
darken_screen
Whether the screen will darken with the message
If type is TITLE
(or SUBTITLE
)
destination:
type: "TITLE" (or "SUBTITLE")
subtext: ""
times:
fade-in: 20
stay: 60
fade-out: 20
subtext
Message for the second part of the display. For example, if TITLE
is selected, subtext
will be displayed below it, and vice versa.
times
Field | Explanation |
---|---|
fade_in | Time in ticks for the message to appear |
stay | Time in ticks to hold the message |
fade_out | Time in ticks for the message to disappear |
If type is TOAST
destination:
type: "TOAST"
icon: "minecraft:diamond"
style: "TASK"
icon
Achievement icon, which can be any Minecraft item (must specify the full path)
style
Achievement type (TASK
regular, GOAL
goal, CHALLENGE
challenge)
🔐 Permissions
📂 Path permission.yml → integration.discord
⚖️ Default
discord:
name: "flectonepulse.module.integration.discord"
type: "TRUE"
name
Permission name
type
Permission type
Type | Explanation |
---|---|
TRUE | Available to any player |
FALSE | Not available to anyone, must be granted separately (e.g., using LuckPerms) |
OP | Available to server operators |
NOT_OP | Available to not server operators |