PlayerGui and StarterGui - Differences

So what you can do is in replicated storage add in a remote event called 'Joined and in serverscript servcie add in a normal script then check when the player joins with game.Players.PlayerAdded:Connect(function(player) game.ReplicatedStorage.Joined:FireClient(player) end)

then in a local script in screen gui do


game.ReplicatedStorage.Joined.OnClientEvent:Connect(function()

    local TextLabel = script.Parent.Frame 
	TextLabel.BackgroundTransparency = 1
	TextLabel.Text = "Loading"
	TextLabel.TextScaled = true
	
	task.wait(5)
	
	for index=0.1,1,1 do
		TextLabel.BackgroundTransparency = index
		task.wait(0.01)
	end
	
	task.wait(1.75)
	
	print("Loaded.")
	
	local days = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"}
	
	print("Today is " .. days[5])
end)

this should work I think