testrn idk
Key RequiredUniversal

testrn idk

Universal Scriptu2291239754u2291239754 34 views 1 executesUpdated Aug 1, 2026
Unrated
00
Lua Script•593 lines (14747 chars)
local WindUI = loadstring(game:HttpGet("https://github.com/Footagesus/WindUI/releases/latest/download/main.lua"))()

local Window = WindUI:CreateWindow({
    Title = "Vortex Hub",
    Icon = "gamepad-2", -- lucide icon
    Author = "by the official Vortex!",
    Folder = "VortexHub",
    
    -- ↓ This all is Optional. You can remove it.
    Size = UDim2.fromOffset(580, 460),
    MinSize = Vector2.new(560, 350),
    MaxSize = Vector2.new(850, 560),
    Transparent = true,
    Theme = "Dark",
    Resizable = true,
    SideBarWidth = 200,
    BackgroundImageTransparency = 0.42,
    HideSearchBar = true,
    ScrollBarEnabled = false,
    
    -- ↓ Optional. You can remove it.
    --[[ You can set 'rbxassetid://' or video to Background.
        'rbxassetid://':
            Background = "rbxassetid://", -- rbxassetid
        Video:
            Background = "video:YOUR-RAW-LINK-TO-VIDEO.webm", -- video 
    --]]
    
    -- ↓ Optional. You can remove it.
    User = {
        Enabled = true,
        Anonymous = false,
        Callback = function()
            print("User Info Clicked")
        end,
    },
    
    --       remove this all, 
    -- !  ↓  if you DON'T need the key system
    KeySystem = { 
        -- ↓ Optional. You can remove it.
        Key = { "BotVerification", "0000" },
        
        Note = "Type BotVerification or 0000 to get access to the hub.",
        -- ↓ Optional. You can remove it.
        SaveKey = true, -- automatically save and load the key.
        
        -- ↓ Optional. You can remove it.
        -- API = {} ← Services. Read about it below ↓
    },
})

local Tab = Window:Tab({
    Title = "Local Player",
    Icon = "user", -- optional
    Locked = false,
})

local Players = game:GetService("Players")
local player = Players.LocalPlayer

local currentSpeed = 16

local SPeedSlider = Tab:Slider({
    Title = "Walkspeed Slider",
    Desc = "Set Walkspeed Using This Slider.",

    Step = 1,
    Value = {
        Min = 16,
        Max = 250,
        Default = 16,
    },

    Callback = function(value)
        currentSpeed = value

        local char = player.Character or player.CharacterAdded:Wait()
        local humanoid = char:FindFirstChildOfClass("Humanoid")

        if humanoid then
            humanoid.WalkSpeed = value
        end
    end
})

-- keep after respawn
player.CharacterAdded:Connect(function(char)
    local humanoid = char:WaitForChild("Humanoid")
    humanoid.WalkSpeed = currentSpeed
end)

local Players = game:GetService("Players")
local player = Players.LocalPlayer

local currentJump = 50

local JumpSlider = Tab:Slider({
    Title = "Jumppower Slider",
    Desc = "Set Jumppower Using This Slider.",

    Step = 1,
    Value = {
        Min = 50,
        Max = 500,
        Default = 50,
    },

    Callback = function(value)
        currentJump = value

        local char = player.Character or player.CharacterAdded:Wait()
        local humanoid = char:FindFirstChildOfClass("Humanoid")

        if humanoid then
            humanoid.JumpPower = value
        end
    end
})

-- keep after respawn
player.CharacterAdded:Connect(function(char)
    local humanoid = char:WaitForChild("Humanoid")
    humanoid.JumpPower = currentJump
end)

local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")

local player = Players.LocalPlayer
local infJumpEnabled = false

local infJumpToggle = Tab:Toggle({
    Title = "Infinite Jump",
    Desc = "Jump in the air endlessly",
    Icon = "plane",
    Type = "Checkbox",
    Value = false,

    Callback = function(state)
        infJumpEnabled = state
        print("Infinite Jump: " .. tostring(state))
    end
})

UserInputService.JumpRequest:Connect(function()
    if infJumpEnabled then
        local char = player.Character
        if char then
            local humanoid = char:FindFirstChildOfClass("Humanoid")
            if humanoid then
                humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
            end
        end
    end
end)

local player = game:GetService("Players").LocalPlayer

local function setTiny(state)
    local char = player.Character
    if not char then return end

    local humanoid = char:FindFirstChildOfClass("Humanoid")
    if not humanoid then return end

    -- reset FIRST (important)
    for _, v in pairs(humanoid:GetChildren()) do
        if v:IsA("NumberValue") and v.Name:find("Scale") then
            v.Value = 1
        end
    end

    if state then
        -- apply tiny AFTER reset
        if humanoid:FindFirstChild("BodyHeightScale") then
            humanoid.BodyHeightScale.Value = 0.3
            humanoid.BodyWidthScale.Value = 0.3
            humanoid.BodyDepthScale.Value = 0.3
            humanoid.HeadScale.Value = 0.3
        end
    end
