krnl executor fake
Key RequiredUniversal

krnl executor fake

Universal ScriptDelta_vs_Xeno_Non_soDelta_vs_Xeno_Non_so 546 views 125 executesUpdated Mar 2, 2026
Unrated
00
Lua Script•779 lines (28009 chars)
--[[
    KRNL Revial GUI Simulator
    Paste this script into any LocalScript (e.g., inside StarterGui)
]]

local player = game:GetService("Players").LocalPlayer
local userInputService = game:GetService("UserInputService")
local tweenService = game:GetService("TweenService")
local guiService = game:GetService("GuiService")
local textService = game:GetService("TextService")
local runService = game:GetService("RunService")

-- Создаем основной ScreenGui
local screenGui = Instance.new("ScreenGui")
screenGui.Name = "KRNL_Revial"
screenGui.ResetOnSpawn = false
screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling

-- Проверка на наличие уже существующего GUI (чтобы не было дубликатов)
for _, v in pairs(player:WaitForChild("PlayerGui"):GetChildren()) do
    if v.Name == "KRNL_Revial" then
        v:Destroy()
    end
end

screenGui.Parent = player:WaitForChild("PlayerGui")

-- Основные цвета
local colors = {
    bg = Color3.fromRGB(30, 30, 30),
    darkBg = Color3.fromRGB(20, 20, 20),
    lightBg = Color3.fromRGB(60, 60, 60),
    lightestBg = Color3.fromRGB(80, 80, 80),
    text = Color3.fromRGB(255, 255, 255),
    black = Color3.fromRGB(0, 0, 0),
    white = Color3.fromRGB(255, 255, 255),
    green = Color3.fromRGB(0, 255, 0),
    red = Color3.fromRGB(255, 50, 50)
}

-- Переменные состояния
local isInjected = false
local lineNumbers = {}
local currentScriptLines = {""}
local savedScripts = {} -- Хранилище для сохраненных скриптов
local hasValidKey = false -- Флаг наличия валидного ключа
local currentGeneratedKey = "" -- Текущий сгенерированный ключ

-- Функция для создания кнопки с эффектами
local function createButton(parent, text, size, position, callback)
    local button = Instance.new("TextButton")
    button.Name = text .. "Button"
    button.Size = size
    button.Position = position
    button.Text = text
    button.BackgroundColor3 = colors.lightBg
    button.TextColor3 = colors.text
    button.Font = Enum.Font.SourceSans
    button.TextSize = 16
    button.BorderSizePixel = 0
    button.AutoButtonColor = false
    button.Parent = parent
    
    -- Hover эффект
    button.MouseEnter:Connect(function()
        if not button.SelectionImageObject then
            tweenService:Create(button, TweenInfo.new(0.1), {BackgroundColor3 = colors.lightestBg}):Play()
        end
    end)
    
    button.MouseLeave:Connect(function()
        if not button.SelectionImageObject then
            tweenService:Create(button, TweenInfo.new(0.1), {BackgroundColor3 = colors.lightBg}):Play()
        end
    end)
    
    -- Эффект нажатия
    button.MouseButton1Down:Connect(function()
        tweenService:Create(button, TweenInfo.new(0.05), {BackgroundColor3 = colors.lightestBg}):Play()
    end)
    
    button.MouseButton1Up:Connect(function()
        tweenService:Create(button, TweenInfo.new(0.1), {BackgroundColor3 = colors.lightBg}):Play()
    end)
    
    button.MouseButton1Click:Connect(function()
        -- Быстрая вспышка при клике
        tweenService:Create(button, TweenInfo.new(0.1), {BackgroundColor3 = colors.lightestBg}):Play()
        task.wait(0.1)
        tweenService:Create(button, TweenInfo.new(0.1), {BackgroundColor3 = colors.lightBg}):Play()
        if callback then callback() end
    end)
    
    return button
end

