Compatibility
Minecraft: Java Edition
Platforms
75% of ad revenue goes to creators
Support creators and Modrinth ad-free with Modrinth+Creators
Details
DiscordNickSync is a plugin for Minecraft Java Edition that lets your players sync their Discord nickname to their Essentials nickname, and vice versa, via DiscordSRV.
I know that DiscordSRV already allows syncing from Minecraft to Discord, but it doesn't allow syncing the other way around. So I created this plugin to do that!
When Nicknames are Synced
DiscordNickSync currently only syncs nicknames when a player does any of the following:
- Logs in
- Links their Discord to Minecraft via DiscordSRV
- Changes their Essentials nickname.
- Uses the command
/discordnick sync
There is currently no timer to sync nicknames from Discord to Minecraft. If this is a feature you would want, create an issue, and I will consider adding it.
Mentions
DiscordNickSync also allows syncing of Discord mentions!
- Type
@<nickname>
in minecraft chat to also ping the linked account on Discord. - Mentions from Discord also ping online players in Minecraft.
- Optionally configure a sound and a title message for the mentioned player.
Note that the way I've set it up, it changes the message in Minecraft to use Discord's nickname. I do not currently know a way around this and would like to change this. If you know another way to implement it, please let me know on Our Discord!
Default Files
Config.yml
# DO NOT CHANGE THIS
internal:
plugin-version: "X.X.X"
# DO NOT CHANGE THIS
# What name to use by default for both Minecraft and Discord.
# This can be changed by the player as long as they have the permission discordnick.use
# Can either be "minecraft", "discord", or "off"
default-sync: minecraft
# What to replace whitespace characters with when syncing from Discord to Minecraft.
# Keep this as "" to remove whitespace characters.
# Set this to " " to keep as spaces.
# Set this to anything else to replace it with that.
replace-whitespaces-with: ""
# Whether to combine whitespace characters together before replacing them with the value above.
merge-whitespaces-before-replacing: true
# Type @<minecraft username|essentials nickname|discord nickname> in minecraft chat to also ping the linked account on Discord.
# Mentions also work when pinged on Discord, except for the mention color.
mentions:
# Set to false to disable mentions.
enabled: true
# The sound that a player hears when they are mentioned.
# You must manually disable MinecraftMentionSound in DiscordSRV's config.yml if you don't want multiple sounds.
play-sound:
enabled: true
# Can be any value listed under "Java Edition values" on this webpage: https://minecraft.wiki/w/Sounds.json#Sound_events
sound: "block.note_block.bell"
# Any decimal number between 0 and 1.
volume: 1.0
# Any decimal number between 0 and 2.
pitch: 1.0
# Display a title to the player who is mentioned.
send-title:
enabled: true
# Type {mentioner} for the nickname of the person who mentioned you
# Color formats are supported
title: "&eYou have been mentioned"
# Type {mentioner} for the nickname of the person who mentioned you
# Color formats are supported
subtitle: "&eby &6&l{mentioner}"
duration:
# The duration in ticks for the title to fade in.
fade-in: 5
# The duration in ticks for the title to stay on the screen.
stay: 70
# The duration in ticks for the title to fade out.
fade-out: 5
# The color of the mention in chat.
# Set to "" to disable
color: "&e"
updater:
# Whether to notify admins for new snapshot releases. Admins will still be notified on stable releases.
notify-on-dev-release: false
Language.yml
colors:
default: "&e"
highlight: "&6"
error: "&c"
error_highlight: "&6"
messages:
# {d} for default color
# {h} for highlight color
# {e} for error color
# {eh} for error highlight
reload_success: "{h}DiscordNickSync {d}configuration reloaded."
# Additional placeholders: {player} {from} {to}
sync_success: "{d}Synced {h}{player} {d}({from} → {to})"
# Additional placeholders: {count}
sync_all_success: "{d}Synced {h}{count} {d}players."
# Additional placeholders: {player}
sync_disabled: "{h}{player}{d} has syncing disabled."
# Additional placeholders: {nickname} {from} {to}
nickname_updated: "{d}Your {to} nickname has been updated to {h}{nickname}{d}."
# Additional placeholders: {from} {to}
mode_set: "{d}Your {to} nickname will now use your {h}{from} {d}nickname"
sync_notif: "{d}If you would like to configure how your nick is synced, type {h}/discordnick"
mode_off: "{d}Your nicknames will no longer be synced between Minecraft and Discord."
errors:
# {d} for default color
# {h} for highlight color
# {e} for error color
# {eh} for error highlight
no_permission: "{e}You do not have permission to use this command."
# Additional placeholders: {player}
player_not_found: "{eh}{player} {e}not found or offline"
# Additional placeholders: {player}
sync_not_linked: "{eh}{player} {e}has not linked their Discord account."
# The usage will be shown after this.
invalid_command: "{e}Invalid command usage!"
only_players: "{e}Only players can use this command."
Commands
/discordnick < discord | minecraft | off >
/discordnick sync [ all | <username> ]
/discordnick reload
Permissions
discordnick.use
- Allows players to:
- Set their own nickname sync mode
- Run
/discordnick sync
for themselves.
- Default:
true
- Allows players to:
discordnick.admin
- Allows admins to:
- Run
/discordnick sync
for all players or individual players. - Reload the config with
/discordnick reload
- Run
- Default:
op
- Allows admins to:
Support
If you have any issues, or want to request a feature, please create an issue, and I will try my best to help!