Junction is a Floodgate addon for servers that are running Paper (and its forks). It allows administrators to automate permission assignments and execute edition-specific commands upon join and quit. This allows server admins to seamlessly manage the differences between editions, such as:
- Assigning Bedrock-specific prefixes or permission groups.
- Executing compensation commands automatically.
- Granting access to simplified sell menus or GUIs.
- Automatically assigns Bedrock Edition players to specific permission groups via LuckPerms or Vault.
- Execute console commands when players join or quit, with separate lists for Java and Bedrock editions.
- Includes internal placeholders (
{player},{uuid}) and supports PlaceholderAPI.
- Ensure your server is running Java 21+ and Paper 1.21+ (or a fork).
- Install Floodgate (Required for Bedrock player detection).
- Download the latest release of Junction and place it in your
pluginsfolder. - Optional Dependencies:
- LuckPerms or Vault or VaultUnlocked: Required only if you want to use the group assignment feature.
- PlaceholderAPI: Recommended if you want to use external placeholders in commands.
- Restart your server.
| Command | Permission | Description |
|---|---|---|
/junction |
None | Displays plugin version info. |
/junction reload |
junction.reload |
Reloads the configuration. |
| N/A | junction.admin |
Receive update notifications. |
config.yml
# Should debug mode be enabled for detailed logs?
debug: false
# This module automatically assigns Bedrock Edition players to a specific group.
permissions:
# Should this module be enabled?
enabled: false
# Which permission provider should be used?
# Available options: LuckPerms, Vault
provider: LuckPerms
# Which permission group should players be assigned to?
group: geyser
# This module automatically executes commands based on Minecraft editions.
# Available internal placeholders: {player}, {uuid}
# PlaceholderAPI support is enabled if installed.
commands:
# Should this module be enabled?
enabled: false
# Commands specific to Java Edition players.
java:
# List of console commands to execute when a player joins.
join:
- say Java player {player} joined
# List of console commands to execute when a player quits.
quit:
- say Java player {player} left
# Commands specific to Bedrock Edition players.
bedrock:
# List of console commands to execute when a player joins.
join:
- say Bedrock player {player} joined
# List of console commands to execute when a player quits.
quit:
- say Bedrock player {player} leftmessages.yml
# Settings related to messages sent by the plugin.
messages:
# Prefix for all messages sent by the plugin.
prefix: <color:#00D4FF><bold>Junction</bold> ➟ </color>
# Message displayed when the plugin is reloaded.
reloadSuccess: Plugin configuration has been reloaded successfully.
# Message displayed when the plugin fails to reload.
reloadFail: <red>Failed to reload plugin configuration! Check console for errors.</red>
# Message displayed when a new version of the plugin is available.
updateAvailable: 'A new version is available! <gray>(Current: <red>{current_version}</red>
| Latest: <green>{latest_version}</green>)</gray>'./gradlew buildThe compiled JAR will be in build/libs/.
For issues or questions, open an issue on GitHub.