-- Функция для обновления номеров строк
local function updateLineNumbers(textBox)
    local lines = {}
    for line in textBox.Text:gmatch("[^\r\n]+") do
        table.insert(lines, line)
    end
    if #lines == 0 then lines = {""} end
    
    currentScriptLines = lines
    
    -- Находим или создаем фрейм с номерами
    local lineNumFrame = textBox.Parent:FindFirstChild("LineNumbers")
    if lineNumFrame then
        lineNumFrame:ClearAllChildren()
        
        for i = 1, #lines do
            local numLabel = Instance.new("TextLabel")
            numLabel.Size = UDim2.new(1, 0, 0, 20)
            numLabel.Position = UDim2.new(0, 0, 0, (i-1)*20)
            numLabel.Text = tostring(i)
            numLabel.BackgroundTransparency = 1
            numLabel.TextColor3 = colors.text
            numLabel.Font = Enum.Font.SourceSans
            numLabel.TextSize = 14
            numLabel.Parent = lineNumFrame
        end
    end
end

-- Функция для создания выпадающего меню
local function createDropdown(parent, buttonText, items, position)
    local dropdownFrame = Instance.new("Frame")
    dropdownFrame.Name = buttonText .. "Dropdown"
    dropdownFrame.Size = UDim2.new(0, 120, 0, 0)
    dropdownFrame.Position = position
    dropdownFrame.BackgroundColor3 = colors.darkBg
    dropdownFrame.BorderSizePixel = 0
    dropdownFrame.Visible = false
    dropdownFrame.Parent = parent
    dropdownFrame.ClipsDescendants = true
    
    local layout = Instance.new("UIListLayout")
    layout.Parent = dropdownFrame
    layout.SortOrder = Enum.SortOrder.LayoutOrder
    layout.Padding = UDim.new(0, 1)
    
    layout:GetPropertyChangedSignal("AbsoluteContentSize"):Connect(function()
        dropdownFrame.Size = UDim2.new(0, 120, 0, layout.AbsoluteContentSize.Y)
    end)
    
    for _, item in pairs(items) do
        local btn = createButton(dropdownFrame, item, UDim2.new(1, 0, 0, 30), UDim2.new(0, 0, 0, 0), function()
            dropdownFrame.Visible = false
            if item == "Youtube" then
                print("Opening YouTube...")
            elseif item == "GitHub" then
                print("Opening GitHub...")
            elseif item == "Website" then
                print("Opening Website...")
            elseif item == "Inject" then
                simulateInjection()
            elseif item == "Kill Roblox" then
                game:Shutdown()
            end
        end)
        btn.BackgroundColor3 = colors.darkBg
        btn.TextColor3 = colors.text
        btn.TextXAlignment = Enum.TextXAlignment.Left
        btn.Parent = dropdownFrame
    end
    
    return dropdownFrame
end

