Public In-game chat

Chat is a communication feature in many multiplayer games, including ROBLOX. There are two types of chat: Normal Chat and Safe Chat (disabled). These features allow the player to chat with other players and friends on the game.



Guests are the only players who cannot use chat (due to the removal of Safe Chat).

Safe Chat
Guests and players aged under 13 years were able to chat with the Safe Chat menu, until 2013, as it's now visibly disabled. The Safe Chat menu's appearance was a small blue speech bubble with a list of words. However, the Safe Chat can be used with the "/sc" command followed with numbers.

Normal Chat
Since 2013, the Safe Chat menu is disabled, removing the ability to chat from Guests. However, players whose age is under 13 years gain the ability to chat only with words marked on the Whitelist. Words not marked on the Whitelist are replaced with hashtags (#). Players whose age is over 13 years can use any word, except the ones in the Blacklist. Any explicit word marked in the Blacklist is replaced by "[Content Deleted]". To prevent this from happening, players censor their words by placing several spaces in their vulgar word or even make it look like one.

Chat Colors
As soon as you sign up, you get a random chat color. You cannot change it in anyway right now. local Colors = { BrickColor.new("Bright red"), BrickColor.new("Bright blue"), BrickColor.new("Earth green"), BrickColor.new("Bright violet"), BrickColor.new("Bright orange"), BrickColor.new("Bright yellow"), BrickColor.new("Light reddish violet"), BrickColor.new("Brick yellow"), } local function GetNameValue(pName) local value = 0 for index = 1, #pName do 		local cValue = string.byte(string.sub(pName, index, index)) local reverseIndex = #pName - index + 1 if #pName%2 == 1 then reverseIndex = reverseIndex - 1 end if reverseIndex%4 >= 2 then cValue = -cValue end value = value + cValue end return value%8 end And data can be received from that script by using: Colors[GetNameValue(playerName) + 1].Color

Sample Color Script
For instance, here's our voluntary Acebatonfan. local Colors = { BrickColor.new("Bright red"), BrickColor.new("Bright blue"), BrickColor.new("Earth green"), BrickColor.new("Bright violet"), BrickColor.new("Bright orange"), BrickColor.new("Bright yellow"), BrickColor.new("Light reddish violet"), BrickColor.new("Brick yellow"), } local function GetNameValue(pName) local value = 0 for index = 1, #pName do 		local cValue = string.byte(string.sub(pName, index, index)) local reverseIndex = #pName - index + 1 if #pName%2 == 1 then reverseIndex = reverseIndex - 1 end if reverseIndex%4 >= 2 then cValue = -cValue end value = value + cValue end return value%8 end print(Colors[GetNameValue('Acebatonfan') + 1].Color) That script will retrieve Acebatonfan's chat color, and then after print it. (Which is 0.152941, 0.27451, 0.176471, which converts to 39, 70, 45 )