level changer (local)
Key Required

level changer (local)

RIVALSFrench_fluisFrench_fluis 576 views 2K executesUpdated Aug 28, 2026
Unrated
00
Lua Script•161 lines (5559 chars)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local StarterGui = game:GetService("StarterGui")

local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")

-- 1. Create Main ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "LevelChangerGui"
screenGui.ResetOnSpawn = false
screenGui.Parent = playerGui

-- 2. Create Main Frame
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 260, 0, 160)
mainFrame.Position = UDim2.new(0.5, -130, 0.4, -80)
mainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
mainFrame.BorderSizePixel = 0
mainFrame.Active = true
mainFrame.Draggable = true
mainFrame.Parent = screenGui

local frameCorner = Instance.new("UICorner")
frameCorner.CornerRadius = UDim.new(0, 10)
frameCorner.Parent = mainFrame

local frameStroke = Instance.new("UIStroke")
frameStroke.Color = Color3.fromRGB(60, 60, 75)
frameStroke.Thickness = 1.5
frameStroke.Parent = mainFrame

-- 3. Title Label ("Level Changer")
local titleLabel = Instance.new("TextLabel")
titleLabel.Name = "Title"
titleLabel.Size = UDim2.new(1, -40, 0, 35)
titleLabel.Position = UDim2.new(0, 12, 0, 5)
titleLabel.BackgroundTransparency = 1
titleLabel.Text = "Level Changer"
titleLabel.TextColor3 = Color3.fromRGB(255, 255, 255)
titleLabel.TextSize = 16
titleLabel.Font = Enum.Font.GothamBold
titleLabel.TextXAlignment = Enum.TextXAlignment.Left
titleLabel.Parent = mainFrame

-- 4. Close Button (X)
local closeButton = Instance.new("TextButton")
closeButton.Name = "CloseButton"
closeButton.Size = UDim2.new(0, 26, 0, 26)
closeButton.Position = UDim2.new(1, -32, 0, 8)
closeButton.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
closeButton.Text = "X"
closeButton.TextColor3 = Color3.fromRGB(200, 200, 200)
closeButton.TextSize = 12
closeButton.Font = Enum.Font.GothamBold
closeButton.Parent = mainFrame

local closeCorner = Instance.new("UICorner")
closeCorner.CornerRadius = UDim.new(0, 6)
closeCorner.Parent = closeButton

-- 5. Input Box (Supports Letters & Numbers)
local levelInput = Instance.new("TextBox")
levelInput.Name = "LevelInput"
levelInput.Size = UDim2.new(1, -24, 0, 40)
levelInput.Position = UDim2.new(0, 12, 0, 50)
levelInput.BackgroundColor3 = Color3.fromRGB(35, 35, 45)
levelInput.Text = "313"
levelInput.PlaceholderText = "Type anything here..."
levelInput.TextColor3 = Color3.fromRGB(0, 255, 170)
levelInput.PlaceholderColor3 = Color3.fromRGB(120, 120, 140)
levelInput.TextSize = 18
levelInput.Font = Enum.Font.GothamSemibold
levelInput.Parent = mainFrame

local inputCorner = Instance.new("UICorner")
inputCorner.CornerRadius = UDim.new(0, 8)
inputCorner.Parent = levelInput

-- 6. Helper Label
local hintLabel = Instance.new("TextLabel")
hintLabel.Name = "HintLabel"
hintLabel.Size = UDim2.new(1, -24, 0, 25)
hintLabel.Position = UDim2.new(0, 12, 0, 100)
hintLabel.BackgroundTransparency = 1
hintLabel.Text = "Press 'P' to Toggle GUI"
hintLabel.TextColor3 = Color3.fromRGB(140, 140, 160)
hintLabel.TextSize = 12
hintLabel.Font = Enum.Font.Gotham
hintLabel.Parent = mainFrame

-- System Notification Function
local function sendNotification(text)
    pcall(function()
        StarterGui:SetCore("SendNotification", {
            Title = "Level Changer",
            Text = text,
            Duration = 3
        })
    end)
end

closeButton.MouseButton1Click:Connect(function()
    mainFrame.Visible = false
    sendNotification("GUI Hidden. Press 'P' to open again.")
end)

UserInputService.InputBegan:Connect(function(input, gameProcessed)
    if not gameProcessed and input.KeyCode == Enum.KeyCode.P then
        mainFrame.Visible = not mainFrame.Visible
        if mainFrame.Visible then
            sendNotification("Level Changer Opened.")
        else
            sendNotification("GUI Hidden. Press 'P' to open again.")
        end
    end
end)

-- Per-Frame Loop - Allows ANY text (letters, numbers, custom words)
RunService.RenderStepped:Connect(function()
    local targetLevel = levelInput.Text
    if targetLevel == "" then return end

    -- 1. Screen UI Elements
    for _, obj in pairs(playerGui:GetDescendants()) do
        if obj:IsA("TextLabel") and not obj:IsDescendantOf(mainFrame) then
            local path = obj:GetFullName()
            
            if path:find("Level") and not path:find("Notification") then
                -- Safely ignore header/subtext labels that only say "Level" or "LVL"
                local cleanText = obj.Text:gsub("%s+", ""):lower()
                if cleanText ~= "level" and cleanText ~= "lvl" then
                    if obj.Text ~= targetLevel then
                        obj.Text = targetLevel
                    end
                end
            end
        end
    end

    -- 2. Workspace Character Overhead Name Tag
    local character = player.Character
    if character then
        for _, obj in pairs(character:GetDescendants()) do
            if obj:IsA("TextLabel") then
                local cleanText = obj.Text:gsub("%s+", ""):lower()
                if cleanText ~= "level" and cleanText ~= "lvl" then
                    if obj.Name:lower():find("level") or obj:GetFullName():find("Level") then
                        if obj.Text ~= targetLevel then
                            obj.Text = targetLevel
                        end
                    end
                end
            end
        end
    end
end)

sendNotification("Level Changer Loaded! Press 'P' to toggle.")

Features & Information

This is a roblox rivals level changer this is local nd only for visual use alt its not detected but obviously can get you ban

Community Comments (0)

No comments yet for this script.

More Scripts for RIVALS