Minigame selection module buggy

Hi!
I have coded a Minigame Selection script, but it keeps running into errors.
1: "attempt to index nil with “position”
Possible error:

function module.Start4Blocks(GameName)
	module.SpawnBlocks(GameName)
	for i, player in pairs(game.Players:GetPlayers()) do
		local HumaniodRootPart = player.Character:FindFirstChild("HumanoidRootPart")
		if HumaniodRootPart then
			HumaniodRootPart.Anchored = true
			HumaniodRootPart.CFrame = CFrame.new(game.Workspace:FindFirstChild("EventFolder"):FindFirstChild("MiddilePart").Position) + Vector3.new(0,10,0)
			wait(1.05)
			HumaniodRootPart.Anchored = false
		else
			local Torso = player.Character:FindFirstChild("Torso")
			if Torso then
				Torso.Anchored = true
				Torso.CFrame = CFrame.new(game.Workspace:FindFirstChild("EventFolder"):FindFirstChild("MiddilePart").Position) + Vector3.new(0,10,0)
				wait(1.05)
				Torso.Anchored = false
			end
		end
	end
end

Screenshot:

Issue 2 (FIXED)

2: Cannot clone into workspace:
Possible error:

function module.SpawnBlocks(Event)
	module.DeSpawnBlocks()
	wait(4)
	local EventFolder = game.ReplicatedStorage:FindFirstChild(Event):Clone()
	EventFolder.Parent = workspace
	EventFolder.Name = "EventFolder"

end

Screenshot:

3: Randomly despawns without checking for dead players:
Possible error:

function module.SpawnBlocks(Event)
	module.DeSpawnBlocks()
	wait(4)
	local EventFolder = game.ReplicatedStorage:FindFirstChild(Event):Clone()
	EventFolder.Parent = workspace
	EventFolder.Name = "EventFolder"

end
function module.EndRound()

end

function module.RemovePlayer(player)
	if AlivePlayers[player] then
		table.remove(AlivePlayers,player)
		AlivePlayers[player] = nil
	end
end

function module.AddPlayer(player)
	table.insert(AlivePlayers,player)
	print("Working")
end

No screenshot.

Thanks for any help!

Issue 2 fixed! 1 + 3 still brokenb, and new issue:

2nd map is not spawning.