TextChatService is great, but the UI is hidden from developers, so creating extra functionality outside of Roblox’s intentions is not possible.
Here are some things I am not able to do or would like to see:
-
Put icons or buttons next to player names in chat. Good for indicating things like VIP status. Instead, we are restricted to a rich text
PrefixText
property. -
Bind functions to clicking on player names. By default, this initiates a whisper, which may be good for keeping UX consistent across Roblox games, but I still would like to have the control. In my game personally, I would like this functionality to open up a “profile” card UI, so I can view that player’s in-game stats as well as pressing a button that initiates whisper mode with that player.
-
Iterating on the previous point, it is not possible to control whisper initiations. I would love to create a button that automatically opens the chatbox and initiates whisper mode between two players.
-
More properties for
TextChatMessage
- I was surprised to see that there was no property indicating that the incoming message is a whisper when doingTextChatService.OnIncomingMessage
. I had to grab themessage.TextChannel
and check if the word “Whisper” was in the name string. This seems to be the only way. I have a custom speech bubble system, and this is what I used to change bubble appearance based on the message being a whisper.
Hopefully Roblox can unlock more functionality for us. These are only a few things, but a world of possibility could be opened up if we are not restricted to these limited properties.