Skip to content

Discord

Integration with Discord allows sending messages:

  • From Minecraft to Discord
  • From Discord to Minecraft

discord messageminecraft message

Message Types

TypeExplanation
CHATGlobal chat message
AFKGlobal message from the afk action
ADVANCEMENTAchievement message
DEATHDeath message
JOINMessage when a player joins the server
QUITMessage when a player leaves the server
FROM_DISCORD_TO_MINECRAFTMessage from Discord to Minecraft
FROM_TWITCH_TO_MINECRAFTMessage from Twitch to Minecraft
FROM_TELEGRAM_TO_MINECRAFTMessage from Telegram to Minecraft
COMMAND_MEGlobal message from the /me command
COMMAND_BALLGlobal message from the /ball command
COMMAND_BANGlobal message from the /ban command
COMMAND_BROADCASTGlobal message from the /broadcast command
COMMAND_COINGlobal message from the /coin command
COMMAND_DICEGlobal message from the /dice command
COMMAND_DOGlobal message from the /do command
COMMAND_HELPERGlobal message from the /helper command
COMMAND_MUTEGlobal message from the /mute command
COMMAND_POLL_CREATE_MESSAGEGlobal message from the /poll command
COMMAND_SPYPlayer tracking for the /spy command
COMMAND_STREAMGlobal message from the /stream command
COMMAND_TRANSLATETOGlobal message from the /translateto command
COMMAND_TRYGlobal message from the /try command
COMMAND_WARNGlobal message from the /warn command
COMMAND_KICKGlobal message from the /kick command

🌍 Localization

📂 Path localizations → язык.yml → integration.discord

⚖️ Default

yml
discord:
  for-minecraft: "<fcolor:2><name> <fcolor:1>» <fcolor:4><message>"
  info-channel:
    айди: "ТПС <tps>"
  message-channel:
    CHAT:
      content: "<final_message>"
      webhook:
        enable: false
        avatar: "https://mc-heads.net/avatar/<skin>/32.png"
        content: ""
      embed:
        enable: false
        color: ""
        title: ""
        url: ""
        author:
          name: ""
          url: ""
          icon-url: "https://mc-heads.net/avatar/<skin>/16.png"
        description: ""
        thumbnail: ""
        image: ""
        timestamp: true
        footer:
          text: ""
          icon-url: "https://mc-heads.net/avatar/<skin>/16.png"
yml
discord:
  for-minecraft: "<fcolor:2><name> <fcolor:1>» <fcolor:4><message>"
  info-channel:
    id: "TPS <tps>"
  message-channel:
    CHAT:
      content: "<final_message>"
      webhook:
        enable: false
        avatar: "https://mc-heads.net/avatar/<skin>/32.png"
        content: ""
      embed:
        enable: false
        color: ""
        title: ""
        url: ""
        author:
          name: ""
          url: ""
          icon-url: "https://mc-heads.net/avatar/<skin>/16.png"
        description: ""
        thumbnail: ""
        image: ""
        timestamp: true
        footer:
          text: ""
          icon-url: "https://mc-heads.net/avatar/<skin>/16.png"

Placeholders

You can use all the placeholders that are used in the initial Minecraft message

FOR EXAMPLE, FOR A BAN MESSAGE

If there’s a placeholder <reason>, you can use <reason> in Discord messages as well

There are also placeholders that will ALWAYS be replaced in any message:

  • <final_message> The message sent to Minecraft
  • <final_clear_message> The message sent to Minecraft without Unicode emojis
  • <player> The nickname of the player who sent the message

Obviously, all placeholders from PlaceholderAPI and FlectonePulse will also work.

for-minecraft

Message format that will be sent from Discord to Minecraft.

info-channel

List of channel IDs and their names.

message-channel

List of messages and their configurations.

Message Configuration

discord

If the parameter is empty, it will not be used in the final message.

content

Content of a regular message from the Discord bot. discord content

webhook

Discord webhook configuration. discord webhook

enable

If enabled, the message will be a webhook.

avatar

Link to create the player’s avatar. If you change it, the link should contain <skin>.

content

Content of the webhook message.

embed