end

-- 🔹 INVISIBLE TOGGLE
local invisEnabled = false

local InvisToggle = Tab:Toggle({
    Title = "Become Invisible",
    Desc = "Make Your Character Invisible.",
    Icon = "hat-glasses",
    Type = "Checkbox",
    Value = false,

    Callback = function(state)
        invisEnabled = state

        local char = player.Character
        if not char then return end

        for _, v in pairs(char:GetDescendants()) do
            if v:IsA("BasePart") then
                v.Transparency = state and 1 or 0
                v.CanCollide = not state -- optional
            elseif v:IsA("Decal") then
                v.Transparency = state and 1 or 0
            end
        end
    end
})

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer
local noclipEnabled = false

local NoclipToggle = Tab:Toggle({
    Title = "Noclip",
    Desc = "Walk through walls",
    Icon = "ghost",
    Type = "Checkbox",
    Value = false,

    Callback = function(state)
        noclipEnabled = state
        print("Noclip: " .. tostring(state))
    end
})

-- 🔥 Noclip loop (runs every frame)
RunService.Stepped:Connect(function()
    if noclipEnabled then
        local char = player.Character
        if char then
            for _, v in pairs(char:GetDescendants()) do
                if v:IsA("BasePart") then
                    v.CanCollide = false
                end
            end
        end
    end
end)

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer

local VisualsTab = Window:Tab({
    Title = "Visuals",
    Icon = "eye"
})

--// SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer

--// STATES
local MurdererESP = false
local SheriffESP = false
local InnocentESP = false
local GunESP = false
local CoinESP = false

--// UI (PUT THIS IN YOUR VISUALS TAB)
VisualsTab:Toggle({
    Title = "Murderer ESP",
    Value = false,
    Callback = function(v) MurdererESP = v end
})

VisualsTab:Toggle({
    Title = "Sheriff ESP",
    Value = false,
    Callback = function(v) SheriffESP = v end
})

VisualsTab:Toggle({
    Title = "Innocent ESP",
    Value = false,
    Callback = function(v) InnocentESP = v end
})

VisualsTab:Toggle({
    Title = "Gun ESP",
    Value = false,
    Callback = function(v) GunESP = v end
})

VisualsTab:Toggle({
    Title = "Coin ESP",
    Value = false,
    Callback = function(v) CoinESP = v end
})

--// ESP FUNCTIONS
local function addHighlight(obj, color)
    if not obj then return end

    local hl = obj:FindFirstChild("ESP")
    if not hl then
        hl = Instance.new("Highlight")
        hl.Name = "ESP"
        hl.Parent = obj
    end

    hl.FillColor = color
    hl.OutlineColor = color
    hl.FillTransparency = 0.4
end

local function removeHighlight(obj)
    if obj and obj:FindFirstChild("ESP") then
        obj.ESP:Destroy()
    end
end

--// ROLE DETECTION (BETTER)
local function getRole(plr)
    local function check(container)
        if not container then return end

        for _, v in pairs(container:GetChildren()) do
            if v:IsA("Tool") then
                local name = v.Name:lower()
                if name:find("knife") then return "Murderer" end
                if name:find("gun") then return "Sheriff" end
            end
        end
    end

    return check(plr.Character) or check(plr:FindFirstChild("Backpack")) or "Innocent"
end

--// MAIN LOOP (STABLE)
RunService.Heartbeat:Connect(function()

    for _, plr in pairs(Players:GetPlayers()) do
        if plr ~= player and plr.Character then

            local role = getRole(plr)

            if role == "Murderer" and MurdererESP then
                addHighlight(plr.Character, Color3.fromRGB(255,0,0))

            elseif role == "Sheriff" and SheriffESP then
                addHighlight(plr.Character, Color3.fromRGB(0,0,255))

            elseif role == "Innocent" and InnocentESP then
                addHighlight(plr.Character, Color3.fromRGB(0,255,0))

            else
                removeHighlight(plr.Character)
            end
        end
    end

    -- 🔫 GunDrop ESP (FIXED SEARCH)
    if GunESP then
        local gun = workspace:FindFirstChild("GunDrop", true)
        if gun then
            addHighlight(gun, Color3.fromRGB(255,255,0))
        end
    end

    -- 🪙 Coin ESP (NEAR ONLY = LESS LAG)
    if CoinESP and player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
        local root = player.Character.HumanoidRootPart

        for _, v in pairs(workspace:GetDescendants()) do
            if v:IsA("BasePart") and v.Name:lower():find("coin") then
                if (v.Position - root.Position).Magnitude < 80 then
                    addHighlight(v, Color3.fromRGB(255,215,0))
                end
            end
        end
    end

end)

