Commit Graph

370 Commits

Author SHA1 Message Date
Andrew Steinborn a60c55007a Remove LegacyChatColorUtils
In most cases, you should only work with legacy text to deserialize or
serialize it for backwards compatibility or user configurations only.
2018-09-17 16:11:23 -04:00
Andrew Steinborn fc48db62b5 Improve native initialization logic, again 2018-09-17 15:02:49 -04:00
Andrew Steinborn e75ec71b32 Improve native initialization logic
This uses the double-check pattern as recommended in Effective Java.
2018-09-17 01:03:17 -04:00
Andrew Steinborn 9c05203ce8 Merge pull request #88 from PurpleIsEverything/master
Allow modifying the ModInfo type.
2018-09-15 21:47:24 -04:00
PurpleIsEverything be0f666f4d Allow modifying the ModInfo type. 2018-09-15 18:36:10 -06:00
Andrew Steinborn 88b7407aaf Fix rare NPE during server transition. Fixes #87 2018-09-15 13:37:30 -04:00
Andrew Steinborn ab568405dd Cleaned up client plugin message logic. 2018-09-15 02:22:52 -04:00
Andrew Steinborn 84947564e4 Handle unexpected disconnects without a reason. 2018-09-15 01:46:28 -04:00
Andrew Steinborn 871319d679 Allow custom connection and read timeouts. 2018-09-15 01:26:54 -04:00
Andrew Steinborn 2b1d55a0fc Expose original server in ServerPreConnectEvent 2018-09-15 01:16:26 -04:00
Andrew Steinborn e9568e1b6c Do not write plugin messages from the server if the player hasn't joined 2018-09-14 15:26:51 -04:00
Andrew Steinborn 9776675b70 Queue mod plugin messages instead. 2018-09-14 14:16:32 -04:00
Andrew Steinborn 496c579e46 Drop non-FML handshake packets if the game start process is not done. 2018-09-14 13:56:38 -04:00
Andrew Steinborn 0469aaa03a Fix several invalid connection closure issues. 2018-09-14 01:00:56 -04:00
Andrew Steinborn 7b8a215078 Merge pull request #85 from PurpleIsEverything/master
Add CONNECT_TIMEOUT_MILLIS to fix timeout errors.
2018-09-14 00:54:29 -04:00
PurpleIsEverything cf46659d9e Change to a 5 second connection timeout. 2018-09-13 22:53:23 -06:00
ShadowKitten 14590ca3ea Add CONNECT_TIMEOUT_MILLIS to fix timeout errors. 2018-09-13 22:41:21 -06:00
Andrew Steinborn d028c281c9 Merge pull request #76 from kashike/mrn
ServerPreConnectEvent#getInfo -> getServer
2018-09-14 00:17:25 -04:00
Andrew Steinborn 656987db03 Merge pull request #83 from dualspiral/fix/fml-plugin-messages
Only send FML/FML|MP plugin messages if the player has joined the server
2018-09-13 16:10:03 -04:00
Andrew Steinborn 6ca39e459e Merge pull request #80 from dualspiral/fix/reset-on-first
Don't fire a FML reset packet on first login, set it as required for the second join after the first completes
2018-09-13 16:09:51 -04:00
Andrew Steinborn 53603803e7 Merge pull request #84 from Leymooo/force-offline
fix compile
2018-09-13 16:01:54 -04:00
Leymooo 961757b481 fix compile 2018-09-13 23:00:12 +03:00
Andrew Steinborn 7e8b1fb6a5 Merge pull request #82 from Leymooo/force-offline
Refactor PreLoginComponentResult
2018-09-13 15:49:03 -04:00
Daniel Naylor bcbf4cfd5f Only send FML/FML|MP plugin messages if the player has joined the server.
See #78
2018-09-13 10:33:27 +01:00
Leymooo ab59299620 Refactor PreLoginComponentResult 2018-09-13 10:16:10 +03:00
kashike c3fd559ac2 ServerPreConnectEvent#getInfo -> getServer 2018-09-12 22:41:51 -07:00
Andrew Steinborn b24418bfee Merge pull request #79 from Leymooo/force-offline
expand PreLoginComponentResult with force offline mode
2018-09-12 20:22:26 -04:00
Leymooo 6196f94adf I think we dont need this comment 2018-09-12 16:28:34 +03:00
Daniel Naylor f10e9ac8e4 Don't fire a FML reset packet on first login, set it as required for the second join after the first.
Fixes #69
2018-09-12 10:21:28 +01:00
Leymooo bc86a12c57 expand PreLoginComponentResult with force offline mode 2018-09-12 11:47:28 +03:00
Andrew Steinborn ab2c887e2c Merge pull request #73 from Leymooo/post-login
Add PostLoginEvent. Resolve #72
2018-09-11 19:12:44 -04:00
Leymooo 79bb43468f remove @NonNull, revert reindentation 2018-09-11 17:44:51 +03:00
Leymooo 74bf246c39 Add PostLoginEvent. Resolve #72 2018-09-11 16:15:54 +03:00
Andrew Steinborn f9a98ae41c Merge pull request #70 from dualspiral/bugfix/reset-packet
Ensure the reset packet is not sent when Forge isn't expecting it.
2018-09-10 15:00:18 -04:00
Daniel Naylor df637cd598 Ensure the reset packet is not sent when Forge isn't expecting it.
Fixes #69
2018-09-10 18:15:13 +01:00
Andrew Steinborn 56a50c60b5 Add missing readable check 2018-09-09 15:05:27 -04:00
Andrew Steinborn 46aa8efb35 Improve reliability of varint decoder. 2018-09-09 14:37:43 -04:00
Andrew Steinborn f2e3b5c7ec Increase plugin channels limit 2018-09-09 14:20:46 -04:00
Andrew Steinborn 54c3c37064 Update note about Forge support [ci skip] 2018-09-08 02:14:52 -04:00
Andrew Steinborn 0b1f95147a Implment simple backpressure support
In most cases this should only trigger on initial spawns and server
switches.
2018-09-08 01:00:21 -04:00
Andrew Steinborn 8d045c9140 Bump versions of Gradle, log4j, and Netty. 2018-09-08 00:32:53 -04:00
Andrew Steinborn f75a51638c Enable TCP_NODELAY on Minecraft proxy connections too 2018-09-07 23:29:49 -04:00
Andrew Steinborn 5dbf8f1736 Include modlist in toBuilder() 2018-09-07 23:23:53 -04:00
Andrew Steinborn a62238d073 Allow toggling announcing Forge support on and off 2018-09-07 18:18:38 -04:00
Andrew Steinborn 3eca6e9df1 Mark Velocity as a modded server on the server list 2018-09-07 18:09:28 -04:00
Andrew Steinborn be9547612f Misc code cleanup 2018-09-07 17:54:59 -04:00
Andrew Steinborn a66246b83c Merge pull request #65 from dualspiral/feature/forge-handshake-support
Forge Support
2018-09-07 17:49:52 -04:00
Andrew Steinborn f8a3f24d6b Make sure to always forward on keep-alives from the client 2018-09-07 16:35:36 -04:00
Andrew Steinborn 30baee84bd Add the same check to ClientPlaySessionHandler 2018-09-06 16:11:44 -04:00
Andrew Steinborn 51a85d372b Add hasCompletedJoin() check as suggested 2018-09-06 16:09:13 -04:00