VeloAuth
Complete authentication plugin for Velocity proxy with auto-login for premium players and secure registration/login for offline players.
What is VeloAuth?
VeloAuth handles all player authentication directly on your Velocity proxy, working together with PicoLimbo (or a similar limbo server) to manage login and registration before players reach your backend servers. Premium players are automatically logged in, while offline players use simple
/register and
/login commands.
Features
- ✅ Auto-login for premium players – Mojang account owners skip login automatically
- ✅ Secure offline player auth – Registration and login with BCrypt password hashing
- ✅ Authorization cache – Logged-in players reconnect instantly without re-entering passwords
- ✅ Brute-force protection – Automatic blocking after too many failed attempts
- ✅ Multi-database support – Works with MySQL, PostgreSQL, H2, and SQLite
- ✅ LimboAuth compatible – Migrate from LimboAuth without losing player accounts
Requirements
- Java 21 or newer
- Velocity proxy (API 3.4.0+)
- PicoLimbo or other limbo/lobby server
- Database: MySQL, PostgreSQL, H2, or SQLite
Quick Setup
Installation
- Download VeloAuth-1.0.0.jar from the releases page
- Place the file in your Velocity plugins/ folder
- Start Velocity – the plugin will create a config.yml file
- Stop Velocity and configure your database and limbo name in plugins/VeloAuth/config.yml
- Restart Velocity
Velocity Config
Make sure your
velocity.toml includes PicoLimbo as the lobby server:
Code (Text):
[servers]
lobby = "127.0.0.1:25566" # PicoLimbo
survival = "127.0.0.1:25565" # Your game server
try = ["survival"]
Database Config
Supported: H2, MYSQL, POSTGRESQL, SQLITE
Player Commands
| /register <password> <password> |
Create a new account |
| /login <password> |
Login to your account |
| /changepassword <old> <new> |
Change your password |
Admin Commands
| /unregister <nickname> |
veloauth.admin |
Remove a player's account |
| /vauth reload |
veloauth.admin |
Reload the configuration |
| /vauth cache-reset [player] |
veloauth.admin |
Clear authorization cache |
| /vauth stats |
veloauth.admin |
Show plugin statistics |
How It Works
- Player connects to Velocity
- VeloAuth checks if they're already logged in (cached)
- If not cached, player is sent to PicoLimbo
- Player types /login or /register
- VeloAuth verifies the password
- If correct, player is sent to backend server
LimboAuth Migration
VeloAuth is
100% compatible with LimboAuth databases:
- Stop LimboAuth on your backend servers
- Install VeloAuth on Velocity
- Configure VeloAuth to use the same database as LimboAuth
- Start Velocity – all existing accounts will work automatically
Support
Need help? Found a bug? Open an issue on GitHub or contact the developer.