So I know that you can't change the startergui cause that's just inserted into the character when they join, how would I access the players gui and update this script from there
for timewait = 2, 0, -1 do
Players = game.Players:GetPlayers() --Define players
wait(1)
game.Workspace.StartingLine.Timer.SurfaceGui.Time.Text = "Picking Terrain"
game.StarterGui.MainGui.TimeFrame.Timer.Text = "Picking Terrain" --The part that needs to go to the playergui not startergui
endi
end

2 comments
It should be noted that GetPlayers is quicker than using GetChildren and checking if the current value in the loop is a player.
thanks