Cockatrice: Rework and combine connect + register dialogs (includes UI mockup)

Created on 15 Feb 2015  Â·  16Comments  Â·  Source: Cockatrice/Cockatrice

So @ZeldaZach and I were discussing some of the confusion there is for clients to know when a server is online or offline and one of the idea's that was thought of was to add a drop down listing option on the login screen that lists a list of "known" servers that the user can configure under there preferences and also have some type of indicator on if the server is online or offline (such as a small red/green globe near the name some were).

How much effort would something like this take and what are others thoughts?

App - Cockatrice Medium Priority Suggestion UI / UX

Most helpful comment

@woogerboy21 I came up with this after a short brainstorming...

Important:

  • server status (online/offline)

Nice to have:

  • latency/ping (real check for actual client, placed next to online-offine indicator for example)

Others:

  • registration required (yes/no - needs to reflect actual setting)
  • location (static information, put in by server operator, or ip lookup based)
  • current user count
  • max user count/limit (needs to reflect actual setting)



Edit: there could be a favicon/logo displayed next to the name as well, pulled from the url, like:

woogerworks:
Chickatrice:

All 16 comments

I've been meaning to do a drop down list of servers. For online status we
could implement the ability to ping while offline or something

On Sat, Feb 14, 2015, 10:29 PM woogerboy21 [email protected] wrote:

So @ZeldaZach https://github.com/ZeldaZach and I were discussing some
of the confusion there is for clients to know when a server is online or
offline and one of the idea's that was thought of was to add a drop down
listing option on the login screen that lists a list of "known" servers
that the user can configure under there preferences and also have some type
of indicator on if the server is online or offline (such as a small
red/green globe near the name some were).

How much effort would something like this take and what are others
thoughts?

—
Reply to this email directly or view it on GitHub
https://github.com/Cockatrice/Cockatrice/issues/742.

Connected to #1307

Online/offline indicators or ping checks are left.

Rough layout courtesy of asciiflow.com

| +-----------------------------------------------+                                             |
| |    Server 1                                   |                                             |
| |      Host: cockatrice.woogerworks.com         |      Username: ____                         |
| |      Port: 4747                               |      Password: ____                         |
| |                                               |      Autologin: [ ]                         |
| +-----------------------------------------------+      Remember password: [ ]                 |
| |                                               |                                             |
| |    Server 2                                   |                                             |
| |                                               |                                             |
| |                                               |                                             |
| |                                               |                                             |
| |                                               |                                             |
| |                                               |   +-----------------+   +---------------+   |
| |                                               |   |   Connect       |   |   Register    |   |
| |                                               |   |                 |   |               |   |
| |                                               |   +-----------------+   +---------------+   |
+-+-----------------------------------------------+---------------------------------------------+

I extended your mockup and added online/offline indicators in front of the servers.
There should also be an option to add new servers to the list! And we somehow need to be able to delete or edit existing servers.

| +-----------------------------------------------|                                             |
| |    Server 1                                | ||                                             |
| | ++   Host: cockatrice.woogerworks.com      | ||      Username: ____                         |
| | ++   Port: 4747                            | ||      Password: ____                         |
| |                                            | ||      Autologin: [ ]                         |
| +--------------------------------------------+ ||      Remember password: [ ]                 |
| |    Server 2                                | ||                                             |
| | ++                                         | ||                                             |
| | ++                                         | ||                                             |
| |                                            | ||                                             |
| +--------------------------------------------+ ||                                             |
| |    Server 3                                | ||                                             |
| +--------------------------------------------+--+   +-----------------+   +---------------+   |
|    +--------------------+                           |   Connect       |   |   Register    |   |
|    |  Add New Server    |                           |                 |   |               |   |
|    +--------------------+                           +-----------------+   +---------------+   |
+-----------------------------------------------------------------------------------------------+


Note: This new connect dialog would incorporate the register dialog (see https://github.com/Cockatrice/Cockatrice/issues/1433#issuecomment-287691596).

| +-----------------------------------------------|                                             |
| |    Server 1                              X |^||                                             |
| | ++   Host: cockatrice.woogerworks.com      | ||      Username: ____                         |
| | ++   Port: 4747                            | ||      Password: ____                         |
| |      Users: 599/600                        | ||      Autologin: [ ]                         |
| +--------------------------------------------+ ||      Remember password: [ ]                 |
| |    Server 2                              X | ||                                             |
| | xx   Host: ...                             | ||                                             |
| | xx   Port: ...                             | ||                                             |
| |      Users: N/A                            | ||                                             |
| +--------------------------------------------+ ||                                             |
| |    Server 3                              X |V||                                             |
| +--------------------------------------------+--+   +-----------------+   +---------------+   |
|    +--------------------+                           |   Connect       |   |   Register    |   |
|    |  Add New Server    |                           |                 |   |               |   |
|    +--------------------+                           +-----------------+   +---------------+   |
+-----------------------------------------------------------------------------------------------+

Added scroll bar, remove server X, user count

Would credentials be managed per-server?

Would credentials be managed per-server?

Until the multi server code is looked at and working I dont see any other method than the manage credentials per server.

multi server code

I meant when using the remember password feature of the client. Currently, it seems to only save one set of credentials no matter how many servers you've logged in to.

That aside, I would _love_ to see multi-server working.

@skwerlman I may look into saving credentials based on server IP when I'm back from all my travels....

So what all information would be needed from the server for what your looking for? Player count, online/offline, and what else?

The remember password bit wouldn't need anything special from the server, since it'd just be managing user-supplied info per server entry.

@woogerboy21 I came up with this after a short brainstorming...

Important:

  • server status (online/offline)

Nice to have:

  • latency/ping (real check for actual client, placed next to online-offine indicator for example)

Others:

  • registration required (yes/no - needs to reflect actual setting)
  • location (static information, put in by server operator, or ip lookup based)
  • current user count
  • max user count/limit (needs to reflect actual setting)



Edit: there could be a favicon/logo displayed next to the name as well, pulled from the url, like:

woogerworks:
Chickatrice:

Started initial work on this kinda, still a bit lost and would appreciate help! https://github.com/ZeldaZach/Cockatrice/tree/serv_connect

Your connection info class shouldn't talk to settings - make a separate class that's responsible for translating conn info <-> persisted settings. I think if you do that, next steps will get clearer. Perhaps also consider ditching the entire old connection dialog and writing an entirely new class (factor out the public signals and slots to a new interface that both old and new extend).

Then the new connection dialog class can take the QMap as an input in order to build the display

I renamed the issue as it no longer is only about showing "Known Servers with Online Status", but to improve all dialog and make joining and registering to servers more intuitive and easy.

Also linking #2474.

Strongly in favor of this, as well as streamlining the Connect dialog itself. Mentioned in comments here on https://github.com/Cockatrice/Cockatrice/issues/3208#issuecomment-733770015, moving to a listbox with + / - would make adding and removing, as well as allowing for sorting, much easier and more intuitive. Having all the UI for adding a server always present is a little confusing and unnecessary as it sits right now.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ShrewMaster picture ShrewMaster  Â·  6Comments

FinksJuice picture FinksJuice  Â·  4Comments

shackra picture shackra  Â·  4Comments

ebbit1q picture ebbit1q  Â·  7Comments

tooomm picture tooomm  Â·  6Comments