geforkt von Mirrors/Velocity
a3a6b3fd07
1.20.3+ has some additional options (EMIT_COMPACT_TEXT_COMPONENT, EMIT_HOVER_SHOW_ENTITY_ID_AS_INT_ARRAY, VALIDATE_STRICT_EVENTS) that should be disabled in older versions. The OptionState is constructed manually due to https://github.com/KyoriPowered/adventure/issues/1015, which is a bug that makes JSONOptions.BY_DATA_VERSION use incorrect options for 1.20.3+ options. This also fixes incorrect building of the ping serializer, as it should only use the component serializer to serialize Component.class and nothing else. |
||
---|---|---|
.github | ||
api | ||
build-logic | ||
config/checkstyle | ||
gradle | ||
native | ||
proxy | ||
.gitignore | ||
build.gradle.kts | ||
CONTRIBUTING.md | ||
crowdin.yml | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
HEADER.txt | ||
LICENSE | ||
README.md | ||
settings.gradle.kts |
Velocity
A Minecraft server proxy with unparalleled server support, scalability, and flexibility.
Velocity is licensed under the GPLv3 license.
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, Fabric 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.