Velocity: The Modern Minecraft Server Proxy Explained
"The modern, next-generation Minecraft server proxy."
PaperMC/Velocity · github.com
If you're running multiple Minecraft servers and want players to jump between them without relogging, you need something to route them. That's what Velocity does - it's a modern server proxy that handles thousands of players, shuffling them between different backends while keeping everything running smoothly.
What Velocity Does
A server proxy sits between players and your actual game servers. Instead of connecting directly to individual servers, players connect to one address, and the proxy decides where to send them.
Velocity rebuilt this concept from the ground up for modern Minecraft. It's not a collection of patches piled on top of something old - it's architected specifically to be fast, maintainable, and flexible. The codebase is clean (something developers actually enjoy reading), and the API is powerful enough that plugin creators can do sophisticated things without fighting the system.
The project has three core goals. A codebase that's genuinely pleasant to maintain. Raw speed that handles thousands of concurrent players. And a plugin API that avoids mistakes from earlier proxies.
Why You'd Want This
Server networks are everywhere in Minecraft. Someone runs a survival world, a creative realm, a PvP arena, and a lobby - all separate servers, all needing to talk to each other. Without a proxy, players log out of one and back into another, breaking the experience entirely.
With Velocity, players stay connected to one address. The proxy invisibly shuffles them between backends. When someone moves from the lobby to survival, their session carries over. No disconnection message. No re-authentication.
At scale, this becomes critical.
You might run Paper servers alongside modded ones. Velocity supports Paper, Sponge, Fabric, and Forge implementations in the same network. Other server software may work, but these four get first-class support. Mix and match without architectural headaches.
And the proxy lets you customize routing. New players land on a lobby. Veterans skip straight to survival. PvP tournaments route to a dedicated minigame server. The proxy controls everything without touching server configs.
Getting Started with Velocity
You need Java 11 or later. Grab the latest build from the PaperMC downloads page - they provide pre-built JARs, so no compiling required.
java -jar velocity-*.jarRun that once. Velocity generates a config file and exits. Open velocity.toml and start configuring your network.
[servers]
lobby = "localhost:25565"
survival = "localhost:25566"
minigames = "localhost:25567"
[server-options]
try-list = ["lobby"]This routes three backend servers through the proxy. New players land on the lobby first. Adjust based on your network structure, restart Velocity, and players can connect to your proxy address instead of individual servers.
You can polish the server list entry using a Minecraft MOTD Creator to give your network a professional appearance in the client.
Key Features That Matter
Instant server switching. Players move between servers without logging out. Session data carries over automatically. No tedious reconnect screens or authentication loops.
Multi-implementation support. Paper, Sponge, Fabric, Forge - Velocity handles them all. Mix different server software in one network. This is surprisingly rare and genuinely useful for complex setups.
Modern plugin API. Developers hook into connection events, chat, damage calculations, and more. The API is well-designed and avoids mistakes baked into older proxies.
Proven performance. Built for thousands of players on actual networks handling real traffic. Not theoretical - demonstrated in production. The codebase prioritizes efficiency from the ground up.
Authentication handling. The proxy manages login sequences, online/offline modes, and authentication servers. Players authenticate once, then the proxy routes them smoothly.
Things That Trip People Up
Most proxy problems come from misconfiguration, not the proxy itself. Your backend servers need to know a proxy is in front of them - configure them to expect and trust proxy connections, or they'll silently reject handoffs.
Velocity needs dedicated resources. It's lighter than a game server, but it's still a Java application running 24/7. Don't run it on hardware that's already maxed out. I've seen setups where the proxy itself becomes the bottleneck simply because nobody allocated enough memory.
Port forwarding matters. A lot.
Your proxy gets the public-facing port, and backend servers live behind it on a private network. I've seen people accidentally expose backend servers to the internet - this defeats the entire purpose and opens serious security holes. When setting up domains for your network, configure DNS carefully. A free Minecraft DNS service can simplify management if you're not already using custom DNS.
Velocity doesn't automatically sync player data between different server software. Plugin data on a Paper server won't appear on a Fabric server. You need a shared database or custom sync logic if you're mixing implementations and sharing inventory or progression. But this catches a lot of people off guard when they first try running mixed server types.
Plugin version compatibility matters too. A plugin built for Velocity 3.x might not work on 4.x. Check compatibility before updating, especially if you're running many plugins.
Alternatives Worth Knowing
BungeeCord is the original server proxy, still widely deployed. It's battle-tested, proven, and the community knows how to troubleshoot it inside and out. Velocity is newer with a cleaner architecture, but if you need maximum stability and knowledge base, BungeeCord exists.
Waterfall is a maintained fork of BungeeCord. It fixes some bugs and stays true to the original design. If you like BungeeCord's philosophy but want quality-of-life improvements, this is the middle ground.
Choose Velocity if you're starting fresh and want modern design. The codebase is easier to understand, the API is more flexible, and performance is comparable. None of these are objectively wrong - they're just different philosophies. Your choice depends on whether you prioritize latest design (Velocity) or maximum compatibility and community knowledge (BungeeCord).


