PocketMine / RubberBand

A multithreaded frontend proxy with multiple servers, lobbies and load balancing. For PocketMine-MP
GNU Lesser General Public License v3.0
27 stars 8 forks source link

[Suggestions] #6

Closed ghost closed 10 years ago

ghost commented 10 years ago

Hey man, why don't you just make a proxy like BungeeCord, it connects to servers by sending join requests and emulate the first part of the login.

ghost commented 10 years ago

yea!

iksaku commented 10 years ago

@kvwang98 I think that it will be the same thing... but with more functions, knowing @shoghicp I believe that this will be awesome for you and other plugin makers :D

shoghicp commented 10 years ago

@kvwang98 well, it is going to do that, but needs a single TCP connection to pass UDP messages

ghost commented 10 years ago

@shoghicp I mean just like a normal client send normal requests then start redirecting packets. And it doesn't require client install the plugin and I don't think we need a TCP connection. xD

shoghicp commented 10 years ago

Remember that this is UDP, not different state in the same socket is saved. A socket would have to be created per client. This works right for 50 clients. Get more and everything will lag. Having a single TCP connection reduces the amount of sockets needed to one per server.

MCPE is completly different than MCPC, and we have to bypass the auth part (start sending chunks directly, pass the UDP packet stream counts to maintain the same connection, and refill recovery buffers. In MCPC that is not needed since all the counts and such are handled by TCP itself. Remember, we handle more low-level things than MCPC

ghost commented 10 years ago

@shoghicp So the MCPE protocol is bad. #BlameMojang