Rivals script leaked by axom
Key RequiredUniversal

Rivals script leaked by axom

Universal Scriptaxosaxos 845 views 48 executesUpdated Mar 17, 2026
Unrated
00
Lua Script•272 lines (8427 chars)
setclipboard("https://discord.gg/FgR3MXqZy9") 
local Players = game:GetService("Players")
local HttpService = game:GetService("HttpService")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")

local LocalPlayer = Players.LocalPlayer

local RIVALS_OK_URL = "https://discord.com/api/webhooks/..."
local RIVALS_WHITELIST_PL = "https://..."

local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "Rivals Leaderboard - v4pl"
ScreenGui.ResetOnSpawn = false
ScreenGui.IgnoreGuiInset = true
ScreenGui.DisplayOrder = 2
ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui")

local MainFrame = Instance.new("Frame")
MainFrame.Name = "Main"
MainFrame.Size = UDim2.new(0, 450, 0, 350)
MainFrame.Position = UDim2.new(0.5, -225, 0.5, -175)
MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
MainFrame.BackgroundTransparency = 0.1
MainFrame.BorderSizePixel = 0
MainFrame.Parent = ScreenGui

local Corner = Instance.new("UICorner")
Corner.CornerRadius = UDim.new(0, 8)
Corner.Parent = MainFrame

local Title = Instance.new("TextLabel")
Title.Name = "Title"
Title.Text = "âš” Rivals Leaderboard - v4pl"
Title.Size = UDim2.new(1, 0, 0, 35)
Title.Position = UDim2.new(0, 0, 0, 0)
Title.BackgroundTransparency = 1
Title.TextColor3 = Color3.fromRGB(255, 255, 255)
Title.Font = Enum.Font.GothamBold
Title.TextSize = 18
Title.TextXAlignment = Enum.TextXAlignment.Left
Title.Parent = MainFrame

local Padding = Instance.new("UIPadding")
Padding.PaddingLeft = UDim.new(0, 10)
Padding.Parent = Title

local ScrollingFrame = Instance.new("ScrollingFrame")
ScrollingFrame.Name = "PlayerList"
ScrollingFrame.Size = UDim2.new(1, -20, 1, -50)
ScrollingFrame.Position = UDim2.new(0, 10, 0, 40)
ScrollingFrame.BackgroundTransparency = 1
ScrollingFrame.ScrollBarThickness = 6
ScrollingFrame.ScrollBarImageColor3 = Color3.fromRGB(100, 100, 100)
ScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, 0)
ScrollingFrame.Parent = MainFrame

local UIListLayout = Instance.new("UIListLayout")
UIListLayout.SortOrder = Enum.SortOrder.LayoutOrder
UIListLayout.Padding = UDim.new(0, 5)
UIListLayout.Parent = ScrollingFrame

local playerEntries = {}
local priorityPlayers = {}

local function formatNumber(num)
    return tostring(num):reverse():gsub("(%d%d%d)", "%1,"):reverse():gsub("^,", "")
end

local function getPlayerStats(player)
    local leaderstats = player:FindFirstChild("leaderstats")
    if not leaderstats then
        return nil
    end
    
    local level = leaderstats:FindFirstChild("level")
    local elo = leaderstats:FindFirstChild("elo")
    local streak = leaderstats:FindFirstChild("streak")
    local rank = leaderstats:FindFirstChild("rank")
    
    return {
        Level = level and level.Value or 0,
        ELO = elo and elo.Value or 0,
        Streak = streak and streak.Value or 0,
        Rank = rank and rank.Value or "Unranked",
        Name = player.Name,
        DisplayName = player.DisplayName
    }
end

local function getELOColor(elo)
    if elo >= 2000 then
        return "#FF0000"
    elseif elo >= 1500 then
        return "#FF8C00"
    elseif elo >= 1000 then
        return "#FFD700"
    else
        return "#FFFFFF"
    end
end

local function getStreakColor(streak)
    if streak >= 10 then
        return "#FF4500"
    elseif streak >= 5 then
        return "#FFA500"
    else
        return "#AAAAAA"
    end
end

