
DiscordSync
Link your account to Discord and configure your plugin.
DiscordSync
DiscordSync is a powerful and efficient Minecraft plugin designed to bridge the gap between your Minecraft server and Discord community. It allows players to link their accounts, synchronizing ranks and roles in real-time, and provides rewards for server boosters.
✨ Features
- Account Linking: Secure 6-digit code verification system to link Minecraft and Discord accounts.
- Role Synchronization: Automatically syncs LuckPerms ranks with Discord roles.
- Boost Rewards: Customizable rewards for Discord server boosters with configurable commands and cooldowns.
- Slash Commands: Native Discord slash commands like
/profileto view linked accounts. - Multilingual Support: Support for English, Spanish, and Turkish out of the box.
- Webhook Integration: Log all sync activities to a Discord channel via webhooks.
- Dynamic Placeholders: Use
%server_name%and%server_ip%in messages and embeds.
🚀 Installation
- Dependencies: Ensure you have LuckPerms installed (highly recommended).
- Download: Place the
DiscordSync-1.2.0.jarinto your server'spluginsfolder. - Start: Start the server to generate the default configuration files.
- Configure:
- Edit
plugins/DiscordSync/config.ymlwith your Bot Token and Guild ID. - Map your ranks to Discord roles in
plugins/DiscordSync/ranks/permissions.yml.
- Edit
- Restart: Restart the server or use
/discordsync reload(if available) to apply changes.
# Main configuration for DiscordSync
# All user-facing messages have been moved to the 'messages' folder.
language: "es" # Supported: en, es, tr
server-name: "SERVERNAME"
server-ip: "play.example.net"
cooldowns:
sync-seconds: 10
profile-seconds: 10
unsync:
confirm-timeout-seconds: 20
boost-rewards:
enabled: false
reward-commands:
- "give %player% diamond 1"
cooldown-days: 30
discord:
# Settings related to the Discord server (guild)
guild:
guild_id: "YOUR_GUILD_ID"
update_nickname: true
# Placeholders: %discord_name%, %minecraft_name%
nickname_format: "%discord_name% - %minecraft_name%"
# Settings related to the Discord Bot
bot:
token: "BOT_TOKEN"
channel_id: "VERIFICATION_CHANNEL_ID"
webhook-url: "YOUR_WEBHOOK_LOGS_URL"
# Embed color settings. Colors are in RGB format (0-255).
embed-colors:
main: { r: 88, g: 101, b: 242 }
success: { r: 0, g: 255, b: 0 }
fail-invalid: { r: 255, g: 0, b: 0 }
fail-expired: { r: 255, g: 100, b: 0 }
help: { r: 100, g: 100, b: 255 }
Lenguage English for DiscordSync
# English Language File for DiscordSync
general:
no-permission: "You don't have permission to use this command."
only-players: "Only players can use this command."
error:
title: "Error"
description: "An error occurred, please try again: %error_message%"
discord:
already-synced: "Your account is already synced!"
not-synced: "Your account is not synced."
unsync-success: "Your account has been unlinked."
unsync-failed: "Could not unlink your account. Please try again."
unsync-confirm: "Type /unsync confirm within %seconds%s to unlink your account."
unsync-expired: "Confirmation expired. Run /unsync again to continue."
sync-cooldown: "Please wait %seconds%s before using /sync again."
sync-code: "Your account sync code is: %code%. Click the 'Verify' button in the message and enter the code."
webhook-sync-success: "Minecraft player `%player_name%` has synced their account with Discord user `%discord_tag%`." # This will be replaced by embed
webhook:
embed-title: "User Account Linked"
embed-description: "A Minecraft player has successfully linked their account."
field-mc-nick: "Minecraft Nick"
field-mc-uuid: "UUID"
field-discord-user: "Discord User"
field-status: "Status"
status-verified: "Verified"
bot:
General bot messages
starting: "Discord bot is starting." login: "Bot logged into the server: %bot_name%" token-required: "Bot token is missing, please enter your bot's token in the config.yml file." failed-start: "Bot failed to start: %error_message%" channel-id-required: "Enter your channel ID in the channel_id section of the config.yml file." embed-sent: "The verification message has been sent to Discord."
Slash commands
slash-commands: registering: "Loading slash commands..." registered: "Slash commands have been registered."
Help command
help-command: name: "help" description: "Shows the list of available commands."
Profile command
profile-command: name: "profile" description: "Shows who is linked to a Minecraft nickname." option-nick: "nick" option-nick-description: "Minecraft nickname to look up." cooldown: "Please wait %seconds%s before using this command again." not-found: "Not user found." embed-title: "%server_name% - Discord Sync" embed-description: | - Nick Minecraft: %minecraft_name% - Discord ID: %discord_id% - DiscordUsername: %discord_tag% - Rank: %rank% embed-footer: "%server_name% - Discord Sync"
Main verification embed text
embed-main: title: "%server_name% Account Verification!" description: | Welcome to the %server_name% verification! To access all features and sync your roles, please link your account.
**How does it work?**
1. Join the server: `%server_ip%`
2. Use the command `/sync` in the chat.
3. You will receive a unique code. Click the 'Verify' button below and enter it!
Thank you for being part of our community!
footer: "%server_name% | Verification System"
button-verify: "Verify"
button-tutorial: "Tutorial"
modal-title: "Account Linking"
modal-input-label: "Verification Code"
modal-input-placeholder: "Example: ABC123"
Verification result embeds
embed-success: title: "Success!" description: "Your Minecraft account has been successfully linked." embed-fail-invalid: title: "Linking Error" description: "The code you entered is incorrect or does not exist. Please try again." embed-fail-expired: title: "Linking Error" description: "Your linking code has expired. Please generate a new one on the Minecraft server."
Help embed
embed-help: title: "Help Commands" description: "Here is the list of available commands:"
sync:
Role sync messages
role-given: "The role has been assigned: %msg%" role-failed: "Could not assign the role: %msg%" role-removed: "The role has been removed: %msg%" role-removal-failed: "Could not remove the role: %msg%"
Sync messages
successful: "Your account has been linked successfully!" error: "Invalid or already used code! Please get a new code in-game." nickname: not-configured: "Nickname format or guild ID is not configured. Skipping nickname update." guild-not-found: "Could not find the configured guild with ID: %guild_id%. Skipping nickname update." success: "Successfully updated nickname for %discord_tag% to '%new_name%'." error: permission: "Failed to update nickname for %discord_tag%. Reason: MISSING PERMISSION - %permission_name%" hierarchy: "Failed to update nickname for %discord_tag%. Reason: HIERARCHY - Cannot modify a user with a higher or equal role." other: "Failed to update nickname for %discord_tag%. Reason: %error_message%" member-not-retrieved: "Could not retrieve member with ID %discord_id% to update nickname. Reason: %error_message%"
boost: rewards: granted: "Boost reward delivered. Thanks for boosting!" revoked-mc: "Your boost rewards were removed. Thanks for supporting the server!" revoked-dm: "You stopped boosting the server. Your boost rewards were removed. Thanks for supporting us!"
## 🛠 Commands & Permissions
### In-Game Commands
- `/sync` - Generate a pairing code. (`discordsync.use`)
- `/unsync` - Unlink your Discord account. (`discord.sync.use`)
- `/message-discord-send` - Send/Refresh the verification embed in Discord. (`discordsync.admin`)
### Discord Commands
- `/profile <nick>` - View the Discord profile linked to a Minecraft nickname.
- `/help` - View available bot commands.
## 📄 Documentation
For more detailed information on configuration, rank mapping, and troubleshooting, visit our Online Documentation.
---
Developed with ❤️ by **Ikari Development** and **Imperior Development** (Advvy & AlexClient)
Сервер для плагина DiscordSync - как у профи
Плагин DiscordSync создан для серверов: на своём сервере вы настраиваете его под себя и решаете, кому играть. Создать сервер с плагином DiscordSync для друзей можно за пару минут - BungeeHost всё уже подготовил.
