Velocity - the modern Minecraft proxy


#1

Heya! I’m Andrew, the lead developer of Velocity, a brand new Minecraft server proxy. Velocity is the next-generation Minecraft server proxy built specifically for enhanced server support and scalability whilst not compromising flexibility.

:earth_americas: Website | :speech_balloon: Discord | :hammer_and_wrench: GitHub | :inbox_tray: Downloads | :blue_book: Documentation

Where are you right now?

As of September 8, 2018, Velocity is fully functional and has been tested against Paper, Sponge, and Minecraft Forge. Velocity has not yet undergone stress testing, and we do not yet recommend using it for large networks. For testing and small networks, Velocity is ready to use, but remains somewhat unpolished. Keep in mind that Velocity is only about five months old.

Wait… so why do we need another proxy?

I was the founder of the Waterfall project. I’m sure most of you are familiar with Waterfall given that it is the best-supported proxy for Sponge and Forge at the moment. If you’re unfamiliar, Waterfall is a fork of BungeeCord that adds many new features and enhancements, notably enhanced support for Forge.

I left the Waterfall project in 2017 (but was inactive before then). Since then, I realized that BungeeCord’s design has numerous flaws that can only be solved by a total rewrite.

But technical concerns were not the only factors driving the decision to create Velocity. md_5, the author of BungeeCord, has been extremely hostile to Forge mod support, and has indicated he plans to not support Forge beyond Minecraft 1.13. The Velocity project, on the other hand, wishes to encourage the growth of modded Minecraft, and plans to support Forge for Minecraft 1.13 and above.

What’s in it for me?

  • If you’ve worked with the BungeeCord or Sponge APIs, you’ll feel right at home! Velocity’s API is designed on lines similar to Sponge’s.
  • Excellent Forge support (1.8-1.12.2, 1.13+ as soon as Forge 1.13 is available). Velocity does not rewrite packets to replace entity IDs, and does not do any “magic” to allow Forge to be compatible with the proxy (unlike with BungeeCord) - everything is native. (Please note that some mods are not compatible with Velocity’s method of server switching - these are issues with the mods, not Velocity.)
  • Full support for Minecraft 1.8 through 1.13.1.
  • A number of performance enhancements currently not available in BungeeCord or Waterfall, including:
    • A connection pool for Mojang session server authentication to speed up authentication.
    • Reduced memory copies in high-frequency portions of the proxy.
  • More coming soon…

SpongeForge + BungeeCord = Timed Out?
#2

I didn’t see anything in the documentation about how to communicate with Velocity from a Sponge plugin. Will you be continuing to use a plugin message API? If so, will it use Sponge’s indexed channel format, will it respond to requests to Bungee’s API, and will you be providing your own Sponge library to wrap it?


#3

I haven’t decided on how servers are going to communicate with the Velocity proxy programatically (aside from a bridge using the Velocity plugin API). We support the BungeeCord plugin messaging channel through a plugin but this isn’t going to be the official way to access the API from the server.


#4

Hey everyone! Velocity is still buzzing as usual. We are still in alpha so things remain in flux, and activity is still heavy.

In case you were curious about plugin support for Velocity… yes, we have some plugins available, notably LuckPerms, NuVotifier, and ServerListPlus.


#5

Hey everyone! Velocity now has a forum: https://forums.velocitypowered.com - come check it out!