Commit Graph

917 Commits

Author SHA1 Message Date
md_5
0b0d09427d Proper case sensitivity + dont reverse lookup forced hosts 2013-06-02 09:23:05 +10:00
md_5
4f2b98188e Don't allow stupid users to connect bungee to themselves 2013-06-01 17:55:51 +10:00
md_5
d5eb37c7a6 Add debug to tryFailure 2013-06-01 17:46:11 +10:00
md_5
2a421cdd8d Close #306 use SQLite for reconnect locations 2013-06-01 17:29:14 +10:00
md_5
757f8f0cb9 Fix comparisons of objects in case insensitive hashmap 2013-06-01 16:07:17 +10:00
md_5
e652214071 Close issue #406 - tab list 2013-06-01 11:10:56 +10:00
md-5
11b90b91b7 Update ServerConnection.java 2013-05-31 20:45:00 +10:00
md-5
aa3989db19 damn web editor 2013-05-31 19:26:15 +11:00
md-5
76c914db14 Update InitialHandler.java 2013-05-31 18:22:19 +10:00
md_5
639e5f3c1d Add 'unsafe' api for things like packet sending that may be implementation specific or break at any time 2013-05-31 17:02:45 +10:00
md_5
9c35cad824 Will do final tests tomorrow, but all seems to work. Yay for efficiency and options for plugin developers! 2013-05-30 19:36:43 +10:00
md_5
d82b29e15a Finish up protocol API - we now compile again. Extensive testing is required, but that is for another day. 2013-05-30 19:11:05 +10:00
md_5
9b0c827c37 Now just to implement the necessary constructors and constants 2013-05-30 18:29:59 +10:00
md_5
2f45f0d578 Rework protocol system 2013-05-30 18:09:46 +10:00
md_5
ad4c143ce4 Finish and create passing unit tests for the integrity of all packet classes. 2013-05-30 17:34:56 +10:00
md_5
835e4e332c Start work on more efficient, publically accessable packet API 2013-05-30 16:38:53 +10:00
md_5
0578f94522 Rework shutdown sequence to close #391 2013-05-30 16:23:02 +10:00
md_5
0cd4c9030c Close #396 - broken API spec for "ALL" server 2013-05-29 12:03:41 +10:00
md_5
0d666168f0 Close #398 by printing debug so we can identify the issue if it arises again 2013-05-29 12:02:06 +10:00
md_5
cfb823f077 Close #395 - work around trove quirks 2013-05-29 12:00:57 +10:00
md_5
36a5e89ff9 I told you so 2013-05-27 19:28:50 +10:00
md_5
bb4e8e29a5 Update Netty version and remove our workaround - if this breaks, @mibby keeps the pieces. 2013-05-27 18:22:59 +10:00
md_5
8e34e038d6 Remove chat event firing when we get a message from server to client, as Mojang has decided to completely break this in the next major Minecraft release. 2013-05-26 21:24:32 +10:00
md_5
d1950389cc Just leave field as map... 2013-05-26 12:26:26 +10:00
md_5
9d841bb91a Store config in a case insensitive map 2013-05-26 12:25:46 +10:00
zSwayz
828cebcc4b Sexified
Pls add D:
2013-05-26 09:28:12 +10:00
md_5
12fec2fcdd Add some not null checks to API methods 2013-05-25 17:26:54 +10:00
md_5
8b6b134662 Maybe one day we will want to set this null - it can start null, so it can become null 2013-05-25 17:24:37 +10:00
md_5
538beb33a6 Remove now redundant field from InitialHandler 2013-05-25 17:22:43 +10:00
md_5
97338cbfad Its impossible unless you have a creative server and no mobs and no nothing, but we must allow 0 as an entity ID 2013-05-25 17:18:03 +10:00
md_5
3e28decef2 Remove getServer from the api - long depreceated 2013-05-25 17:09:29 +10:00
md_5
f93b647df3 Move protocol version declaration 2013-05-25 17:03:00 +10:00
md_5
775ffdc998 Optimize online count and broadcast methods 2013-05-25 17:01:39 +10:00
md_5
80c22027de Slightly more optimized getChannels 2013-05-25 16:52:41 +10:00
md_5
122987dd83 No space for lost connection translation 2013-05-25 16:50:39 +10:00
md_5
ac4bab2425 More case insensitive tests and read write lock for connections 2013-05-25 16:50:04 +10:00
md_5
a51ffb1f4c Use our own promise to work around @netty pipeline issues 2013-05-25 11:55:54 +10:00
md_5
77e0dcc7f8 Dont throw exceptions on missing translations 2013-05-25 11:54:17 +10:00
md_5
ddb93fd988 That was an easy test - just had time to write 2013-05-24 14:45:33 +10:00
md_5
7eac22d362 Make perms case insensitive - need to write unit test still 2013-05-24 14:44:40 +10:00
md_5
185dc97ca6 *chatcolor import 2013-05-24 14:41:15 +10:00
md_5
e0d19cf305 Show current server in server command 2013-05-24 14:37:40 +10:00
md_5
0e9002091b Add whois command 2013-05-24 14:35:27 +10:00
md_5
9fdcded97f Close #376 - case insensitive servers and maps 2013-05-24 14:31:31 +10:00
md_5
32fdc83841 Close #383 - swallow exceptions once and for all 2013-05-24 14:16:43 +10:00
md_5
1bf126d4f8 Close #384 - reset locations.yml on error 2013-05-24 14:12:50 +10:00
md_5
56533c6259 Close issue #374 - take a lock when checking channel state / writing 2013-05-23 13:49:58 +10:00
md-5
4cb46c6e5c Merge pull request #372 from roblabla/patch-2
Add global PlayerCount if target is "ALL"
2013-05-22 05:01:48 -07:00
md_5
29f22f9be9 Just swallow the error because thats what we did before. 2013-05-22 18:27:53 +10:00
md_5
98860ffd02 SLightly more atomic locations.yml saving to guard against ctrl+c'ing users 2013-05-22 17:07:46 +10:00
md_5
2c225a05e7 Add atomic close tracking. Closes #370. 2013-05-22 09:24:55 +10:00
Robin Lambertz
c1dfd0fb7b Add global PlayerCount if target is "ALL"
This allows bukkit servers to get the global bungeecord player count.
2013-05-21 22:14:00 +02:00
md_5
9be44d51a6 Update to netty CR3 2013-05-21 11:30:05 +10:00
md_5
2a2c2717d5 Connect via bound address - closes #337.
Blame JacobiCarter if this breaks
2013-05-19 18:14:59 +10:00
md_5
3f994a1c4c Downgrade to @netty CR1 2013-05-19 18:02:01 +10:00
md_5
9a0da50e6c Fix formatting 2013-05-16 16:49:14 +10:00
md_5
67fdc830c2 Protected access please 2013-05-16 16:47:21 +10:00
md_5
64e8a79551 Close #348 - translation key 2013-05-16 06:40:01 +10:00
md_5
afc387ce0d Set local address to listener address, closes #337 (reverse-merged from commit 57793e93f0) 2013-05-16 06:39:29 +10:00
md_5
8a70af5293 Clean up code style surrounding bootstrap creation 2013-05-15 19:08:14 +10:00
md_5
57793e93f0 Set local address to listener address, closes #337 2013-05-15 19:05:38 +10:00
md_5
a48ef137bd Make connect event implement cancellable, closes #338 2013-05-15 19:04:22 +10:00
md_5
ff32d29e09 Gracefully shutdown event loop, closes #346 2013-05-15 19:02:10 +10:00
md_5
9f3359f8fa Thanks Lex! Closes #319 2013-05-15 18:59:13 +10:00
md_5
b25c81daf3 Update to latest netty, fix event bus bug, comment and rework PacketDecoder to new netty for better performance 2013-05-14 18:32:30 +10:00
md_5
c465eca03b Just escape utf chars 2013-05-12 22:01:42 +10:00
md_5
beb0bf9836 Fu*** offline mode users 2013-05-12 16:09:21 +10:00
md_5
688c42219c Actually translate message 2013-05-12 15:55:51 +10:00
md_5
1ea53f01aa Add a series of new translations 2013-05-12 13:40:43 +10:00
md_5
202dab5c98 Add texture pack API 2013-05-12 09:28:36 +10:00
md_5
49ea7f908f Add server switch event 2013-05-12 09:15:17 +10:00
Harry
9d3bddedb6 Return if command should not be executed to avoid exceptions and unnecessary messages to the player. 2013-05-06 07:22:56 +10:00
md_5
332bdaaec0 Refactor forge support - closes #318 2013-05-05 08:31:44 +10:00
md_5
904a1bfaa3 *register channels. This fixes plugins being broke 2013-05-04 10:20:53 +10:00
md_5
5eb7a6eba7 Fix forge support - closes #312 2013-05-04 09:40:10 +10:00
md_5
8e262cf428 Close issue #311 - exception feedback on server connector 2013-05-04 09:28:28 +10:00
md_5
7b631092f5 Add experimental Forge support. This may cause issues when using Vanilla clients etc, so caution is advised. Please visit GitHub to report any issues you encounter. Thanks @LexManos for providing the basis for this implementation. 2013-05-03 21:21:55 +10:00
md_5
d3c1339cc9 Make sure we write out custom login packets 2013-05-03 20:36:55 +10:00
md_5
679bf2fca9 Synchronize on pending packet queue, add forge/no forge constructor argument to login packet, and don't send channel registers twice 2013-05-03 20:29:36 +10:00
md_5
7436621481 Refactor encryption to be two step like vanilla. Thanks @LexManos for pointing this out. 2013-05-03 19:35:00 +10:00
md_5
6236cff658 Refactor encrypt util class in preparation for forge support. 2013-05-03 19:10:54 +10:00
md_5
6b504d9160 Use faster collections for the various tab lists. 2013-05-03 18:20:10 +10:00
md_5
d1124ca70b Cleanup imports 2013-05-03 14:39:25 +10:00
md_5
779582d441 Use multimap in scheduler 2013-05-03 14:33:04 +10:00
Zach Bruggeman
30b2e5008b Add ResourceBundle localization 2013-05-03 14:22:12 +10:00
md_5
140830efe0 Close #300 - cleaner disconnects when server is full 2013-05-03 14:16:48 +10:00
md_5
5f8e76c61c Revert "ConcurrentHashMap is junk - lets stick to standard unless issues arise."
This reverts commit 5d1a2c59a7 and closes #304
2013-05-03 14:15:23 +10:00
md_5
b7511abfda Update to 1.5.2, closes #302 2013-05-02 07:32:45 +10:00
md_5
09d04c34cb Increase thread pool timeout to try and reduce churn 2013-04-30 11:32:29 +10:00
md_5
3682e8ba3a Catch throwable not exception for enabling plugins 2013-04-28 17:45:25 +10:00
md_5
50f8bd2eb0 Finish encapsulating all userconnection fields 2013-04-28 11:36:36 +10:00
md_5
ff32764f9a Encapsulate ping fields 2013-04-28 11:19:19 +10:00
md_5
a1f928b210 Don't expose the channel 2013-04-28 10:45:20 +10:00
md_5
5bf616dc4d Forgot that mutex 2013-04-28 10:41:03 +10:00
md_5
0d7759f50b Eeek, name should be constant! 2013-04-28 10:39:41 +10:00
md_5
824bdc5491 Refactor permissions to be lock free, and clean up duplicate references 2013-04-28 10:37:18 +10:00
md_5
ebff48ff86 Remove remnants of forge in initial handler 2013-04-28 10:27:13 +10:00
md_5
6efba44e5a Cleanup userconnection constructor 2013-04-28 10:26:26 +10:00
md_5
9f8ad518e8 Don't use trove sets 2013-04-28 10:21:15 +10:00
md_5
ca5db43f70 Don't spew error about long usernames, just disconnect 2013-04-28 10:07:23 +10:00
md_5
49a22f188f Alert when we cannot bind 2013-04-28 09:42:38 +10:00
md_5
ce7c095243 Make ReusableChannelPromise less hacky 2013-04-28 08:53:14 +10:00
md_5
cbb08ec58b Duh, of course connect isn't called, because we are already connected! 2013-04-27 22:52:02 +10:00
md_5
349949d154 @normanmaurer, @trustin in relation to netty/1317 can we consider this a motion to allow channel.write(Object,null), I think it is a very good idea and cannot see it breaking any existing functionality at all. 2013-04-27 22:24:57 +10:00
md_5
92e7faa346 Stab at closing #285, /send current issues 2013-04-27 18:34:43 +10:00
md_5
6b21fdaaea Refactor packet writes into their own channel handler class. 2013-04-27 18:29:12 +10:00
md_5
fa9dd7e27f Synchronize yaml save to close #286, crash on end 2013-04-27 18:17:40 +10:00
md_5
f44cf6c8e9 Move some bootstrapping to the connected method, #267 2013-04-27 12:27:40 +10:00
md_5
6bf9df31f5 Fix async/login event 2013-04-27 12:25:03 +10:00
md_5
c08764990d Bigger logs, with rotation! 2013-04-26 20:23:16 +10:00
md_5
a82e6f3eea Use new servers 2013-04-26 17:48:32 +10:00
md_5
26cee397e6 Only alow config reloads to ADD servers. 2013-04-26 17:31:44 +10:00
md_5
dc6835c21b Add reason when default server is not defined 2013-04-26 17:23:04 +10:00
md_5
be30c8b89a Rename tab list classes 2013-04-26 17:20:03 +10:00
md_5
70e10c382e Properly interface ServerInfo class. 2013-04-26 17:13:00 +10:00
md_5
93ea108acb Complete issue #190 - unthread the login event for maximum efficiency. 2013-04-26 17:00:09 +10:00
md_5
a63739277b Remove depreceated register methods. 2013-04-26 16:49:37 +10:00
md-5
112d543c2a bump date 2013-04-26 11:50:20 +10:00
md_5
e540626a28 Rewrite only arrows and rods. Closes #270 2013-04-20 09:46:23 +10:00
md_5
a38b3ce9f2 Try removing connections via string key and direct map access. Closes issue #267 2013-04-14 18:51:33 +10:00
md_5
c615b2362f Revert "Case shouldn't really matter for groups and permissions"
This reverts commit a67d4a1697.
2013-04-14 11:57:50 +10:00
md_5
5620c4679d Fix issue #262 and put all scoreboard bugs to bed 2013-04-14 09:33:36 +10:00
md_5
a9ad4889f7 Revert "Bungee join / part messages"
This reverts commit 7108bd4deb.
2013-04-13 18:28:11 +10:00
md_5
7108bd4deb Bungee join / part messages 2013-04-13 18:17:08 +10:00
md_5
ac1119bef8 Move pending connects check 2013-04-13 11:51:34 +10:00
md_5
dac259933b Add pending connects for bad plugin message based connects 2013-04-13 09:49:08 +10:00
md_5
a57ae83d62 Return from method when we can't connect 2013-04-13 09:46:21 +10:00
md_5
a00c91c03a Fix users showing as disconnected on global ping list 2013-04-13 09:37:56 +10:00
md_5
a67d4a1697 Case shouldn't really matter for groups and permissions 2013-04-12 19:41:20 +10:00
md_5
b87fff2614 Fix users being disconnected without the event q_q 2013-04-12 12:43:17 +10:00
md_5
0c144c38db Fix issue #251 - hidden servers in list command 2013-04-12 12:40:36 +10:00
md_5
5592f81e97 Proper equals on servers 2013-04-12 08:22:17 +10:00
md_5
5d1a2c59a7 ConcurrentHashMap is junk - lets stick to standard unless issues arise. 2013-04-11 20:32:49 +10:00
md_5
88c99f071e Reduce ram usage by ~65kb / player. See #229 2013-04-11 20:30:07 +10:00
md_5
19c3c23b86 Reformat all code 2013-04-11 20:26:55 +10:00
Björn Teichmann
5dfe83cf6d add fallback_server so we can still have a different default server on first join 2013-04-11 20:23:30 +10:00
Robin Lambertz
8cac038a07 Fix LoginEvent not being called.
If the server is in offline mode, the LoginEvent should be called.
2013-04-10 14:47:57 +02:00
Robin Lambertz
f935f93d98 Fix two small typos. 2013-04-09 01:18:00 +01:00
Robin Lambertz
e5c457df04 Add new Team instances to the list of teams. 2013-04-09 02:10:41 +02:00
weaondara
6e9cdb2e20 send message to player if target is current server 2013-04-04 18:44:46 +03:00
weaondara
d900a5eae7 setDisplayName bug fix
first remove
then change and add again
2013-04-02 12:18:43 +03:00
weaondara
68712ab854 check the player's server before really connecting
otherwise the player will be kicked with the message "Logged in from another location" if the target server is the current server
2013-04-02 02:13:29 +03:00
weaondara
88a52bc4e9 set displayName in function setDisplayName 2013-03-31 16:25:53 +03:00
weaondara
d684f5de69 added permission in constructor 2013-03-31 12:36:21 +03:00
md_5
5de8ac89e5 Remove any scores before updating - see #238 2013-03-29 08:08:13 +11:00
md_5
8707995503 Nullcheck getServer on failed reconnect handler to account for failings on first connect 2013-03-28 22:24:56 +11:00
md_5
caea1e3fa5 Set server as obsolete when kicked. 2013-03-28 19:53:04 +11:00
md_5
acbf6d3137 Add current server check to failed listener too 2013-03-26 18:12:28 +11:00
md_5
3a3fb27d9a Fixx issue #228 and #188 - CSV classes and ALL target for player list 2013-03-26 17:53:36 +11:00
md-5
e506957d38 Fix current server check - #216 2013-03-26 11:50:36 +11:00
md_5
8003dc50c4 Fix #227 - don't colour first name on list 2013-03-25 19:25:06 +11:00
md_5
cf4846baa9 Add issue #221 - permission check event 2013-03-24 16:29:45 +11:00
md_5
6881597692 Fix issue #156 - actually register packet for reading 2013-03-24 11:53:07 +11:00
md_5
0ffb557557 Try my artistic vision on the list command. 2013-03-24 11:44:30 +11:00
md_5
5f7ecf9d3b Fix issue #213 - servers crashing clients. 2013-03-24 11:39:14 +11:00
md_5
e07f1e603a Lowercase forced server checks - #223 2013-03-24 11:02:24 +11:00
md_5
430b5ff392 Bump expirary date back to 26/4/2013 2013-03-24 09:00:32 +11:00
md_5
81fe547a7c Server admins see stack trace and die. See #225 2013-03-24 08:41:25 +11:00
md_5
04fb1df3e1 Don't null out scores after objectives. 2013-03-23 20:58:21 +11:00
md_5
73aaf58009 Try and make the client not crash when switching teams. @lazertester 2013-03-23 20:49:47 +11:00
md_5
c97f113497 Add team packet. 2013-03-23 20:32:37 +11:00
md_5
14fcb90395 Fire server kick for logins too 2013-03-23 19:38:00 +11:00
md_5
39009d8c96 Check players have a server before sending 2013-03-23 13:45:22 +11:00
md_5
13f394b9a7 Send the players real IP for use in Spigot servers. 2013-03-23 11:24:37 +11:00
md_5
ffddcf939f Rewrite cancel method as it is posing some issues 2013-03-21 20:16:41 +11:00
md_5
3d8143c36e Use Bungee thread pool for additional logging 2013-03-21 16:28:30 +11:00
md_5
5e31b158e9 Work around JDK stupidity with regards to thread count 2013-03-21 16:25:05 +11:00
md_5
a59e0f0b6b Async close http client as it appears bugged 2013-03-21 13:54:40 +11:00
md_5
517655f54e How did that debug stay there? 2013-03-21 13:45:56 +11:00
md_5
55ec76beee Allow users to connect 2013-03-21 13:37:38 +11:00
md_5
a564d4c7f1 Fix issue #219 - make the scheduler work 2013-03-21 13:35:35 +11:00
md_5
6813b82b84 Fix issue #216 and #219 by moving current server check to the connect method. 2013-03-20 20:25:42 +11:00
md_5
27d454524f Use asynchttpclient instead 2013-03-20 19:10:59 +11:00
md_5
8827feacfb Implement high performance HTTP api for plugins with jetty. 2013-03-20 18:52:26 +11:00
md_5
692610cd7e Add asynchronous event API from issue #200 2013-03-19 20:09:15 +11:00
md_5
1edd27963f Add issue #215 - scheduler API 2013-03-19 19:45:34 +11:00
md_5
5a15d5387c Use as many threads as the system can handle. 2013-03-19 16:07:39 +11:00
md_5
3fed94fbf2 Stop trying to be Forge for now. 2013-03-19 12:07:59 +11:00
md_5
1dd661f619 Use a byte array in the ping handler for simplicity 2013-03-19 12:07:13 +11:00
md_5
e364cff44e Fix loading config. 2013-03-19 12:00:57 +11:00
md_5
dfa47f740d Add feature #208 - Bungee texture packs. 2013-03-19 11:54:13 +11:00
md_5
87fcef0658 Implement PR #212 - sendMessages() for CommandSenders 2013-03-19 11:43:37 +11:00
md_5
49f2f5f28b Fix issue #211 - ServerInfo.ping 2013-03-19 11:40:56 +11:00
md_5
a12debf6d0 Revert "Add info on registered channels to /bungee to enable users to help identify cause of random timeouts & resource leaks"
This reverts commit b3c34815b0.
2013-03-18 17:36:57 +11:00
md_5
b3c34815b0 Add info on registered channels to /bungee to enable users to help identify cause of random timeouts & resource leaks 2013-03-17 09:03:20 +11:00
md_5
b16da7d048 Be sure to null serverSentScoreboard each connect. 2013-03-16 22:35:13 +11:00
md_5
e681c8906d Add server kick event 2013-03-16 21:32:11 +11:00
md_5
ce40391717 Untested attempt at sending users to default server when their server goes down. 2013-03-16 21:17:41 +11:00
md_5
2e51ec4fba *add else statement to prevent duplicate exception logging 2013-03-16 21:09:16 +11:00
md_5
54098c8989 Attempt to track, and remove scoreboards at reconnect 2013-03-16 21:06:28 +11:00
md_5
156ea30c32 Add scoreboard packets + API classes. Still unimplemented. 2013-03-16 20:48:51 +11:00
md_5
6bb089074e Clear scoreboards on reconnect. 2013-03-16 20:13:01 +11:00
md_5
70c73211a0 Fix remapping of entities (fishing floats) 2013-03-16 13:07:51 +11:00
md_5
c059345802 Add send command, closes issue #197 2013-03-16 12:14:15 +11:00
md_5
f5b4e1242d Add #205 more methods in Plugin for getting resources / data folders. 2013-03-16 11:53:25 +11:00
md_5
8ea5205fef Reuse single packet instance to save overhead 2013-03-15 21:03:45 +11:00
md_5
05d76c3f67 Pretty up login fail message. Fixes #201 2013-03-15 21:01:35 +11:00
md_5
d6e29b3f29 Fix issue #203 - errors in Util.exception when no trace present. 2013-03-15 20:38:40 +11:00
md_5
bd479ba083 Remove outdated $() logger getter. 2013-03-14 21:33:22 +11:00
md_5
704fe11b05 Make forced hosts take higher priority than force default. Closes #184 2013-03-14 21:18:59 +11:00
md_5
4811e7be4f Implement PostLoginEvent, closes #191 2013-03-14 21:11:16 +11:00
md_5
5bfab582df Fix #156 - Bukkit trying to get client settings. 2013-03-14 20:22:26 +11:00
md_5
ec1de0f636 Add global slot limit. Fixes feature request #40 2013-03-14 20:14:01 +11:00
md_5
8935e77118 Use the Netty byte array encoder now that it is fixed. 2013-03-14 19:49:31 +11:00
md_5
b71d253de2 Clean up cipher codec for maximum speed and minimal memory copy. 2013-03-14 19:39:03 +11:00
md_5
d54f2462a8 Less error for IOExceptions, more debug for exceptions in the exception handler. 2013-03-14 19:22:54 +11:00
md_5
c1ff4ffb89 Update to 1.5 & don't deploy proxy to maven, only APIs 2013-03-14 17:50:33 +11:00
md_5
58f1ab208b Reenable encryption + online mode. 2013-03-14 17:46:57 +11:00
md_5
d5f25b07e5 *remove wrapper class 2013-03-14 17:25:24 +11:00
md_5
30b381853c Change packet handling from ByteBufs to byte arrays to work around netty bug. Connection now appears to be stable - just need to add an optimized encryption algorithm back. 2013-03-14 17:24:32 +11:00
md_5
b0820208e6 @normanm @trustin This hack appears to fix all my issues with writing ByteBufs directly to channels. new @lazertester.party(). Others, please note this still isn't even a beta quality build. Due to memory laziness this build will only accept one connection. 2013-03-13 20:11:41 +11:00
md_5
bc0a076e4b Don't sync, its an optimization - right? 2013-03-13 18:08:43 +11:00
md_5
1763dd3078 Remove unneeded channel option. Still trying to fix all these disconnect errors though. 2013-03-13 18:07:07 +11:00
md_5
373ec187fb Fix /server command to only show server name 2013-03-12 18:07:25 +11:00
md_5
ac2c96c2ea This test WITHOUT encryption reveals something is majorly wrong with our packet decoding causing random and frequent disconnects. 2013-03-12 17:53:18 +11:00
md_5
5688099605 Also make sure we get the restricted value per server 2013-03-12 17:14:50 +11:00
md_5
4805087e38 Case insensitive sort 2013-03-12 17:11:06 +11:00
md_5
e2f134ec08 Actually alphabetize players - thanks @Grooohm for the good spot! 2013-03-12 16:56:09 +11:00
md_5
92c1450909 Fix issue #129 - make chat event fire for commands, and add isCommand method. 2013-03-12 15:15:25 +11:00
md_5
fea3642550 Add #183 - restricted servers 2013-03-12 12:13:23 +11:00
md_5
f02d17c979 Fix issue #55 - show alerts in console 2013-03-12 12:03:21 +11:00
md_5
3dac86a94c Add getConsole() to the API 2013-03-12 12:01:47 +11:00
md_5
758e196479 Rewrite list command for per server breakdown, and alphabetizing. 2013-03-12 11:58:04 +11:00
md_5
5dd3384b31 Add GetServer channel, see #145 2013-03-12 11:43:37 +11:00
md_5
59efec128d Add ProxiedPlayer.chat, see #146 2013-03-12 11:38:11 +11:00
md_5
3b90737273 Update CipherCodec to try and fix issues. 2013-03-12 11:21:39 +11:00
md_5
f9f664f9b6 Try using out.writerIndex instead of readerIndex 2013-03-11 20:27:19 +11:00
md_5
9edcda7ace Downgrade NIO to 1.4.7 2013-03-11 18:28:10 +11:00
md_5
cd1420d9cd Fix entity rewrites on falling blocks. 2013-03-11 14:31:51 +11:00
md_5
a3e1493ce1 Merge NIO into master. I would not recommend this on a production server at all. Its 1.5 anyway. 2013-03-11 13:30:29 +11:00
md_5
9fb814003b Handle kicks when trying to login to server. Now we have to be about done. 2013-03-11 10:15:14 +11:00
md_5
76319371f7 Small code / api cleanup. Need to fix kicking in general, especially in ServerConnector before release. 2013-03-11 10:06:14 +11:00
md_5
2e33ab1460 Remove outdated javadoc 2013-03-11 09:52:53 +11:00
md_5
cfd10f5714 Handle when user gets kicked midway through login to other server 2013-03-11 09:47:42 +11:00
md_5
6ae5feee60 Error handling when cannot connect to server. 2013-03-11 09:39:37 +11:00
md_5
0b7b87d9c3 Wait 100ms before closing socket to give server time to process. 2013-03-11 09:30:49 +11:00
md_5
fa5804ec86 OMG WTF BBQ IT WORKS. LETS IRON OUT BUGS AND GET OUR RELEASE TARGET, ONLY 12 HOURS LEFT. 2013-03-11 09:18:39 +11:00
md_5
6e18403cd9 Ensure all resources are closed all the time. 2013-03-11 09:11:36 +11:00
md_5
f67ad024f5 Make builds expire. 2013-03-10 20:01:30 +11:00
md_5
a0989a8932 Update for 1.5. This build only supports 1.5, not any other versions. 2013-03-10 12:41:13 +11:00
md_5
3be83cb5a4 Disconnect when exception caught 2013-03-09 17:59:44 +11:00
md_5
0ce02251d4 Start work on a little spit and polish, with cleaner exceptions. 2013-03-09 16:47:13 +11:00
md_5
b4d104d258 *actually compile (wire up the broadcast method) 2013-03-09 14:31:39 +11:00
md_5
0c69814db7 Make sendMessage work again 2013-03-09 14:29:54 +11:00
md_5
f0766ebcfb Bridge packets both ways. 2013-03-09 14:27:24 +11:00
md_5
f0a19e0f45 Small cleanup of packet classes 2013-03-09 14:23:40 +11:00
md_5
6525502836 We can login now. Kindof. *wipes sweat off brow. 2013-03-09 14:19:12 +11:00
md_5
504f703fbb This is so tiring 2013-03-09 12:35:32 +11:00
md_5
4fb85721a9 Nearly ready to get a working connection, however few hacks due to own shortcomings and netty shortcomings. 2013-03-09 12:08:26 +11:00
md_5
e12bc1d92e Closer to connecting, trying to figure out this encryption bug also present in first connect on Spigot 2013-03-09 10:47:12 +11:00
md_5
bcaafc206f Advancing further in the login process. 2013-03-09 10:10:36 +11:00
md_5
8a96555cc7 We can now get pings! 2013-03-09 09:54:19 +11:00
md_5
45c848a4fd Cleanup channel initialization - now its time to get this show working. 2013-03-09 09:45:10 +11:00
md_5
9e0ae0a70d Thread login auth properly. 2013-03-08 18:26:59 +11:00
md_5
9ad9003974 Tigthen access + javadocs on a few netty related classes. 2013-03-08 18:07:21 +11:00
md_5
e18fe49cf9 Whats this? It compiles. Doesn't mean it near works though. 2013-03-08 17:52:17 +11:00
md_5
c3d702a5b3 Switch main packet interface to bytebuf 2013-03-08 17:35:01 +11:00
md_5
cdf26f7950 Nearing a compilale state, gonna have to redo the bootstrap. 2013-03-08 17:24:09 +11:00
md_5
644deee3c6 Redo parts of login and connection sequences 2013-03-07 21:33:49 +11:00
md_5
b6e76f4054 Cleanup permissions and disconnect sequences 2013-03-07 21:04:03 +11:00
md_5
0f9cc76633 Update Server interface to remove depreceated methods 2013-03-07 20:52:19 +11:00
md_5
0afc52c130 Upstream and downstream bridges are now uber sexy 2013-03-07 20:47:39 +11:00
md_5
0077af58d0 Start work on netty overhaul 2013-03-07 20:05:41 +11:00
md_5
87e78bae7e Fix #177 - greload and listeners 2013-03-06 12:04:25 +11:00
md_5
5c1d7e1c5b Allow setting tab list size per listener see #173 2013-03-04 22:52:53 +11:00
md_5
efcf4c6a59 'fix' #171 & #147 2013-03-04 21:35:52 +11:00
md_5
317f286789 Handle removed servers in reconnect 2013-03-02 19:26:19 +11:00
md_5
385699380f Use standard log format, may relate to #213 2013-03-02 13:42:10 +11:00
md_5
6afff00da9 Restart listeners on reload (reloads MOTD too). See issue #157 2013-02-26 11:40:58 +11:00
md_5
002f32a879 Fix deep config saving. 2013-02-23 14:55:49 +11:00
md_5
0cf657592d Take correct substring 2013-02-23 11:23:49 +11:00
md_5
cb0c010029 Fix #136 2013-02-23 09:49:55 +11:00
md_5
3cff9eff24 Fine, kick as usual 2013-02-21 18:18:46 +11:00
md_5
92a212c8c8 Cleaner exceptions. 2013-02-21 18:17:44 +11:00
md_5
f1f10521e2 Use native Java ciphers for encryption / decryption - now that we have our buffer issues sorted this should be a small speed boost. 2013-02-21 17:13:04 +11:00
md_5
0f8f8cb289 Only sleep on client read - prevent insane lag 2013-02-21 17:06:38 +11:00
md_5
59a7e6f9c4 Make disabling plugins the last thing we do. 2013-02-21 17:05:31 +11:00
md_5
0c5d76b860 Workaround for kicks 2013-02-19 20:12:33 +11:00
md_5
297c8e2c8b Use correct disconnect sequence at all times, fixes #119 and events not firing at stop 2013-02-18 19:24:40 +11:00
md_5
c44dc7931a Fix kicks - that was easy 2013-02-18 18:35:33 +11:00
md_5
ce9766aae4 Default sleep time of 1 2013-02-16 18:18:31 +11:00
md_5
0b10f83916 Cut CPU load to sane amounts in the same way that Minecraft does. 2013-02-16 12:41:26 +11:00
md_5
feb64312ca Fire events + plugin channels in server login 2013-02-16 10:21:35 +11:00
md_5
190e5109cf Silence EOF error on login - see #127 2013-02-16 09:35:54 +11:00
md_5
05a6b566b2 Rewrite login process in preparation for both forge and netty. 2013-02-16 09:34:31 +11:00
md_5
51e2570ddd Clean up formatting of initial handler a little. 2013-02-16 09:01:56 +11:00
md_5
6ad40aba66 Remove debug + kick properly 2013-02-16 09:01:12 +11:00
md-5
f27f8e9ae7 Use kick exception to disconnect on login. 2013-02-16 08:53:20 +11:00
md_5
7974ccc0bf No more errors in the server console, but a certain mod is still breaking the rules. 2013-02-14 19:50:57 +11:00
md_5
9b1f1d9a50 Forge support is now working - however an unidentified mod is breaking it due to the use of packet 80. All I can tell is this mod is present in FTB lite. 2013-02-14 19:41:16 +11:00
md_5
bef2818537 Fix forge support - #111 2013-02-14 18:30:48 +11:00
md_5
0451c35bf8 Finish up Forge support - yay. 50% chance this works. Fixes issue #111 2013-02-14 17:27:35 +11:00
Austin Smith
a8c60180d7 Don't instantiate a ReconnectHandler if a plugin has provided one on load 2013-02-14 06:25:23 +11:00
md_5
379376f0fa Add player disconnect event, thanks @lazertester 2013-02-13 18:49:08 +11:00
md_5
d2a919fc06 Rework packet reading a little in more preparation for Forge. 2013-02-12 12:05:06 +11:00
md_5
d17c457040 Add experimental offline mode support - closes issue #121 2013-02-12 11:48:38 +11:00
md_5
0d5099bee5 Call login event 2013-02-11 17:26:52 +11:00
md_5
2b1d2cba04 All I actually needed was: nextServer = null; 2013-02-10 21:40:06 +11:00
md_5
25d2902240 Quick fix for /server, will do a better job later 2013-02-10 21:36:37 +11:00
md_5
9c5e02e20a Add groundwork for custom protocols such as forge in a really cool manner - has not been tested, so may be a regression on prior build. 2013-02-10 21:26:49 +11:00
md_5
9f4fc4dfac Forge and Spoutcraft are so annoying they accidentally got locked out again. 2013-02-10 21:24:44 +11:00
md_5
da9c41ae66 Fix reloading. 2013-02-10 21:08:41 +11:00
md_5
c5e15697a4 Fix server ping method. 2013-02-10 20:18:08 +11:00
md_5
154722eacc Add perm debug command 2013-02-10 17:41:34 +11:00
md_5
9e2eda672d Cache the client status packet. 2013-02-09 19:01:18 +11:00
md_5
b946e376c7 Fill out all handlers for packets just in case they are needed. 2013-02-09 18:06:15 +11:00
md_5
23582a635b Reformat to new code style, lots of spaces for easy reading. 2013-02-09 17:57:09 +11:00
md_5
69d618c648 Use custom packet out stream to ease transition to a netty channel when it is required 2013-02-09 17:48:42 +11:00
md_5
1df6fdf973 Fix ProxiedPlayer.connect from plugins. 2013-02-09 14:19:21 +11:00
md_5
1bc4316e0a Add messages to state checks 2013-02-08 16:23:49 +11:00
md_5
48447addba Hasten login process a tad, maybe a 100ms saved for the user 2013-02-08 16:21:08 +11:00
md_5
f1f68ab85b Ask and 70.93 seconds later you shall receive - cross server message channel. 2013-02-07 17:23:49 +11:00
md_5
7e39cb8da6 Remove useless disconnect channel. 2013-02-07 16:55:32 +11:00
md_5
a2ebb92d56 Scumbags Forge and Spout. 2013-02-03 20:53:58 +11:00
md_5
fbacafb752 No excuses this time. 2013-02-02 10:24:54 +11:00
md_5
c65a3ec55e Use a stateful login system for the initial handler. 2013-02-02 10:17:37 +11:00
md_5
36f5f33db0 Forward even when no players are online. 2013-02-02 09:11:26 +11:00
md_5
4055139dcd Don't create new sections for each player. 2013-02-01 21:47:14 +11:00
md_5
00e0e3c1a3 Use more ram to reduce CPU. 2013-02-01 21:34:13 +11:00
md_5
7538ff46ed Remove bulk reading, because for an unexplainable reason it can cause garbled data. (reverse-merged from commit ed667e2b72) 2013-02-01 21:14:40 +11:00
md_5
ecf5b4dc30 Automatically queue packets to send when a player connects, and change the API regarding this. Please don't use the Server methods anymore, instead use ServerInfo.
CC: @TheDgtl
2013-01-31 20:53:22 +11:00
md_5
0721e3cc75 Sweet trick to avoid locking in global tab list, basically reimplement HashSet based on a ConcurrentHashMap. 2013-01-31 17:55:46 +11:00
md_5
e5bb5e5168 Use same initial ping as Minecraft - 1000 2013-01-31 17:46:15 +11:00
md_5
f9c4251417 Send forwaded data along the Bungee channel. 2013-01-28 09:19:06 +11:00
md_5
ed667e2b72 Allow bulk reading for what again should be a substantial reduction in CPU cycles, mostly due to the previous commit which didn't actually reduce CPU because of this not being present. 2013-01-27 19:33:11 +11:00
md_5
0985794eab Add GetServers channel. 2013-01-27 10:05:22 +11:00
md_5
8f090b6692 Add player list and player count channels. 2013-01-27 09:51:45 +11:00
md_5
b61758ca8e Actually don't need name for IP packet 2013-01-26 16:56:33 +11:00
md_5
bed67a90ef Dont let Bungee channels reach the user 2013-01-26 16:55:55 +11:00
md_5
f7d1c168fc Implement a way to get the users real IP. 2013-01-26 16:53:33 +11:00
md_5
45a62a111e Rework entity map to do both directions. 2013-01-26 09:22:26 +11:00
md_5
769e2e2148 And users before.... 2013-01-25 13:34:02 +11:00
md_5
931fcf416f Update everyones player list when a new player joins (GLOBAL tab list) 2013-01-25 13:29:22 +11:00
md_5
d6c3420ea1 *bungeecord permission for alert 2013-01-25 10:20:44 +11:00
md_5
1600d3509c * glist not list 2013-01-25 09:45:12 +11:00
md_5
2e04640638 Add getters for game / protocol version. 2013-01-24 14:55:21 +11:00
md_5
7fec907ab8 Use the set ping event 2013-01-24 14:51:10 +11:00
md_5
8797a29761 Add getServerInfo(name) and rework plugin channel system for stupud Bukkit limitations. 2013-01-24 14:13:27 +11:00
md_5
8f32374cda Dont remove from server if not connected to one. 2013-01-24 14:03:00 +11:00
md_5
ec35482102 Properly colour MOTDs 2013-01-24 11:34:30 +11:00
md_5
8021f58451 Implement server ping method. 2013-01-23 16:50:25 +11:00
md_5
355d4988f3 Fix alerts being cut off at start 2013-01-22 19:34:31 +11:00
md_5
6333f3bbb6 Actually format. 2013-01-22 16:25:05 +11:00
md_5
7e41a6cd70 Enable plugins like they were meant to 2013-01-22 16:00:13 +11:00
md_5
def2269b6e Merge API into master. This marks the dawn of a new Bungee era, but must be regarded as UNSTABLE. 2013-01-22 13:33:36 +11:00
md_5
cae71552cd Fix permissions and stuff, we are go for master! 2013-01-22 13:21:04 +11:00
md_5
a22f57c1f5 Add default permissions 2013-01-22 12:29:46 +11:00
md_5
ade3fe4311 Just need to add default permissions and we are ready for release. 2013-01-22 10:39:21 +11:00
md_5
4b9b2cbb96 Add plugin channel support for plugins. 2013-01-22 10:20:33 +11:00
md_5
39506f3fa6 Add crucial getter for server info 2013-01-21 17:49:34 +11:00
md_5
57576912c1 Add forced servers back. 2013-01-21 14:04:46 +11:00
md_5
c281f008c3 Ok, I guess tomorrow is testing day. 2013-01-20 15:09:13 +11:00
md_5
9ce148681d Add server connected event 2013-01-20 15:02:45 +11:00
md_5
77d5398124 Add yaml reconnect handler. 2013-01-19 17:02:49 +11:00
md_5
355afba6da Fix config, up next, reconnect handler. 2013-01-19 14:05:33 +11:00
md_5
bf1e7f09a9 Well, it compiles, time to start fixing stuff. 2013-01-19 13:33:04 +11:00
md_5
cf42a10ba4 Pretty close to compiling for the first time in ages. It wont be anywhere near working though. 2013-01-19 10:49:11 +11:00
md_5
8bff34b8b6 Add the start of a config loader. 2013-01-19 10:13:55 +11:00
md_5
4ba6993039 Clean commands a bit. 2013-01-18 11:39:15 +11:00
md_5
8e3f750c7c Make the tab list implementations pruddy. 2013-01-18 11:33:44 +11:00
md_5
df37612494 Add permissions 2013-01-18 11:11:52 +11:00
md_5
32ef5212f8 This is hard >.> 2013-01-18 10:46:55 +11:00
md_5
55867dbdc3 More work 2013-01-17 12:37:02 +11:00
md_5
592a504e77 Start work on making it compile again. 2013-01-17 11:59:59 +11:00
md_5
098ca5920e Start a hugely messy implementation of the API 2013-01-16 11:16:21 +11:00
md_5
b4105f8081 Finish up command API, with permissions and aliases! 2013-01-12 12:03:59 +11:00
md_5
a7f7a49fc3 Refactor into maven modules. 2013-01-10 17:41:37 +11:00