DYNASTYPLUGINS
← All plugins
Community

DyDiscord

Link accounts, bridge chat and follow your server from Discord through your own bot.

DyDiscord · Download

Changelog

1.1.0Stable

DyDiscord 1.1.0

This update brings your server into Discord. A live status card shows whether the server is up and who is playing. Claims and random teleports from DyClaim and DyRTP appear in a channel you choose. Players get PlaceholderAPI placeholders and three new languages, and other plugins get a developer API. Every new system has its own switch. Account links, settings and translations are kept, and servers upgrade by replacing the JAR.

Server status card

What changed. DyDiscord could already answer /server when someone asked. Now one message in a channel always shows the current state.

  • The card shows Online or Offline, players (for example 3/50), the Minecraft version and TPS. TPS appears on Paper and its forks; Spigot does not report it, so the field is left out there.
  • DyDiscord edits the same message every interval-seconds (30–3600, default 60). It posts a new card only if the old one was deleted, so the channel never fills up.
  • On a normal shutdown the card turns red and shows Offline. After a crash it keeps the last state until the server is back.
  • Labels follow the bot language.
  • Settings in bot.yml: status-card.enabled, status-card.channel-id and status-card.interval-seconds. It is off by default and cannot share the console channel.
  • The bot needs View Channel, Send Messages and Embed Links in that channel.

Logs from DyClaim and DyRTP

What changed. DyDiscord now works together with the other DyPlugin plugins. Their events are posted as small coloured embeds:

SwitchPosted when
plugin-logs.dyclaim.claimsA claim is created or removed
plugin-logs.dyclaim.trustA player is trusted or untrusted in a claim
plugin-logs.dyclaim.transfersA claim changes owner, including market sales
plugin-logs.dyrtp.teleportsA random teleport finishes, with world and coordinates
  • Set plugin-logs.channel-id to turn the logs on; a blank channel turns them all off.
  • Each kind has its own switch, so you can, for example, log claims but not teleports.
  • DyClaim (1.1.0 or newer) and DyRTP are optional. DyDiscord finds them at startup and when they are enabled later.
  • Names are escaped for Discord, and the log never mentions anyone.
  • If Discord is slow, at most 50 lines wait; older ones are dropped instead of building up.

PlaceholderAPI

DyDiscord registers its own placeholders when PlaceholderAPI is installed. No eCloud download is needed.

PlaceholderShows
%dydiscord_linked%true if the player has linked a Discord account
%dydiscord_discord_name%The linked Discord name, or empty
%dydiscord_bot_connected%true while the bot is connected

The values come from memory, so scoreboards and tab lists never wait for the database. Switch: integrations.placeholderapi in config.yml.

German, Spanish and Russian

DyDiscord now ships complete Minecraft and Discord message files in German, Spanish and Russian, next to English and Turkish.

  • With lang: auto, players get these languages from their Minecraft language setting.
  • Players can choose with /dyd language de, es or ru. Administrators can set the game or bot language for everyone.
  • The bot language decides the Discord texts, including the account panel, the status card and the logs.
  • Commands stay English in these languages. Turkish keeps its translated command words.
  • The new files are created in the plugin folder and can be edited like the others.

MiniMessage

On Paper and Purpur, Minecraft messages can now use MiniMessage tags next to the usual & codes, for example <green>, <#55ff55> or <gradient:#5865F2:#55ffff>Linked!</gradient>. The Discord-to-Minecraft chat template accepts them too.

  • Existing message files keep working unchanged.
  • Spigot does not include Adventure, so there only & codes apply. DyDiscord does not bundle Adventure.
  • Player names, Discord names and chat messages are never read as tags.

Developer API

Other plugins can use dev.dydiscord.api.DyDiscordAPI:

  • getOnlineAccount(uuid) answers instantly for online players.
  • findByMinecraft(uuid) and findByDiscord(id) look up any account without blocking the server.
  • AccountLinkEvent and AccountUnlinkEvent fire on the main thread when a link is made or removed, by the player, the Discord user or an administrator.

bStats

DyDiscord now sends anonymous statistics to bStats: server and player counts, Minecraft and plugin versions, and a few DyDiscord charts (languages, chat bridge, console relay, role sync, status card, plugin logs and PlaceholderAPI use). No player names, Discord IDs or messages are sent. Turn it off with metrics.enabled: false, or for every plugin in plugins/bStats/config.yml.

Modern cards everywhere

Every bot message except relayed chat now uses Discord's newer container layout: a card with a coloured edge, a bold title and neat sections, instead of plain text or old-style embeds.

  • This covers private replies (errors, rate limits, account answers), help, /server, /players, /ip, /links and /status, dy! message commands, the console relay, the shutdown notice, the status card and the plugin logs.
  • The account panel and giveaways already used this layout.
  • Relayed chat stays plain text, and join, leave and death notices in the chat channel keep their small embeds, so conversations read naturally.
  • Nothing needs to be configured, and no extra bot permission is needed.

Smaller changes

  • New license. DyDiscord 1.1.0 and later use the DyDiscord Source-Available License 1.0, the same terms as DyClaim: free to use and modify on any server, no paid distribution, and distributed versions must share their source. Earlier versions keep the earlier GPL v3 notice with additional terms.
  • After choosing a language, the confirmation now names that language in the new language.
  • Slash commands are unchanged: /server, /players, /ip, /links, /link, /account, /unlink, /help and /status work as before.

Upgrading

  1. Stop the server.
  2. Back up the old JAR and the whole plugins/DyDiscord folder.
  3. Replace the JAR with one package: DyDiscord-1.1.0.jar, or DyDiscord-1.1.0-standalone.jar for servers without internet access at first start.
  4. Start the server. To use the new features, set status-card and plugin-logs in bot.yml and run /dyda reload.

Account links do not need to be made again. Returning to 1.0.2 is possible; players who chose German, Spanish or Russian then see the automatic language.

Verification

  • Automated tests. 718 tests passed: the 699 from 1.0.2 plus new ones for every new system, including the container cards.
  • Upgrade test on Purpur 1.20.4 with DyClaim, DyRTP and PlaceholderAPI, starting from the published 1.0.2 JAR: 19/19 checks passed. Custom settings and a saved Turkish preference were kept, the new languages could be chosen, the placeholders answered, a MiniMessage gradient arrived in colour and DyClaim and DyRTP kept working.
  • Spigot 26.3: 4/4. & codes applied and MiniMessage tags were shown as written.
  • Live Discord test on a test server: 9/9. The status card was posted and edited in place, DyClaim and DyRTP logs arrived, the card turned Offline on shutdown and was reused after a restart, and existing slash commands were left untouched. A second run with the final build checked that every message — status card, logs, console relay and shutdown notice — arrives as a container card (11/11).
  • The German, Spanish and Russian Discord texts are covered by automated tests but were not seen in a live Discord server. Folia and proxies remain outside the support claim.
1.0.2Stable

Added

  • /dyd and /dyda shortcuts with existing leaf permission checks.
  • Clearer EN/TR setup diagnostics and account messages.

Changed

  • Giveaway cards and private leave confirmation.
  • On-demand chat sender with queue limits and expiry.

Existing account links, custom settings and translations are preserved.

Before you upgrade

Stop the server and back up the full plugin folder before upgrading. Install one package per server.

Tested environments

Scoped source, automated and live relay checks documented on Purpur 1.20.4 / Java 21. This does not establish every human interaction or optional integration. No Folia or proxy support claim.

Cookie preferences

We use optional storage to remember your color theme. With your permission, we also measure visits and downloads.