triggerbot
Key Required

triggerbot

[GUN-FFA] Da Strike [MOBILE MACRO]LilJohnLilJohn 7.2K views 748 executesUpdated Apr 19, 2025
1.7/ 5(3 votes)
1233% Positive
Lua Script•127 lines (5131 chars)
getgenv().Script = {
    TriggerBot = {
        Enabled = true,
        ClickDelay = 0,
    },
    FOV = {
            Circle = {
            Visible = true,
            Color = Color3.fromRGB(255, 255, 255),
            Transparency = 1,
            Thickness = 1.5,
            NumSides = 1000000,
            Radius = 20,
            Filled = false,
        },
    }
}


--> Services | Variables <--
local Workspace = Game:GetService("Workspace")
local RunService = Game:GetService("RunService")
local Players = Game:GetService("Players")
local VirtualInputManager = Game:GetService("VirtualInputManager")
local StarterGui = Game:GetService("StarterGui")

--> LocalPlayer | Variables <--
local player = Players.LocalPlayer
local playerCamera = Workspace.CurrentCamera

--> TargetedPlayer | Variables <--
local TargetedPlayer = nil

--> Script | Global Table <--


--> FOV Circle | Drawing <--
local FOVCircle = Drawing.new("Circle")
FOVCircle.Visible = Script.FOV.Circle.Visible
FOVCircle.Color = Script.FOV.Circle.Color
FOVCircle.Transparency = Script.FOV.Circle.Transparency
FOVCircle.Thickness = Script.FOV.Circle.Thickness
FOVCircle.NumSides = Script.FOV.Circle.NumSides
FOVCircle.Radius = Script.FOV.Circle.Radius
FOVCircle.Filled = Script.FOV.Circle.Filled
FOVCircle.Position = Vector2.new(playerCamera.ViewportSize.X / 2, playerCamera.ViewportSize.Y / 2)

--> Wall Check |  Function <--
local function WallCheck(Part)
    local Direction = (Part.Position - playerCamera.CFrame.Position).Unit * (Part.Position - playerCamera.CFrame.Position).Magnitude
    local NewRay = Ray.new(playerCamera.CFrame.Position, Direction)
    local Hit, Position = Workspace:FindPartOnRay(NewRay, playerCharacter, false, true)

    if Hit and Hit:IsDescendantOf(Part.Parent) and Part.Parent:IsA("Model") then
        return true
    end
    return false
end

--> Get Closest Player | Function <--
local function GetClosestPlayer()
    local ClosestPlayer = nil
    local ShortestDistance = math.huge

    for _, Player in ipairs(Players:GetPlayers()) do
        if Player ~= player and Player.Character then
            for _, PlayerPart in ipairs(Player.Character:GetChildren()) do
                if PlayerPart:IsA("BasePart") and PlayerPart.Transparency ~= 1 and WallCheck(PlayerPart) then
                    local ViewportPointPosition, OnScreen = playerCamera:WorldToViewportPoint(PlayerPart.Position)                   
                    
                    if OnScreen then
                        local MagnitudeDistance = (Vector2.new(ViewportPointPosition.X, ViewportPointPosition.Y) - FOVCircle.Position).Magnitude
                        
                        if (MagnitudeDistance < ShortestDistance) and MagnitudeDistance < FOVCircle.Radius then
                            ClosestPlayer = Player
                            ShortestDistance = MagnitudeDistance
                        end
                    end
                end
            end
        end
    end
    return ClosestPlayer
end

--> Trigger Bot | RenderStepped Function <--
RunService.RenderStepped:Connect(function()
    TargetedPlayer = GetClosestPlayer()
    if Script.TriggerBot.Enabled and TargetedPlayer and TargetedPlayer.Character and TargetedPlayer.Character:FindFirstChildOfClass("Humanoid").Health ~= 0 then
        task.wait(Script.TriggerBot.ClickDelay)
        for Index, BodyPart in ipairs(TargetedPlayer.Character:GetChildren()) do
            if BodyPart.Name == "Head" or 
               BodyPart.Name == "UpperTorso" or 
               BodyPart.Name == "LowerTorso" or 
               BodyPart.Name == "LeftUpperArm" or 
               BodyPart.Name == "LeftLowerArm" or 
               BodyPart.Name == "LeftHand" or 
               BodyPart.Name == "RightUpperArm" or 
               BodyPart.Name == "RightLowerArm" or 
               BodyPart.Name == "RightHand" or 
               BodyPart.Name == "LeftUpperLeg" or 
               BodyPart.Name == "LeftLowerLeg" or 
               BodyPart.Name == "LeftFoot" or 
               BodyPart.Name == "RightUpperLeg" or 
               BodyPart.Name == "RightLowerLeg" or 
               BodyPart.Name == "RightFoot" then
                local ViewportPointPosition, OnScreen = playerCamera:WorldToViewportPoint(BodyPart.Position)
                if OnScreen then
                    local MagnitudeDistance = (Vector2.new(ViewportPointPosition.X, ViewportPointPosition.Y) - FOVCircle.Position).Magnitude
                    if MagnitudeDistance <= FOVCircle.Radius then
                        VirtualInputManager:SendMouseButtonEvent(playerCamera.ViewportSize.X/2, playerCamera.ViewportSize.Y/2, 0, true, Game, 0)
                    end
                end
            end
        end
    end
end)


--> Trigger Bot | RenderStepped Function <--
RunService.RenderStepped:Connect(function()
     TargetedPlayer = GetClosestPlayer()
    if Script.TriggerBot.Enabled and TargetedPlayer then
        task.wait(Script.TriggerBot.ClickDelay)
        VirtualInputManager:SendMouseButtonEvent(playerCamera.ViewportSize.X/2, playerCamera.ViewportSize.Y/2, 0, true, Game, 0)
    end
end)

Features & Information

best triggerbot

Community Comments (3)

weedweedApr 19, 2025

garbage ai made script

LilJohnLilJohnApr 20, 2025

that's not my script tho, im just leaking

Replying to @LilJohn
SvsqidkSvsqidkNov 30, 2025

@LilJohn yo what happened to ego camlock ? It’s not letting me use it

More Scripts for [GUN-FFA] Da Strike [MOBILE MACRO]