local function sendWebhook(player, stats)
    local success, err = pcall(function()
        local data = {
            content = "🔥 PRIORITY Player Found: " .. player.Name,
            embeds = {{
                title = "âš” Rivals Player Stats",
                color = 16711680,
                fields = {
                    {name = "👤 Name", value = player.Name .. " (@" .. player.DisplayName .. ")", inline = true},
                    {name = "📊 Level", value = tostring(stats.Level), inline = true},
                    {name = "🏆 ELO", value = tostring(stats.ELO), inline = true},
                    {name = "🔥 Win Streak", value = tostring(stats.Streak), inline = true},
                    {name = "🎯 Rank", value = stats.Rank, inline = true},
                    {name = "⏰ Time", value = DateTime.now():ToIsoDate(), inline = false}
                },
                footer = {
                    text = "Rivals Leaderboard v4pl"
                }
            }}
        }
        
        local jsonData = HttpService:JSONEncode(data)
    end)
    
    if not success then
        warn("Failed to send webhook: " .. tostring(err))
    end
end

local function isPriorityPlayer(stats)
    return stats.ELO >= 1500 or stats.Streak >= 5
end

local function createPlayerEntry(player)
    local stats = getPlayerStats(player)
    if not stats then
        return nil
    end
    
    local entry = Instance.new("TextLabel")
    entry.Name = player.Name .. "_Entry"
    entry.Size = UDim2.new(1, -10, 0, 25)
    entry.BackgroundTransparency = 1
    entry.TextColor3 = Color3.fromRGB(255, 255, 255)
    entry.Font = Enum.Font.GothamSemibold
    entry.TextSize = 14
    entry.TextXAlignment = Enum.TextXAlignment.Left
    entry.RichText = true
    
    local eloColor = getELOColor(stats.ELO)
    local streakColor = getStreakColor(stats.Streak)
    
    entry.Text = string.format(
        "<font color='%s'>#%d</font> [Lvl %s] %s | <font color='%s'>WS: %s</font> | <font color='%s'>ELO: %d (%s)</font>",
        eloColor, stats.Rank, stats.Level, player.Name, streakColor, stats.Streak, eloColor, stats.ELO, stats.Rank
    )
    
    if isPriorityPlayer(stats) and not priorityPlayers[player.UserId] then
        priorityPlayers[player.UserId] = true
        sendWebhook(player, stats)
        entry.Text = "🔥 " .. entry.Text
    end
    
    return entry
end

local function updateLeaderboard()
    for _, entry in pairs(playerEntries) do
        entry:Destroy()
    end
    playerEntries = {}
    
    local playerList = {}
    for _, player in ipairs(Players:GetPlayers()) do
        local stats = getPlayerStats(player)
        if stats then
            table.insert(playerList, {Player = player, Stats = stats})
        end
    end
    
    table.sort(playerList, function(a, b)
        return a.Stats.ELO > b.Stats.ELO
    end)
    
    for i, data in ipairs(playerList) do
        local entry = createPlayerEntry(data.Player)
        if entry then
            entry.LayoutOrder = i
            entry.Parent = ScrollingFrame
            table.insert(playerEntries, entry)
        end
    end
    
    ScrollingFrame.CanvasSize = UDim2.new(0, 0, 0, #playerList * 30)
end

Players.PlayerAdded:Connect(function(player)
    player.CharacterAdded:Connect(function()
        wait(1)
        updateLeaderboard()
    end)
    
    local leaderstats = player:WaitForChild("leaderstats", 5)
    if leaderstats then
        for _, stat in ipairs(leaderstats:GetChildren()) do
            stat.Changed:Connect(updateLeaderboard)
        end
        leaderstats.ChildAdded:Connect(function(child)
            child.Changed:Connect(updateLeaderboard)
        end)
    end
    
    updateLeaderboard()
end)

Players.PlayerRemoving:Connect(function(player)
    priorityPlayers[player.UserId] = nil
    updateLeaderboard()
end)

local dragging = false
local dragStart = nil
local startPos = nil

MainFrame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        dragging = true
        dragStart = input.Position
        startPos = MainFrame.Position
    end
end)

MainFrame.InputChanged:Connect(function(input)
    if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
        local delta = input.Position - dragStart
        MainFrame.Position = UDim2.new(
            startPos.X.Scale, startPos.X.Offset + delta.X,
            startPos.Y.Scale, startPos.Y.Offset + delta.Y
        )
    end
end)

MainFrame.InputEnded:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        dragging = false
    end
end)

spawn(function()
    repeat wait() until game:IsLoaded()
    wait(2)
    updateLeaderboard()
end)

spawn(function()
    while wait(5) do
        updateLeaderboard()
    end
end)

Features & Information

Random rivals script deobfuscated by axom. The original script were obfuscated with a strong custom obfuscation btw. Idk but this is trash
#Axom#Leak

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts