Commit Graph
95 Commits
Author SHA1 Message Date
Andrew Steinborn bbf861d3bc Convert into a multi-module project.
For now, the API module only contains a few assorted utilities. More
will be added later.
2018-07-31 16:12:41 -04:00
Andrew Steinborn f9fd58eea5 Update README. 2018-07-31 15:48:52 -04:00
Andrew Steinborn 25d13b2cc4 Bump to Gradle 4.9, fix deprecation warnings. 2018-07-31 15:25:34 -04:00
Andrew Steinborn 908aeb062d Add fancy badge 2018-07-31 15:03:13 -04:00
Andrew Steinborn 4b3675b571 Clean this up a bit 2018-07-31 13:44:10 -04:00
Andrew Steinborn cfc67c97f8 Update for recent protocol support. 2018-07-31 02:51:27 -04:00
Andrew Steinborn 91e977a7bd UUID before username 2018-07-31 00:48:56 -04:00
Andrew Steinborn 2f5ca386a6 Actually fix the login plugin messaging 2018-07-31 00:47:05 -04:00
Andrew Steinborn 2f5f93a427 Write UUID in MSB/LSB format instead 2018-07-30 23:56:00 -04:00
Andrew Steinborn d9f68140d6 Implement Velocity native IP forwarding for 1.13+
No other server implements this (as of yet). We plan to get support for
this into at least Paper and Sponge.
2018-07-30 23:40:25 -04:00
Andrew Steinborn a45adbc8ec Fix scoreboard issue 2018-07-30 22:28:07 -04:00
Andrew Steinborn ed8a279cd1 Initial 1.13 support
Still kind of wonky but mostly works
2018-07-30 22:19:27 -04:00
Andrew Steinborn 8c4d710725 Gracefully fall back for STATUS/HANDSHAKE/LOGIN states 2018-07-30 21:35:11 -04:00
Andrew Steinborn cc1d8f8184 Initial Minecraft 1.9.x support 2018-07-30 21:27:34 -04:00
Andrew Steinborn 515248fa99 Expand the remapping stuff. 2018-07-30 20:49:43 -04:00
Andrew Steinborn 6b5cd703f0 Initial remapping support, fix protocol crap. 2018-07-30 20:35:05 -04:00
Andrew Steinborn 47bea89146 Support Minecraft 1.10 2018-07-30 19:35:16 -04:00
Andrew Steinborn 8ddddba1cd Update Netty to 4.1.28.Final 2018-07-30 19:02:08 -04:00
Andrew Steinborn 4a0847f06c Support 1.11.x and 1.12/1.12.1 2018-07-30 18:51:53 -04:00
Andrew Steinborn 9b59587e58 Make this permissive enough for FeatherBoard 2018-07-30 18:38:18 -04:00
Andrew Steinborn 2d4d9e42b5 Properly handle scoreboard removal while switching between servers 2018-07-30 18:21:25 -04:00
Andrew Steinborn 972ef73d35 Scoreboard packets (1.12.2 only) 2018-07-30 17:38:02 -04:00
Andrew Steinborn bc1dc457e7 Initial scoreboard objects
We need to make these nicer, but for internal use they're fine.
2018-07-30 16:36:15 -04:00
Andrew Steinborn dde6560a5a More efficient message handling 2018-07-30 15:05:24 -04:00
Andrew Steinborn 8a73e3f12b More proper plugin messaging support. 2018-07-30 14:20:15 -04:00
Andrew Steinborn b345d3aba3 Finishing up plugin message stuff for tonight. 2018-07-30 02:21:44 -04:00
Andrew Steinborn a216d25a1a Fix ID for 1.11 2018-07-30 01:36:14 -04:00
Andrew Steinborn 153f09ae70 Add support for Plugin Message packet, full implementation later. 2018-07-30 01:35:47 -04:00
Andrew Steinborn 48fafc73be Correctly handle boss bars on server transfers 2018-07-30 01:03:42 -04:00
Andrew Steinborn 1616d097eb Respect try list in velocity.toml 2018-07-29 22:47:54 -04:00
Andrew Steinborn 201c484247 Actually handle that 2018-07-29 22:31:41 -04:00
Andrew Steinborn 64ff0683c9 Handle proxy<->server exceptions 2018-07-29 22:28:56 -04:00
Andrew Steinborn 5be8452d1f Fix a couple of protocol issues 2018-07-29 20:53:51 -04:00
Andrew Steinborn 029d3a2044 Update README 2018-07-29 20:37:27 -04:00
Andrew Steinborn 7546270624 Support Minecraft 1.11/1.11.1+ 2018-07-29 18:39:25 -04:00
Andrew Steinborn dcc40dd06b Fix the tests for now. More extensive ones later. 2018-07-29 17:51:18 -04:00
Andrew Steinborn e672f8d7cd Preserve client settings packets 2018-07-29 17:44:16 -04:00
Andrew Steinborn b79e7df039 Initial 1.12/1.12.1 support. Bug fixes! 2018-07-29 17:09:27 -04:00
Andrew Steinborn a9279072c1 Autocreate velocity.toml 2018-07-27 21:15:57 -04:00
Andrew Steinborn 1d2110f2aa A bit more 2018-07-27 20:24:57 -04:00
Andrew Steinborn a9715be771 Remove velocity.toml file in root 2018-07-27 15:12:10 -04:00
Andrew Steinborn 2512621a25 Validate MOTD too
Also remove accidentally added velocity.toml.
2018-07-27 15:11:33 -04:00
Andrew Steinborn 247dafd9de Upgrade text to 1.12-1.6.0-SNAPSHOT for plain text serializer 2018-07-27 15:01:00 -04:00
Andrew Steinborn 44f9687cfa use remote address 2018-07-27 14:44:51 -04:00
Andrew Steinborn 5ef27cfa5f Connection logging support. 2018-07-27 14:44:00 -04:00
Andrew Steinborn f34e9b19c9 Add configuration stuff (this is not done yet) 2018-07-27 13:32:15 -04:00
Andrew Steinborn 66dcb13b5a Rename some stuff for clarity. 2018-07-27 12:03:32 -04:00
Andrew Steinborn 01f158f193 Yes there's some unneeded qualification in here 2018-07-27 10:08:04 -04:00
Andrew Steinborn c9af231c7e Switch to log4j2 logging 2018-07-27 01:54:40 -04:00
Andrew Steinborn bf2835da02 Schedule the response handler to run in the channel event loop 2018-07-27 01:26:15 -04:00
Andrew Steinborn 22c7769eae Fix compression support 2018-07-27 01:09:49 -04:00
Andrew Steinborn fc5b0d3577 Online-mode and encryption support 2018-07-27 00:10:09 -04:00
Andrew Steinborn 359d1ea17c Fix transitions from dimensions when changing servers 2018-07-26 18:45:56 -04:00
Andrew Steinborn 0f7489beb7 Update README [ci skip] 2018-07-26 18:09:25 -04:00
Andrew Steinborn ba5d6ad6e2 Rename the two PlaySessionHandler classes to more clear names. 2018-07-26 17:46:13 -04:00
Andrew Steinborn 41af775cc6 Fix some assorted stuff. 2018-07-26 17:31:53 -04:00
Andrew Steinborn 6ae9798a1b Very basic multi-server switching functionality 2018-07-26 17:18:59 -04:00
Andrew Steinborn 60ac285b17 Fix task cancellation 2018-07-26 16:08:51 -04:00
Andrew Steinborn 80477f6a0e Properly handle pings. 2018-07-26 14:50:42 -04:00
Andrew Steinborn a8df4c493e Housekeeping. 2018-07-26 14:02:23 -04:00
Andrew Steinborn 87dcd4415d Update the README with new goals. 2018-07-26 14:02:13 -04:00
Andrew Steinborn 76e7ac5afc Implement bungee-style IP forwarding. 2018-07-26 13:38:25 -04:00
Andrew Steinborn 302df0299e Another test for sanity. 2018-07-26 13:17:10 -04:00
Andrew Steinborn 73abc8f9ad Improve support for multiple protocol versions. Add tests. 2018-07-26 13:03:52 -04:00
Andrew Steinborn 31cc5288f5 Cleanup, renames, check protocol version of client on handshake. 2018-07-26 02:42:27 -04:00
Andrew Steinborn b26a17e587 Add some needed utilities for encryption 2018-07-26 00:35:54 -04:00
Andrew Steinborn ab965108d6 Another file to exclude. 2018-07-26 00:00:59 -04:00
Andrew Steinborn 446f9acc45 Removed .idea folder 2018-07-25 23:58:18 -04:00
Andrew Steinborn 1711e8b9ce Detect and block connections to online-mode servers 2018-07-25 21:53:20 -04:00
Andrew Steinborn 8139ac35d9 Introduce some UUID utilities for eventual auth support. 2018-07-25 21:18:04 -04:00
Andrew Steinborn d89a4c4807 Pipeline util name clarity. Remove unneeded handlers. 2018-07-25 20:50:23 -04:00
Andrew Steinborn dc540ae776 Remove System.out.println() stuff 2018-07-25 20:33:33 -04:00
Andrew Steinborn 034039a27d Use package com.velocitypowered.proxy 2018-07-25 19:47:59 -04:00
Andrew Steinborn 4a2120f4d8 Refactor of connection handling so we can share more logic. 2018-07-25 19:43:26 -04:00
Andrew Steinborn bd926eb174 Add Chat packet 2018-07-25 14:43:10 -04:00
Andrew Steinborn 2e250d24b6 Fix compression 2018-07-25 12:22:59 -04:00
Andrew Steinborn ee1cddc6a0 New compression stuff (this is broken) 2018-07-25 12:22:59 -04:00
Andrew Steinborn 3c8a52aeb0 Add compression support for proxy->server connections. 2018-07-25 12:22:59 -04:00
Andrew SteinbornandGitHub ca63bfd558 Update README.md 2018-07-25 01:16:25 -04:00
Andrew Steinborn 6e55403a88 Preliminary compression support. 2018-07-25 01:08:23 -04:00
Andrew Steinborn e01290d381 Handle disconnects more gracefully. 2018-07-25 00:12:39 -04:00
Andrew Steinborn 32772d1e9b Fix a bunch of small issues, so that the proxy can establish a connection
This is still broken and has performance/bandwidth problems, which I will
fix very soon. For a first try, it's good enough.
2018-07-24 23:40:20 -04:00
Andrew Steinborn dd8557d367 Remove unneeded dependencies since this is included with modern Gradle 2018-07-24 22:04:10 -04:00
Andrew Steinborn 66c23e1bf7 dummy commit 2018-07-24 21:39:59 -04:00
Andrew Steinborn eefe03de69 Simple README 2018-07-24 20:17:56 -04:00
Andrew Steinborn 7867c496ec Initial client connection pipeline, this isn't done yet. 2018-07-24 20:11:37 -04:00
Andrew Steinborn 6c0ab73a91 I should know better 2018-07-24 18:25:16 -04:00
Andrew Steinborn 9e397b10b5 Progress towards a server connection pipeline. 2018-07-24 17:58:20 -04:00
Andrew Steinborn 0515a5d86f Enable shadow gradle plugin. 2018-07-24 15:59:28 -04:00
Andrew Steinborn 0c2ca969f7 Enough of the Login protocol to display a message upon connect 2018-07-24 15:50:07 -04:00
Andrew Steinborn 286be4987a Refactored connection handling 2018-07-24 15:29:49 -04:00
Andrew Steinborn 1ab926b572 Fix 1.4-1.6 SLP, use text from maven central. 2018-07-24 14:34:59 -04:00
Andrew Steinborn 354d60b036 Fix the 1.7+ SLP stuff.
Props to @Minecrell
2018-07-24 14:25:44 -04:00
Andrew Steinborn 8371073f91 MIT license 2018-07-24 14:14:52 -04:00
Andrew Steinborn 666d07e2a8 Initial commit. Very broken and only does Server List Ping! 2018-07-24 14:08:55 -04:00