#3476 closed enhancement (fixed)
[PATCH] Add more information about lobby matches
Reported by: | Stan | Owned by: | elexis |
---|---|---|---|
Priority: | Nice to Have | Milestone: | Alpha 21 |
Component: | Multiplayer lobby | Keywords: | patch |
Cc: | Patch: |
Description (last modified by )
As of alpha 19 only few information is displayed in the lobby about running games. It would be nice to add more details:
- Connected players and observers
- We already show the list of initial clients. But it is not updated with late-observer-joins, resulting in only some observers being listed for that game.
- Sometimes people are listed in multiple games if they were present when it started. So making that distinction between online and offline would help clarifying.
- Online players could appear in their lobby color while offline players could be displayed in gray.
- Gamestart-time
- Useful for estimating if the game will end in the near future or if it has been started just seconds ago. (see #3023)
- Teams
- Would be nice to see and wouldn't add too much information to the gamelist-packet and GUI. See the outdated screenshot.
- Defeated players (maybe)
- Would also help estimating if the game will end soon, also if it is worth to join as spectator.
- Using a
strike-throughfont would be nice for that (we don't have one currently).
Attachments (7)
Change History (22)
comment:2 by , 9 years ago
Notice that we might reuse code in source:/ps/trunk/binaries/data/mods/public/gui/replaymenu/replay_menu.js that constructs the team/civ/ai string.
Notice the "lag estimation" would have to take paused times into account and should not be added until after #1950 is solved.
The turn number doesn't seen to be displayed, but it is used to compute the ingame time.
Not sure if we need a ticket for each of the features, but splitting it somewhat makes sense for sure.
comment:3 by , 9 years ago
Milestone: | Backlog → Alpha 20 |
---|
comment:4 by , 8 years ago
Description: | modified (diff) |
---|---|
Priority: | Should Have → Nice to Have |
comment:5 by , 8 years ago
Description: | modified (diff) |
---|
by , 8 years ago
Attachment: | t3476_dont_even_look_at_it_wip.patch added |
---|
completely broken WIP from 2015_04_10, in case it helps anyone.
by , 8 years ago
Attachment: | 3143_lobby_data_v2.6_lobby_bot_v3.patch added |
---|
Add startTime to the lobby attributes
comment:8 by , 8 years ago
Keywords: | review added |
---|
comment:9 by , 8 years ago
Keywords: | patch added |
---|---|
Summary: | Add more information about lobby matches → [PATCH] Add more information about lobby matches |
comment:11 by , 8 years ago
Keywords: | review removed |
---|---|
Milestone: | Backlog → Alpha 21 |
Thanks for the patch! I will leave this ticket open as the gamestart timestamp should also be sent by XpartaMupp.
Here the diff between the commit and the last patch uploaded:
- Pointless
teamDescription.concat
- Adding three more comments to the functions that send the data and do the peculiar playerdata transformations
- formatClientsForStanza -> renaming list to playerData and moving the duplicate thing out of the if statement
- Not needed to change that string
Players: %(current)s/%(total)s
- Inlining
playerData.Offline
for the time being - Fixed typo in my previous rewrite that wasn't finished nor tested before upload (State -> state, Offline -> offline, +team -> team, playerID-1 -> playerID, if +playerID == 0 continue)
Notice when having only clients observing the AIs and no players will show up as 0/N players in the lobby, but given by our definitions that seems okay.
Also mentioning that the lobby color isn't the actual ingame color, for anyone who will wonder later (not saving that data because who cares about the color and we want to minimize traffic)
I still believe it would be preferable if we didn't mix JSON and XML. That needs an implementation in the glooxwrapper and should likely be used when transfering the rated game report (instead of comma separated values).
by , 8 years ago
Attachment: | 3476_start_time_lobby_bot_v1.patch added |
---|
Lobby bot now sets the game start time property when game is started
comment:12 by , 8 years ago
Thanks scythetwirler for checking the error log:
TypeError: 'float' object not iterable
on the iq.send
line of sendGameList
.
The updated patch fixes the issue by converting to string and rounding off the unneeded microseconds (to save some bytes network traffic) and implements the clientside adaptation. Engine.GetGameList()
now returns the starting time of the match and just needs to be displayed.
comment:13 by , 8 years ago
Keywords: | review added |
---|
by , 8 years ago
Attachment: | 3476_start_time_lobby_v1.2.patch added |
---|
Don't use hardcoded numbers for resizing
comment:15 by , 8 years ago
Keywords: | review removed |
---|
Thanks Imarok and scythetwirler for your efforts implementing and debugging this!
Sample Image from elexis to demonstrate