Velocity vs BungeeCord vs Waterfall
Updated · MCJarHub
Use Velocity for a new network. It is PaperMC's actively developed proxy with secure "modern" player forwarding. BungeeCord is still maintained and has the older plugin ecosystem. Waterfall is unsupported — PaperMC ended it and recommends Velocity.
At a glance (live data)
| Software | Latest release | Java | File size | Versions on MCJarHub | Download source |
|---|---|---|---|---|---|
| Velocity | 4.3.1 (build 45) | Java 25 | 40.4 MB | 12 | Official (PaperMC build server) |
| BungeeCord | 26.1 (build 2107) | — | 24.8 MB | 22 | Community mirror |
| Waterfall | 1.21 (build 615) | Java 8 | 26.4 MB | 11 | Official (PaperMC build server) |
BungeeCord "versions" on MCJarHub are build labels (one per protocol range), so its version count is not comparable with Velocity's release numbers.
Side by side
| Velocity | BungeeCord | Waterfall | |
|---|---|---|---|
| Maintained by | PaperMC | md_5 / SpigotMC | PaperMC (fork of BungeeCord) |
| Status | Actively developed | Maintained | Unsupported since 26 Mar 2024 (per PaperMC's build API) |
| Default port | 25565 (bind in velocity.toml) | 25577 (host in config.yml) | 25577 |
| Plugins | Velocity plugins only | BungeeCord plugins | BungeeCord plugins |
| Player-info forwarding | Modern forwarding (secret-based, Minecraft 1.13+), plus legacy BungeeCord and BungeeGuard modes | Legacy BungeeCord forwarding | Legacy BungeeCord forwarding |
| Licence | GPL-3.0 | see upstream | MIT |
| Downloads on MCJarHub | Official, PaperMC build server + SHA-256 | Community mirror (labelled) | Official, PaperMC build server + SHA-256 |
Why PaperMC recommends Velocity
- Modern forwarding. Legacy BungeeCord forwarding passes player data to backends in a way any client can fake if a backend is reachable directly. Velocity's modern forwarding signs it with a shared secret that the backend checks.
- No entity-ID rewriting. PaperMC's docs explain that Velocity makes the client switch entity IDs instead of rewriting them in packets, which they say improves performance and mod compatibility.
- Waterfall is over. PaperMC stopped supporting Waterfall and points its users to Velocity, so Waterfall will not get fixes for future Minecraft versions.
BungeeCord remains a reasonable choice when you depend on BungeeCord-only plugins or legacy forwarding (for example old backends older than 1.13). Protect it with a firewall so backends only accept connections from the proxy.
Setting up forwarding correctly
Velocity + Paper (modern forwarding)
- In
velocity.tomlsetplayer-info-forwarding-mode = "modern". The secret is stored inforwarding.secret. - On each Paper backend set
online-mode=falseinserver.properties. - In
config/paper-global.ymlsetproxies.velocity.enabled: true,proxies.velocity.secretto the same secret andproxies.velocity.online-modeto match Velocity. (Paper 1.18.2 and older:settings.velocity-supportinpaper.yml.)
BungeeCord or Waterfall
- Set
ip_forward: truein the proxy'sconfig.yml. - On each backend set
settings.bungeecord: trueinspigot.ymlandonline-mode=falseinserver.properties. - Firewall the backends so only the proxy can reach them.
Migrating from BungeeCord or Waterfall to Velocity
- List your proxy plugins and find Velocity versions or replacements — BungeeCord plugins will not load.
- Download Velocity and start it once to create
velocity.toml; copy your server list into its[servers]section. - Note the port change: Velocity binds 25565 by default, BungeeCord/Waterfall 25577. Adjust
bindor your firewall/DNS. - Switch backends to modern forwarding (above) — Paper, Purpur and other Paper forks support it.
All three proxies are started with plain java -jar; they need little memory (512 MB–1 GB is plenty for most networks) and they have no Mojang EULA step. See also what a Minecraft proxy does.
FAQ
Can Velocity use BungeeCord plugins?
Which port does each proxy use?
bind in velocity.toml); BungeeCord and Waterfall bind 25577 (host in config.yml).