Would you like this in something like a module in a themes folder of the loader?
Update
- Added polls, in alpha so check the main module source to see how to enable them
- Fixed duplicate teams bug
- Added new function to speakers that allows you to add and remove tags
- Fixed permission gamepass bug
- API now allows you to use all programming cases instead of the default ones
- Formatted better for GitHub
- Bug fixes
Thanks for helping me make updates to the system! If anyone has more requests / bugs I missed please let me know.
Amazing resource! I’m going to use this in my games. I also donated
Here you go. Only 11 days late…
Also I got pretty bored so I started making a fully modular version of this in TypeScript with autocomplete for the API. Mainly just doing this for fun so who knows if anything will actually come from it.
Hey! I was just reading the updates and had a neat suggestion! I’m not sure if it is possible to do this, but it would be cool if the chat system found a asset id using some format, then it searched to get a nice looking menu for it.
For example if it was a 2x speed game pass you would say something like “!asset[AssetId]” and then it would make a menu when you chat that gives your the title, icon, and purchase button.
Not sure if this is very confusing or not but I thought it would be pretty cool to have!
that bug with ghost messages and very slow filter has not been fixed and just after i updated the chat it’s the same (second screenshot)
Yes, it’s before the filter processes the text and replaces it with underscores (otherwise there’d be a delay to sending your messages that lasts however long it takes to filter and lowers UX). I’m not sure why your game specifically never processes the filtered text. Can you send me the game and any errors?
It needs to be on the client addons, which is honestly confusing. I’ll make one that replicates to the clients for the sever API when I have time.
And, did you create functions to add tags or just start adding them after I updated this and added tags?
I’ve removed .onCreated function and added attempts thing for filter and it started doing something, but if you want the game: Bee Swarm Hangout 2 - Roblox
Hm, calling it “system message” doesn’t really make sense on the client. When you think ‘system’ you think of the server.
I cannot actually find the updated GitHub repository, the one Kampf made is unmaintained and you don’t have a repo under your username on GitHub.
Hello, I’m having an issue with the chat tag system. I’m not entirely sure that this is mentioned yet, but if it is I’m sorry for repeating this!
I have it set up so that each rank in my group gets a tag, but since chat tag stacking is a thing, I’ve left the MaxAmountTags
in the config set to 1. The only issue is that anyone in the Developer tag is getting the Supporting Developer tag instead, and if I remove the Supporting Developer tag, they get the Moderator tag.
This is only for the Developer rank, and all existing IDs and rank structures work. On the other hand, is there a method to set chat tags manually (such as the default method, which uses a function) rather than by the ranking structure? If so, that would make setting this a lot easier. Thanks!
(Attached is Scorch, a Developer rank, having the Supporting Developer tag.)
I’ve also left the relevant config sections below:
Ranks = {
--[[
Ranks are like permissions for the chat, we can assign things
like editing message access to them if you don't want regular users
to have those. They're not admin-commands, I've just named them in this
manner to understand more effectively.
--]]
[1] = "Guest", --> Rank ID 1 will automatically be assigned to each user (the config below can determine their final permission level)
[2] = "AstralPlus",
[3] = "Tester",
[4] = "Moderator",
[5] = "Supporting Developer",
[6] = "Developer",
[7] = "Executive",
[8] = "Founder" --> Highest rank automatically assigned to the group creator or game creator
},
Users = {
},
Groups = {
[6809773] = { --> Astral HRs get these roles automatically
[255] = "Founder",
[254] = "Executive",
[253] = "Developer",
[252] = "Supporting Developer",
[251] = "Moderator",
[250] = "Tester",
}
},
Gamepasses = {
[29201460] = "AstralPlus", --> For A+ Chat tag
[12156329] = "AstralPlus", --> ERH 1.0 Astral+
},
RobloxPremium = "Guest" --> No premium chat benefits
},
ChatTags = {
MaxAmountTags = 1, --> Maximum amount of tags one user can have (Set to 1 so only 1 tag is present per user)
Users = {
},
Ranks = {
[8] = {
{
Text = "Founder",
Color = Color3.fromRGB(255, 0, 255),
Priority = 9 --> If you have a max amount of tags and one user goes over it, the tags with the lowest priority will be removed first.
}
},
[7] = {
{
Text = "Executive",
Color = Color3.fromRGB(255, 90, 242),
Priority = 8 --> If you have a max amount of tags and one user goes over it, the tags with the lowest priority will be removed first.
}
},
[6] = {
{
Text = "Developer",
Color = Color3.fromRGB(17, 216, 255),
Priority = 7 --> If you have a max amount of tags and one user goes over it, the tags with the lowest priority will be removed first.
}
},
[5] = {
{
Text = "Supporting Developer",
Color = Color3.fromRGB(151, 255, 249),
Priority = 6 --> If you have a max amount of tags and one user goes over it, the tags with the lowest priority will be removed first.
}
},
[4] = {
{
Text = "Moderator",
Color = Color3.fromRGB(182, 119, 255),
Priority = 5 --> If you have a max amount of tags and one user goes over it, the tags with the lowest priority will be removed first.
}
},
[3] = {
{
Text = "Tester",
Color = Color3.fromRGB(105, 107, 255),
Priority = 4 --> If you have a max amount of tags and one user goes over it, the tags with the lowest priority will be removed first.
}
},
[2] = {
{
Text = "Astral+",
Color = Color3.fromRGB(255, 221, 117),
Priority = 3 --> If you have a max amount of tags and one user goes over it, the tags with the lowest priority will be removed first.
}
},
}
},
In addition to this, I have discovered a bug where whispering to someone and sending the message makes it say that it’s to you and not the other person.
Investigating your other post right now and would like to know on behalf of the whisper bug: Is this a consistent issue or a one-off kind of issue?
Edit: Can you remove the tag limit and see the order of it and send me a screenshot of that?
I’ve also just added an API to speakers that lets you individually add tags to players. I do not remember the way to call it right now but it should be in the code (MainModule —> core —> constructors —> speaker) iirc.
Could the tag issue be an issue with the priorities of the tags?
Honestly this seems like a ranking issue in your group itself, there should be no reason they even get the Supporting Developer
tag. Better Chat V3 doesn’t use a >=
for rank checking and instead only =
. What does your group ranking hierarchy look like?
I don’t see a problem here honestly, intrigued if they updated it and haven’t replied or if the system is somehow breaking internally.
Hello, here’s an update for now.
Is the whisper bug a one off thing or a consistent issue?
It appears to be consistent, the naming thing happens every time.
Can you remove the tag limit and see the order of it and send me a screenshot of that?
Something strange happened, he doesn’t have the developer rank! This is pretty odd considering that he is ranked to Developer on the group, as seen here:
I’ve also just added an API to speakers that lets you individually add tags to players. I do not remember the way to call it right now but it should be in the code (MainModule —> core —> constructors —> speaker) iirc.
I’ll take a look at this, if we can’t solve the tag issue we’ll migrate tags to that API.
In summary, this appears to be an internal issue with the ranking. Somehow, the developers aren’t getting their rank. Also, I (the founder) can get the Developer tag, which proves that the rank itself isn’t bugged.
Bug replicated!
I’ll update this message when I figure out what’s happening.
EDIT 1:
Potential fix found, trying to find the error in the actual code
EDUT 2:
A full fix has been found! Read next post.