-- Функция создания второго этапа (вставка ключа)
local function createSecondStage(parent, generatedKey)
    -- Очищаем контент
    for _, child in pairs(parent:GetChildren()) do
        if child.Name ~= "InstructionLabel" and child.Name ~= "TimerLabel" and child.Name ~= "ProgressBar" then
            child:Destroy()
        end
    end
    
    -- Скрываем элементы таймера
    local instructionLabel = parent:FindFirstChild("InstructionLabel")
    local timerLabel = parent:FindFirstChild("TimerLabel")
    local progressBar = parent:FindFirstChild("ProgressBar")
    
    if instructionLabel then instructionLabel.Visible = false end
    if timerLabel then timerLabel.Visible = false end
    if progressBar then progressBar.Visible = false end
    
    -- Текст инструкции для второго этапа
    local stage2Label = Instance.new("TextLabel")
    stage2Label.Name = "Stage2Label"
    stage2Label.Size = UDim2.new(1, 0, 0, 30)
    stage2Label.Position = UDim2.new(0, 0, 0, 10)
    stage2Label.Text = "Paste your copied key below and click Continue:"
    stage2Label.BackgroundTransparency = 1
    stage2Label.TextColor3 = colors.text
    stage2Label.Font = Enum.Font.SourceSans
    stage2Label.TextSize = 16
    stage2Label.Parent = parent
    
    -- Поле для ввода ключа
    local keyInput = Instance.new("TextBox")
    keyInput.Name = "KeyInput"
    keyInput.Size = UDim2.new(0.8, -10, 0, 35)
    keyInput.Position = UDim2.new(0.1, 0, 0, 50)
    keyInput.BackgroundColor3 = colors.lightBg
    keyInput.TextColor3 = colors.text
    keyInput.Font = Enum.Font.SourceSans
    keyInput.TextSize = 16
    keyInput.PlaceholderText = "Paste your key here..."
    keyInput.ClearTextOnFocus = false
    keyInput.Parent = parent
    
    -- Кнопка Continue
    local continueBtn = Instance.new("TextButton")
    continueBtn.Name = "ContinueBtn"
    continueBtn.Size = UDim2.new(0, 120, 0, 40)
    continueBtn.Position = UDim2.new(0.5, -60, 0, 100)
    continueBtn.Text = "Continue"
    continueBtn.BackgroundColor3 = colors.green
    continueBtn.TextColor3 = colors.black
    continueBtn.Font = Enum.Font.SourceSansBold
    continueBtn.TextSize = 18
    continueBtn.BorderSizePixel = 0
    continueBtn.Parent = parent
    
    -- Hover эффект для Continue
    continueBtn.MouseEnter:Connect(function()
        tweenService:Create(continueBtn, TweenInfo.new(0.1), {BackgroundColor3 = Color3.fromRGB(0, 200, 0)}):Play()
    end)
    
    continueBtn.MouseLeave:Connect(function()
        tweenService:Create(continueBtn, TweenInfo.new(0.1), {BackgroundColor3 = colors.green}):Play()
    end)
    
    -- Функционал кнопки Continue
    continueBtn.MouseButton1Click:Connect(function()
        if keyInput.Text == generatedKey then
            hasValidKey = true
            
            -- Находим родительский браузер и закрываем его
            local browserFrame = parent.Parent
            if browserFrame then
                browserFrame:Destroy()
            end
            
            -- Показываем сообщение об успехе
            local successMsg = Instance.new("TextLabel")
            successMsg.Size = UDim2.new(0, 300, 0, 50)
            successMsg.Position = UDim2.new(0.5, -150, 0.5, -25)
            successMsg.Text = "Key activated successfully! INJECT is now available."
            successMsg.BackgroundColor3 = colors.green
            successMsg.TextColor3 = colors.black
            successMsg.Font = Enum.Font.SourceSansBold
            successMsg.TextSize = 16
            successMsg.Parent = screenGui
            
            task.wait(3)
            successMsg:Destroy()
        else
            -- Ошибка при неверном ключе
            keyInput.BackgroundColor3 = colors.red
            task.wait(0.3)
            keyInput.BackgroundColor3 = colors.lightBg
        end
    end)
end

