🔀
VPS

As a player community grows, a single Minecraft server often stops being enough. Most server owners eventually want to split game modes into separate parts, such as a lobby, a survival world, and a minigames server, while letting players hop between them smoothly without disconnecting and reconnecting. The standard approach is to place a proxy in front of several backend servers. This guide walks you through setting up Velocity, the modern proxy, and honestly compares it with BungeeCord and Waterfall.

How a Minecraft Network Proxy Works

A proxy is a program that accepts player connections on port 25565 and routes each one to one of the backend Paper/Spigot servers. Players see only a single IP or domain, but behind the scenes there may be many servers split by role. When a player runs a command or steps on a portal, the proxy moves them to another server instantly, without dropping the connection.

The main benefits are that you can scale the network without limits, isolate the load of each game mode, and restart one sub-server without affecting players on the others.

What Is Velocity and Why It Is Recommended

Velocity is a high-performance proxy built by the PaperMC team. It is designed to be secure and to handle large player counts far better than older proxies. It uses a modern forwarding system that encrypts player information between the proxy and the backend, making impersonation much harder. Velocity requires Java 17 or newer (Java 21 recommended) and has its own plugin ecosystem that is separate from Bukkit/Spigot plugins.

Waterfall, a fork of BungeeCord, has been officially deprecated and reached end-of-life (EOL) by the PaperMC team, which now recommends everyone migrate to Velocity. If you are starting a new network in 2026, you should choose Velocity from the outset.

Velocity vs BungeeCord vs Waterfall

FeatureVelocityBungeeCordWaterfall
Development statusActiveMaintained (legacy)Deprecated (EOL)
PerformanceHighestModerateModerate
Forwarding securityModern (encrypted)LegacyPartial legacy/modern
Minimum Java17 (21 recommended)8+11+
Plugin systemVelocity-specificBungee APIBungee API
Recommended for 2026YesLegacy onlyNo

Basic Velocity Installation

Download the Velocity jar from the PaperMC website and run it once so it generates its configuration files.

  1. Place velocity.jar in a dedicated folder.
  2. Run it with java -Xms1G -Xmx1G -jar velocity.jar.
  3. It will generate velocity.toml and a forwarding.secret file automatically.
  4. Stop the program, then edit velocity.toml.

Example velocity.toml

bind = "0.0.0.0:25565"
motd = "&bASIA Network"
show-max-players = 500
online-mode = true
player-info-forwarding-mode = "modern"
forwarding-secret-file = "forwarding.secret"

[servers]
lobby = "127.0.0.1:30066"
survival = "127.0.0.1:30067"
minigames = "127.0.0.1:30068"

try = [
    "lobby"
]

[forced-hosts]
"play.asiagb-example.com" = ["lobby"]

The value player-info-forwarding-mode = "modern" is the heart of security: it forces the backend to verify the secret before accepting player data. The [servers] list defines all the sub-servers, and try is the order in which the proxy attempts to place players on first connect.

Configuring the Backend Servers (Paper)

Each backend must disable online-mode because the proxy now handles authentication. But simply disabling it is very dangerous if unprotected, so you must also enable Velocity forwarding on Paper.

In each backend's server.properties:

# server.properties (backend)
online-mode=false
server-port=30066
server-ip=127.0.0.1

Then enable Velocity forwarding in config/paper-global.yml:

# paper-global.yml
proxies:
  velocity:
    enabled: true
    online-mode: true
    secret: 'paste the same value as your Velocity forwarding.secret file here'

This secret must exactly match the contents of Velocity's forwarding.secret file. If they do not match, players will be unable to join the backend.

Security: The Mistake That Ruins Servers

Critical warning: When you set online-mode=false on a backend with no firewall and no valid forwarding secret, anyone who knows the backend's IP and port can connect directly and join the game as any username, including an admin's name. This is a severe hole that lets a server be taken over instantly.

The correct way to protect yourself:

One VPS or Spread Across Servers

For small to medium networks, you can run the proxy and all backends on a single VPS by binding backends to 127.0.0.1, which is naturally secure because they cannot be reached from outside. As the network grows, you may split the proxy and backends onto separate machines.

If you spread across machines, keep them in the same datacenter and use private networking to reduce latency between the proxy and the backends, because every player packet has to travel through two hops. Lower delay means smoother gameplay.

A network with many servers naturally needs more RAM and CPU as the number of servers and players grows. Choosing a VPS with enough resources from the start helps avoid lag later. Providers such as AsiaGB offer SSD-based Linux VPS from 500 THB/month, managed through DirectAdmin with 99% uptime, which suits starting a Minecraft network that must run several processes at once.

Plugins and Cross-Server Features

Velocity plugins are not the same as Bukkit/Spigot plugins; you must find plugin versions built specifically for the proxy. Features that commonly need proxy-aware setup include:

Conclusion

Linking multiple Minecraft servers into one network with Velocity lets you scale your community professionally, separate game modes, and move players seamlessly. The most important point is security: always disable online-mode on backends together with modern forwarding and a firewall. Choose Velocity over the now-deprecated Waterfall, and prepare a VPS with enough resources to support your network's long-term growth.

Frequently Asked Questions

What is the difference between Velocity and BungeeCord, and which should I choose?

Velocity is the modern proxy that is faster and more secure, supporting modern forwarding that encrypts player data, while BungeeCord is older and uses legacy forwarding. For a new network in 2026 you should choose Velocity, especially since Waterfall, a fork of BungeeCord, has been deprecated and reached end-of-life.

Why must I set online-mode=false on the backend, and is it safe?

Because the proxy authenticates players on the backend's behalf, so online-mode must be off. It is only safe when you enable modern forwarding with the correct secret and configure the firewall so backend ports accept only the proxy's IP. If backends are exposed publicly without protection, anyone can join as any username.

Can I run Velocity and the sub-servers on a single VPS?

Yes, for small to medium networks, by binding backends to 127.0.0.1, which is safe because they cannot be reached externally. As players increase you can split them across machines, ideally in the same datacenter using private networking to reduce latency between the proxy and the backends.

Which Java version does Velocity require?

Velocity requires Java 17 as a minimum, with Java 21 recommended for the best performance and compatibility. You should also make sure your Paper/Spigot backends use a Java version compatible with their game version to avoid startup problems.

Ready to launch your Minecraft server?

AsiaGB Linux VPS (SSD, DirectAdmin, 99% uptime) from 500 THB/month — Thailand & Singapore datacenters for low ping, perfect for Minecraft servers of any size.

View VPS Plans

View all affordable VPS Thailand plans →