ℹ️ Note
As explained in the Project Status Update, this project is now in Maintenance Mode. This means that I currently do not plan to implement any more features into the addon (PRs are welcome though!). I will try my best to make bug fixes and support the latest Minecraft versions, but I cannot guarantee these fixes will be made in a timely manner, if they are made at all.
Simple Voice Chat Discord Bridge
⚠️ Warning
This is not an official addon. Please don't go to the Simple Voice Chat discord server for support! Instead, please use GitHub issues for support. I'll try to provide support as soon as possible but there is no guarantee for how long it will take.
Simple Voice Chat Discord Bridge is a Simple Voice Chat addon for Fabric and Paper/Purpur that makes a bridge between Simple Voice Chat and Discord to allow for players without the mod to hear and speak. For example, this addon allows Bedrock edition players connected through Geyser to use voice chat!
Changelog: https://github.com/amsam0/voicechat-discord/blob/main/CHANGELOG.md
Installation and Usage
First, ensure that you have Simple Voice Chat installed and correctly configured. Please refer to the Simple Voice Chat wiki for more info.
ℹ️ Note
Simple Voice Chat Discord Bridge requires version 2.4.11 or later of Simple Voice Chat. Please ensure you have updated!
Then, you'll want to download the latest version of Simple Voice Chat Discord Bridge that is compatible with your Minecraft version.
ℹ️ Note
If you are using the Fabric mod, it requires the Fabric API.
Finding the configuration file
Make sure to run your server once with Simple Voice Chat and Simple Voice Chat Discord Bridge installed to generate Simple Voice Chat Discord Bridge's configuration file.
Fabric: Simple Voice Chat Discord Bridge's configuration file should be located at config/voicechat-discord.yml
.
Paper/Purpur: Simple Voice Chat Discord Bridge's configuration file should be located at plugins/voicechat-discord/config.yml
.
Setting up a bot
This guide is based off of and uses images from DiscordSRV's Basic Setup guide.
First, create an application at discord.com/developers/applications by clicking New Application
. Choose the name that you want your bot to be called.
On the left, click Bot
and click Add Bot
and confirm with Yes, do it!
.
Copy the token and disable Public Bot
.
Now, open the configuration file with a text editor. Replace DISCORD_BOT_TOKEN_HERE
with the token you copied. It should look something like this:
bots:
- token: TheTokenYouPasted
vc_id: VOICE_CHANNEL_ID_HERE
To invite the bot to a server, go to General Information
and copy the Application ID.
Go to
discord.com/api/oauth2/authorize?client_id=YOUR_APPLICATION_ID_HERE&permissions=36700160&scope=bot
but replace YOUR_APPLICATION_ID_HERE
with the application ID you just copied. Choose the server you want to invite your bot to. Make sure not to disable any of its permissions.
Now, follow the steps at support.discord.com/articles/Where-can-I-find-my-User-Server-Message-ID
to enable Developer Mode in Discord. Then, right click the voice channel you want the bot to use as a bridge between Simple Voice Chat and Discord and click Copy ID
.
⚠️ Warning
There cannot be more than one person speaking in the voice channel at a time, or there will be weird audio glitches. We recommend limiting bot voice channels to 2 users to ensure that this does not cause an issue.
Now, reopen the configuration file with a text editor. Replace VOICE_CHANNEL_ID_HERE
with the channel ID you copied. It should look something like this:
bots:
- token: TheTokenYouPasted
vc_id: TheChannelIDYouPasted
You can redo this process for however many bots you want. There is some info in the configuration file about having multiple bots.
ℹ️ Note
The amount of bots you have is equivalent to the amount of people who can be connected to Simple Voice Chat through Discord at one time. So if you have 3 bots, up to 3 people can use the addon at the same time.
Troubleshooting
If you run into errors while trying to use a bot, please read the console. The errors will always include the vc_id of the bot, which allows you to identify which bot caused the error.
Using it in-game
⚠️ Warning
There cannot be more than one person speaking in the voice channel at a time, or there will be weird audio glitches. We recommend limiting bot voice channels to 2 users to ensure that this does not cause an issue.
Most of Simple Voice Chat Discord Bridge's functionality is exposed through the /dvc
command. This section will go through all of its subcommands.
For commands that take string arguments, you can wrap them in quotes to escape spaces.
/dvc start
Starts a voice chat session using the first available bot. You may have to wait a few seconds for it to start. After it starts, join the voice channel as instructed. You should be able to hear players speak, and other players should be able to hear you speak.
If you are having issues while in a voice chat session, you can try restarting it by using /dvc start
again.
/dvc stop
Stops the current voice chat session and disconnects the bot.
/dvc group
Allows you to list, create, join, leave and remove groups.
/dvc group list
Gives you a list of all groups.
/dvc group create <name> [password] [type] [persistent]
Allows you to create a group.
Arguments:
name
(required): The name of the group.password
(optional, defaults to""
(no password)): The password of the group. If you don't want a password but want to change the group type or persistency, just pass an empty string:""
type
(optional, defaults tonormal
): Can benormal
,open
orisolated
.normal
: Players in a group can hear nearby players that are not in a group, but not vice versaopen
: Players in a group can hear nearby players and nearby players can hear players in the groupisolated
: Players in a group can only hear other players in the group
persistent
(optional, defaults tofalse
): Iftrue
, the group will not be removed once all players leave. Instead, it has to be removed using/dvc group remove <ID>
/dvc group join <ID>
Allows you to join a group using an ID from /dvc group list
.
/dvc group info
Gives you info about your current group.
/dvc group leave
Allows you to leave your current group.
/dvc group remove <ID>
Allows you to remove a persistent group with no players in it using an ID from /dvc group list
.
/dvc togglewhisper
Allows you to whisper.
/dvc reloadconfig
If you are a operator (specifically permission level 2 or higher on fabric) or if you have the voicechat-discord.reload-config
permission, you can use the /dvc reloadconfig
subcommand to reload
the config without have to reload/restart the server. Using this subcommand will stop all running bots.
/dvc checkforupdate
Checks for an update to the addon by first contacting GitHub's API, and then if a new version is found, using Modrinth's API to provide a link to that version's download page.
This is done automatically on server startup. By default, the update message (if there is an update) is sent to operators when they join the server. This can be disabled by disabling the
alert_ops_of_updates
option in the configuration file. However, this will not disable logging update messages to the console on startup.
Roadmap
Future
Disclaimer: The items in this list are purely ideas and there is no guarantee of them being implemented.
- Catch config errors such as not in config when getting bots
- An option to lock the voice channels when they are not in use.
- Reduce volume of crouching players in the audio that goes to discord. This is currently possible but not yet implemented
- Action bar HUD for groups showing players in your group
- Notifications for groups (a message is sent to you when someone joins/leaves the group you're in)
- Inventory GUI for groups (this would need an abstraction between Bukkit's API and Fabric's sgui library, and would also make supporting 1.19.2+ on Fabric impossible)