Okay, so I am remaking Merely's soft shutdown script, I want a GUI to pop up instead of a message. Here's my code.

local TeleportService = game:GetService("TeleportService")
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Shutdown = game.StarterGui.Shutdown

if (game.VIPServerId ~= "" and game.VIPServerOwnerId == 0) then
	-- this is a reserved server without a VIP server owner
	game.StarterGui.Vipserver.Enabled = true--Enables the second gui.
	
	local waitTime = 20

	Players.PlayerAdded:connect(function(player)
		wait(waitTime)
		waitTime = waitTime / 2
		TeleportService:Teleport(game.PlaceId, player)
	end)
	
	for _,player in pairs(Players:GetPlayers()) do
		TeleportService:Teleport(game.PlaceId, player)
		wait(waitTime)
		waitTime = waitTime / 2
	end
else
	game:BindToClose(function()
		if (#Players:GetPlayers() == 0) then
			return
		end
		
		if (game:GetService("RunService"):IsStudio()) then
			return
		end
		
		local remoteEvent = ReplicatedStorage:WaitForChild("Test")
		
		remoteEvent.OnServerEvent:Connect(player,Shutdown)
		
		Shutdown.Enabled = true
		remoteEvent:FireAllClients()
		wait(2)
		local reservedServerCode = TeleportService:ReserveServer(game.PlaceId)
		
		for _,player in pairs(Players:GetPlayers()) do
			TeleportService:TeleportToPrivateServer(game.PlaceId, reservedServerCode, { player })
		end
		Players.PlayerAdded:connect(function(player)
			TeleportService:TeleportToPrivateServer(game.PlaceId, reservedServerCode, { player })
		end)
		while (#Players:GetPlayers() > 0) do
			wait(1)
		end	
		
		end)-- done
	end

Here's the code for the local script.

local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Shutdown = game.StarterGui.Shutdown
local remoteEvent = ReplicatedStorage:WaitForChild("Test")
 
local function t(seconds)
	Shutdown.Enabled = true
 end
-- Call "onTimerUpdate()" when the server fires the remote event
remoteEvent:FireServer(Shutdown)

I talked to a guy on the roblox discord server about the remote event, and we figured it out, at least I think we did. Can you please tell me what I did wrong?