--// SERVICES
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")

local player = Players.LocalPlayer
local camera = workspace.CurrentCamera

--// SETTINGS
local AimMode = "Automatic"
local trackingEnabled = false

--// ================= UI =================

VisualsTab:Dropdown({
    Title = "Target Mode",
    Values = {"Murderer", "Sheriff", "Automatic"},
    Value = "Automatic",
    Callback = function(v)
        AimMode = v
    end
})

VisualsTab:Toggle({
    Title = "Aim Tracking",
    Value = false,
    Callback = function(v)
        trackingEnabled = v
    end
})

--// ================= ROLE DETECTION =================

local function getRole(plr)
    local function check(container)
        if not container then return end

        for _, v in pairs(container:GetChildren()) do
            if v:IsA("Tool") then
                local name = v.Name:lower()
                if name:find("knife") then return "Murderer" end
                if name:find("gun") then return "Sheriff" end
            end
        end
    end

    return check(plr.Character) or check(plr:FindFirstChild("Backpack")) or "Innocent"
end

--// ================= TARGET FINDER =================

local function getTarget()
    local closest = nil
    local shortest = math.huge

    if not player.Character or not player.Character:FindFirstChild("HumanoidRootPart") then
        return nil
    end

    local myRole = getRole(player)

    for _, plr in pairs(Players:GetPlayers()) do
        if plr ~= player and plr.Character and plr.Character:FindFirstChild("HumanoidRootPart") then
            
            local role = getRole(plr)
            local valid = false

            if AimMode == "Murderer" and role == "Murderer" then
                valid = true

            elseif AimMode == "Sheriff" and role == "Sheriff" then
                valid = true

            elseif AimMode == "Automatic" then
                if myRole == "Sheriff" and role == "Murderer" then
                    valid = true
                elseif myRole == "Murderer" then
                    valid = true
                end
            end

            if valid then
                local dist = (plr.Character.HumanoidRootPart.Position - player.Character.HumanoidRootPart.Position).Magnitude
                if dist < shortest then
                    shortest = dist
                    closest = plr
                end
            end
        end
    end

    return closest
end

--// ================= TRACK LOOP =================

RunService.RenderStepped:Connect(function()
    if not trackingEnabled then return end
    if not player.Character or not player.Character:FindFirstChild("HumanoidRootPart") then return end

    local target = getTarget()
    if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then
        
        local camPos = camera.CFrame.Position
        local targetPos = target.Character.HumanoidRootPart.Position

        -- ⚡ INSTANT TRACK
        camera.CFrame = CFrame.new(camPos, targetPos)
    end
end)

local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")

local player = Players.LocalPlayer

local CoinFarmEnabled = false
local TweenSpeed = 50


-- Toggle
Tab:Toggle({
    Title = "Coin Farm",
    Desc = "Tween to random coins",
    Icon = "coins",
    Type = "Checkbox",
    Value = false,

    Callback = function(state)
        CoinFarmEnabled = state
    end
})


-- Speed Slider
Tab:Slider({
    Title = "Coin Tween Speed",
    Desc = "Change how fast you move",
    Step = 1,

    Value = {
        Min = 10,
        Max = 200,
        Default = 50,
    },

    Callback = function(value)
        TweenSpeed = value
    end
})


-- Find coins
local function getCoins()
    local coins = {}

    for _, obj in pairs(workspace:GetDescendants()) do
        if obj:IsA("BasePart") then
            if obj.Name:lower():find("coin") then
                table.insert(coins, obj)
            end
        end
    end

    return coins
end


-- Tween player
local function tweenToCoin(coin)
    local character = player.Character
    if not character then return end

    local root = character:FindFirstChild("HumanoidRootPart")
    if not root then return end

    local distance = (root.Position - coin.Position).Magnitude
    local time = distance / TweenSpeed

    local tween = TweenService:Create(
        root,
        TweenInfo.new(
            time,
            Enum.EasingStyle.Linear
        ),
        {
            CFrame = coin.CFrame + Vector3.new(0, 3, 0)
        }
    )

    tween:Play()
    tween.Completed:Wait()
end


-- Farm loop
task.spawn(function()
    while true do
        if CoinFarmEnabled then

            local coins = getCoins()

            if #coins > 0 then
                local randomCoin = coins[math.random(1, #coins)]
                tweenToCoin(randomCoin)
            end
        end

        task.wait(0.2)
    end
end)

Features & Information

autidadfa
#test

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts