Change the welcome message color?

Is there anyway to set the welcome messages color? I’ve managed to set the message

local MainChannel = ChatService:GetChannel('all')
MainChannel.WelcomeMessage = "Welcome!"

And I’ve tried looking through the chat modules for anywhere linking the Welcome message to a color, but I can’t find anything.

I don’t want to fork the chat either

2 Likes

Would that be useful in this case?

There is, but you would need to edit the Chat Script in itself to do that.

If you want to do that, I recommend forking the current chat and look into ChatScript > ChatMain on Line 815. That is the function that creates the Welcome Message. (The line where it makes the welcome message is Line 870)

Pretty that only runs on players chatting, not the default messages

1 Like

There has to be a way to do it without forking. If I can change fonts/sizes/etc. without forking, then changing color should be the same.


No mention here of a color

1 Like

You can add color by adding the following to ExtraData.

ExtraData = {
    ChatColor = Color3.new(1, 0, 0)
}

But making it dynamic means editing other functions as well, above is just a static solution.

Can’t you make it run the same function as for what is ran when players chat?

You can do this without forking using a filter function:

local Chat = game:GetService("Chat")
local ReplicatedModules = Chat:WaitForChild("ClientChatModules")
local ChatConstants = require(ReplicatedModules:WaitForChild("ChatConstants"))

local function Run(ChatService)
	local function WelcomeMessageFilterFunction(speakerName, messageObj, channelName)
		if messageObj.MessageType == ChatConstants.MessageTypeWelcome then
			messageObj.ExtraData = {
				ChatColor = Color3.new(1, 0, 0),
			}
		end
	end

	ChatService:RegisterFilterMessageFunction("welcome_message", WelcomeMessageFilterFunction)
end

return Run

To add this press PlaySolo, copy ChatModules and exit play solo then paste them into Chat. Remove all the modules but keep the InsertDefaultModules value. Then add this to a new module in there.

3 Likes

Isn’t that still technically forking?

1 Like



Didn’t work :confused:

No, since you will still get all future updates it’s not forking.

Ah, my mistake. I thought the welcome message was created on the server but looks like it’s created on the client. I think maybe this isn’t possible without forking atleast WelcomeMessage.lua :frowning:

5 Likes