13
0
geforkt von Mirrors/Velocity
Datei suchen
Andrew Steinborn a6ddc137ee Reduce varint reading cost from max(1, 2n) to n+1 operations on ByteBuf
The previous code, in an attempt to avoid exceptions, checked in.isReadable() each iteration of the loop. This isn't very efficient since it's possible for us to know the maximum size of the varint to read: it's the minimum of either the largest size a varint can be (5 bytes) or the size of the remaining readable bytes in the buffer.
2020-08-21 01:05:04 -04:00
api Clean up some Adventure support code, implement another sendMessage overload 2020-08-16 14:02:04 -04:00
config/checkstyle Loosen Checkstyle rules for this. 2020-06-24 11:34:13 -04:00
gradle An Easter basket bearing gifts! (#191) 2019-04-24 14:36:49 -04:00
native Make Disposable interface implement Closeable 2020-07-29 05:34:15 -04:00
proxy Reduce varint reading cost from max(1, 2n) to n+1 operations on ByteBuf 2020-08-21 01:05:04 -04:00
.gitignore Rewrite native crypto to use OpenSSL 2020-06-22 20:14:46 -04:00
.travis.yml Allow building on Java 11 (and set Travis to build on OpenJDK 11) 2019-10-04 17:09:41 -04:00
build.gradle New command API (#330) 2020-07-29 03:43:16 -04:00
CONTRIBUTING.md Update CONTRIBUTING.md since we now enforce Checkstyle. 2018-12-30 03:31:32 -05:00
gradlew Initial commit. Very broken and only does Server List Ping! 2018-07-24 14:08:55 -04:00
gradlew.bat Initial commit. Very broken and only does Server List Ping! 2018-07-24 14:08:55 -04:00
Jenkinsfile Disallow all concurrent builds. 2018-12-07 17:25:04 -05:00
LICENSE MIT license 2018-07-24 14:14:52 -04:00
README.md Remove inaccurate "Status" section 2019-08-17 20:12:09 -04: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 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.