Discord embed message configuration. discord embed

enable

If enabled, the message will include an embed.

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

Link to the avatar of the embed message author. If you change it, the link should contain <skin>.

description

Description of the embed message.

thumbnail

Small image inside the embed message.

name

Field name inside the embed message.

value

Field value inside the embed message.

inline

If enabled, the field will be arranged vertically with other fields.

image

Main image inside the embed message.

timestamp

If enabled, the embed message will include the timestamp.

Footer of the embed message.

text

Text in the footer of the embed message.

icon-url

Image in the footer of the embed message.

IF YOU WANT TO ADD ANOTHER MESSAGE:

  1. Take the name from the "Message Types" list.
  2. Add it to message-channel.
yaml
message_name:
  content: ""
  webhook:
    enable: false
    avatar: "https://mc-heads.net/avatar/<skin>/32.png"
    content: ""
  embed:
    enable: false
    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

yml
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: ""
  destination:
    type: CHAT

enable

Enables or disables the functionality of the module

WARNING

  • Before enabling, insert the Discord bot token.
  • After enabling, IT IS RECOMMENDED to restart the server to avoid potential plugin issues.

token

Discord bot token for connection. You can use environment variables, for example ${VALUE}.

presence

discord presence

Bot Status Configuration

enable

Enables or disables the custom bot status.

status

ModeExplanation
UNKNOWN-
ONLINEOnline
DO_NOT_DISTURBDo not disturb (Online)
IDLEOnline but idle
INVISIBLEInvisible
OFFLINEOffline

activity

Bot activity in Discord.

enable

Enables or disables activity.

type
TypeExplanation
UNKNOWN-
STREAMINGStreaming
LISTENINGListening
WATCHINGWatching
CUSTOM-
COMPETINGCompeting
name

Name of the activity.

url

Link for the activity.

channel-info

discord channel info

Channel Information Configuration

enable

Whether channel information is needed.

ticker

Updates every certain interval of time

Whether to update or not

How often in ticks it should update

message-channel

List of message types and channel IDs in Discord.

For example, if I want a /ban command message from Minecraft to be sent to Discord:

  1. Copy the channel ID in Discord 1286666844358316083.
  2. Add CHAT: "1286666844358316083".
yaml
message-channel:
  COMMAND_BAN: "1286666844358316083"

destination

Where the message will be sent

HOW TO CHANGE THE DESTINATION?

Replace the value type: here and restart FlectonePulse using the /flectonepulse reload command. Additional settings will appear automatically.

TypeExplanationRequires additional configuration?
ACTION_BARMessage above the player's inventoryYes
BOSS_BARMessage at the top of the screenYes
BRANDMessage in F3No
CHATMessage in the chatNo
TITLEFull-screen messageYes
SUBTITLEFull-screen message (bottom line)Yes
TAB_HEADERMessage in TAB (top)No
TAB_FOOTERMessage in TAB (bottom)No
TOASTMessage in the top-right corner (achievement)Yes
Configuration for ACTION_BAR
yaml
destination:
  type: ACTION_BAR
  times:
    stay: 60

times

FieldExplanation
stayTime in ticks to hold the message
Configuration for BOSS_BAR
yaml
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

TypeExplanation
PROGRESSSingle line
NOTCHED_6Divided into 6 parts
NOTCHED_10Divided into 10 parts
NOTCHED_12Divided into 12 parts
NOTCHED_20Divided 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

Configuration for TITLE (or SUBTITLE)
yaml
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

FieldExplanation
fade-inTime in ticks for the message to appear
stayTime in ticks to hold the message
fade-outTime in ticks for the message to disappear
Configuration for TOAST
yaml
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)

WARNING

May cause delays, so not recommended for use

🔐 Permissions

📂 Path permission.yml → integration.discord

⚖️ Default

yml
discord:
  name: "flectonepulse.module.integration.discord"
  type: TRUE

name

Permission name

type

Permission type

TypeExplanation
TRUEAvailable to any player
FALSENot available to anyone, must be granted separately (e.g., using LuckPerms)
OPAvailable to server operators
NOT_OPAvailable to not server operators