
Velocity Limbo Handler
A simple plugin for handling limbo reconnection/handling
Описание
⚡ VelocityLimboHandler
🌀 A smart limbo & queue handler for Velocity
Keeps your players connected, calm, and coming back even when backend servers crash.
✨ Why VelocityLimboHandler?
- 🚦 Per-Server Smart Queue – players only wait for the server they were on, not behind others stuck elsewhere
- 📢 Queue Updates – automatic position notifications keep players informed
- 🔒 Protected Limbo – blocks unwanted commands to prevent bypasses
- 🛠️ Maintenance Support – respects whitelist & bypass permissions
- 🤝 Authentication Ready – seamless integration with authentication plugins such as LibreLogin or nLogin
👉 Full setup & advanced features in the Wiki.
Made to work with LOOHP's Limbo server, but any other server is also fine.
🧩 Compatibility
- 🖥️ Proxy: Velocity (all recent versions)
- 🎮 MC Versions: All versions
- 📜 License: MIT
🚀 Quick Install
- Grab the latest
.jarfrom Releases. - Drop it into your Velocity
pluginsfolder. - Restart the proxy (config files will generate).
- Adjust
config.yml+messages.ymlto your liking. - Restart once more — done! 🎉
⚙️ Config Highlights
# config.yml
limbo-name: "limbo" # The name of your limbo server
direct-connect-server: "lobby" # Where to send direct connections
task-interval: 3000 # Queue processing interval (milliseconds)
reconnect-batch-size: 8 # Maximum backend queues checked per processing run
queue-notify-interval: 30 # How often to tell players their position
queue-notify-batch-size: 64 # Maximum due notifications sent per dispatcher tick
disabled-commands: ["server","hub"] # Commands blocked in limbo
The batch limits smooth work across scheduler ticks. Increase them for faster catch-up on very large networks, or lower them to cap short CPU bursts on constrained proxies.
👉 Messages can be tweaked in messages.yml so your players see exactly what you want.
🖧 Proxy Setup Example
[servers]
lobby = "127.0.0.1:25566"
limbo = "127.0.0.1:25569"
# Keep normal logins on Lobby. VLH intercepts a loss of the current backend itself.
try = ["lobby", "limbo"]
[advanced]
# Required for VLH to recover players after an ungraceful backend disconnect.
failover-on-unexpected-server-disconnect = true
[forced-hosts]
"pvp.example.com" = ["pvp", "limbo"]
"build.example.com" = ["build", "limbo"]
🛡️ Permissions & Integrations
- Players get queued automatically, no setup required.
- Commands blocked per config.
- LibreLogin support ensures login/auth flow isn’t broken.
- Maintenance plugins are respected (bypass logic included).
🤝 Contributing
Pull requests are welcome! Just follow the style already in place.
Check CONTRIBUTING.md for details.
📖 License
Licensed under MIT, free to use, modify, and distribute, including in closed-source projects. See LICENSE for details.