Frequently Asked Questions
Minecraft chat to Discord chat doesn't work
I need help with Minecraft group <-> Discord Role synchronization
How can I disable a feature/message?
In most cases by clearing a value in the config. option: ""
For example:
- DiscordChatChannelServerStartupMessage: ":white_check_mark: **Server has started**"
+ DiscordChatChannelServerStartupMessage: ""
For format options with embeds, you just set Enabled
to false
:
MinecraftPlayerLeaveMessage:
- Enabled: true
+ Enabled: false
Webhook:
Enable: false
AvatarUrl: "%botavatarurl%"
Name: "%botname%"
Content: ""
Embed:
Enabled: true
Color: "#ff0000"
Author:
ImageUrl: "%embedavatarurl%"
Name: "%username% left the server"
Url: ""
. . .
How can I change a notification message embed back to plain text?
By moving the value in Embed.Author.Name
to Content
and setting Embed.Enabled
to false
MinecraftPlayerLeaveMessage:
Enabled: true
Webhook:
Enable: false
AvatarUrl: "%botavatarurl%"
Name: "%botname%"
- Content: ""
+ Content: "%username% left the server"
Embed:
- Enabled: true
+ Enabled: false
Color: "#ff0000"
Author:
ImageUrl: "%embedavatarurl%"
- Name: "%username% left the server"
+ Name: ""
Url: ""
...
Is DiscordSRV compatible with BungeeCord?
No, but you can install the plugin on every Bukkit server. (Do not use the same token for more than 1 server!)
If you would like to have linked accounts shared across servers, you can connect your DiscordSRV instances to a MySQL database (Experiment_Jdbc
options)
Why won't messages send from Minecraft to Discord? I have TownyChat installed btw.
Towny's main channel's name is usually general
, instead of DiscordSRV's default, global
.
I reloaded the plugin/server and now it won't work.
Only reload the plugin using the plugin's specified reload command. (/discordsrv reload
)
If that doesn't work, restart your server. Some changes need this for them to take effect.
Plugins made specifically for reloading/stopping/starting plugins (and the built-in server /reload
command) can make those plugins stop working properly.
When I join/quit my server, a message isn't sent in the chat channel for me. What gives?
You have one of DiscordSRV's permissions to join/quit silently. To disallow this, give yourself or a group one of the following permissions depending on what you want to deactivate.
groups:
Owner:
permissions:
- -discordsrv.silentjoin
- -discordsrv.silentquit
- '*' #<-- "positive" permissions like this one should be AFTER the negated permissions
How do I fix the error "Unsupported major.minor version 52.0?"
Update the server's Java JRE version to Java 8
or contact your server provider and request an upgrade.
The plugin crashes when the server starts with the error "Caused by: java.lang.IllegalArgumentException: INVOKESPECIAL/STATIC on interfaces require ASM 5"
One of the libraries that DiscordSRV uses (Reflections) requires ASM Version 5 to work. You're supposedly running a server with an old ASM version (i.e. 4.x) such as kCauldron / Thermos. Sadly this is a server software dependent problem and we are unable to fix it within DiscordSRV without violating plugin guidelines.
We do not recommend the use of the following hybrid servers, they are outdated and likely contain bugs and security issues.
Fix for Thermos, Cauldron and early KCauldron
The SpecialSource library included with Thermos uses ASM4. Updating it to the latest version will fix the issue. Instructions for updating to ASM5:
- Navigate to the
libraries\net\md-5\SpecialSource\1.7-SNAPSHOT
folder of the server - Delete the SpecialSource-1.7-SNAPSHOT.jar file
- Download SpecialSource v1.7.4 from https://repo1.maven.org/maven2/net/md-5/SpecialSource/1.7.4/SpecialSource-1.7.4.jar
- Copy the jar file to the
libraries\net\md-5\SpecialSource\1.7-SNAPSHOT
folder - Rename the jar file you just copied to SpecialSource-1.7-SNAPSHOT.jar
Fix for KCauldron
The SpecialSource library included with KCauldron uses ASM4. Updating it to the latest version will fix the issue. Instructions for updating to ASM5:
- Navigate to the
bin\net\md-5\SpecialSource\1.7-SNAPSHOT
folder of the server - Delete the SpecialSource-1.7-SNAPSHOT.jar file
- Download SpecialSource v1.7.4 from https://repo1.maven.org/maven2/net/md-5/SpecialSource/1.7.4/SpecialSource-1.7.4.jar
- Copy the jar file to the
bin\net\md-5\SpecialSource\1.7-SNAPSHOT
folder - Rename the jar file you just copied to SpecialSource-1.7-SNAPSHOT.jar
Only show errors in console-channel
If you want to use your console-channel to only inform you about problems, you can achieve that by modifying the DiscordConsoleChannelLevels
option:
- DiscordConsoleChannelLevels: [info, warn, error]
+ DiscordConsoleChannelLevels: [error]
Block special console-output from appearing in console-channel
DiscordSRV allows you to hide phrases from appearing in console-channel. This can be achieved by making use of regular expressions.
Some basic "placeholders" you have to know:
RegEx escaping must be done with \\
instead of \
in config files
Here are some examples to visualize how it works:
Example 1: Block output of /save-all
DiscordConsoleChannelFilters: {"^Saving\\.\\.\\.$|^Saved the game$": ""}
- Before
- After
>> save-all
[Mon, 20. Apr 2020 04:20:69 CDT INFO] Saving the game (this may take a moment!)
[Mon, 20. Apr 2020 04:20:69 CDT INFO] Saved the game
>> save-all
Example 2: Hide lines which contain the string The updater found an update:
DiscordConsoleChannelFilters: {"^.*The updater found an update:.*$": ""}
Example 3: Replace the ip address of those that join the game:
DiscordConsoleChannelFilters: {"\\[\\/[0-9]+\\.[0-9]+\\.[0-9]+\\.[0-9]+(?::[0-9]+)?\\]": ""}
- Before
- After
[Mon, 20. Apr 2020 04:20:69 CDT INFO] Scarsz[/192.168.1.2:58076] logged in with entity id 564875 at ([world]0.0, 0.0, 0.0)
[Mon, 20. Apr 2020 04:20:69 CDT INFO] Scarsz logged in with entity id 564875 at ([world]0.0, 0.0, 0.0)
Can we op players from the discord console?
DiscordSRV by default blacklists the use of a handful of commands through the console channel through the DiscordConsoleChannelBlacklistedCommands
option.
Remove the "op"
value to allow the command to be used.
- DiscordConsoleChannelBlacklistedCommands: ["?", "op", "deop", "execute"]
+ DiscordConsoleChannelBlacklistedCommands: ["?", "deop", "execute"]
Why can't I control my music bot from Minecraft?
It's bad practice for a bot to listen to another bot's messages. That's why most if not all public music bots can't be controlled through another bot.
Where is the bot hosted?
On the server that DiscordSRV is used on. The bot is online when the server is online.
Can I modify the bot using javascript?
No. It's programmed in Java, not Javascript.
How can I show the player count in the game status?
This can be done by using PlaceholderAPI's %playerlist_<listName>_<list|amount|#>%
placeholder
in our DiscordGameStatus option. More info on this placeholder's syntax can be found here.
- Make sure you have PlaceholderAPI installed
- Once the PlaceholderAPI plugin is loaded, run
/papi ecloud download PlayerList
to install the PlayerList expansion - Run
/papi reload
to reload the PlaceholderAPI expansions - Read through the PlayerList documentation on how to use the placeholder
- You can test the output of the placeholder using the
/papi parse me <placeholder>
command
Why is the plugin red in the /plugins
output?
if the plugin is: | it means that: |
---|---|
green | the plugin is working |
red | the plugin is not working |
First thing you should do is check your server logs. If you need further help understanding the errors then join our discord server and create a ticket through the #create-a-ticket channel. Send a copy of what you find or the whole log file.
Where can I find the server log?
Minecraft servers store their logs in <server_directory>/logs/
. Search for a file explorer in your server's management interface and navigate to that directory. If you find a logs
folder search for the latest.log
file. Some providers have a separate page for logs and may hide the logs
folder.
On Aternos:
- Go to https://aternos.org/log/
On Minehut and server.pro:
- Go to the "
files
" tab in the left menu - Navigate to the root directory of your server
- From there navigate to
/logs/latest.log
What should I do with the server log?
- First of all, read it! I mean, that's what you do all the time when you run a server, isn't it? Try to locate any errors that have anything to do with DiscordSRV. If you're having trouble scrolling through the file you can use
Ctrl+F
to search the file for the phrase "DiscordSRV". This will highlight all occurrences of "DiscordSRV" which will make locating the error less difficult. - If you got the
latest.log
file or created a.txt
file with the necessary errors then join our discord server and create a ticket through the #create-a-ticket channel and send it there. - If you have trouble downloading the log file, copy/paste the text to a paste service (like mclo.gs). Copy the link that it gives you. Join our discord server and create a ticket through the #create-a-ticket channel, then send that link in your ticket.
Why do I get all the groups instead of just the one I want?
Check to make sure you don't have the *
permission in any of the groups that you're a part of. DiscordSRV has a discordsrv.sync.<group> permission
, and having the star perm ends up giving you the perm for every group you have synchronized. This is just one of many reasons why you shouldn't ever have the *
perm, or OP
for that matter.
The bot can't modify my roles, and I'm the Discord server owner?
This is a Discord limitation. Although bots can remove / add one role, they cannot use the endpoint that allows adding & removing as many roles as you want, which is how group-synchronisation achieves this. If you are trying to test group-synchronisation, either use an alt, or test it on another player.
What chat formatting codes can I use?
To format minecraft chat related options you can use:
- Legacy (Minecraft)
&r
and adventure&#abc123
OR
You cannot use both at the same time!