Files
GameServer/Todo.txt
T

45 lines
2.7 KiB
Plaintext

The server receive thread needs to push the user it was received from up the chain
1. Allow the server to setup a server name
2. Allow the client to setup a user name
3. Have the client connect to the server with a welcome packet
4. Have the server use the welcome packet to fillout the user information on the server
5. Respond to the client from the server with a server list of UDPEndpoints
6. Instead of looping through a list of avalible users have a local user dictionary that can be used to lookup clients IPEndPoints
Test that the datapacket is formatted correctly. The packet size might be off from the actual packet size
Have each client update the ingame location to the server every 5 seconds [ Heartbeat ]
For each user in the server calculate which other players are close enough for a connection
So the server needs to hold a table of what clients a client is already connected to
if a new player is now close enough update the client and the servers client table with that information
have the clients udp together
if a player goes out of the range update the clients that they no longer need the connection
drop the player from the table and notify the end user they can close the connection
When user a joins a server
The IP gets added to the servers master list
The user needs to authenticate for username
when the server connection closes
Notify all clients to drop the connections
Remove the user from the server table
Use the Server TCP connection to notify all clients when a user disconnects
Only send updates across the network. Dont send same state events
Need to setup a network buffer for Tagged Objects. ID
Connection Flow:
1. Connection to server is made working
Server object is created working
ServerConnection gets added to the Connections table working
Server fires user connected event working
2. User sends an Auth Packet to server working
Server responds with Auth sucess or fail and marks the users auth status in the server table. needs work
After sucessfull auth share the users IPEndPoint with close connections not started
3. If the TCP connection closes not started
Disconnect the user and tell all clients that the user is gone not started