Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support for seeing which move number chat messages were sent during #14724

Open
j4cobgarby opened this issue Feb 21, 2024 · 11 comments
Open

Support for seeing which move number chat messages were sent during #14724

j4cobgarby opened this issue Feb 21, 2024 · 11 comments

Comments

@j4cobgarby
Copy link

Would anyone potentially be interested in a feature where in-game chat messages keep track of which game move they were sent during?

The reason I suggest this is that during long (esp. correspondence, also classical to some extent) games, I am likely to forget when someone sent a certain message, so it loses its context. This is more of a problem in friendly games with lots of conversation, which, for me, is common. For example, I may not see a message (e.g. "that was a good move.") for several moves, and then not know which move they're referring to.

So if, with each message, you could see the move number and whose turn it was at that point, I think this could be an improvement for lots of people.

I propose this info could be displayed in one of these ways:

  • As a small badge to the left of each message, with either a black or white background colour depending on whose turn it was, and text with the move number.
  • More subtly, a tooltip on each message. This way it wouldn't clutter the interface and would only be visible when hovered.

I would be very happy to work on this feature myself, if there's some interest in it :)

@j4cobgarby
Copy link
Author

By the way, the same principle should be applied for the chat messages saying that someone offered a draw, etc.

@schlawg
Copy link
Collaborator

schlawg commented Feb 21, 2024

I think it sounds like a great idea. We could optionally attach state objects to every chat message that can reference a round and ply. And they could link to the board state url. This would also be useful for chats on broadcasts and tournaments.

If we run into clutter, I'd happily trade the "flair" area for this badge.

Tooltip would be cool too, but keep mobile in mind.

@j4cobgarby
Copy link
Author

Yep good point with mobile not seeing tooltips...

I will start having a look into implementing this later today then, I assume I'll have to change both the UI code as well as some websockets code so that the new metadata can be saved in the database.

When you mention that each message could link to the board state url, I guess you mean someone can click the message (or the badge next to the message) and be taken to a new page showing how the game was at that time/show that move in the current game window? That seems like a nice idea.

Thanks for the feedback!

@schlawg
Copy link
Collaborator

schlawg commented Feb 21, 2024

So I was thinking about chats on broadcasts there. But for correspondence, clicking a badge could take you to analysis view at the given ply or just rewind the game view to that point. It doesn't exist yet so who's to say?

@schlawg
Copy link
Collaborator

schlawg commented Feb 21, 2024

Back to reality though - as it becomes more complex, the odds of getting something like this merged become vanishingly small.

@j4cobgarby
Copy link
Author

Yeah that makes sense, it's hard to know where the tradeoff between code simplicity and nice features lies.
That said, I'm now realising this would also have to support chat messages made on game analysis pages, but that shouldn't be very different anyway.

@Carbrex
Copy link
Contributor

Carbrex commented Feb 27, 2024

Similar to #1604, and the no of games daily have only increased since then. So as schlawg mentioned, most probably this wont be merged even if someone implemented it.

@j4cobgarby
Copy link
Author

Similar to #1604, and the no of games daily have only increased since then. So as schlawg mentioned, most probably this wont be merged even if someone implemented it.

That's a fair point, I understand the cost of storing a lot more data, but if you for example implemented the timestamp as just a "special string" prepended to each message (even as simple as {7} for ply number 7, that's only a few extra bytes per message. This surely is fine, in the same way that it would be fine if everyone just used a few extra letters when writing their messages.

Of course this runs into backwards compatibility problems, which isn't trivial to work around.

@j4cobgarby
Copy link
Author

Something else I'm realising is that moves in games can be annotated with messages. So, these annotations are of course linked to a certain move, so I see no reason that chat messages can't be reimplemented in a similar way.

@Siderite
Copy link

Siderite commented Mar 1, 2024

You could add a clock like icon 🕑 somewhere in the chat. When you click on it you see the "timestamps" or "movestamps", I guess, just like the Developer Tool setting in Chrome. That would solve the issue of mobile, too.

@j4cobgarby
Copy link
Author

You could add a clock like icon 🕑 somewhere in the chat. When you click on it you see the "timestamps" or "movestamps", I guess, just like the Developer Tool setting in Chrome. That would solve the issue of mobile, too.

This is a nice idea. Or even it could be as simple as clicking/tapping a message to jump to that move in the game

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants