Commit Graph

1174 Commits

Author SHA1 Message Date
0e5bb72045 Implemented additional support for netty d2gs server
Can connect and do most functions as a single player
Multiple connections do not work
2020-06-29 23:44:52 -07:00
0b66f63251 Added autoRelease param to constructor
Some impls need to cache packets
2020-06-29 21:57:39 -07:00
cd93d379bd Added note to fix issue regarding the server binding as LAN IP instead of localhost 2020-06-29 21:48:56 -07:00
a205135c9e Moved cache and packet queues from D2GSPacketProcessor to Server 2020-06-29 19:25:01 -07:00
0333bdd40a Backporting changes from com.riiablo.server.d2gs to com.riiablo.server.d2gs_test 2020-06-29 00:59:13 -07:00
e76fe35f49 Changed PacketProcessor references to D2GSPacketProcessor
D2GSPacketProcessor can process the packet type directly
Server will process the ByteBuf into the packet type already and pass it
Moved packet cache and queues fields to D2GSPacketProcessor
Created D2GSPacket to store the flatbuffer table
2020-06-29 00:53:05 -07:00
1af1fd968e Removed functions from Endpoint.IdResolver
In my use-cases there should be a preexisting struct already
IdResolver should just be an accessor to that struct and not a mutator
2020-06-28 18:49:11 -07:00
60257b48de Added help command to server CLI 2020-06-28 18:42:51 -07:00
8feff49a8a Inlined custom IdResolver implementation into Server which wraps Server id manager (set/remove unsupported) 2020-06-28 18:38:47 -07:00
93d013c304 Work on d2gs implementation as a tcp socket with netty
Created com.riiablo.nnet (new net) package while I figure out a good API
Server performs connection protocol and then propagates other packets to PacketProcessor
2020-06-28 15:49:48 -07:00
c1add57fb5 Moved experimental netty d2gs package to d2gs_test package 2020-06-27 18:48:49 -07:00
88b8e7a096 Added sendDisconnectPacket function to D2GS TestClient 2020-06-27 17:06:03 -07:00
26173a8fd1 Changed to use object's toString method 2020-06-27 17:00:33 -07:00
278760f913 Renamed sentPacket to sendConnectionPacket 2020-06-27 16:58:32 -07:00
b2bf16bb1e Implemented basic client disconnection support
Added basic support for automatically detecting inactive channels and performing a client disconnect on them
2020-06-27 16:57:51 -07:00
70cf9d016a Moved ByteToMessageDecoder to it's own declared class 2020-06-27 16:39:48 -07:00
e05e9bebc6 Changed disconnect on error to call ChannelHandlerContext#close() 2020-06-27 16:34:08 -07:00
98521ad40c Formatting change 2020-06-27 16:32:15 -07:00
65e14b7514 Improved ClientData tuple and removed connectionIds and clientDatas hash maps 2020-06-27 16:28:11 -07:00
03ae8f103c Added SocketAddress from parameter to packet callbacks
from paramter will be either TCP channel remote address or UDP packet sender
2020-06-27 15:58:25 -07:00
5f81d4d53a Parameterized ConnectionLimiter max connections 2020-06-27 15:26:11 -07:00
413ebc8f6c Aggregated client connection data/state into ClientData 2020-06-27 03:04:46 -07:00
3906fbdf4c Added support for reversing Animation direction 2020-06-27 01:29:01 -07:00
1781e46724 Created experimental Netty impl of a TCP D2GS server
Created experimental Netty impl of a TCP D2GS server
Added salt field to Netty Connection fbs
Created ConnectionState for Connection fbs
2020-06-27 00:30:15 -07:00
127186f385 Updated comment note 2020-06-26 18:56:42 -07:00
d1270b1a75 Created UnicastEndpoint interface on top of Endpoint
Allows sending a message and letting the Endpoint figure out where it should go
Will only be used for client-side endpoints
2020-06-26 13:53:54 -07:00
143bfca048 Changed signature of PacketSender functions and prepended InetSocketAddress parameter for target 2020-06-26 13:31:47 -07:00
ad78346c1e Added salt field to Netty fbs 2020-06-25 19:47:39 -07:00
9c586f90d0 Fix to prevent profiler activation key from triggering when console is open 2020-06-25 19:37:51 -07:00
dac10467fa Changed signatures for packet processing calls from Channel to ChannelHandlerContext 2020-06-25 17:29:20 -07:00
57a8c1167e Fixed debug logging for inbound messages 2020-06-25 14:47:28 -07:00
17d257b2b0 Improved memory usage metrics and created #80 2020-06-25 13:32:09 -07:00
b9bf27d2f6 Added heap usage to display 2020-06-25 13:04:46 -07:00
31af776e42 exceptionCaught will log the error and close the connection -- will add proper pipeline later 2020-06-25 12:44:20 -07:00
8a38fd7139 Added Channel field to processPacket callback to retrieve attributes and manage connection 2020-06-25 12:18:44 -07:00
597ae213c5 Moved netty netcode from :server:netty to :core module 2020-06-25 10:08:00 -07:00
fbdf50f646 Added additional methods to expose MessageChannel instances of ReliableEndpoint and ReliablePacketController instance of MessageChannel 2020-06-25 01:18:44 -07:00
cf1fea539f Improved support for reliable UDP
Implemented PacketListener#onPacketTransmitted callback for sending messages and acks
Created PacketListener#onAckProcessed callback for received acks
Documented some unknown code related to copying outgoing bytebuf and prepending some data to it
Todo: add support for fragmented messages
2020-06-25 01:11:24 -07:00
7b3827823d Added reliable udp packet receiving and partial sending 2020-06-24 22:20:26 -07:00
bfe71c1031 Moved sequence manipulators to MessageChannel 2020-06-24 22:16:57 -07:00
e36b832667 Added support for reliable UDP congestion control and packet resending -- no transcieve yet #78 2020-06-24 21:53:45 -07:00
398f034755 Moved EventLoopGroup shutdown to Application#dispose 2020-06-24 21:48:36 -07:00
3dc8136462 Moved exit function to catch block and removed sync which was blocking create thread and thus render loop 2020-06-24 20:15:48 -07:00
8eee5fd8f3 Modified generics with API - endpoint should work with any Object as QoS param 2020-06-24 17:40:30 -07:00
d328eff4d2 Refactored to send connection packet on main thread instead of through an extra handler attached to the pipeline 2020-06-24 16:29:49 -07:00
b74e870e9b Abstracted networking further and implemented TCP implementation #78
Deprecated ReliableChannelHandler (succeeded by EndpointedChannelHandler)
Added basic test netty TCP client and server
2020-06-24 15:46:41 -07:00
b832c89dcc Updated API 2020-06-24 15:27:58 -07:00
271359cbca Fixed log messages 2020-06-24 15:22:18 -07:00
725bbe4a01 Modified API slightly to improve extension 2020-06-24 13:43:07 -07:00
2f066cbd0f Created PacketSender abstraction to send Flatbuffer data using any protocol 2020-06-24 12:19:31 -07:00