This is my script. The script works on solo but not on server. My screengui is in playergui.
local winBoard = game.Workspace.Stationary.LobbyInternal.Jackel.SurfaceGui.TextLabel local forest = game.ServerStorage.Maps["Forest Map"] local plains = game.ServerStorage.Maps["The Great Plains"] local snowy = game.ServerStorage.Maps["Snowy Life"] local Maps = game.ServerStorage:WaitForChild("Maps"):GetChildren() local ChosenMap = Maps[math.random(1, #Maps)] local roundnumber = 0 --[[ Whereever it stops printing is where the problem is the chat thing from my game is in the startergui --]] function Intermission() local IntermissionTime = 20 wait() while IntermissionTime ~= 0 do for _,plr in next, game.Players:GetPlayers() do local Var = game.Workspace.GuiText wait(.5) Var.Value = "Intermission: ".. IntermissionTime wait(.5) IntermissionTime = IntermissionTime - 1 end end end function showIntro() local introclone = game.ServerStorage.Intro:Clone() introclone.Parent = game.Workspace end function stopIntro() game.Workspace.Intro:Destroy() end function HideTimer() local HideTime = 20 wait(.1) while HideTime ~= 0 do for _, player in pairs(game.Players:GetChildren()) do wait(.1) local Var = game.Workspace.GuiText wait(.1) wait(.5) Var.Value = "Time Left To Hide: " .. HideTime wait(.3) HideTime = HideTime - 1 end end end function TeleportAllPlayers() local target = Vector3.new(67, 39.5, 9) --could be near a brick or in a new area for i, v in pairs(game.Players:GetChildren()) do v.Character.Torso.CFrame = CFrame.new(target + Vector3.new(0, i * 5, 0)) --add an offset of 5 for each character end end function TeleportTo() local targeto = Vector3.new(10, 64.529, 11) --could be near a brick or in a new area for i, v in pairs(game.Players:GetChildren()) do v.Character.Torso.CFrame = CFrame.new(targeto + Vector3.new(0, i * 5, 0)) --add an offset of 5 for each character end end function spawnMap() ChosenMap:Clone().Parent = game.Workspace end function deleteMap() game.Workspace:FindFirstChild(ChosenMap.Name):Destroy() end function GameTimer() local GameTime = 90 wait(.1) while GameTime ~= 0 do for _, player in pairs(game.Players:GetChildren()) do wait(.1) local Var = game.Workspace.GuiText wait(.5) Var.Value = "Avoid The Sickness: " .. GameTime wait(.3) GameTime = GameTime - 1 end end end function ChangeText(message) for _, player in pairs(game.Players:GetChildren()) do local Var = game.Workspace.GuiText wait(.5) Var.Value = message wait(.3) end end function AwardPlayers(Player) Player.leaderstats.sCoins.Value = Player.leaderstats.sCoins.Value + 25 Player.LoadCharacter() end function Release() local sickClone = game.ServerStorage.DFDIllness:Clone() sickClone.Parent = game.Workspace end function DestroyClone() game.Workspace.DFDIllness:Destroy() end while wait(.1) do print("Start of Game Loop") showIntro() Intermission() spawnMap() stopIntro() TeleportAllPlayers() ChangeText("Teleporting Players...") HideTimer() Release() GameTimer() DestroyClone() showIntro() TeleportTo() for _, players in pairs(game.Players:GetChildren()) do if players.Character.Torso.Material == "Plastic" then AwardPlayers(players) end end deleteMap() stopIntro() roundnumber = roundnumber + 1 end