so im making admin commands for my game but the script doesnt work. i tried doing different things but it wont work.

script:

--//Rank Command
        if message:sub(1, 6) == "-rank " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(7))
                    if TargetPlayer then
            local Rank
            if message:sub(11, 34) == "Admin" then
            table.insert(Admins,1,TargetPlayer.Name)
            Rank="Admin"
            if message:sub(11, 36) == "Builder" then
            table.insert(Builders,1,TargetPlayer.Name)
            Rank="Builder"
                        TargetPlayer:Kick("You've been ranked to "..Rank)
                    end
                end
    end

full script:

--//Admin Commands Script
--//Variables\\--
local DataStore = game:GetService("DataStoreService")
local BanList = DataStore:GetDataStore("BanList")
local Owners = {"omgdodogamer",}
local Admins = {"omgdodogamer",}
local Builders = {"omgdodogamer",}
--//Events\\--
game.Players.PlayerAdded:Connect(function(Player)
    local Folder = Instance.new("Folder", Player)
    Folder.Name = "PlayerValues"

    local BanCheck = Instance.new("BoolValue", Folder)
    BanCheck.Name = "IsBanned"
    BanCheck.Value = BanList:GetAsync(Player.userId) or false --//False is default if no save for the player

    --//Checks if the player is banned or not
    if Player.PlayerValues.IsBanned.Value == true then
        Player:Kick("You are banned from this game") --//Reason for kick
    end

    Player.Chatted:connect(function(message)
        for i, OwnerName in ipairs(Owners) do
            if Player.Name == OwnerName then
                --OwnerCommands
                --//Kill Command
                if message:sub(1, 6) == "-kill " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(7))
                    if TargetPlayer then
                        local Character = TargetPlayer.Character
                        if Character then
                            Character.Humanoid.Health = 0
                        end
                    end
                end

          --//Explode Command
          if message:sub(1, 9) == "-explode " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(10))
                    if TargetPlayer then
                        local Character = TargetPlayer.Character
                        if Character then
                            local ex = Instance.new("Explosion", game.Workspace)
                ex.Position = Character.Head.Position
                        end
                    end
                end

                --//Kick Command
                if message:sub(1, 6) == "-kick " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(7))
                    if TargetPlayer then
                        TargetPlayer:Kick("You have been kicked by " .. Player.Name) --//Kick message/reason
                    end
                end

                --//Ban Command
                if message:sub(1, 5) == "-ban " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(6))
                    if TargetPlayer then
                        local BanCheck = TargetPlayer.PlayerValues.IsBanned
                        if BanCheck then
                            BanCheck.Value = true
                            BanList:SetAsync(TargetPlayer.userId, true)
                        end
                        TargetPlayer:Kick("You've been banned by " .. Player.Name) --//Reason || Message
                    end
                end

                --//Unban Command
                if message:sub(1, 7) == "-unban " then --//USES ID NOT NAME
                    local UserId = tonumber(message:sub(8))
                    if UserId then
                        BanList:SetAsync(UserId, false)
        end
        end

         --//Rank Command
        if message:sub(1, 6) == "-rank " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(7))
                    if TargetPlayer then
            local Rank
            if message:sub(11, 34) == "Admin" then
            table.insert(Admins,1,TargetPlayer.Name)
            Rank="Admin"
            if message:sub(11, 36) == "Builder" then
            table.insert(Builders,1,TargetPlayer.Name)
            Rank="Builder"
                        TargetPlayer:Kick("You've been ranked to "..Rank)
                    end
                end
    end

         --//Unrank Command
         if message:sub(1, 8) == "-unrank " then
                    end
                end
end
end
end)

    Player.Chatted:connect(function(message)
        for i, AdminName in ipairs(Admins) do
            if Player.Name == AdminName then
                --AdminCommands
                --//Kill Command
                if message:sub(1, 6) == "-kill " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(7))
                    if TargetPlayer then
                        local Character = TargetPlayer.Character
                        if Character then
                            Character.Humanoid.Health = 0
                        end
                    end
                end

          --//Explode Command
          if message:sub(1, 9) == "-explode " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(10))
                    if TargetPlayer then
                        local Character = TargetPlayer.Character
                        if Character then
                            local ex = Instance.new("Explosion", game.Workspace)
                ex.Position = Character.Head.Position
                        end
                    end
                end

                --//Kick Command
                if message:sub(1, 6) == "-kick " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(7))
                    if TargetPlayer then
                        TargetPlayer:Kick("You have been kicked by " .. Player.Name) --//Kick message/reason
                    end
                end

                --//Ban Command
                if message:sub(1, 5) == "-ban " then
                    local TargetPlayer = game.Players:FindFirstChild(message:sub(6))
                    if TargetPlayer then
                        local BanCheck = TargetPlayer.PlayerValues.IsBanned
                        if BanCheck then
                            BanCheck.Value = true
                            BanList:SetAsync(TargetPlayer.userId, true)
                        end
                        TargetPlayer:Kick("You've been banned by " .. Player.Name) --//Reason || Message
                    end
                end

                --//Unban Command
                if message:sub(1, 7) == "-unban " then --//USES ID NOT NAME
                    local UserId = tonumber(message:sub(8))
                    if UserId then
                        BanList:SetAsync(UserId, false)
end
end
end
end
end)


    Player.Chatted:connect(function(message)
        for i, BuilderName in ipairs(Builders) do
            if Player.Name == BuilderName then
                --BuilderCommands
end
end
end)
end)

i am pretty new to scripting so you could find mistakes.