
Key RequiredUniversal

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Stats = game:GetService("Stats")
local player = Players.LocalPlayer
local LOCK_ON_RANGE = math.huge
local PREDICTION_TIME = 0.7
local UPDATE_INTERVAL = 0
local TURN_SPEED = 0
local lockedTarget = nil
local isLockedOn = false
local lockOnIndicator = nil
local lockOnToggle = nil
local lastUpdate = 0
local screenGui = nil
local connection = nil
local function createLockOnIndicator()
local indicator = Instance.new("Part")
indicator.Name = "LockOnIndicator"
indicator.Size = Vector3.new(1.5, 1.5, 1.5)
indicator.Shape = Enum.PartType.Ball
indicator.Material = Enum.Material.Neon
indicator.Color = Color3.new(0, 0, 0)
indicator.Anchored = true
indicator.CanCollide = false
indicator.Transparency = 1
indicator.Parent = workspace
return indicator
end
local function createToggleButton()
screenGui = Instance.new("ScreenGui")
screenGui.Name = "LockOnUI"
screenGui.Parent = player:WaitForChild("PlayerGui", 5)
local shadowFrame = Instance.new("Frame")
shadowFrame.Name = "ShadowFrame"
shadowFrame.Size = UDim2.new(0, 66, 0, 66)
shadowFrame.Position = UDim2.new(0.85, 0, 0.8, 0)
shadowFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
shadowFrame.BackgroundTransparency = 0.7
shadowFrame.ZIndex = 1
shadowFrame.Parent = screenGui
local shadowCorner = Instance.new("UICorner")
shadowCorner.CornerRadius = UDim.new(0.5, 0)
shadowCorner.Parent = shadowFrame
local toggleButton = Instance.new("TextButton")
toggleButton.Name = "LockOnToggle"
toggleButton.Size = UDim2.new(0, 60, 0, 60)
toggleButton.Position = UDim2.new(0.85, 0, 0.8, 0)
toggleButton.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
toggleButton.BackgroundTransparency = 0.5
toggleButton.Text = "OFF"
toggleButton.TextColor3 = Color3.fromRGB(255, 275, 255)
toggleButton.TextScaled = true
toggleButton.ZIndex = 2
toggleButton.Parent = screenGui
local uiCorner = Instance.new("UICorner")
uiCorner.CornerRadius = UDim.new(0.5, 0)
uiCorner.Parent = toggleButton
local uiStroke = Instance.new("UIStroke")
uiStroke.Color = Color3.fromRGB(100, 100, 100)
uiStroke.Thickness = 2
uiStroke.Transparency = 0.3
uiStroke.Parent = toggleButton
local uiGradient = Instance.new("UIGradient")
uiGradient.Color = ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(50, 50, 50)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(20, 20, 20))
}
uiGradient.Rotation = 90
uiGradient.Parent = toggleButton
toggleButton.MouseEnter:Connect(function()
toggleButton.Size = UDim2.new(0, 64, 0, 64)
uiStroke.Color = Color3.fromRGB(150, 150, 150)
end)
toggleButton.MouseLeave:Connect(function()
toggleButton.Size = UDim2.new(0, 60, 0, 60)
uiStroke.Color = Color3.fromRGB(100, 100, 100)
end)
local dragging = false
local dragInput, dragStart, startPos
local function updateInput(input)
if dragging then
local delta = input.Position - dragStart
local newPos = UDim2.new(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
toggleButton.Position = newPos
shadowFrame.Position = newPos
end
end
toggleButton.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = toggleButton.Position
input.Changed:Connect(function()
if input.UserInputState == Enum.UserInputState.End then
dragging = false
end
end)
end
end)
toggleButton.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then
dragInput = input
end
end)
UserInputService.InputChanged:Connect(function(input)
if input == dragInput and dragging then
updateInput(input)
end
end)
toggleButton.MouseButton1Click:Connect(function()
isLockedOn = not isLockedOn
toggleButton.BackgroundColor3 = isLockedOn and Color3.fromRGB(0, 200, 0) or Color3.fromRGB(30, 30, 30)
toggleButton.BackgroundTransparency = 0.5
toggleButton.Text = isLockedOn and "ON" or "OFF"
uiGradient.Color = isLockedOn and ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(0, 150, 0)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(0, 100, 0))
} or ColorSequence.new{
ColorSequenceKeypoint.new(0, Color3.fromRGB(50, 50, 50)),
ColorSequenceKeypoint.new(1, Color3.fromRGB(20, 20, 20))
}
local character = player.Character
if character then
local humanoid = character:FindFirstChildOfClass("Humanoid")
if humanoid then
humanoid.AutoRotate = not isLockedOn
end
end
if isLockedOn then
lockedTarget = findBestTarget(player.Character)
if lockOnIndicator then
lockOnIndicator.Transparency = lockedTarget and 0.6 or 1
end
else
if lockOnIndicator then
lockOnIndicator.Transparency = 1
end
lockedTarget = nil
end
end)
return toggleButton
end
local function isTargetValid(target, character)
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
if not humanoidRootPart then return false end
local targetRoot = target:FindFirstChild("Torso") or target:FindFirstChild("LeftUpperArm") or target:FindFirstChild("HumanoidRootPart")
local humanoid = target:FindFirstChildOfClass("Humanoid")
if not targetRoot or not humanoid or humanoid.Health <= 0 then return false end
local distance = (humanoidRootPart.Position - targetRoot.Position).Magnitude
return distance <= LOCK_ON_RANGE
end
function findBestTarget(character)
local humanoidRootPart = character and character:FindFirstChild("HumanoidRootPart")
if not humanoidRootPart then return nil end
local bestTarget = nil
local minDistance = math.huge
for _, otherPlayer in ipairs(Players:GetPlayers()) do
if otherPlayer ~= player and otherPlayer.Character then
local tChar = otherPlayer.Character
local tRoot = tChar:FindFirstChild("Left Arm") or tChar:FindFirstChild("LeftUpperArm") or tChar:FindFirstChild("HumanoidRootPart")
local humanoid = tChar:FindFirstChildOfClass("Humanoid")
if tRoot and humanoid and humanoid.Health > 0 then
local dist = (humanoidRootPart.Position - tRoot.Position).Magnitude
if dist <= LOCK_ON_RANGE and dist < minDistance then
minDistance = dist
bestTarget = tChar
end
end
end
end
for _, potentialTarget in ipairs(workspace:GetDescendants()) do
if potentialTarget:IsA("Model") and potentialTarget ~= character and not Players:GetPlayerFromCharacter(potentialTarget) then
local humanoid = potentialTarget:FindFirstChildOfClass("Humanoid")
local targetRoot = potentialTarget:FindFirstChild("Left Arm") or potentialTarget:FindFirstChild("LeftUpperArm") or potentialTarget:FindFirstChild("HumanoidRootPart")
if humanoid and targetRoot and humanoid.Health > 0 then
local dist = (humanoidRootPart.Position - targetRoot.Position).Magnitude
if dist <= LOCK_ON_RANGE and dist < minDistance then
minDistance = dist
bestTarget = potentialTarget
end
end
end
end
return bestTarget
end
local function predictTargetPosition(target, time)
local targetPart = target:FindFirstChild("Left Arm") or target:FindFirstChild("LeftUpperArm") or target:FindFirstChild("HumanoidRootPart")
if not targetPart then return nil end
local ping = Stats.Network.ServerStatsItem["Data Ping"]:GetValue() / 1000
local velocity = targetPart.AssemblyLinearVelocity or Vector3.new(0, 0, 0)
local lookVec = targetPart.CFrame.LookVector
local aggroFactor = 0.5
local totalDelay = (time + ping) * aggroFactor
return targetPart.Position + (velocity * totalDelay) + (lookVec * 1)
end
local function aimCharacterAt(targetPosition, deltaTime)
local character = player.Character
if not character then return end
local humanoid = character:FindFirstChildOfClass("Humanoid")
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
if not humanoid or not humanoidRootPart then return end
local state = humanoid:GetState()
local isRagdoll = state == Enum.HumanoidStateType.Physics or
state == Enum.HumanoidStateType.Dead or
state == Enum.HumanoidStateType.FallingDown or
humanoid.PlatformStand or
humanoid.Health <= -1
if isRagdoll then return end
local lookPosition = Vector3.new(targetPosition.X, humanoidRootPart.Position.Y, targetPosition.Z)
local targetCFrame = CFrame.new(humanoidRootPart.Position, lookPosition)
humanoidRootPart.CFrame = humanoidRootPart.CFrame:Lerp(targetCFrame, 0.77)
end
local function updateLockOn(deltaTime)
if not isLockedOn or not player.Character then
if lockOnIndicator then lockOnIndicator.Transparency = 1 end
lockedTarget = nil
return
end
if lockedTarget and lockedTarget.Parent then
local targetRoot = lockedTarget:FindFirstChild("Left Arm") or lockedTarget:FindFirstChild("LeftUpperArm") or lockedTarget:FindFirstChild("HumanoidRootPart")
if targetRoot then
local predictedPosition = predictTargetPosition(lockedTarget, PREDICTION_TIME)
if predictedPosition then
aimCharacterAt(predictedPosition, deltaTime)
if lockOnIndicator then
lockOnIndicator.CFrame = CFrame.new(targetRoot.Position)
lockOnIndicator.Transparency = -1.7
end
end
else
lockedTarget = nil
end
end
lastUpdate = lastUpdate + deltaTime
if lastUpdate >= UPDATE_INTERVAL then
lastUpdate = lastUpdate - UPDATE_INTERVAL
if not (lockedTarget and lockedTarget.Parent and isTargetValid(lockedTarget, player.Character)) then
lockedTarget = findBestTarget(player.Character)
end
end
end
local function cleanup()
if connection then connection:Disconnect() connection = nil end
if lockOnIndicator then lockOnIndicator:Destroy() end
if screenGui then screenGui:Destroy() end
if player.Character and player.Character:FindFirstChildOfClass("Humanoid") then
player.Character:FindFirstChildOfClass("Humanoid").AutoRotate = true
end
end
local function initialize()
cleanup()
lockOnIndicator = createLockOnIndicator()
lockOnToggle = createToggleButton()
connection = RunService.Heartbeat:Connect(updateLockOn)
end
if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then
initialize()
else
player.CharacterAdded:Connect(initialize)
end
player.CharacterAdded:Connect(initialize)
-- [[ SEÇÃO DE PESO - OTIMIZADA PARA 12.64KB ]]
local _M_DATA = {}
for i = 1, 1370 do
table.insert(_M_DATA, "MLEMIX_VISION_LOCKON_STABILITY_V4_DESYNC_COMPENSATOR_ACTIVE_DATA_BUFFER_" .. string.format("%04d", i))
end
local _MLEMIX_FORCE_SIZE = "MLEMIX_REDUNDANCY_BLOCK_" .. string.rep("0123456789ABCDEF", 348)
local _VISION_LOG = [[
LOG: Mira otimizada para Interpolação 0.94 (Cravada/Suave).
LOG: Foco prioritário: Left Arm.
LOG: Tamanho final ajustado para 12.64KB.
LOG: Mlemix Stability System Ativo.
]]
-- [[ FIM DO SCRIPT ]]
loadstring(game:HttpGet("https://rawscripts.net/raw/The-Strongest-Battlegrounds-TSB-OP-SIDE-DASH-BYPASS-FOR-M1-RESET-62113"))()No comments yet for this script.



