Social Chat | Enhance your experience with spectacular social chat features!

Introduction :bulb:


Roblox is a platform built off of the idea of socializing with peers and having fun with others. While many developers find their own ways to boost social factors in their games, Social Chat aims to enhance chat features that the Roblox Chat doesnt already have!

These features include (but are not limited to):

Custom Emoji Support :sunglasses:

RobloxPlayerBeta_hf9CjmlLt5

In Depth API features for unique chat messages and visuals! :fireworks:

A Highly customizable Bubble Chat System!

ipYgfQYgnd

Custom chat highlights for readability!

Adz8Q61Ave

…and much more!

You can grab the latest version of the system here or see it in game for yourself!

Documentation :memo:


In this section I go in depth in terms of SocialChat’s API usage! (alternatively you can find some reference material inside of each respective environment module)

Initially, you must retreive the SocialChat module in your desired script by using the following code:

local SocialChat = require(game.ReplicatedStorage.SocialChat);

Server API :desktop_computer:

:MuteClient ( Client : Player , Duration : number? )

→ Mutes the provided client for the specified duration of n seconds (if one was provided), otherwise the player will have to be unmuted using the :UnmuteClient() method.

:UnmuteClient ( Client : Player )

→ Unmutes the provided client if they were previously muted.

.PlayerChatted:Connect ( function( playerWhoChatted : Player , messageSent : string , chatMetadata : table )

→ A RBXScriptSignal that can be connected to via the :Connect() method which fires upon a new chat message being received by the server.

NOTE: The messageSent parameter is NOT filtered! This is useful for cases such as admin commands etc.


Client API :computer:

:CreateChatMessage ( speaker : string , message : string , metadata : table? )

→ Creates a chat message on our own client that can be used for things like server tips, announcements, etc.

Example Usage:

SocialChat:CreateChatMessage(
    "TIP", -- this parameter can be set to "nil" if you dont want a speaker tag in your message
    "Did you know that John Shedletsky hid his chicken stashes all around Robloxia?",
    {
        ["MessageColor"] = Color3.fromRGB(155, 65, 65),
        ["SpeakerColor"] = Color3.fromRGB(255, 80, 80)
    }
);

:CreateBubbleMessage( Agent : Model , message : string , metadata : table )

→ Creates a Chat Bubble for the specified Agent Instance parameter.

USAGE WARNING: This method will only work if the “IsBubbleChatEnabled” setting is enabled in the ChatSystemConfigurations module! This method also requires the Agent model parameter to have a Head BasePart object

:RenderText( text : string , container : Instance , metadata : table? , additionalXSpace : number? ) : table

→ This it the method used to render all of the system’s messages! You can use this method to render text on an external source!

:GetModules() : table

→ Returns a table of SocialChat’s Client modules (eg. ChatSystemConfigurations, ChatSystemEmotes, etc.)

Author Notes :sparkles:


If you have any questions or feature suggestions, feel free to post them here or reach me on discord at Cos#5856! Feel free to let me know about all your creations with the system in general as well!

This is also my very first open sourced resource available to the public! All feedback/helpful critism is appreciated! :blush:

Credits :scroll:


Crediting me is completely optional but I would appreciate any form of crediting! You can also support future projects/resources by purchasing some of my donation products!

Polling

(for research purposes!)

Do you find this system helpful?
  • Yes!
  • No
  • Other (Comment)

0 voters

Would you use this over the default Roblox chat system?
  • Yes
  • No

0 voters

Give your own personal rating!
  • 1 (I would still use the default Roblox Chat)
  • 2 (It could use some work)
  • 3 (It’s alright!)
  • 4 (It’s great! I would use this for fun side projects)
  • 5 (I love it! I would use this in my own projects)

0 voters

158 Likes

Does this system rely on DefaultChatSystemChatEvents.SayMessageRequest(msg, channel)? If so, this might stop working in the future.

3 Likes

This looks great! However, what features does it have that other custom chat systems (such as BetterChat) don’t have?

4 Likes

Nope! This is completely non-reliant on any Roblox events :slight_smile:

4 Likes

Well I included a few emote features as well as some context highlights for “Polish”, but I do plan to add more in the future. This is more of a barebones chat system for developers who need a forked non-Roblox chat to build upon.

2 Likes

i’ve always liked these types of chats

reminds me of twitch streamers and such active stuff, makes conversation so much more fun

thank you

4 Likes

this. looks. birb epic birb

thanks for making this resource :hidere:

20 Likes

This looks pretty nice. Good work!

2 Likes

You should make some roblox model or something so its easier to just get this

1 Like

just drag-n-drop it? its much easier then models.

1 Like

Theres a model of the system on Github.

How do i set it up? I’m having trouble figuring out how

1 Like

Can someone send me a script loader? That Automaticaly works?

1 Like

I plan on making one for the next upcomming version of SocialChat!
Thanks for your suggestion! :slight_smile:

1 Like

for some reason this works and then once I change any settings whatsoever the bubble chat just stops appearing. looks really great though

1 Like

Could you show me this bug? I’d be interested in fixing it for SocialChat’s next update :slight_smile:

Could you add support for HD Admin (command autofill) and being able to scale the chat box? It’d be 10/10 if this was added :grinning:. Other than that, 9/10

1 Like

This looks great! I’ll probably use it, thank you for making this :slight_smile:

1 Like

This doesn’t seem to support special symbols, こんにちは turns into this:
image

5 Likes

This is Roblox’s problem. Try making a feature request for more supported characters.