local Players = game:GetService("Players")
function onPlayerAdded(player)
game:GetService("StarterGui"):SetCore("ChatMakeSystemMessage",{
Text = ("[SERVER]: ".. player.Name .. " has entered the game.");
Color = Color3.new(255,255,255);
Font = Enum.Font.SourceSansBold;
FontSize = Enum.FontSize.Size18;
})
end
Players.PlayerAdded:connect(onPlayerAdded)
for _,player in pairs(Players:GetPlayers()) do
onPlayerAdded(player)
end
(This script is in StarterGUI).
Also, it's a regular script which located in StarterGUI.

6 comments
If it's in StarterGui, I'm guessing it's a localscript. Wouldn't even work if it was a normal script. You can only use PlayerAdded using normal scripts and StarterGUI isn't a place for one to be at. Also, anything modified to the StarterGui will not be seen by players. Their Gui's are clones of the StarterGui, but other than that, they are not connected.
Startergui why that? U can’t edit it u need to go to player.PlayerGui
Guys, SetCore is a StarterGui function which lets you do several things like creating a system message. Stop telling he can't change StarterGui he is not trying to.
Berries can you put your code in a codeblock? It's hard to read.
Oops, didn't know that was a thing. Sorry for missing that! Anyways, I still believe it's not working because PlayerAdded isn't something you use in a localscript.
Sorry, now you can read the script.