Guys this custom chat is really outdated! I will release a new one in a couple weeks!
Hey developers!
I’ve made this custom chat and I’ve decided to open source it!
UI was created by @Techyfied, go check him out and maybe even commission him.
How it works...
1: When the player presses enter or the send button, the client fires a remote event that tells the server that someone has chatted.
2: The server checks if the player can send a message (spam prevention)
3: The server loops through all the players, fitlers it and sends it to each player using :FireClient(). You can read about why I did each player individually instead of :FireAllClients here:Chat:FilterStringAsync
4: The client receives the event, clones a template, tweens the other frames and then tweens the cloned template.
Model link:
Setting up:
1: Move “ChatServer” to ServerScriptService
2: Move “ChatEvent” to ReplicatedStorage
3: Move “CustomChat” to StarterGui
4: Edit the configuration in the “ChatServer” script
4: Add “Our game uses Winky_y’s Custom Chat” to your game description (Optional but appreciated)
Hey everyone! I’ve been working on the chat for the last couple of hours. Here are some things that I changed…
When you die, the chat no longer resets. (@sharkefex)
I changed the send button a little.
I’ve added gamepass support in the form of a gamepass array, you should be able to figure this out when you test the model. (in the “ChatServer” script)
I’ve added some more text color configuration.
I am working on a model icon, but I am not 100% sure how I go about this.
Please let me know what else you’d like to see! I am excited to be working on this model for y’all!
I adding somethings to it for people who might want to have Specific users to have the chat colors
Server script:
local Players = {
[191365019] = {
['Prefix'] = "[SMALL]",
['NameColor'] = Color3.new(1, 0, 0),
['TextColor'] = Color3.new(1, 0.298039, 0.309804),
},
}
for UserId, Data in pairs(Players) do
if Sender.UserId == UserId then
NameColor = Data.NameColor
TextColor = Data.TextColor
Name = Data.Prefix .. " " .. Name
break
end
Count = Count+1
end
I have been really loving all the feedback, good and bad. If you have any feedback, feel free to reply with it because it really is helpful to know what works and what doesn’t. Any suggestions, please reply - no matter how dumb you may think they are. Thank you for all the support!