-- Функция создания мини-браузера для получения ключа
local function createKeyBrowser()
    -- Проверяем, не открыт ли уже браузер
    if screenGui:FindFirstChild("KeyBrowser") then
        return
    end
    
    -- Генерируем ключ
    currentGeneratedKey = "KRNL-" .. string.format("%04d", math.random(1000, 9999)) .. "-" .. string.format("%04d", math.random(1000, 9999)) .. "-" .. string.format("%04d", math.random(1000, 9999))
    
    local browserFrame = Instance.new("Frame")
    browserFrame.Name = "KeyBrowser"
    browserFrame.Size = UDim2.new(0, 500, 0, 400)
    browserFrame.Position = UDim2.new(0.5, -250, 0.5, -200)
    browserFrame.BackgroundColor3 = colors.darkBg
    browserFrame.BorderSizePixel = 2
    browserFrame.BorderColor3 = colors.lightBg
    browserFrame.Parent = screenGui
    browserFrame.Active = true
    browserFrame.Draggable = true
    
    -- Заголовок
    local titleBar = Instance.new("Frame")
    titleBar.Size = UDim2.new(1, 0, 0, 30)
    titleBar.BackgroundColor3 = colors.lightBg
    titleBar.BorderSizePixel = 0
    titleBar.Parent = browserFrame
    
    local titleText = Instance.new("TextLabel")
    titleText.Size = UDim2.new(1, -30, 1, 0)
    titleText.Position = UDim2.new(0, 5, 0, 0)
    titleText.Text = "KRNL Key System - Step 1/2"
    titleText.BackgroundTransparency = 1
    titleText.TextColor3 = colors.text
    titleText.Font = Enum.Font.SourceSansBold
    titleText.TextSize = 18
    titleText.TextXAlignment = Enum.TextXAlignment.Left
    titleText.Parent = titleBar
    
    -- Кнопка закрытия
    local closeBtn = Instance.new("TextButton")
    closeBtn.Size = UDim2.new(0, 25, 0, 25)
    closeBtn.Position = UDim2.new(1, -30, 0, 2.5)
    closeBtn.Text = "X"
    closeBtn.BackgroundColor3 = colors.red
    closeBtn.TextColor3 = colors.text
    closeBtn.Font = Enum.Font.SourceSansBold
    closeBtn.TextSize = 18
    closeBtn.BorderSizePixel = 0
    closeBtn.Parent = titleBar
    
    -- Основной контент
    local contentFrame = Instance.new("Frame")
    contentFrame.Size = UDim2.new(1, -20, 1, -50)
    contentFrame.Position = UDim2.new(0, 10, 0, 40)
    contentFrame.BackgroundColor3 = colors.bg
    contentFrame.BorderSizePixel = 0
    contentFrame.Parent = browserFrame
    
    -- Инструкция (ШАГ 1)
    local instructionLabel = Instance.new("TextLabel")
    instructionLabel.Name = "InstructionLabel"
    instructionLabel.Size = UDim2.new(1, 0, 0, 30)
    instructionLabel.Position = UDim2.new(0, 0, 0, 10)
    instructionLabel.Text = "Please wait 20 seconds to generate your key..."
    instructionLabel.BackgroundTransparency = 1
    instructionLabel.TextColor3 = colors.text
    instructionLabel.Font = Enum.Font.SourceSans
    instructionLabel.TextSize = 16
    instructionLabel.Parent = contentFrame
    
    -- Таймер (ШАГ 1)
    local timerLabel = Instance.new("TextLabel")
    timerLabel.Name = "TimerLabel"
    timerLabel.Size = UDim2.new(1, 0, 0, 40)
    timerLabel.Position = UDim2.new(0, 0, 0, 45)
    timerLabel.Text = "20"
    timerLabel.BackgroundTransparency = 1
    timerLabel.TextColor3 = colors.green
    timerLabel.Font = Enum.Font.SourceSansBold
    timerLabel.TextSize = 48
    timerLabel.Parent = contentFrame
    
    -- Прогресс бар (ШАГ 1)
    local progressBar = Instance.new("Frame")
    progressBar.Name = "ProgressBar"
    progressBar.Size = UDim2.new(1, -20, 0, 10)
    progressBar.Position = UDim2.new(0, 10, 0, 100)
    progressBar.BackgroundColor3 = colors.darkBg
    progressBar.BorderSizePixel = 0
    progressBar.Parent = contentFrame
    
    local progressFill = Instance.new("Frame")
    progressFill.Name = "ProgressFill"
    progressFill.Size = UDim2.new(0, 0, 1, 0)
    progressFill.BackgroundColor3 = colors.green
    progressFill.BorderSizePixel = 0
    progressFill.Parent = progressBar
    
    -- Таймер обратного отсчета (ШАГ 1)
    local timeLeft = 20
    local totalTime = 20
    local startTime = tick()
    
    -- Функция обновления таймера
    local function updateTimer()
        local elapsedTime = tick() - startTime
        timeLeft = math.max(0, totalTime - math.floor(elapsedTime))
        
        timerLabel.Text = tostring(timeLeft)
        
        -- Обновляем прогресс бар
        local progress = elapsedTime / totalTime
        if progress > 1 then progress = 1 end
        progressFill.Size = UDim2.new(progress, 0, 1, 0)
        
        if timeLeft <= 0 then
            timerLabel.Text = "0"
            progressFill.Size = UDim2.new(1, 0, 1, 0)
            
            -- Обновляем заголовок
            titleText.Text = "KRNL Key System - Step 2/2"
            
            -- Показываем ключ и кнопку Copy (ШАГ 2)
            instructionLabel.Text = "Your key has been generated! Copy it below:"
            instructionLabel.Position = UDim2.new(0, 0, 0, 10)
            
            -- Поле с ключом
            local keyDisplay = Instance.new("TextBox")
            keyDisplay.Name = "KeyDisplay"
            keyDisplay.Size = UDim2.new(0.8, -10, 0, 35)
            keyDisplay.Position = UDim2.new(0.1, 0, 0, 50)
            keyDisplay.BackgroundColor3 = colors.lightBg
            keyDisplay.TextColor3 = colors.text
            keyDisplay.Font = Enum.Font.SourceSans
            keyDisplay.TextSize = 16
            keyDisplay.Text = currentGeneratedKey
            keyDisplay.TextEditable = false -- Нельзя редактировать
            keyDisplay.ClearTextOnFocus = false
            keyDisplay.Parent = contentFrame
            
            -- Кнопка Copy
            local copyBtn = Instance.new("TextButton")
            copyBtn.Name = "CopyBtn"
            copyBtn.Size = UDim2.new(0, 100, 0, 35)
            copyBtn.Position = UDim2.new(0.5, -50, 0, 95)
            copyBtn.Text = "Copy"
            copyBtn.BackgroundColor3 = colors.lightBg
            copyBtn.TextColor3 = colors.text
            copyBtn.Font = Enum.Font.SourceSans
            copyBtn.TextSize = 16
            copyBtn.BorderSizePixel = 0
            copyBtn.Parent = contentFrame
            
            -- Hover эффект для Copy
            copyBtn.MouseEnter:Connect(function()
                tweenService:Create(copyBtn, TweenInfo.new(0.1), {BackgroundColor3 = colors.lightestBg}):Play()
            end)
            
            copyBtn.MouseLeave:Connect(function()
                tweenService:Create(copyBtn, TweenInfo.new(0.1), {BackgroundColor3 = colors.lightBg}):Play()
            end)
            
            -- Функционал кнопки Copy
            copyBtn.MouseButton1Click:Connect(function()
                -- Копируем ключ
                local clipboard = setclipboard or toclipboard or function(text) 
                    warn("Clipboard function not available. Key: " .. text)
                end
                
                if clipboard then
                    pcall(clipboard, currentGeneratedKey)
                end
                
                -- Визуальный эффект
                copyBtn.Text = "Copied!"
                copyBtn.BackgroundColor3 = colors.green
                copyBtn.TextColor3 = colors.black
                
                -- Переходим ко второму этапу
                task.wait(1)
                createSecondStage(contentFrame, currentGeneratedKey)
            end)
            
            -- Скрываем таймер и прогресс бар
            timerLabel.Visible = false
            progressBar.Visible = false
            
            return true
        end
        return false
    end
    
    -- Запускаем обновление через RunService
    local connection
    connection = runService.Heartbeat:Connect(function()
        local completed = updateTimer()
        if completed then
            connection:Disconnect()
        end
    end)
    
    -- Закрытие браузера
    closeBtn.MouseButton1Click:Connect(function()
        if connection then
            connection:Disconnect()
        end
        browserFrame:Destroy()
    end)
