Plugin Configuration

DiscordFlow is designed to be highly customizable through a set of simple YAML files. This guide explains each file and its primary settings.

config.yml (Main Configuration)

This is the primary configuration file. It controls which features are enabled and the main channels the bot uses.


# A unique name for this server. Used in multi-server setups.
server-name: "survival"

discord:
  # The default channel for chat sync and commands like !link.
  # This is the ONLY channel the plugin listens to for incoming messages.
  main-channel-id: "YOUR_CHANNEL_ID_HERE"
  webhook:
    # The name for the webhook that posts player chat messages.
    # IMPORTANT: Cannot contain the word "Discord".
    name: "Minecraft Sync"

features:
  chat:
    enabled: true
    # Optional: Send chat to a different channel. Leave blank to use main-channel-id.
    channel-id: ""
  join-leave:
    enabled: true
    # Example: Send join/leave messages to a separate logs channel.
    channel-id: "YOUR_LOGS_CHANNEL_ID_HERE"
  death-messages:
    enabled: true
    channel-id: "YOUR_LOGS_CHANNEL_ID_HERE"
  advancements:
    enabled: true
    channel-id: "YOUR_LOGS_CHANNEL_ID_HERE"
  linking:
    enabled: true
    # If true, users must link their accounts to send messages from Discord.
    required-to-chat: false

database:
  # How linking data is stored. "memory" is the only type currently supported.
  type: "memory"

discord-format:
  # Format for incoming messages from Discord.
  # Placeholders: %player%, %message%
  default: "&9[DSC] &7%player%&7: &f%message%"

  # Format for messages from unlinked Discord accounts.
  unverified: "&9[DSC]&7 [%player%]: &7%message%"

  mention-formatting:
    prefix: "&a@"
    suffix: "&7"

  # Role-specific formats. The role name is case-sensitive.
  roles:
    OWNER:
      priority: 100
      prefix: "&4&lOWNER &4"
      format: "&9[DSC] %prefix%%player%&7: &f%message%"
        

secret.yml (Bot Token)

This file holds your bot's secret token. It is kept separate for security.

Do not share this file or your token. Anyone with this token has full control over your bot.

# Place your Discord bot token here.
bot-token: "YOUR_BOT_TOKEN_HERE"
        

discord-messages.yml (Outgoing Message Formats)

This file controls the appearance of all embeds sent **from** Minecraft **to** Discord. You can customize colors, text, and use placeholders.

PlaceholderAPI is supported! You can use any PAPI placeholders (e.g., %player_health%) in the text fields of this file.

join:
  enabled: true
  embed:
    color: '#00FF00' # Green
    # %player_displayname% is a special internal placeholder.
    author_text: '%player_displayname% joined the server'

death:
  enabled: true
  embed:
    color: '#808080' # Gray
    # %death_message% is a special internal placeholder.
    author_text: '☠️ %death_message%'

advancement:
  enabled: true
  embed:
    color: '#FFD700' # Gold
    author_text: '%player_displayname%'
    # %advancement_title% & %advancement_description% are special placeholders.
    description: "🏆 **has made the advancement**\n**%advancement_title%**\n*%advancement_description%*"
        

For a full list of feature configurations (like console.yml, voice.yml, and role-sync.yml), please see their dedicated pages in the Wiki sidebar.