In roblox studio it works all the way down to 0 but when I test it on a regular game it goes down a couple of seconds then it stops. Here's the code.
while wait(3) do for i=300, 0, -1 do game.StarterGui.SFTimer.TextLabel.Text = ("Time left: "..i) wait(1) end end
Why are you editing StarterGui? In order to change each player's gui you have to edit the one in each PlayerGui. Something along the lines of:
while wait(3) do for i = 300,0,-1 do for _,v in pairs(game.Players:GetPlayers()) do if v:FindFirstChild("PlayerGui") then--just a precaution v.PlayerGui.SFTimer.TextLabel.Text = "Time left: "..i wait(1) end end end end