Opened 4 years ago

Last modified 2 years ago

#4365 new enhancement

Optionally show failed attempts to the join when late-observer joins are disabled

Reported by: elexis Owned by:
Priority: Nice to Have Milestone: Backlog
Component: Network Keywords:
Cc: Patch:

Description (last modified by elexis)

Use case: A number of hosts disable the late observer join tool as they don't want the masses to join in already lagging games.

Often it occurs that some players would be allowed to join, which is communicated through the lobby frequently ("can you ask the host to allow late observers for me?").

Related: #4159 would allow players to specify a list of players they consider buddies. When enabling an option, buddies would be able to join as late observers while connection attempts from others are rejected.

Implementation: This ticket proposes to add a new option that if active, sends a notification to the host (or hosts #3806) to show that the given player has attempted to connect to the game, but was rejected. Thus allowing the host to open late observer joins temporarily (without becoming annoyed with popups).

In the most simple form, adding the following line above session->Disconnect(NDR_SERVER_ALREADY_IN_GAME); works for the current (a21) code:

LOGWARNING("Rejected late observer %s", utf8_from_wstring(username).c_str());

However that should be translatable and since we shouldn't assume the server having any local client or screenspace at all (#3556), the server should send new GUI notification message type to the hosting client(s). This message type would be needed in any case if we want to receive notifications from the server (for example if the kick wasn't successful too).

The option doesn't have to be added to the options.json file (but default.cfg) until we have scrolling in the options window or more tabs and perhaps a way to hide advanced settings by default.

Change History (1)

comment:1 Changed 2 years ago by elexis

Description: modified (diff)
Summary: Optionally show failed attempts to the host when late-observer joins are disabledOptionally show failed attempts to the join when late-observer joins are disabled
Note: See TracTickets for help on using tickets.