MailboxGUI-DiscBridge connects MailboxGUI delivery events to DiscordSRV notifications on
Spigot, Paper, and Purpur backend servers, with LOCAL mode for standalone servers and
NETWORK_NODE mode for Velocity-style or BungeeCord-style MailboxGUI network setups.
Wiki sections
Overview
Wiki Version: 1.1.1
This wiki is written for MailboxGUI-DiscBridge 1.1.1. DiscBridge 1.1.1 requires
MailboxGUI 5.1.0 or newer. MailboxGUI 5.1.1 or newer is recommended for Vault2.0
custom currency support and matching language updates. It is a standalone addon
plugin, not a bundled MailboxGUI module and not a Velocity proxy plugin.
MailboxGUI-DiscBridge 1.1.1 is the current release.
Release title: Chinese Language Update.
Special thanks to nice for contributing the updated Simplified Chinese
(zh_cn) language files and the new Hong Kong Traditional Chinese
(zh_hk) language files for MailboxGUI-DiscBridge 1.1.1.
Updated Simplified Chinese language file: zh_cn.
Added Hong Kong Traditional Chinese language file: zh_hk.
Updated Simplified Chinese Discord message template file: disclanguage/messages_zh_cn.yml.
Added Hong Kong Traditional Chinese Discord message template file: disclanguage/messages_zh_hk.yml.
Added zh_hk support for /mbdiscord language <language>.
Added zh_hk support for language: "zh_hk" in config.yml.
Added zh_hk support for discord-messages.default-language: "zh_hk".
The language synchronizer can update old default zh_cn values to the new contributed translation while preserving server-owner custom edits.
The Discord message template synchronizer can update old default zh_cn Discord message values while preserving server-owner custom edits.
DiscBridge runs on Spigot, Paper, or Purpur backend servers. It listens for
MailboxGUI mail delivery events and sends Discord notifications through a local
DiscordSRV instance.
Use mode: LOCAL for normal standalone servers. Use
mode: NETWORK_NODE on exactly one backend when MailboxGUI network mode is
enabled across a Velocity-style or BungeeCord-style server network.
What's New in 1.1.1
Updated Simplified Chinese in-game language file: language/messages_zh_cn.yml.
Added Hong Kong Traditional Chinese in-game language file: language/messages_zh_hk.yml.
Updated Simplified Chinese Discord message template file: disclanguage/messages_zh_cn.yml.
Added Hong Kong Traditional Chinese Discord message template file: disclanguage/messages_zh_hk.yml.
Added zh_hk language selection, config language, and default Discord message language support.
Special thanks to nice for contributing language/messages_zh_cn.yml, language/messages_zh_hk.yml, disclanguage/messages_zh_cn.yml, and disclanguage/messages_zh_hk.yml.
What's New in 1.1.0
Book Letter Discord DM notifications for MailboxGUI 5.1.0 Book Letter deliveries.
Updated COD package {price} placeholder support using MailboxGUI 5.1.0 codPriceText.
Localized Discord DM and channel message files under /plugins/MailboxGUI-DiscBridge/disclanguage/.
New /mbdiscord language <language> command for each player's individual Discord DM language.
Direct migration from 1.0.x custom config.ymlmessages.* templates into disclanguage/messages_en.yml.
Migration support for the temporary unreleased root messages.yml test-build layout.
Requirements
MailboxGUI 5.1.0 or newer.
DiscordSRV installed on the Bukkit/Paper/Purpur backend where DiscBridge runs.
Java 17 or newer.
Spigot, Paper, or Purpur backend server, not Velocity itself.
Spigot/Paper/Purpur 1.18.2 through 1.21.11.
Spigot/Paper/Purpur 26.1.x and 26.2.x.
Redis is required for network server mode, but not for normal single-server installs.
MailboxGUI 5.1.0 or newer is required for Paper/Purpur 26.2.x support. MailboxGUI
5.0.1 does not support 26.2.x sign updating correctly. MailboxGUI 5.1.1 or newer is
recommended for Vault2.0 custom currency support. Dynmap markers are not supported by
MailboxGUI on 26.1.x or 26.2.x, but core MailboxGUI features and DiscBridge
notifications do not require Dynmap.
Players must link their Minecraft account with DiscordSRV before DiscBridge can send
them Discord DMs.
Install MailboxGUI 5.1.0+ first. DiscBridge 1.1.1 will not run without MailboxGUI and DiscordSRV. MailboxGUI 5.1.1+ is recommended for Vault2.0 custom currency support.
Installation
Stop the backend server.
Install MailboxGUI 5.1.0 or newer.
Install DiscordSRV on the backend where DiscBridge will run.
Place the MailboxGUI-DiscBridge jar in the server plugins folder.
Start the server once to generate config, Discord message language, in-game language, and data files.
The final 1.1.0 system does not use
/plugins/MailboxGUI-DiscBridge/messages.yml as an active message file.
Discord templates are in /plugins/MailboxGUI-DiscBridge/disclanguage/.
Operating Modes
LOCAL Mode
LOCAL is the default mode. Use it for standalone servers and
single-backend setups. Install MailboxGUI, DiscordSRV, and MailboxGUI-DiscBridge on
the same backend. DiscBridge listens to local MailboxGUI delivery events and does not
subscribe to MailboxGUI network Redis events.
LOCAL mode diagnostic for standalone servers where MailboxGUI, DiscordSRV, and DiscBridge run together.
NETWORK_NODE Mode
NETWORK_NODE is for Velocity-style or BungeeCord-style networks using MailboxGUI network
mode. Install MailboxGUI on every backend that uses mail, enable MailboxGUI network
mode on those backends, then install DiscordSRV and MailboxGUI-DiscBridge on only one
backend.
Set DiscBridge mode: NETWORK_NODE on that one backend. That backend acts
as the Discord notification node. Other backends do not need DiscordSRV or
DiscBridge unless you intentionally run separate notification systems.
DiscBridge does not run on the proxy itself. It reads Redis and network settings from
MailboxGUI; DiscBridge has no Redis or MySQL config of its own. If
NETWORK_NODE is selected but MailboxGUI network mode is disabled,
DiscBridge disables safely with clear console errors.
NETWORK_NODE diagnostic showing DiscBridge running as the single Discord notification node for a MailboxGUI network.
Which Mode Should I Use?
Use LOCAL for one Minecraft backend.
Use LOCAL if DiscordSRV and MailboxGUI run on the same standalone server.
Use NETWORK_NODE for a MailboxGUI network where one backend should send all Discord notifications.
Do not install DiscBridge on the proxy. Install it on a backend server.
DiscordSRV Setup
DiscBridge uses DiscordSRV for account linking and Discord delivery. Configure
DiscordSRV first, confirm the bot is online, and have players link with
/discord link.
The bot must be able to send direct messages for player DMs. If using the admin mass
mail channel notice, the bot also needs access to the configured channel and permission
to send messages there.
language controls in-game /mbdiscord command messages.
discord-messages.default-language is the fallback Discord message
language. It is used when a player has not selected a Discord DM language, and it is
always used for admin/API mass-mail channel notices. Player-selected Discord languages
do not affect channel notices.
Hong Kong Traditional Chinese Discord default
discord-messages:
default-language: "zh_hk"
Supported Chinese language codes are zh_cn, zh_hk, and
zh_tw. Supported native names include 简体中文,
繁體中文(香港), and 繁體中文.
Discord DM and channel templates are no longer stored in config.yml.
Edit /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml instead.
Network Setup with MailboxGUI
Standalone Setup
Install MailboxGUI.
Install DiscordSRV.
Install MailboxGUI-DiscBridge.
Set mode: LOCAL.
Configure DiscordSRV.
Link account with /discord link.
Enable notifications with /mbdiscord enable.
Test with /mbdiscord admin testdm <player> and /mbdiscord admin testchannel.
Velocity/BungeeCord-Style Network Setup
Install MailboxGUI on every backend that uses mail.
Enable MailboxGUI network mode on every backend.
Set up shared MySQL/MariaDB and Redis in MailboxGUI. Redis is required for network server mode.
Install DiscordSRV and MailboxGUI-DiscBridge on only one backend.
Set DiscBridge mode: NETWORK_NODE on that backend.
Do not install DiscBridge or DiscordSRV on other backends unless intentionally running separate notification systems.
Use /mbdiscord admin mode and /mbdiscord admin status to confirm the node is active.
Send test mail from another backend and confirm the NETWORK_NODE backend sends the Discord notification.
Admin status output showing NETWORK_NODE, MailboxGUI network mode, duplicate protection, update channel, and notification counters.
Notification Behavior
Individual Mail
Player Classic Letter, Book Letter, package, COD package, COD item-currency payment,
returned COD, and money mail can send Discord DMs when eligible. Admin
single-recipient mail and API/system single-recipient mail can also send Discord DMs.
Discord DM Language Selection
Individual Discord DMs use the recipient's selected Discord DM language if one is
set. Otherwise, DiscBridge uses discord-messages.default-language.
/mbdiscord language English
/mbdiscord language Spanish
/mbdiscord language Español
/mbdiscord language German
/mbdiscord language Deutsch
/mbdiscord language zh_cn
/mbdiscord language zh_hk
/mbdiscord language zh_tw
This command changes only that player's individual Discord DM language. It does not
change admin/API mass-mail channel notice language.
DM Eligibility
direct-messages.enabled must be true.
The recipient must be linked with DiscordSRV.
The recipient must have /mbdiscord enable.
If the player is online, online DMs must be allowed globally or by player setting.
The recipient must not ignore the sender.
The recipient must not ignore admin/server mail for admin-like mail.
Admin/API Mass Mail
Default behavior is one Discord channel notice only. DiscBridge does not DM every
recipient by default. Optional mass DMs are disabled by default.
If mass DMs are enabled, DiscBridge checks actual eligible recipients, counts only
eligible recipients, honors the configured cap and queue settings, and can skip mass
DMs while relying on the channel notice if the eligible count is over the cap.
Admin/API mass-mail channel notices always use
discord-messages.default-language. Player-selected Discord DM languages
do not affect channel notices. If optional queued mass DMs are enabled, those queued
individual DMs use each recipient's selected Discord DM language when set.
Message Templates and Placeholders
Discord DM and channel templates live in
/plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml.
dm-book-letter:
- "📬 You received a book letter from {sender} on {server}."
- "Check your mailbox, a public Post Office box, or a Post Office NPC in-game."
dm-cod-package:
- "📦 You received a COD package from {sender} on {server}."
- "Price: {price}"
- "Check your mailbox, a public Post Office box, or a Post Office NPC in-game."
dm-cod-item-currency-payment:
- "💜 You received a COD item-currency payment from {sender} on {server}."
- "Payment: {price}"
- "Check your mailbox, a public Post Office box, or a Post Office NPC in-game."
The {price} placeholder supports MailboxGUI 5.1.0
codPriceText, including Vault money, item currency, XP, saved
item/template currency, and combined COD prices.
Player Commands
Command
Purpose
/mbdiscord help
Shows the default player help page.
/mbdiscord help 1
Shows player help page 1.
/mbdiscord help 2
Shows player help page 2.
/mbdiscord status
Shows personal notification, online DM, ignore, and link status.
/mbdiscord enable
Enables personal Discord mail notifications.
/mbdiscord disable
Disables personal Discord mail notifications.
/mbdiscord online on
Allows Discord DMs while the player is online.
/mbdiscord online off
Disables Discord DMs while the player is online unless the server default allows them.
/mbdiscord online toggle
Toggles the player online DM preference.
/mbdiscord language <language>
Sets only the player’s individual Discord DM message language.
/mbdiscord ignore <player>
Ignores player-origin mail notifications from a sender.
/mbdiscord unignore <player>
Removes a sender from the ignore list.
/mbdiscord ignorelist
Shows ignored player senders.
/mbdiscord ignoreadmin
Ignores admin/server mail notifications.
/mbdiscord unignoreadmin
Allows admin/server mail notifications again.
Player command help page showing status, notification toggles, online DM controls, and ignore options.Player status output showing notification preferences, online DM state, and ignore settings.
Discord DM Language Command
/mbdiscord language <language> changes only the player's
individual Discord DM language.
/mbdiscord language English
/mbdiscord language Spanish
/mbdiscord language Español
/mbdiscord language German
/mbdiscord language Deutsch
/mbdiscord language zh_cn
/mbdiscord language zh_hk
/mbdiscord language zh_tw
Supported Chinese language codes are zh_cn, zh_hk, and
zh_tw.
Admin Commands
Command
Purpose
/mbdiscord admin status
Shows hook status, operating mode, MailboxGUI network mode, update channel, duplicate protection, mass DM queue, preferences, and notification stats.
/mbdiscord admin mode
Shows LOCAL or NETWORK_NODE diagnostics and whether the selected mode is usable.
/mbdiscord admin reload
Reloads config, Discord message language files, in-game language files, and player data.
/mbdiscord admin updatecheck
Checks the website release system for current/latest/type/summary details.
/mbdiscord update
Prepares an available update for staging.
/mbdiscord update confirm
Downloads and stages a newer valid MailboxGUI-DiscBridge jar for the next restart.
/mbdiscord admin testdm <player>
Sends a diagnostic direct-message test to a linked player.
/mbdiscord admin testchannel
Sends a diagnostic message to the configured admin mass mail channel.
/mbdiscord update and /mbdiscord update confirm stage a jar for
the next restart. They do not hot-swap the running plugin. If a newer jar is already
staged, DiscBridge tells admins to restart instead of staging again.
Admin command help page showing diagnostics, reload, update, and test commands.Admin status output for LOCAL mode.Test DM command confirming DiscordSRV account linking and bot direct-message access.Test channel command confirming the configured admin mass-mail channel can receive bot messages.
Permissions
Permission
Purpose
mailboxguidiscbridge.use
Use player commands.
mailboxguidiscbridge.online
Use online DM preference commands.
mailboxguidiscbridge.ignore
Use player ignore, unignore, and ignorelist commands.
mailboxguidiscbridge.ignoreadmin
Use ignoreadmin and unignoreadmin commands.
mailboxguidiscbridge.admin
Base admin access.
mailboxguidiscbridge.admin.reload
Reload bridge config, Discord message language files, in-game language files, and player data.
mailboxguidiscbridge.admin.status
View admin status and mode diagnostics.
mailboxguidiscbridge.admin.test
Run test DM and test channel diagnostics.
mailboxguidiscbridge.admin.update
Run update checks and stage updates.
Discord Message Languages
Discord DM and channel message templates are stored in
/plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml.
These are separate from the in-game command language files in
/plugins/MailboxGUI-DiscBridge/language/.
Each file contains the same Discord template keys translated for that language.
Player-selected Discord languages are used for individual DMs only. Admin/API
mass-mail channel notices always use discord-messages.default-language.
In-Game Command Language Files
In-game /mbdiscord command messages are stored in
/plugins/MailboxGUI-DiscBridge/language/messages_*.yml.
messages_de.yml
messages_en.yml
messages_es.yml
messages_fr.yml
messages_it.yml
messages_ja.yml
messages_ko.yml
messages_nl.yml
messages_pl.yml
messages_ru.yml
messages_sv.yml
messages_uk.yml
messages_zh_cn.yml
messages_zh_hk.yml
messages_zh_tw.yml
Discord Message Template Files
Discord DM and channel templates are generated under
/plugins/MailboxGUI-DiscBridge/disclanguage/. These files are separate
from the in-game command language files.
disclanguage/messages_de.yml
disclanguage/messages_en.yml
disclanguage/messages_es.yml
disclanguage/messages_fr.yml
disclanguage/messages_it.yml
disclanguage/messages_ja.yml
disclanguage/messages_ko.yml
disclanguage/messages_nl.yml
disclanguage/messages_pl.yml
disclanguage/messages_ru.yml
disclanguage/messages_sv.yml
disclanguage/messages_uk.yml
disclanguage/messages_zh_cn.yml
disclanguage/messages_zh_hk.yml
disclanguage/messages_zh_tw.yml
Supported language codes: en, de, es, fr, it, ja, ko, nl, pl, ru, sv, uk, zh_cn, zh_hk, zh_tw.
Supported Chinese language codes are zh_cn, zh_hk, and
zh_tw. The matching files include messages_zh_cn.yml,
messages_zh_hk.yml, messages_zh_tw.yml,
disclanguage/messages_zh_cn.yml,
disclanguage/messages_zh_hk.yml, and
disclanguage/messages_zh_tw.yml.
Special thanks to nice for contributing the updated Simplified Chinese
(zh_cn) and new Hong Kong Traditional Chinese (zh_hk) language
files: language/messages_zh_cn.yml, language/messages_zh_hk.yml,
disclanguage/messages_zh_cn.yml, and
disclanguage/messages_zh_hk.yml.
disclanguage/messages_zh_cn.yml was updated by nice, and
disclanguage/messages_zh_hk.yml was added by nice.
The final 1.1.0 system does not use a root
/plugins/MailboxGUI-DiscBridge/messages.yml file for active Discord
templates.
Upgrading From 1.0.x
DiscBridge 1.1.0 introduced a direct upgrade path for 1.0.x custom Discord messages,
and DiscBridge 1.1.1 keeps that path while adding the Chinese language update.
In 1.0.x, customized Discord templates were stored in config.yml under
messages:. In 1.1.0 or newer, they are stored in
/plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml.
Back up /plugins/MailboxGUI-DiscBridge/.
Replace the old jar with MailboxGUI-DiscBridge 1.1.1.
Start the server.
Confirm /plugins/MailboxGUI-DiscBridge/disclanguage/messages_en.yml was created.
Confirm /plugins/MailboxGUI-DiscBridge/language/messages_zh_hk.yml and /plugins/MailboxGUI-DiscBridge/disclanguage/messages_zh_hk.yml were created.
Confirm old customized config.ymlmessages.* templates were copied into disclanguage/messages_en.yml.
Confirm the other translated messages_*.yml files were created from bundled defaults.
Confirm config.yml no longer contains the old messages: section after config sync.
Confirm no active root /plugins/MailboxGUI-DiscBridge/messages.yml file exists.
If a server used an earlier unreleased 1.1.0 test build with a root
/plugins/MailboxGUI-DiscBridge/messages.yml, DiscBridge migrates its
English templates into disclanguage/messages_en.yml, backs up the old
root file, and removes it. The root file is not part of the final active 1.1.0
message system.
Config and Language Synchronization
The config synchronizer upgrades older layouts to the 1.1.0 layout.
Existing custom values are preserved where possible.
The old default server-name ImagineCraft is changed to generic Minecraft Server if it was not customized.
The Discord message synchronizer adds missing disclanguage/messages_*.yml files and preserves customized templates where possible.
The in-game language synchronizer adds missing command language keys and preserves customized language values where possible.
The language synchronizer can update old default zh_cn values to the new contributed translation while preserving server-owner custom edits.
The Discord message template synchronizer can update old default zh_cn Discord message values while preserving server-owner custom edits.
MailboxGUI-DiscBridge 1.1.1 generates language/messages_zh_hk.yml and disclanguage/messages_zh_hk.yml when missing.
Backups are placed under /plugins/MailboxGUI-DiscBridge/backups/.
Update System
DiscBridge 1.1.1 uses the website release system. Config exposes only the update
channel: release, beta, or alpha. Update URLs are
built into the plugin.
/mbdiscord update confirm stages the jar for the next restart.
The staged download is validated as a newer MailboxGUI-DiscBridge jar.
Website-powered update check showing current version, latest version, update type, summary, and download information.
Troubleshooting
Test DM Works, Real Mail Does Not
Check mode: LOCAL vs NETWORK_NODE.
In NETWORK_NODE, make sure MailboxGUI network mode is enabled and the Redis subscriber is active.
Check that MailboxGUI is 5.1.0 or newer and DiscBridge is 1.1.0 or newer. DiscBridge 1.1.1 or newer is recommended for the updated zh_cn and new zh_hk language files.
Check that the recipient has run /mbdiscord enable.
Check recipient online DMs if the recipient is online.
Check DiscordSRV linking.
Check /mbdiscord ignoreadmin and ignored player settings.
Book Letter Notifications Not Sending
Use MailboxGUI 5.1.0 or newer.
Use MailboxGUI-DiscBridge 1.1.0 or newer for Book Letter notification support.
Confirm disclanguage/messages_en.yml or the selected language file contains messages.dm-book-letter.
Confirm the recipient is linked through DiscordSRV and has enabled DiscBridge notifications.
Check /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml, not a root messages.yml.
Discord DM Language Not Changing
Make sure the player ran /mbdiscord language <language>.
Use a supported code or name: en, de, es, fr, it, ja, ko, nl, pl, ru, sv, uk, zh_cn, zh_hk, zh_tw.
Check /mbdiscord status for the selected Discord message language.
Confirm the matching file exists under /plugins/MailboxGUI-DiscBridge/disclanguage/.
Test an individual DM. Player-selected languages do not affect channel notices.
Mass-Mail Channel Language Not Changing
Mass-mail channel notices always use discord-messages.default-language.
Player-selected Discord DM languages do not affect channel notices.
discord-messages:
default-language: "en"
Edit the matching /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml
file, then run /mbdiscord admin reload. Do not edit a root
messages.yml; it is not the final active message file.
COD Item-Currency Price Blank or Incomplete
Use MailboxGUI 5.1.0 or newer so delivery events include codPriceText.
Use MailboxGUI-DiscBridge 1.1.0 or newer for COD price text support.
Confirm the selected/default Discord message language file uses {price} in dm-cod-package and dm-cod-item-currency-payment.
Check /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml, not a root messages.yml.
NETWORK_NODE Disables on Startup
MailboxGUI network mode is not enabled on that backend.
DiscordSRV is missing on the DiscBridge backend.
NETWORK_NODE Does Not Notify
Run /mbdiscord admin mode and confirm Mode: NETWORK_NODE.
Confirm the MailboxGUI hook, DiscordSRV hook, and MailboxGUI network mode are active.
Install DiscBridge and DiscordSRV on only one backend that should act as the notification node.
Check console for the NETWORK_NODE subscriber startup message.
Send real mail from another backend and verify the one DiscBridge backend receives the network delivery payload.
No Mass Mail DMs
This is normal by default. DiscBridge sends a channel notice only unless
admin-mass-mail-direct-messages.enabled is set to true.
Online Player Not Receiving DM
Default behavior disables online DMs. The player can run
/mbdiscord online on, or the server can allow online DMs globally.
Update Staged but Not Applied
Restart is required. The update command stages the jar for next restart and does not
update the running plugin immediately.
Multiple NETWORK_NODE Backends
Only one NETWORK_NODE backend is recommended. Duplicate event protection
exists, but it is not intended as multi-node clustering.
Testing Checklist
Run these commands after installation or upgrade:
/mbdiscord admin status
/mbdiscord admin mode
/mbdiscord admin reload
/mbdiscord admin testdm <player>
/mbdiscord admin testchannel
/mbdiscord language
/mbdiscord language Spanish
/mbdiscord language Español
/mbdiscord language zh_cn
/mbdiscord language zh_hk
/mbdiscord language zh_tw
/mbdiscord status
Test these deliveries:
Classic Letter DM
Book Letter DM
Package DM
COD package with Vault money
COD package with item currency
COD item-currency payment mail
Returned COD package
Money mail
Admin one-recipient mail
Admin/API mass-mail channel notice
Optional queued mass-mail DMs if enabled