Multiplayer Lobby window
Moderator: Oberlus
-
- Programmer
- Posts: 389
- Joined: Sun Feb 14, 2016 12:08 am
Multiplayer Lobby window
Feedback for changes, notable flaws, and notes for planned features/functionality welcome.
Very rough mockup from host view, simply for a general layout:
Top Left: Galaxy setup window (which includes a tabbed view for advanced/content settings) Top Right/Center: Empire Setup window
Bottom Left: Host Settings window Bottom Center: Chat window Bottom Right: Player List
Open to suggestions on naming for a player with host-like privileges. For now I refer to them as host, there will always be one player with this flag (default to actual host).
In-game this player will have the ability to kick and ban players, modify the chat filter, perform manual saves, and stop the current game.
(Could call them the Moderator and re-label the existing moderator to something else)
Galaxy setup
Mostly unchanged, the tabbed layout here might be done later for advanced settings.
Monster Aggression is not shown here, but is not planned to be dropped because of layout.
Empire setup The host is able to change any of these columns:
+/- buttons: only shown to the host, allowing addition or removal of empires.
Ready state: indicates if the empire is ready (changed by the allotted player or the server), possibly move this column to the far right to accommodate easier toggling.
Client type: Allows changing the color through the color wheel (Disabled if "Allow color changes" is disabled), icon represents the client type (human or AI)
Empire name: Change the empire name (Disabled if "Empires use player names" is enabled)
Starting species: Change starting species for the empire (Disabled if "Allow species changes" is disabled)
Player: Player assigned to this empire. For a normal player, they will only have options for themselves or unassigned. Only host can assign AI or select from full player list.
When an empire has the player column unassigned and the game is started, that empire will be populated by a new AI player.
If an empire is allotted to a player or AI, no other player may change it (except the host).
Player List
Any connected clients are listed here, along with an icon representing their status (host, moderator, observer, or the same icon as the allotted empire)
Host can drag and drop from player list to empire list.
Right click pop-up for message and mute features. Additional host options to set as observer, moderator, host and sub-menus to kick or ban.
When they are added: message, mute, kick and ban would be available in-game as well.
Chat window
Largest change is the addition of events and specific coloring.
If the empire color is changed to be client specific, the color tags will need a lookup reference instead of actual colors.
Some option to disable events may be desired.
Host Settings Most of these are features that don't need to be added right off.
Settings enabled only for the host, this area could be replaced with the galaxy image for other players (if "Hide Galaxy Setup" is disabled).
"Start game when all Ready": The sever will autostart once all empires are flagged as Ready.
"Hide Galaxy Setup": displays all of the galaxy setup fields as unknown or blank to players other than the host.
"Auto assign new players": When a new player connects, assigns them to the next unassigned empire. Adds a new empire if none available.
"Empires use player names": Forces all empire names to copy the allotted player's name (some special handling for AI).
"Allow color changes": Enables players to change the color for their allotted empire. Unneeded with client specific empire colors.
"Allow species changes": Enables players to change the starting species for their allotted empire.
"Idle player timeout": Kicks any player with no activity for the specified time (in-game the empire is preferably handed to a new AI). Not a turn timer, which would be on the galaxy setup.
"Chat filter": Options to set filters for chat an player/empire names.
"Ban List": Manage the existing bans on this server, showing duration remaining and the filter applied.
Maybe add a "No Observers" option, which disallows any observer players from joining the game when it starts.
Host has the option to "Force start" the game. Doing so will autoresolve any existing conflicts, specifically the unassigned empires will be assigned to an AI player and duplicate names modified.
Any other functionality that might need to be added to this screen? (better icons would be nice)
Another option for reusing the galaxy image is to set it as a faded background image.
Very rough mockup from host view, simply for a general layout:
Top Left: Galaxy setup window (which includes a tabbed view for advanced/content settings) Top Right/Center: Empire Setup window
Bottom Left: Host Settings window Bottom Center: Chat window Bottom Right: Player List
Open to suggestions on naming for a player with host-like privileges. For now I refer to them as host, there will always be one player with this flag (default to actual host).
In-game this player will have the ability to kick and ban players, modify the chat filter, perform manual saves, and stop the current game.
(Could call them the Moderator and re-label the existing moderator to something else)
Galaxy setup
Mostly unchanged, the tabbed layout here might be done later for advanced settings.
Monster Aggression is not shown here, but is not planned to be dropped because of layout.
Empire setup The host is able to change any of these columns:
+/- buttons: only shown to the host, allowing addition or removal of empires.
Ready state: indicates if the empire is ready (changed by the allotted player or the server), possibly move this column to the far right to accommodate easier toggling.
Client type: Allows changing the color through the color wheel (Disabled if "Allow color changes" is disabled), icon represents the client type (human or AI)
Empire name: Change the empire name (Disabled if "Empires use player names" is enabled)
Starting species: Change starting species for the empire (Disabled if "Allow species changes" is disabled)
Player: Player assigned to this empire. For a normal player, they will only have options for themselves or unassigned. Only host can assign AI or select from full player list.
When an empire has the player column unassigned and the game is started, that empire will be populated by a new AI player.
If an empire is allotted to a player or AI, no other player may change it (except the host).
Player List
Any connected clients are listed here, along with an icon representing their status (host, moderator, observer, or the same icon as the allotted empire)
Host can drag and drop from player list to empire list.
Right click pop-up for message and mute features. Additional host options to set as observer, moderator, host and sub-menus to kick or ban.
When they are added: message, mute, kick and ban would be available in-game as well.
Chat window
Largest change is the addition of events and specific coloring.
If the empire color is changed to be client specific, the color tags will need a lookup reference instead of actual colors.
Some option to disable events may be desired.
Host Settings Most of these are features that don't need to be added right off.
Settings enabled only for the host, this area could be replaced with the galaxy image for other players (if "Hide Galaxy Setup" is disabled).
"Start game when all Ready": The sever will autostart once all empires are flagged as Ready.
"Hide Galaxy Setup": displays all of the galaxy setup fields as unknown or blank to players other than the host.
"Auto assign new players": When a new player connects, assigns them to the next unassigned empire. Adds a new empire if none available.
"Empires use player names": Forces all empire names to copy the allotted player's name (some special handling for AI).
"Allow color changes": Enables players to change the color for their allotted empire. Unneeded with client specific empire colors.
"Allow species changes": Enables players to change the starting species for their allotted empire.
"Idle player timeout": Kicks any player with no activity for the specified time (in-game the empire is preferably handed to a new AI). Not a turn timer, which would be on the galaxy setup.
"Chat filter": Options to set filters for chat an player/empire names.
"Ban List": Manage the existing bans on this server, showing duration remaining and the filter applied.
Maybe add a "No Observers" option, which disallows any observer players from joining the game when it starts.
Host has the option to "Force start" the game. Doing so will autoresolve any existing conflicts, specifically the unassigned empires will be assigned to an AI player and duplicate names modified.
Any other functionality that might need to be added to this screen? (better icons would be nice)
Another option for reusing the galaxy image is to set it as a faded background image.
Any content posted should be considered licensed GNU GPL 2.0 and/or CC-BY-SA 3.0 as appropriate.
Re: Multiplayer Lobby window
Due to being sick not in the shape to go over this thoroughly, but at a quick glance looks very good. Much better than the old lobby. Big thumbs up!
-
- Programmer
- Posts: 389
- Joined: Sun Feb 14, 2016 12:08 am
Re: Multiplayer Lobby window
I don't expect this to be done for the current release(I'm still trying jimmy a log collector without completely duplicating the sink backend).
Mainly posting to get any ideas for added functionality to the lobby, even if those functions are not planned anytime soon.
So if anyone thinks of something they might want added later, please mention it.
Get to feeling better, there is plenty of time to hash this out (and thank you for the pending kudos)
Mainly posting to get any ideas for added functionality to the lobby, even if those functions are not planned anytime soon.
So if anyone thinks of something they might want added later, please mention it.
Get to feeling better, there is plenty of time to hash this out (and thank you for the pending kudos)
Re: Multiplayer Lobby window
Looks awesome.
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: Multiplayer Lobby window
Unless I mention anything against it assume I don't oppose the specific detail of your mockup.
First thought: That's a lot of knobs to turn in one little window.
Second thought: The host is a run of the mill control freak, isn't he?
I think you're on the right track with the tabbed layout but you fail to separate the tab panels into coherent topics. But lets start with the easy bottom part. I would give the chat the whole bottom of the window maybe in a 65% settings / 35% chat ratio and have it visible anytime regardless of the selected tab. This allows continuous interaction and notification between game participants, regardless if they are inspecting or updating settings.
tl;dr: Move the host settings somewhere else, give the players space to chat.
I believe the host settings should be a tab in the upper half of the settings and should be the first tab (called "Host") in order and the first one a host sees when he starts a host session. You can take most of the host settings you listed and put them into the "Host" tab. Additionally to that the "Host" tab should contain the "Load Savegame" button. Why there? It's more of a gut feeling but I think a setting that affect the contents of both the galaxy setup and the empire assignment should belong in a more important and earlier accessed place for the host. Also I don't think a chat/empire-/username filter with the function you described is a good idea. We're not the thought police and everybody has the right to be an idiot. If the host disagrees with the inflammatory player he still can intervene by kicking him and/or swinging the ban hammer. Also I'm missing settings for a password protected game and, very important, a field for the `Message Of The Day` where the host can write a text that may contain greetings, a contact and/or community rules (roleplay encouraged, …) or server modifications (non standard ruleset, …).
For players the first tab however would be the `Message of the Day` and a "Agree" and "Disconnect" button. "Agree" button puts the player into the chat, the "Disconnect" button disconnects the player.
After the "Host", respective "MOTD" tab would be the "Galaxy" tab ("General" in your mock). For the host it would be the interactive controls like now, for players it would be a tabular listing of settings. Both variants would show a preview image like it is done now.
The final tab for both Host and Players would be "Empires". It contains most of the information like it does in your mock. Except for the ready status. It has not point in the Empire list as Empires are both humans and AI and only humans can be ready or unready (the puny AI has just to deal with whatever the host decides) so it should be a column in the player list.
Changes in the Galaxy or Empire setup are announced in the chat, all players status are set to unready and the currently not active tab is highlighted for review.
This review isn't complete or thought out in detail but I think it contains the most of the suggestions I can come up with.
First thought: That's a lot of knobs to turn in one little window.
Second thought: The host is a run of the mill control freak, isn't he?
I think you're on the right track with the tabbed layout but you fail to separate the tab panels into coherent topics. But lets start with the easy bottom part. I would give the chat the whole bottom of the window maybe in a 65% settings / 35% chat ratio and have it visible anytime regardless of the selected tab. This allows continuous interaction and notification between game participants, regardless if they are inspecting or updating settings.
tl;dr: Move the host settings somewhere else, give the players space to chat.
I believe the host settings should be a tab in the upper half of the settings and should be the first tab (called "Host") in order and the first one a host sees when he starts a host session. You can take most of the host settings you listed and put them into the "Host" tab. Additionally to that the "Host" tab should contain the "Load Savegame" button. Why there? It's more of a gut feeling but I think a setting that affect the contents of both the galaxy setup and the empire assignment should belong in a more important and earlier accessed place for the host. Also I don't think a chat/empire-/username filter with the function you described is a good idea. We're not the thought police and everybody has the right to be an idiot. If the host disagrees with the inflammatory player he still can intervene by kicking him and/or swinging the ban hammer. Also I'm missing settings for a password protected game and, very important, a field for the `Message Of The Day` where the host can write a text that may contain greetings, a contact and/or community rules (roleplay encouraged, …) or server modifications (non standard ruleset, …).
For players the first tab however would be the `Message of the Day` and a "Agree" and "Disconnect" button. "Agree" button puts the player into the chat, the "Disconnect" button disconnects the player.
After the "Host", respective "MOTD" tab would be the "Galaxy" tab ("General" in your mock). For the host it would be the interactive controls like now, for players it would be a tabular listing of settings. Both variants would show a preview image like it is done now.
The final tab for both Host and Players would be "Empires". It contains most of the information like it does in your mock. Except for the ready status. It has not point in the Empire list as Empires are both humans and AI and only humans can be ready or unready (the puny AI has just to deal with whatever the host decides) so it should be a column in the player list.
Changes in the Galaxy or Empire setup are announced in the chat, all players status are set to unready and the currently not active tab is highlighted for review.
This review isn't complete or thought out in detail but I think it contains the most of the suggestions I can come up with.
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
-
- Programmer
- Posts: 389
- Joined: Sun Feb 14, 2016 12:08 am
Re: Multiplayer Lobby window
Default should have "Auto assign new players" enabled, so yes...but they have to deal with Tiamat, which deserves a little leeway.Second thought: The host is a run of the mill control freak, isn't he?
The tabs are only meant to control the galaxy settings panel (part of GalaxySetupWnd), for future advanced/content defined settings.I think you're on the right track with the tabbed layout but you fail to separate the tab panels into coherent topics.
There are further mentions of this below, which I may gloss over for now (I think this is mostly from my misrepresentation).
If that is not the case, please mention so and I will work to incorporate a more tabular layout.
Good point, will have to give some thought on merging that into the same space or window as galaxy settings.Move the host settings somewhere else, give the players space to chat.
One issue with this might be that the galaxy settings should be disabled when Load is selected (unless editing/overriding a savegame in this manner becomes supported).Additionally to that the "Host" tab should contain the "Load Savegame" button.
Don't know that I have ever seen a fully functional chat filter, more than happy to scrap that from the list of possibilities.Also I don't think a chat/empire-/username filter with the function you described is a good idea.
Great additions.Also I'm missing settings for a password protected game and, very important, a field for the `Message Of The Day` where the host can write a text that may contain greetings, a contact and/or community rules (roleplay encouraged, …) or server modifications (non standard ruleset, …).
Alternate proposal: Have a dialog before loading the lobby window with the MOTD. If the player accepts, and passes the ban filter, the server allows connection to the lobby.For players the first tab however would be the `Message of the Day` and a "Agree" and "Disconnect" button. "Agree" button puts the player into the chat, the "Disconnect" button disconnects the player.
If one is set, entering the password would happen between a ban check and connection acceptance.
Having a page for the MOTD once connected should still be done.
o01eg made the same point when adding ready status. I'm happy to move them back to players, though I would counter this by saying an AI player is always ready to start (the only time they would not be ready is if the host has invalid settings)Except for the ready status. It has not point in the Empire list as Empires are both humans and AI and only humans can be ready or unready (the puny AI has just to deal with whatever the host decides) so it should be a column in the player list.
Highlighting changed settings for players forced to "Not Ready" would be a nice addition.Changes in the Galaxy or Empire setup are announced in the chat, all players status are set to unready and the currently not active tab is highlighted for review.
Very helpful, thanks for the initial feedback.This review isn't complete or thought out in detail but I think it contains the most of the suggestions I can come up with.
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: Multiplayer Lobby window
I created some mocks to show what I meant.If that is not the case, please mention so and I will work to incorporate a more tabular layout.
I would assume that the host sees a read only version of that tab page, like every regular player does.One issue with this might be that the galaxy settings should be disabled when Load is selected (unless editing/overriding a savegame in this manner becomes supported).
If the AI is always ready to start why wasting space with this non-information?though I would counter this by saying an AI player is always ready to start
That's IHMO in the domain of 'program error' as the host should never be able to set invalid host settings in the first place.(the only time they would not be ready is if the host has invalid settings)
@Geoff: can we bump the number of attachment files to 6 or 8? Maybe limiting this to contributor?
- Attachments
-
- galaxy_settings_host_view.png (229.47 KiB) Viewed 1250 times
-
- host_settings_host_view.png (28.45 KiB) Viewed 1250 times
-
- general_layout_host_view.png (56.62 KiB) Viewed 1250 times
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
- adrian_broher
- Programmer
- Posts: 1156
- Joined: Fri Mar 01, 2013 9:52 am
- Location: Germany
Re: Multiplayer Lobby window
And another batch of mocks.
- Attachments
-
- ban_list_host_view.png (11.12 KiB) Viewed 1250 times
-
- empire_settings_host_view.png (31.63 KiB) Viewed 1250 times
Resident code gremlin
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
Attached patches are released under GPL 2.0 or later.
Git author: Marcel Metz
-
- Programmer
- Posts: 389
- Joined: Sun Feb 14, 2016 12:08 am
Re: Multiplayer Lobby window
Ah, very nice. Especially like the extra room, which helps retain the galaxy image.
One issue might be changing back to a New game after selecting Load, but pretty minor.
(poor gingers, always ignored)
One issue might be changing back to a New game after selecting Load, but pretty minor.
(poor gingers, always ignored)
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13603
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: Multiplayer Lobby window
Don't know how to do it per-user, but the limit per post is now 6, individual attachments can be up to 5 MB, and the total quota for attachments has been doubled (it was 8 MB from being full).adrian_broher wrote:@Geoff: can we bump the number of attachment files to 6 or 8? Maybe limiting this to contributor?
Some thought about what belongs in the single-game server lobby, and what would make more sense in a meta-server might be useful... Presently it doesn't make much sense to have a server sitting up all the time showing its message about when a game will be played, and the server quits after a game ends.