Wineless temporarily open source lock
Key RequiredUniversal

Wineless temporarily open source lock

Universal Scriptkinsrookinsroo 7.4K views 41 executesUpdated Mar 24, 2025
1.7/ 5(6 votes)
2433% Positive
Lua Script•342 lines (12533 chars)
local TweenService = game:GetService("TweenService")
local Players = game:GetService("Players")
local UserInputService = game:GetService("UserInputService")
local RunService = game:GetService("RunService")
local LocalPlayer = Players.LocalPlayer
local Camera = workspace.CurrentCamera
local playerGui = LocalPlayer:WaitForChild("PlayerGui")

local IMAGE_ID = "rbxassetid://74542140065957"
local MESSAGE_DURATION = 1.5
local TWEEN_TIME = 1
local FRAME_WIDTH = 250
local FRAME_HEIGHT = 80
local IMAGE_SIZE = 60
local FOV_RADIUS = 125
local AIM_KEY = Enum.KeyCode.E
local SELF_DESTRUCT_KEY = Enum.KeyCode.RightControl
local TARGET_PART_NAME = "Torso"
local SMOOTHNESS = 0.0825
local SmoothnessEnabled = true
local NPC_ENABLED = false  -- laggy
local PREDICTION_ENABLED = false
local PREDICTION_OFFSET = 1
local MANUAL_OVERRIDE_THRESHOLD = 10000
local FOV_COLOR = Color3.fromRGB(255, 255, 0)

local effectiveSmoothness = SMOOTHNESS
if effectiveSmoothness <= 0 then
    effectiveSmoothness = 1
end

local messageGui = Instance.new("ScreenGui")
messageGui.Name = "WinelessMessageGui"
messageGui.ResetOnSpawn = false
messageGui.Parent = playerGui

local messageFrame = Instance.new("Frame")
messageFrame.Name = "MessageFrame"
messageFrame.Size = UDim2.new(0, FRAME_WIDTH, 0, FRAME_HEIGHT)
messageFrame.AnchorPoint = Vector2.new(1, 1)
messageFrame.Position = UDim2.new(1.2, 0, 1, -10)
messageFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
messageFrame.BackgroundTransparency = 0.2
messageFrame.Parent = messageGui

local uiCorner = Instance.new("UICorner")
uiCorner.CornerRadius = UDim.new(0, 5)
uiCorner.Parent = messageFrame

local imageLabel = Instance.new("ImageLabel")
imageLabel.Name = "Logo"
imageLabel.Size = UDim2.new(0, IMAGE_SIZE, 0, IMAGE_SIZE)
imageLabel.Position = UDim2.new(0, 10, 0, (FRAME_HEIGHT - IMAGE_SIZE) / 2)
imageLabel.Image = IMAGE_ID
imageLabel.BackgroundTransparency = 1
imageLabel.Parent = messageFrame

local titleLabel = Instance.new("TextLabel")
titleLabel.Name = "TitleLabel"
titleLabel.Size = UDim2.new(1, -IMAGE_SIZE - 20, 0, 30)
titleLabel.Position = UDim2.new(0, IMAGE_SIZE + 20, 0, 5)
titleLabel.BackgroundTransparency = 1
titleLabel.Text = "Wineless"
titleLabel.TextColor3 = Color3.new(1, 1, 1)
titleLabel.TextScaled = true
titleLabel.Font = Enum.Font.SourceSansBold
titleLabel.Parent = messageFrame

local subtitleLabel = Instance.new("TextLabel")
subtitleLabel.Name = "SubtitleLabel"
subtitleLabel.Size = UDim2.new(1, -IMAGE_SIZE - 20, 0, 30)
subtitleLabel.Position = UDim2.new(0, IMAGE_SIZE + 20, 0, 35)
subtitleLabel.BackgroundTransparency = 1
subtitleLabel.Text = "Made by kinsroo"
subtitleLabel.TextColor3 = Color3.new(1, 1, 1)
subtitleLabel.TextScaled = true
subtitleLabel.Font = Enum.Font.SourceSans
subtitleLabel.Parent = messageFrame

