1661cece2d
* Delay switch to new server until after JoinGame is sent. Unfortunately, in some cases (especially vanilla Minecraft) some login disconnects are sent after ServerLoginSuccess but before JoinGame. We've been using ServerLoginSuccess but it has caused too many problems. Now Velocity will switch to a stripped-down version of the play session handler until JoinGame is received. This handler does very little by itself: it simply forwards plugin messages (for Forge) and waits for the JoinGame packet from the server. This is an initial version: only vanilla Minecraft 1.12.2 was tested. However this is the way Waterfall without entity rewriting does server switches (which, in turn, is inherited from BungeeCord). * Move to Gradle 5 and Error Prone. |
||
---|---|---|
api | ||
config/checkstyle | ||
gradle | ||
native | ||
proxy | ||
.gitignore | ||
.travis.yml | ||
build.gradle | ||
CONTRIBUTING.md | ||
gradlew | ||
gradlew.bat | ||
Jenkinsfile | ||
LICENSE | ||
README.md | ||
settings.gradle |
Velocity
A Minecraft server proxy with unparalleled server support, scalability, and flexibility.
Velocity is licensed under the MIT license for ultimate permissiveness and expanding the pool of potential contributors and users.
Goals
- A codebase that is easy to dive into and consistently follows best practices for Java projects as much as reasonably possible.
- High performance: handle thousands of players on one proxy.
- A new, refreshing API built from the ground up to be flexible and powerful whilst avoiding design mistakes and suboptimal designs from other proxies.
- First-class support for Paper, Sponge, and Forge. (Other implementations may work, but we make every endeavor to support these server implementations specifically.)
Building
Velocity is built with Gradle. We recommend using the
wrapper script (./gradlew
) as our CI builds using it.
It is sufficient to run ./gradlew build
to run the full build cycle.
Running
Once you've built Velocity, you can copy and run the -all
JAR from
proxy/build/libs
. Velocity will generate a default configuration file
and you can configure it from there.
Alternatively, you can get the proxy JAR from the downloads page.
Status
Velocity is currently in beta. Production networks are successfully running Velocity with many hundreds of concurrent players online, but your mileage may vary.
Velocity supports Minecraft 1.8-1.13.2. Velocity is best supported with Paper and SpongeVanilla. Minecraft Forge is fully supported but mod compatibility may vary. Generally, Velocity will support many mods better than BungeeCord or Waterfall do but compatibility can not always be ensured.