Feature: Proximity Voice Chat
Proximity Voice Chat is a powerful, immersive feature that links players' in-game locations to Discord voice channels. Players who are close to each other in Minecraft are automatically grouped together in temporary voice channels, allowing for natural, location-based voice communication.
- The Account Linking feature (
features.linking.enabled
) must be set totrue
inconfig.yml
. - The Discord Bot must have the Connect and Move Members permissions.
- Players must have their Minecraft and Discord accounts linked to use this feature.
How It Works for Players
- Link your Minecraft and Discord accounts using the
/discordlink
and!link
commands. - In Discord, join the designated "Lobby" voice channel (configured by the server admin).
- Join the Minecraft server. As you move around and get close to other linked players who are also in the Lobby, the bot will automatically create a new "Proximity Chat" channel and move you and the nearby players into it.
- As you move away from the group and are alone again, the bot will automatically move you back to the Lobby channel.
The "Networking" System
DiscordFlow uses an intelligent "networking" or "chain" system for voice. This means that communication is not limited to a simple bubble around you. If Player A is close to Player B, and Player B is close to Player C, all three players (A, B, and C) will be placed in the same voice channel, even if A and C are far apart. This creates large, seamless audio regions perfect for towns, events, or group activities.
Configuration: voice.yml
This feature is controlled entirely by the voice.yml
file. It is only available for the Spigot/Paper version of the plugin.
# Set to 'true' to enable this feature.
enabled: false
# --- Discord Channel Setup ---
# The ID of the Category where proximity voice channels will be created.
# The bot needs permission to manage channels in this category.
category-id: "YOUR_VOICE_CATEGORY_ID_HERE"
# The ID of the "Lobby" voice channel.
# Linked players must join this channel first to be moved by the system.
lobby-channel-id: "YOUR_LOBBY_CHANNEL_ID_HERE"
# --- Proximity Settings ---
proximity-distance:
# The maximum horizontal distance (X/Z axes) for players to form a voice link.
horizontal: 80
# The maximum vertical distance (Y axis) for players to form a voice link.
vertical: 40
# --- Performance Settings ---
# How often (in server ticks) to update player positions and voice networks.
# 20 ticks = 1 second. Lower is more responsive but uses more server resources.
update-interval-ticks: 20
# --- Voice Channel Naming ---
# The name format for newly created voice channels.
# Use %id% as a placeholder for a unique number (e.g., "Proximity Chat #1").
channel-name-format: "Proximity Chat #%id%"
Key Settings Explained
-
category-id
: The ID of a Voice Channel Category in your Discord server. The bot will create and delete its temporary channels here. To get the ID, enable Developer Mode in Discord, right-click the category name, and "Copy Category ID". -
lobby-channel-id
: The ID of the voice channel that players must join to enter the proximity system. When a player is no longer near anyone, they will be moved back here. -
proximity-distance
:horizontal
: The max distance on the X and Z axes.vertical
: The max distance on the Y axis. This is useful for separating players in caves from those on the surface.
-
update-interval-ticks
: Controls how frequently the plugin checks player locations. The default of20
(1 second) is a good balance for most servers. For very large servers, you might increase this to40
(2 seconds) to reduce load.