Player 2 always winning rounds in my sword fighting game

I was trying to make it so that I made a functioning sword fighting game.
I wanted to:
Create an intermission :white_check_mark:
Teleport all players to the map :white_check_mark:
Give them swords :white_check_mark:

But then when I was making it so that there was a time limit, and someone could win, and all of the circomstances that could’ve happened. So what happened was that I was testing my game, but then when all of the players teleported to the map and they all got there swords, it would immeditly announce the player who is at the top of the leaderboard the winner.
Example:
Player 2 is at the top of the leaderboard, while player 1 is at the bottom, (or not at the top) the game would start but then immeditly as the game started, it would announce player 2 as the winner.

I have tried checking the script for capitals, mispelling and everything but it dosent budge.
I will show you screenshots of what I have in game to make it more easier.
image
image

Note: There are more scripts, but they are irrelevent to the error

This is the main script, the most important things.

-- Define Variables

local ReplicatedStorage = game:GetService("ReplicatedStorage")

local ServerStorage = game:GetService("ServerStorage")

local MapsFolder = ServerStorage:WaitForChild("Maps")

local Status = ReplicatedStorage:WaitForChild("Status")

local GameLength = 50

local reward = 25

Game loop (Hidden in script)

while true do
	
	Status.Value = "Waiting for enough players"
	
	repeat wait(1) until game.Players.NumPlayers >= 2
	
	Status.Value = "Intermission"
	
	wait(10)
	
	local plrs = {}
	
	for i, player in pairs(game.Players:GetPlayers()) do
		if player then
			table.insert(plrs,player) -- Add each player into plrs table
		end
	end
	
	wait(2)
	
	local AvailableMaps = MapsFolder:GetChildren()
	
	local ChosenMap = AvailableMaps[math.random(1,#AvailableMaps)]
	
	Status.Value = ChosenMap.Name.." Chosen"
	
	local ClonedMap = ChosenMap:Clone()
	ClonedMap.Parent = workspace
	
	 --Teleport players to the map 
	
	local SpawnPoints = ClonedMap:FindFirstChild("SpawnPoints")
	
	if not SpawnPoints then
		print("You do not have spawnpoints! Fix this now.")
	end
	
	local AvailbaleSpawnPoints = SpawnPoints:GetChildren()
	
	for i, player in pairs(plrs) do
		if player then
			character = player.Character
			
			if character then
				--Teleport them 
				
				character:FindFirstChild("HumanoidRootPart").CFrame = AvailbaleSpawnPoints[1].CFrame
				table.remove(AvailbaleSpawnPoints,1)
				
				
				 Give them a sword (hidden in script)
				
				local ClassicSword = ServerStorage.ClassicSword:Clone()
				ClassicSword.Parent = player.Backpack
				
				local GameTag = Instance.new("BoolValue")
				GameTag.Name = "Gametag"
				GameTag.Parent = player.Character
				
			else
				 There is no character (Hidden in script)
				if not player then
					table.remove(plrs,i)
				end
			end
		end
	end
	
	
	Status.Value = "Get ready to play!"
	
	wait(2)
	
	for i = GameLength,0,-1 do
		
		for x,player in pairs(plrs) do
			if player then
				
				character = player.Character
				
				if not character then
					 Left the game (Hidden in script)
				else
					if character:FindFirstChild("GameTag") then
						They are still alive (Hidden in script)
						print(player.Name.." is still in the game!")
					else
						 They are dead (Hidden in script)
						table.remove(plrs,x)
						print(player.Name.." has been removed!")
					end
				end
			else
				table.remove(plrs,x)
				print(player.Name.." has been removed!")
			end
		end
		
		Status.Value = "There are "..i.." seconds remaining, and "..#plrs.." players left"
		
		if #plrs == 1 then
			-- Last person standing
			Status.Value = "The winner is "..plrs[1].Name
			plrs[1].leaderstats.Bucks.Value = plrs[1].leaderstats.Bucks.Value + reward
			break
		elseif #plrs == 0 then
			Status.Value = "Nobody won!"
			break
		elseif i == 0 then
			Status.Value = "Time up!"
			break
		end
		
		wait(1)
	end
	
	print("End of game")
	
	for i, player in pairs(game.Players:GetPlayers()) do
		character = player.Character
		
		if not character then
			 Ignore them (Hidden in script)
		else
			if character:FindFirstChild("GameTag") then
				character.GameTag:Destroy()
			end
			
			if player.Backpack:FindFirstChild("Sword") then
				player.Backpack.Sword:Destroy()
			end
			
			if character:FindFirstChild("Sword") then
				character.Sword:Destroy()
			end
			
		end
		
		player:LoadCharacter()
	end
	
	ClonedMap:Destroy()
	
	Status.Value = "Game Ended"
	
	
	wait(2)
end

Nvm i didnt read the post correctly.