end

-- Функция симуляции инжекта
function simulateInjection()
    if not hasValidKey then
        -- Показываем предупреждение о необходимости ключа
        local warningMsg = Instance.new("TextLabel")
        warningMsg.Size = UDim2.new(0, 400, 0, 50)
        warningMsg.Position = UDim2.new(0.5, -200, 0.5, -25)
        warningMsg.Text = "You need to get a valid key first! Click 'Get Key' button."
        warningMsg.BackgroundColor3 = colors.red
        warningMsg.TextColor3 = colors.text
        warningMsg.Font = Enum.Font.SourceSans
        warningMsg.TextSize = 14
        warningMsg.Parent = screenGui
        
        task.wait(3)
        warningMsg:Destroy()
        return
    end
    
    if isInjected then
        print("Already injected!")
        return
    end
    
    -- Создаем консольное окно
    local consoleFrame = Instance.new("Frame")
    consoleFrame.Name = "Console"
    consoleFrame.Size = UDim2.new(0, 400, 0, 150)
    consoleFrame.Position = UDim2.new(0.5, -200, 0.5, -75)
    consoleFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
    consoleFrame.BorderSizePixel = 1
    consoleFrame.BorderColor3 = colors.lightBg
    consoleFrame.Parent = screenGui
    
    local consoleText = Instance.new("TextLabel")
    consoleText.Size = UDim2.new(1, -10, 1, -10)
    consoleText.Position = UDim2.new(0, 5, 0, 5)
    consoleText.BackgroundTransparency = 1
    consoleText.TextColor3 = Color3.fromRGB(0, 255, 0)
    consoleText.Font = Enum.Font.SourceSans
    consoleText.TextSize = 14
    consoleText.TextXAlignment = Enum.TextXAlignment.Left
    consoleText.TextYAlignment = Enum.TextYAlignment.Top
    consoleText.Text = "[INFO] Checking version.\n[INFO] Scanning.\n[KEY] Key valid!\n[INFO] Injecting...\n[SUCCESS] Injection complete!"
    consoleText.Parent = consoleFrame
    
    -- Анимация появления консоли
    consoleFrame.BackgroundTransparency = 1
    consoleText.TextTransparency = 1
    tweenService:Create(consoleFrame, TweenInfo.new(0.3), {BackgroundTransparency = 0}):Play()
    tweenService:Create(consoleText, TweenInfo.new(0.3), {TextTransparency = 0}):Play()
    
    -- Устанавливаем статус инжекта
    isInjected = true
    
    -- Добавляем кнопку закрытия
    local closeButton = Instance.new("TextButton")
    closeButton.Size = UDim2.new(0, 20, 0, 20)
    closeButton.Position = UDim2.new(1, -25, 0, 5)
    closeButton.Text = "X"
    closeButton.BackgroundColor3 = Color3.fromRGB(255, 50, 50)
    closeButton.TextColor3 = colors.text
    closeButton.Font = Enum.Font.SourceSansBold
    closeButton.TextSize = 16
    closeButton.BorderSizePixel = 0
    closeButton.Parent = consoleFrame
    
    closeButton.MouseButton1Click:Connect(function()
        tweenService:Create(consoleFrame, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play()
        tweenService:Create(consoleText, TweenInfo.new(0.3), {TextTransparency = 1}):Play()
        task.wait(0.3)
        consoleFrame:Destroy()
    end)
    
    -- Автоматически закрываем через 1 секунду
    task.wait(1)
    if consoleFrame and consoleFrame.Parent then
        tweenService:Create(consoleFrame, TweenInfo.new(0.3), {BackgroundTransparency = 1}):Play()
        tweenService:Create(consoleText, TweenInfo.new(0.3), {TextTransparency = 1}):Play()
        task.wait(0.3)
        consoleFrame:Destroy()
    end
    
    print("KRNL injected successfully!")
end

-- Функция выполнения скрипта
function executeScript(scriptText)
    if not isInjected then
        warn("No ready clients found. Make sure you've pressed Attach and waited for injection to complete.")
        local errorMsg = Instance.new("TextLabel")
        errorMsg.Size = UDim2.new(0, 400, 0, 50)
        errorMsg.Position = UDim2.new(0.5, -200, 0.5, -25)
        errorMsg.Text = "No ready clients found. Make sure you've pressed Attach and waited for injection to complete."
        errorMsg.BackgroundColor3 = Color3.fromRGB(255, 50, 50)
        errorMsg.TextColor3 = colors.text
        errorMsg.Font = Enum.Font.SourceSans
        errorMsg.TextSize = 14
        errorMsg.Parent = screenGui
        
        task.wait(3)
        errorMsg:Destroy()
        return
    end
    
    -- Симуляция выполнения
    local success, err = pcall(function()
        loadstring(scriptText)()
    end)
    
    if not success then
        warn("Script Error: " .. err)
    end
end

-- Функция сохранения файла
function saveFile(scriptText, fileName)
    if fileName and fileName ~= "" then
        savedScripts[fileName] = scriptText
        print("Saved script as: " .. fileName)
    end
end

-- Функция открытия файла
function openFile(fileName)
    return savedScripts[fileName] or ""
end

-- Создание основного фрейма
local mainFrame = Instance.new("Frame")
mainFrame.Name = "MainFrame"
mainFrame.Size = UDim2.new(0, 600, 0, 400)
mainFrame.Position = UDim2.new(0, 10, 0, 10)
mainFrame.BackgroundColor3 = colors.bg
mainFrame.BorderSizePixel = 0
mainFrame.Parent = screenGui
mainFrame.Active = true
mainFrame.Draggable = true

-- Заголовок
local titleLabel = Instance.new("TextLabel")
titleLabel.Size = UDim2.new(1, 0, 0, 30)
titleLabel.Position = UDim2.new(0, 0, 0, -30)
titleLabel.Text = "KRNL"
titleLabel.BackgroundTransparency = 1
titleLabel.TextColor3 = colors.text
titleLabel.Font = Enum.Font.SourceSansBold
titleLabel.TextSize = 24
titleLabel.Parent = mainFrame

-- K квадрат
local kSquare = Instance.new("Frame")
kSquare.Name = "KSquare"
kSquare.Size = UDim2.new(0, 50, 0, 50)
kSquare.Position = UDim2.new(0, 10, 0, 10)
kSquare.BackgroundColor3 = colors.white
kSquare.BorderSizePixel = 0
kSquare.Parent = mainFrame

local kLetter = Instance.new("TextLabel")
kLetter.Size = UDim2.new(1, 0, 1, 0)
kLetter.Text = "K"
kLetter.BackgroundTransparency = 1
kLetter.TextColor3 = colors.black
kLetter.Font = Enum.Font.SourceSansBold
kLetter.TextSize = 40
kLetter.Parent = kSquare

-- Панель кнопок
local buttonPanel = Instance.new("Frame")
buttonPanel.Name = "ButtonPanel"
buttonPanel.Size = UDim2.new(1, -20, 0, 30)
buttonPanel.Position = UDim2.new(0, 10, 0, 70)
buttonPanel.BackgroundTransparency = 1
buttonPanel.Parent = mainFrame

-- Кнопка File
local fileButton = createButton(buttonPanel, "File", UDim2.new(0, 60, 1, 0), UDim2.new(0, 0, 0, 0))
local fileDropdown = createDropdown(mainFrame, "File", {"Inject", "Kill Roblox"}, UDim2.new(0, 10, 0, 100))

fileButton.MouseButton1Click:Connect(function()
    fileDropdown.Visible = not fileDropdown.Visible
end)

-- Кнопка Credits
local creditsButton = createButton(buttonPanel, "Credits", UDim2.new(0, 70, 1, 0), UDim2.new(0, 70, 0, 0), function()
    print("KRNL Revial - Credits")
end)

-- Кнопка Script Hub
local scriptHubButton = createButton(buttonPanel, "Script Hub", UDim2.new(0, 80, 1, 0), UDim2.new(0, 150, 0, 0), function()
    print("Script Hub opened")
end)

-- Кнопка Others
local othersButton = createButton(buttonPanel, "Others", UDim2.new(0, 70, 1, 0), UDim2.new(0, 240, 0, 0))
local othersDropdown = createDropdown(mainFrame, "Others", {"Youtube", "GitHub", "Website"}, UDim2.new(0, 250, 0, 100))

othersButton.MouseButton1Click:Connect(function()
    othersDropdown.Visible = not othersDropdown.Visible
end)

-- Кнопка Get Key
local getKeyButton = createButton(buttonPanel, "Get Key", UDim2.new(0, 70, 1, 0), UDim2.new(0, 320, 0, 0), function()
    createKeyBrowser()
end)

-- Область для скрипта
local scriptArea = Instance.new("Frame")
scriptArea.Name = "ScriptArea"
scriptArea.Size = UDim2.new(1, -20, 0, 200)
scriptArea.Position = UDim2.new(0, 10, 0, 110)
scriptArea.BackgroundColor3 = colors.darkBg
scriptArea.BorderSizePixel = 0
scriptArea.Parent = mainFrame

-- Номера строк
local lineNumbers = Instance.new("Frame")
lineNumbers.Name = "LineNumbers"
lineNumbers.Size = UDim2.new(0, 30, 1, 0)
lineNumbers.BackgroundColor3 = colors.darkBg
lineNumbers.BorderSizePixel = 0
lineNumbers.Parent = scriptArea

-- Поле для ввода скрипта
local scriptBox = Instance.new("TextBox")
scriptBox.Name = "ScriptBox"
scriptBox.Size = UDim2.new(1, -35, 1, -10)
scriptBox.Position = UDim2.new(0, 35, 0, 5)
scriptBox.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
scriptBox.TextColor3 = colors.text
scriptBox.Font = Enum.Font.SourceSans
scriptBox.TextSize = 14
scriptBox.TextXAlignment = Enum.TextXAlignment.Left
scriptBox.TextYAlignment = Enum.TextYAlignment.Top
scriptBox.ClearTextOnFocus = false
scriptBox.MultiLine = true
scriptBox.Text = "-- Welcome to KRNL's Revial!"
scriptBox.Parent = scriptArea

scriptBox:GetPropertyChangedSignal("Text"):Connect(function()
    updateLineNumbers(scriptBox)
end)

-- Нижняя панель
local bottomPanel = Instance.new("Frame")
bottomPanel.Name = "BottomPanel"
bottomPanel.Size = UDim2.new(1, -20, 0, 35)
bottomPanel.Position = UDim2.new(0, 10, 1, -45)
bottomPanel.BackgroundTransparency = 1
bottomPanel.Parent = mainFrame

-- Кнопка EXECUTE
local executeButton = createButton(bottomPanel, "EXECUTE", UDim2.new(0, 70, 1, 0), UDim2.new(0, 0, 0, 0), function()
    executeScript(scriptBox.Text)
end)

-- Кнопка CLEAR
local clearButton = createButton(bottomPanel, "CLEAR", UDim2.new(0, 60, 1, 0), UDim2.new(0, 80, 0, 0), function()
    scriptBox.Text = ""
end)

-- Кнопка OPEN FILE
local openFileButton = createButton(bottomPanel, "OPEN FILE", UDim2.new(0, 80, 1, 0), UDim2.new(0, 150, 0, 0), function()
    local fileName = "default"
    scriptBox.Text = openFile(fileName)
end)

-- Кнопка SAVE FILE
local saveFileButton = createButton(bottomPanel, "SAVE FILE", UDim2.new(0, 80, 1, 0), UDim2.new(0, 240, 0, 0), function()
    local fileName = "default"
    saveFile(scriptBox.Text, fileName)
end)

-- Кнопка INJECT
local injectButton = createButton(bottomPanel, "INJECT", UDim2.new(0, 70, 1, 0), UDim2.new(0, 330, 0, 0), function()
    simulateInjection()
end)

-- Кнопка TOPMOST
local topmostButton = createButton(bottomPanel, "TOPMOST", UDim2.new(0, 80, 1, 0), UDim2.new(0, 410, 0, 0), function()
    screenGui.Enabled = not screenGui.Enabled
    task.wait()
    screenGui.Enabled = true
end)

-- Инициализация номеров строк
updateLineNumbers(scriptBox)

-- Скрываем дропдауны при клике вне них
userInputService.InputBegan:Connect(function(input, gameProcessed)
    if gameProcessed then return end
    
    if input.UserInputType == Enum.UserInputType.MouseButton1 then
        fileDropdown.Visible = false
        othersDropdown.Visible = false
    end
end)

print("KRNL Revial GUI Loaded! Click 'Get Key' to activate INJECT.")

Features & Information

bullshit

Community Comments (1)

Gmiler_lolGmiler_lolMar 2, 2026

Ohio KRNL

More Scripts for Universal Scripts