"
grepman wrote:
"
vio wrote:
the value for the timeout or the flag that enables some tech on the server to gradually lower the timeout to a certain base value if the connection is good would be transported like any other parameter that get's sent to the server (f.e. lockstep/predictive mode).
lockstep/predictive is transported through application layer and it pretty much only affects the client. before it used to predict if not receiving response fast. now, it will not do anything until the response.
disconnect detection often is built right on top of tcp/ip stack and is often built in connection libraries in such a way that it can change stack settings on host level (having permissions ofc).
for example, it is that way in enterprise software I work on. there is a proprietary [and optional] protocol on top of regular connection protocol JUST for disconnect detections. in my case, client side timeout IS configurable since we have multiple servers talking to each other inside the solution, but since its used on-premise its only for 'select few' and in cloud everything is pre-set and 'locked'.
no exposed end-user clients should be able to change anytyhing disconnect detection mechanism.
quite possible that lockstep/predictive is only client side. and that ggg uses a application layer heartbeat for disconnect detection.
if you enter a instance, all sorts of parameters from the character database is loaded by the gameserver. i don't see any reason why these data shouldn't include a on/off flag that enables some server tech that shortens the timeout for the heartbeat over time if the user wants to do that?