13
0
geforkt von Mirrors/Velocity
Datei suchen
Andrew Steinborn 662fbc4e3c
Implement the ServerData packet by firing ProxyPingEvent (#771)
* Implement the ServerData packet by firing ProxyPingEvent

Mojang introduced the enable-status server property with Minecraft 1.19, which if enabled causes servers to close the connection when a client tries to ping them. Mojang wants to show the MOTD and favicon on the server select screen for those who manage to log in, so we need to implement this packet as well.

The good news is that we can send this packet as many times as needed on the same connection

This matches the behavior of pinging the server. This is a minor, but completely backwards-compatible, API breakage: Player inherits from InboundConnection so we do not have to change ProxyPingEvent, however plugins not expecting a Player might get confused.

* typo
2022-06-23 23:59:13 -04:00
.github don't build on Java 8 2021-05-23 14:15:22 -04:00
api Implement the ServerData packet by firing ProxyPingEvent (#771) 2022-06-23 23:59:13 -04:00
config/checkstyle Checkstyle and friends 2021-06-27 21:18:52 -04:00
gradle fix repo url 2021-12-09 10:33:00 -08:00
native Improved Scheduler API (#696) 2022-06-09 03:27:06 -04:00
proxy Implement the ServerData packet by firing ProxyPingEvent (#771) 2022-06-23 23:59:13 -04:00
.gitignore Rewrite native crypto to use OpenSSL 2020-06-22 20:14:46 -04:00
build.gradle [ci skip] fix gradle build script deprecation 2022-06-09 00:17:00 +01:00
CONTRIBUTING.md Update CONTRIBUTING.md 2021-01-22 19:50:31 -05:00
gradlew misc build changes 2021-12-09 10:29:32 -08:00
gradlew.bat misc build changes 2021-12-09 10:29:32 -08:00
HEADER.txt Relicense the Velocity proxy under the terms of GPLv3 (#448) 2021-03-31 16:04:06 -04:00
Jenkinsfile Disallow all concurrent builds. 2018-12-07 17:25:04 -05:00
LICENSE Relicense the Velocity proxy under the terms of GPLv3 (#448) 2021-03-31 16:04:06 -04:00
README.md Update old downloads URL (#660) 2022-03-06 13:20:44 -05:00
settings.gradle An Easter basket bearing gifts! (#191) 2019-04-24 14:36:49 -04:00

Velocity

Build Status Join our Discord

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, 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.