Compatibility
Minecraft: Java Edition
26.1.x
1.21.x
1.20.x
1.19.x
1.18.x
1.17.x
1.16.x
1.15.x
1.14.x
1.13.x
1.12.x
1.11.x
1.10.x
1.9.x
1.8.x
1.7.x
Platforms
Tags
Creators
Details
Licensed ARR
Published 10 months ago
SmartRejoin for Velocity
SmartRejoin is a modern alternative to older reconnect plugins, built with a highly customizable rule-based engine.
Features
- 🧠 Automatically sends players back to the server they disconnected from.
- ⚙️ Define custom rules based on a player's last server. For example, send players from a
bedwars_game to the most populatedbedwars_lobby. - ⚖️ Distributes players across lobbies by connecting them to the server with the most or least players, or to a random one.
- 🛡️ Configure a safe fallback server (or a pool of servers) for new players or when a target server is offline.
- ⚡ Reload the configuration on-the-fly with a simple command.
Installation
- Download the plugin
- Place the plugin into your Velocity proxy's
/pluginsdirectory. - Restart your Velocity proxy. A
config.ymlfile will be generated in/plugins/SmartRejoin/.
Commands & Permissions
| Command | Alias | Permission | Description |
|---|---|---|---|
/smartrejoinreload |
/srr |
smartrejoin.command.reload |
Reloads the config.yml file. |
Configuration (config.yml)
The configuration is split into three main parts: Fallback, Default Rule, and Custom Rules.
Quick Start
For the simplest setup, just install the plugin. By default (rule: SAME), it will automatically reconnect players to the server they left. New players will be handled by your velocity.toml configuration. To use the plugin's fallback for new players, set fallback.enabled: true.
Example Use Cases
- BedWars Lobby: If a player leaves
bedwars_12, send them to thebedwars_lobbywith the most players. - Persistent Survival: If a player leaves
survival, always send them back tosurvival. - Random Lobby: If a player was in any
lobby_server, send them to another randomlobby_server. - AFK Escape: If a player was in an
afkserver, send them to thelobbywith the fewest players.
Full Configuration Example (different from default one!)
# --------------------------------------------------- #
# SmartRejoin Configuration #
# --------------------------------------------------- #
# --- General Settings ---
settings:
# If true, the plugin will print informational messages to the console.
# Critical errors are always logged.
logging_enabled: true
# --- Fallback Configuration ---
# Used for new players or when a target server from a rule is offline.
fallback:
# If 'enabled', this plugin's fallback logic will be used.
enabled: true
# 'RANDOM': Connects to a random server whose name CONTAINS the 'name' value.
# 'SERVER': Connects to a specific server with an exact 'name'.
type: RANDOM
name: "lobby"
# --- Default Rule ---
# Applied if a player's last server doesn't match any custom rules below.
default:
# 'SAME': Connects to the exact same server. (Most common)
# 'FALLBACK': Immediately uses the fallback rule.
# 'SMART': Finds a related lobby. See comments below for details.
rule: SAME
# Arguments for the 'SMART' rule.
# Example: ['MOST', '%last_seen%_lobby']
arguments: []
# --- Custom Rules ---
# Define specific redirection rules here. They are checked in order.
rules:
stay_on_survival:
last_seen:
# Condition: Player's last server name must be an exact match.
type: EQUALS
name: "survival"
where_to_join:
# Action: Connect to a server with this exact name.
type: EQUALS
name: "survival"
bedwars_lobby_fallback:
last_seen:
# Condition: Player's last server name must contain "bedwars".
type: CONTAINS
name: "bedwars"
where_to_join:
# Action: Find all online servers containing "bedwars_lobby" and
# connect to the one with the MOST players.
type: MOST
name: "bedwars_lobby"