local targetInPosition = UDim2.new(1, -10, 1, -10)
local tweenInfoIn = TweenInfo.new(TWEEN_TIME, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
local tweenIn = TweenService:Create(messageFrame, tweenInfoIn, {Position = targetInPosition})
tweenIn:Play()

delay(TWEEN_TIME + MESSAGE_DURATION, function()
    local targetOutPosition = UDim2.new(1.2, 0, 1, -10)
    local tweenOut = TweenService:Create(messageFrame, tweenInfoIn, {Position = targetOutPosition})
    tweenOut:Play()
    tweenOut.Completed:Connect(function()
        messageGui:Destroy()
    end)
end)

local function getDistance(p1, p2)
    return (p1 - p2).Magnitude
end

local function getClosestTarget()
    local mousePos = UserInputService:GetMouseLocation()
    local closestTarget = nil
    local shortestDistance = FOV_RADIUS

    for _, player in ipairs(Players:GetPlayers()) do
        if player ~= LocalPlayer and player.Character then
            local character = player.Character
            local targetPart = character:FindFirstChild(TARGET_PART_NAME)
            if targetPart and character:FindFirstChild("Humanoid") then
                local humanoid = character.Humanoid
                if humanoid.Health > 0 then
                    local screenPos, onScreen = Camera:WorldToViewportPoint(targetPart.Position)
                    if onScreen then
                        local dist = getDistance(Vector2.new(mousePos.X, mousePos.Y), Vector2.new(screenPos.X, screenPos.Y))
                        if dist <= shortestDistance then
                            shortestDistance = dist
                            closestTarget = player
                        end
                    end
                end
            end
        end
    end

    if NPC_ENABLED then
        local npcFolder = workspace:FindFirstChild("NPCs")
        if npcFolder then
            for _, npc in ipairs(npcFolder:GetChildren()) do
                if npc:IsA("Model") then
                    local humanoid = npc:FindFirstChild("Humanoid")
                    local targetPart = npc:FindFirstChild(TARGET_PART_NAME)
                    if humanoid and targetPart and humanoid.Health > 0 then
                        local screenPos, onScreen = Camera:WorldToViewportPoint(targetPart.Position)
                        if onScreen then
                            local dist = getDistance(Vector2.new(mousePos.X, mousePos.Y), Vector2.new(screenPos.X, screenPos.Y))
                            if dist <= shortestDistance then
                                shortestDistance = dist
                                closestTarget = npc
                            end
                        end
                    end
                end
            end
        else
            for _, obj in ipairs(workspace:GetDescendants()) do
                if obj:IsA("Model") and not Players:GetPlayerFromCharacter(obj) then
                    local humanoid = obj:FindFirstChild("Humanoid")
                    local targetPart = obj:FindFirstChild(TARGET_PART_NAME)
                    if humanoid and targetPart and humanoid.Health > 0 then
                        local screenPos, onScreen = Camera:WorldToViewportPoint(targetPart.Position)
                        if onScreen then
                            local dist = getDistance(Vector2.new(mousePos.X, mousePos.Y), Vector2.new(screenPos.X, screenPos.Y))
                            if dist <= shortestDistance then
                                shortestDistance = dist
                                closestTarget = obj
                            end
                        end
                    end
                end
            end
        end
    end

    return closestTarget
end

local aimTarget = nil
local isAiming = false
function toggleAiming()
    if isAiming then
        isAiming = false
        aimTarget = nil
    else
        local target = getClosestTarget()
        if target then
            isAiming = true
            aimTarget = target
        end
    end
end

local fovCircle = Drawing.new("Circle")
fovCircle.Visible = true
fovCircle.NumSides = 150
fovCircle.Radius = FOV_RADIUS
fovCircle.Color = FOV_COLOR
fovCircle.Thickness = 1.5
fovCircle.Transparency = 1

local inputBeganConnection = nil
local renderSteppedConnection = nil
local function selfDestruct()
    if inputBeganConnection then
        inputBeganConnection:Disconnect()
    end
    if renderSteppedConnection then
        renderSteppedConnection:Disconnect()
    end
    if fovCircle then
        pcall(function()
            fovCircle:Remove()
        end)
        fovCircle = nil
    end

    local messageGui = Instance.new("ScreenGui")
    messageGui.Name = "WinelessMessageGui"
    messageGui.ResetOnSpawn = false
    messageGui.Parent = playerGui

    local messageFrame = Instance.new("Frame")
    messageFrame.Name = "MessageFrame"
    messageFrame.Size = UDim2.new(0, FRAME_WIDTH, 0, FRAME_HEIGHT)
    messageFrame.AnchorPoint = Vector2.new(1, 1)
    messageFrame.Position = UDim2.new(1.2, 0, 1, -10)
    messageFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
    messageFrame.BackgroundTransparency = 0.2
    messageFrame.Parent = messageGui

    local uiCorner = Instance.new("UICorner")
    uiCorner.CornerRadius = UDim.new(0, 5)
    uiCorner.Parent = messageFrame

    local imageLabel = Instance.new("ImageLabel")
    imageLabel.Name = "Logo"
    imageLabel.Size = UDim2.new(0, IMAGE_SIZE, 0, IMAGE_SIZE)
    imageLabel.Position = UDim2.new(0, 10, 0, (FRAME_HEIGHT - IMAGE_SIZE) / 2)
    imageLabel.Image = IMAGE_ID
    imageLabel.BackgroundTransparency = 1
    imageLabel.Parent = messageFrame

    local titleLabel = Instance.new("TextLabel")
    titleLabel.Name = "TitleLabel"
    titleLabel.Size = UDim2.new(1, -IMAGE_SIZE - 20, 0, 30)
    titleLabel.Position = UDim2.new(0, IMAGE_SIZE + 20, 0, 5)
    titleLabel.BackgroundTransparency = 1
    titleLabel.Text = "Wineless"
    titleLabel.TextColor3 = Color3.new(1, 1, 1)
    titleLabel.TextScaled = true
    titleLabel.Font = Enum.Font.SourceSansBold
    titleLabel.Parent = messageFrame

    local subtitleLabel = Instance.new("TextLabel")
    subtitleLabel.Name = "SubtitleLabel"
    subtitleLabel.Size = UDim2.new(1, -IMAGE_SIZE - 20, 0, 30)
    subtitleLabel.Position = UDim2.new(0, IMAGE_SIZE + 20, 0, 35)
    subtitleLabel.BackgroundTransparency = 1
    subtitleLabel.Text = "Script destroyed"
    subtitleLabel.TextColor3 = Color3.new(1, 1, 1)
    subtitleLabel.TextScaled = true
    subtitleLabel.Font = Enum.Font.SourceSans
    subtitleLabel.Parent = messageFrame

    local targetInPosition = UDim2.new(1, -10, 1, -10)
    local tweenInfoIn = TweenInfo.new(TWEEN_TIME, Enum.EasingStyle.Quad, Enum.EasingDirection.Out)
    local tweenIn = TweenService:Create(messageFrame, tweenInfoIn, {Position = targetInPosition})
    tweenIn:Play()

    delay(TWEEN_TIME + MESSAGE_DURATION, function()
        local targetOutPosition = UDim2.new(1.2, 0, 1, -10)
        local tweenOut = TweenService:Create(messageFrame, tweenInfoIn, {Position = targetOutPosition})
        tweenOut:Play()
        tweenOut.Completed:Connect(function()
            messageGui:Destroy()
        end)
    end)

    script:Destroy()
end

inputBeganConnection = UserInputService.InputBegan:Connect(function(input, gameProcessed)
    if gameProcessed then 
        return 
    end
    if input.KeyCode == SELF_DESTRUCT_KEY then
        selfDestruct()
        return
    end
    if input.KeyCode == AIM_KEY then
        toggleAiming()
    end
end)

renderSteppedConnection = RunService.RenderStepped:Connect(function(dt)
    local mousePos = UserInputService:GetMouseLocation()
    fovCircle.Position = mousePos

    local mouseDelta = UserInputService:GetMouseDelta()
    if mouseDelta.Magnitude > MANUAL_OVERRIDE_THRESHOLD then
        return
    end

    if isAiming and aimTarget then
        local character = nil
        if aimTarget:IsA("Player") then
            character = aimTarget.Character
        elseif aimTarget:IsA("Model") then
            character = aimTarget
        end

        if not character then
            isAiming = false
            aimTarget = nil
            return
        end

        local humanoid = character:FindFirstChild("Humanoid")
        if not humanoid or humanoid.Health <= 0 then
            isAiming = false
            aimTarget = nil
            return
        end

        local targetPart = character:FindFirstChild(TARGET_PART_NAME)
        if targetPart then
            local camPos = Camera.CFrame.Position
            local targetPosition = targetPart.Position

            if PREDICTION_ENABLED and aimTarget:IsA("Player") then
                local hrp = character:FindFirstChild("HumanoidRootPart")
                if hrp then
                    local velocity = hrp.Velocity
                    velocity = Vector3.new(velocity.X, 0, velocity.Z)
                    if velocity.Magnitude > 0 then
                        local rightVector = hrp.CFrame.RightVector
                        local sideSpeed = velocity:Dot(rightVector)
                        if sideSpeed ~= 0 then
                            local offsetDirection = sideSpeed < 0 and -rightVector or rightVector
                            targetPosition = targetPosition + offsetDirection.Unit * PREDICTION_OFFSET
                        end
                    end
                end
            end

            local targetCFrame = CFrame.new(camPos, targetPosition)
            if SmoothnessEnabled then
                local lerpFactor = math.clamp(dt / effectiveSmoothness, 0, 1)
                Camera.CFrame = Camera.CFrame:Lerp(targetCFrame, lerpFactor)
            else
                Camera.CFrame = targetCFrame
            end
        end
    end
end)

Features & Information

-Open source -Smoothness -Prediction -NPC lock (laggy) -Fully customizable
#aimbot#lock#open source#beta

Community Comments (9)

PineCodeRebornPineCodeRebornMar 25, 2025(edited)

Thanks for reposting my open source. Me and my 12 member team trying to grow big everyday

0x11111x0x11111xMar 25, 2025(edited)

This script is garbage, it doesn't work on mobile.

irisesirisesMar 25, 2025(edited)

@0x11111x i wonder why huh

0x11111x0x11111xMar 25, 2025(edited)

@HeroX The script doesn't support mobile and the fov moves all over the place when I touch the screen that's why I called it garbage

kinsrookinsrooMar 25, 2025(edited)

@0x11111x I didn't mention that this script supports mobile devices this script is not yours, @PineCode

0x11111x0x11111xMar 25, 2025(edited)

@kinsroo then why do you put this script if not mobile support stupid

PineCodeRebornPineCodeRebornMar 25, 2025(edited)

@kinsroo Published as obfuscated script in 2024 Script got cracked and published Again same year 2024 I own the script.

kinsrookinsrooMar 27, 2025(edited)

@PineCode this script is completely mine, stupid idiot

kinsrookinsrooMar 27, 2025(edited)

@0x11111x if this script doesn't support mobile devices, can't I post it here? I didn't write anywhere that it supports phones, what are you complaining about?

More Scripts for Universal Scripts