DiscordSRV
DiscordSRV
The most powerful, configurable, widely loved, open-source Discord bridge plugin out there.
Build server - get the absolute latest builds (or old ones) here
Competition - See why you should be using DiscordSRV over the competitors
DiscordSRV's Discord server - come here for quick support and to tell us feature requests
Source at GitHub
Wiki on GitHub
Intended usage
Using this plugin, you are able to give players the ability to chat in-game to chat with players on your Discord server as well as having people on the Discord server be able to chat with people on the server- this is useful for the situation of someone not being at their computer and being able to talk in-game.
As well as that, this plugin also has a remote console feature. You can designate a text channel for the plugin to listen on where messages sent to that channel are run as commands by the server console. You should restrict sending this channel to a developer or high ranking role only. Due to how Discord's permissions work, though, you can have some server roles being able to see the console, yet not being able to send messages in that channel, thus creating a read-only console for trusted staff members.
Both the chat and console link are toggleable through the configuration file. Some, but not all, options can be refreshed with /discord reload, by an op. VanishNoPacket permissions like silent join/quit, fake join/quit and join without announcing are checked when sending player join messages in the chat channel.
Install
It's recommended to go to DiscordSRV's wiki at https://github.com/Scarsz/DiscordSRV/wiki/Installation for picture instructions or watch one of the vidoes below to walk you through the installation.
If you want a straight-forward install, though, you can just follow these steps:
- Create a new application at https://discordapp.com/developers/applications/
- On the application's page, go to the "Bot" tab, click "Add Bot", and confirm
- Optional: set your bot's avatar. If you don't do it now, you can later by command.
- Enable the SERVER MEMBERS INTENT and MESSAGE CONTENT INTENT options under "Privileged Gateway Intents" on the bot tab
- Click the copy button under "Token" on the bot tab, we'll be using it later
- Install the plugin, run & stop the server, then open the configuration file
- Paste the token you copied earlier into the BotToken value
- Go to https://scarsz.me/authorize & paste your application's Client ID value to the page
- Find your client ID in the "General Information" tab
- In the config option labeled Channels, input the Discord channel ID you want to be for your chat under "global"- you can set more channels up here and their linked channels.
- If you are using TownyChat, change the channel to "general" instead of "global"
- For reference, to obtain a channel ID, go to the cog on the bottom left of Discord, go to the appearance tab, enable developer mode. From there you can right click a guild, channel, user, or role and there will be a "Copy ID" option
- Optionally add a console channels ID in the config to access your server console from Discord
- Run through all the config options, you'll be surprised with how many features this plugin has
- Profit
Supported plugins
DiscordSRV implements with a fair amount of plugins for chat and vanish functionality. We recommend VentureChat by Aust1n46 but plugins such as Herochat, VentureChat, Essentials, Premium/Super vanish, VanishNoPacket, and Multiverse all have functionality in DiscordSRV.
Commands/permissions
/discord
All of DiscordSRV's commands can be exposed from /discord. This includes but isn't limited to /discord toggle which toggles sending Discord messages back/forth for you- tell your players about this command!
discordsrv.chat
Allows people to have their chat sent to Discord. Go figure. Given by default, only exists so you can negate this permission from people/groups.
OP
All the admin commands for DiscordSRV require you to be an OP. To see the help, run /discordsrv in-game.
FAQ
How do I fix the error "Unsupported major.minor version 52.0?"
Update the server's Java JRE version to Java 8. <1.8 is unsupported.
I reloaded the plugin/server and now it won't work
DON'T RELOAD THE PLUGIN. IT BREAKS IT.
When I join/quit my server, a message isn't sent in the chat channel for me. What gives?
You have one of VanishNoPacket's/Essentials' permissions to join/quit silently. To disallow this, give yourself or the group one of the following depending on what you want to allow.
-discordsrv.silentjoin -discordsrv.silentquit
Donations
First off, thank you from the bottom of my heart for the pizza. If you would like to donate, go to https://paypal.me/Scarsz. $10 is the suggested amount but you can donate however much you would like- anything is a massive thank you from me. In the note put your Discord username and if you're in DiscordSRV's server you'll be set as a donator and you'll receive some neat perks in the future. If you donated without the note, send me a PM on Discord and I'll manually check it.
Developers
If you want to interface DiscordSRV with your plugin, you can do so by adding the Maven dependency or adding the plugin jar to your project. For an example of this, see https://github.com/Scarsz/DiscordSRV-ApiTest. Be sure to add "DiscordSRV" to your plugin's plugin.yml depends/softdepends list.
Data usage
Data collection
Anything and everything shown at https://bstats.org/plugin/bukkit/DiscordSRV will be visible to the public with your server included in the statistics. This is only for statistics, no private information of your server is sent. If you don't want your server included in this, specify the config option "MetricsDisabled" and set it to "true" in the config.
Update checking
I have absolutely no clue why you would want to disable this, but if you do, set the "UpdateCheckDisabled" config option to "true".
@ThisUsernameIsMine
There is a little bug in the latest official build. Please use build DiscordSRV-Build-9.1-SNAPSHOT-147 from dev-Server
Edit: New version is up :)
Wonderful/great plugin, but for some reason commands aren't working on Discord (i.e. to see online players etc.). It doesn't respond to anything i type.
Chat works however.
(running latest compiled 1.10.2 Spigot)
@CobKurtain
Join the Discord server mentioned in the description for help
@CraftYourWay
It's a thought, yes
@leejuly29
Released in build 9
any chance to add custom commands?
Hey ! On my server we can't receive the message from minecraft but we can have the discord's one when we are IG, can someone help me please ? We are in 1.9.4 but it was working
I need help. I was able to set everything up and I can send messages from discord to minecraft but nothing from minecraft to Discord
Discord add new feature server nicknames. Can you show the the nickname instead user name in minecraft.
Error spamming my console - http://pastebin.com/bwNUuiGp
@Kiyomashi
Join the Discord channel. Can't help you if you don't give me any errors.
Hey :)
Thx for updating to 8.1 but, failed to compile it :/
Can you please help me, but i don't know what's the problem.
Regards
Kiyo
@Kinomora
Works completely on my 1.9.2 server, join the Discord server in the plugin description and we'll help you out
Hey, this plugin looks amazing! But sadly, it doesn't work on 1.9.2 servers quite yet. The last two builds I tried, build8 and build7.1 both fail to load for my 1.9.2 bukkit server.
Hoping this gets updated soon :3 Very interested in using this plugin!
@Dysthymical
Just an update, feature is in build 8
@ShadowedDreamer
Join the Discord channel at the top of the page and ask there
I followed the instructions as best i could, but it is not working for me.. I am running 1.9. Could there possibly be a tutorial video? I'm good but i have my moments :P
Also how about appear server shutdown and on message? It would be good .
Perfect plugin!!! I really need this.
I have some question. Can I see the message which is from Discord to MC on my server's console? I want just log every chat message to my log file.
@Dysthymical
Unfortunately a lot harder than it sounds because Discord doesn't actually go by @[name], it uses @<user id>- that's what makes spaces in names possible with mentions. It's something that I want to add but I honestly don't see it being done soon, maybe in the future, though.
In the server, if I type @everyone then all Discord members are notified. However, you can't mention specific Discord members like @Dysthymic but you can in Discord. It's very weird, but could you make it so you can call out individual members from in-game?
This plugin is amazing, my staff absolutely love it!