Modified the comment

This commit is contained in:
smallmodel 2025-04-27 20:59:00 +02:00
parent 3a1705da41
commit c3c9808248
No known key found for this signature in database
GPG key ID: 9F2D623CEDF08512

View file

@ -23,18 +23,18 @@ Fax(714)549-0757
/** /**
* The following modifications were made: * The following modifications were made:
* *
* 1) Non-blocking server list sockets. List requests are asynchronous and will not block the game. The only blocking request could be due to DNS resolution. * 1) Non-blocking server list sockets. List requests are asynchronous and won't block the game. The only blocking request could be due to DNS resolution.
* 2) Parallel server list requests. * 2) Server list sockets will timeout after 10 seconds of no reply.
* 2.1) A pool of sockets is initially created * 3) Parallel server list requests.
* 2.2) The server list, initially in the `sl_idle` state, will connect those sockets to available masters. * 3.1) A pool of sockets is initially created
* 2.3) When at least one master replies, the server list sends the request aand transitions to sl_listxfer state. * 3.2) The server list connects idling sockets to available masters, afterwards the server list state is set to `sl_listxfer`.
* 2.4) The server list receives from multiple masters * 3.3) The server list sends the list request to connected masters, and receives the data for each.
* 2.5) When finished fetching 1 master, the server list transitions to sl_querying * 3.4) When finished fetching 1 master (got `\final`), the server list state transitions to `sl_querying`.
* 2.6) At this point all received servers get queried. Masters that haven't finished sending the list are still being processed * 3.5) The server list queries all fetched servers. It can still continue fetching list from currently connected masters
* 2.7) When all received servers have been queried, the server list restarts from 2.3 with next masters to query * but it will not connect to other masters while servers are being queried.
* 3.6) When finished querying all fetched servers, the server list restarts from 3.2 and queries next masters.
* *
* The idea here is mostly to ensure the redundancy of the server list between multiple masters * The idea here is to ensure the redundancy of the server list between multiple masters even if the results are combined.
* even if the results are combined.
* Optionally for best results, the game should return a list of masters from the same community. * Optionally for best results, the game should return a list of masters from the same community.
*/ */
#include "goaceng.h" #include "goaceng.h"