-
Notifications
You must be signed in to change notification settings - Fork 1
Game Room Chats #2
Comments
@billyb2 Commented: So could chats just be written onto a text file on the server? It'd be pretty easy to implement and wouldn't have to clog the MySQL database. So I'm thinking there are two ways this could happen:
Pros: Cons:
Pros: Cons: |
@XATEV commented: Clogging the databases wouldn't be an issue, you can create a separate database which stores all chats.
that I am part of from game room Y. I am not sure how the file based approach would work and if it would be better performance wise in the end. Also like you said, making sure access is restricted and working correctly would be more difficult. (MySQL has been in development for nearly 3 decades and it can easily query from a table with millions of entries in less than a second.) |
Nice work! One thing to think about as well is once we have pulling from the database, we will want users to be able to get live updates from chat messages when they are online in the game. We will need to setup a socket server for users to send and recieve communications from about live chat and game events. This could probably be a new issue once we get there though. |
@billyb2 replied:
Added the ability to receive messages past a certain time frame with c907bc9. |
Most of this is implemented in the Laravel codebase, however, we cannot yet close this issue as there is one thing missing, namely the Global Chat. Upon room creation a chat with all players should be created (and marked as being a special global chat in some way). |
This section involves the implementation of room related chats. Game rooms must contain a:
and may contain several:
Chat messages should include at a minimum
Furthermore these states will influence how the client displays chats:
Obviously this would require the ability to unblock someone from either 1. or 2.
The player will send a request to fetch all recent messages after timestamp X from chat Y.
Keep in mind:
The text was updated successfully, but these errors were encountered: