KEMBAR78
Message | PDF | Typography | Graphic Design
0% found this document useful (0 votes)
11 views9 pages

Message

The document outlines a script for a Roblox game that implements features such as ESP (Extra Sensory Perception), Aimbot, and Fly Bypass. It includes a GUI for user controls, allowing players to toggle features, adjust settings like FOV size and smoothness, and manage hitbox sizes. The script also handles player input for movement and aimbot targeting, updating visuals based on player actions and game state.

Uploaded by

jaxdiehl2121
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views9 pages

Message

The document outlines a script for a Roblox game that implements features such as ESP (Extra Sensory Perception), Aimbot, and Fly Bypass. It includes a GUI for user controls, allowing players to toggle features, adjust settings like FOV size and smoothness, and manage hitbox sizes. The script also handles player input for movement and aimbot targeting, updating visuals based on player actions and game state.

Uploaded by

jaxdiehl2121
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 9

--// Services

local Players = game:GetService("Players")


local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local Workspace = game:GetService("Workspace")
local LocalPlayer = Players.LocalPlayer
local Camera = Workspace.CurrentCamera

--// Settings
local ESPEnabled = false
local AimbotEnabled = false
local BulletDropEnabled = false
local BulletDropStrength = 1.0
local AimbotFOV = 150
local AimbotSmoothness = 40 -- Increased for stronger aimbot, max 100 (closer to
snap)
local TargetPart = "Head"
local RightMouseHeld = false
local FOVColor = Color3.fromRGB(255, 255, 255)

local SpeedMultipliers = {1, 1.5, 2, 3}


local SpeedIndex = 1
local OriginalSpeed = 16
local CurrentSpeedMultiplier = SpeedMultipliers[SpeedIndex]

local FlyBypassEnabled = false


local FlySpeed = 50
local flyBodyVelocity = nil
local flyBodyGyro = nil

local HitboxExpanderEnabled = false


local HitboxExpanderSize = 6 -- Default size (approx full body size)

--// GUI Init


local screenGui = Instance.new("ScreenGui", LocalPlayer:WaitForChild("PlayerGui"))
screenGui.Name = "ESP_Aimbot_GUI"
screenGui.ResetOnSpawn = false

local frame = Instance.new("Frame", screenGui)


frame.Size = UDim2.new(0, 400, 0, 380) -- taller to fit new controls
frame.Position = UDim2.new(0, 50, 0.5, -190)
frame.BackgroundColor3 = Color3.fromRGB(25, 25, 25)
frame.BorderSizePixel = 0
frame.Active = true
frame.Draggable = true

local tabFrame = Instance.new("Frame", frame)


tabFrame.Size = UDim2.new(0, 100, 1, 0)
tabFrame.BackgroundColor3 = Color3.fromRGB(35, 35, 35)

local contentFrame = Instance.new("Frame", frame)


contentFrame.Position = UDim2.new(0, 100, 0, 0)
contentFrame.Size = UDim2.new(1, -100, 1, 0)
contentFrame.BackgroundColor3 = Color3.fromRGB(45, 45, 45)

local pages = {}
local function createPage(name)
local page = Instance.new("Frame", contentFrame)
page.Size = UDim2.new(1, 0, 1, 0)
page.BackgroundTransparency = 1
page.Visible = false
pages[name] = page
return page
end

local pageMain = createPage("Main")


local pageMisc = createPage("Misc")
local pageCredits = createPage("Credits")
pageMain.Visible = true

local function createTabButton(text, y)


local btn = Instance.new("TextButton", tabFrame)
btn.Text = text
btn.Position = UDim2.new(0, 0, 0, y)
btn.Size = UDim2.new(1, 0, 0, 35)
btn.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
btn.TextColor3 = Color3.new(1, 1, 1)
btn.Font = Enum.Font.Gotham
btn.TextSize = 16
btn.MouseButton1Click:Connect(function()
for _, v in pairs(pages) do v.Visible = false end
pages[text].Visible = true
end)
end

createTabButton("Main", 20)
createTabButton("Misc", 60)
createTabButton("Credits", 100)

--// GUI Controls


local function createToggle(parent, name, posY, default, callback)
local button = Instance.new("TextButton", parent)
button.Text = name .. ": " .. (default and "ON" or "OFF")
button.Position = UDim2.new(0, 10, 0, posY)
button.Size = UDim2.new(1, -20, 0, 30)
button.BackgroundColor3 = Color3.fromRGB(70, 70, 70)
button.TextColor3 = Color3.new(1,1,1)
button.Font = Enum.Font.Gotham
button.TextSize = 14
local state = default
button.MouseButton1Click:Connect(function()
state = not state
button.Text = name .. ": " .. (state and "ON" or "OFF")
callback(state)
end)
end

local function createSlider(parent, name, posY, min, max, default, callback)


local label = Instance.new("TextLabel", parent)
label.Text = name .. ": " .. tostring(default)
label.Position = UDim2.new(0, 10, 0, posY)
label.Size = UDim2.new(1, -20, 0, 20)
label.BackgroundTransparency = 1
label.TextColor3 = Color3.new(1,1,1)
label.Font = Enum.Font.Gotham
label.TextSize = 14

local slider = Instance.new("TextButton", parent)


slider.Position = UDim2.new(0, 10, 0, posY + 20)
slider.Size = UDim2.new(1, -20, 0, 20)
slider.BackgroundColor3 = Color3.fromRGB(90, 90, 90)
slider.Text = ""
slider.AutoButtonColor = false

local fill = Instance.new("Frame", slider)


fill.BackgroundColor3 = Color3.fromRGB(255, 255, 255)
fill.Size = UDim2.new((default - min) / (max - min), 0, 1, 0)
fill.BorderSizePixel = 0

local dragging = false


slider.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging
= true end
end)
slider.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging
= false end
end)
RunService.RenderStepped:Connect(function()
if dragging then
local pos = math.clamp((UserInputService:GetMouseLocation().X -
slider.AbsolutePosition.X) / slider.AbsoluteSize.X, 0, 1)
local val = math.floor((min + (max - min) * pos) * 10) / 10
fill.Size = UDim2.new(pos, 0, 1, 0)
label.Text = name .. ": " .. tostring(val)
callback(val)
end
end)
end

-- Main Page UI
createToggle(pageMain, "ESP", 10, false, function(v) ESPEnabled = v end)
createToggle(pageMain, "Aimbot", 50, false, function(v) AimbotEnabled = v end)
createSlider(pageMain, "FOV Size", 90, 80, 500, AimbotFOV, function(v) AimbotFOV =
v end)
createSlider(pageMain, "Smoothness", 140, 1, 100, AimbotSmoothness, function(v)
AimbotSmoothness = v end)
createToggle(pageMain, "Bullet Drop", 190, false, function(v) BulletDropEnabled = v
end)
createSlider(pageMain, "Drop Strength", 230, 0, 3, BulletDropStrength, function(v)
BulletDropStrength = v end)
createToggle(pageMain, "Hitbox Expander", 270, false, function(v)
HitboxExpanderEnabled = v end)
createSlider(pageMain, "Hitbox Size", 310, 2, 12, HitboxExpanderSize, function(v)
HitboxExpanderSize = v end)

-- Misc Page UI
local speedButton = Instance.new("TextButton", pageMisc)
speedButton.Text = "Speed: x" .. tostring(SpeedMultipliers[SpeedIndex])
speedButton.Position = UDim2.new(0, 10, 0, 10)
speedButton.Size = UDim2.new(1, -20, 0, 30)
speedButton.BackgroundColor3 = Color3.fromRGB(60, 60, 60)
speedButton.TextColor3 = Color3.new(1,1,1)
speedButton.Font = Enum.Font.Gotham
speedButton.TextSize = 14
speedButton.MouseButton1Click:Connect(function()
SpeedIndex = (SpeedIndex % #SpeedMultipliers) + 1
CurrentSpeedMultiplier = SpeedMultipliers[SpeedIndex]
speedButton.Text = "Speed: x" .. tostring(CurrentSpeedMultiplier)
end)

local colorButton = Instance.new("TextButton", pageMisc)


colorButton.Text = "Change FOV Color"
colorButton.Position = UDim2.new(0, 10, 0, 50)
colorButton.Size = UDim2.new(1, -20, 0, 30)
colorButton.BackgroundColor3 = Color3.fromRGB(80, 80, 80)
colorButton.TextColor3 = Color3.new(1,1,1)
colorButton.Font = Enum.Font.Gotham
colorButton.TextSize = 14
colorButton.MouseButton1Click:Connect(function()
FOVColor = Color3.fromRGB(math.random(0,255), math.random(0,255),
math.random(0,255))
end)

createToggle(pageMisc, "Fly Bypass", 90, false, function(v)


FlyBypassEnabled = v
if not v then
if flyBodyVelocity then
flyBodyVelocity:Destroy()
flyBodyVelocity = nil
end
if flyBodyGyro then
flyBodyGyro:Destroy()
flyBodyGyro = nil
end

local char = LocalPlayer.Character


if char then
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then
hum.PlatformStand = false
end
end
end
end)

-- Credits Page
local creditsLabel = Instance.new("TextLabel", pageCredits)
creditsLabel.Text = "Created by You"
creditsLabel.Size = UDim2.new(1, -20, 0, 30)
creditsLabel.Position = UDim2.new(0, 10, 0, 10)
creditsLabel.BackgroundTransparency = 1
creditsLabel.TextColor3 = Color3.new(1,1,1)
creditsLabel.Font = Enum.Font.Gotham
creditsLabel.TextSize = 16

-- Aimbot Input
UserInputService.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton2 then RightMouseHeld
= true end
end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton2 then RightMouseHeld
= false end
end)
-- Drawing
local fovCircle = Drawing.new("Circle")
fovCircle.Thickness = 1
fovCircle.NumSides = 64
fovCircle.Filled = false
fovCircle.Transparency = 1

local Boxes = {}
local HitboxExpanders = {}

local function getClosestTarget()


local closest, dist = nil, math.huge
for _, player in pairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character and
player.Character:FindFirstChild(TargetPart) then
local part = player.Character[TargetPart]
local pos, onScreen = Camera:WorldToViewportPoint(part.Position)
if onScreen then
local mouse = UserInputService:GetMouseLocation()
local d = (Vector2.new(pos.X, pos.Y) - mouse).Magnitude
if d < dist and d <= AimbotFOV then
dist = d
closest = part
end
end
end
end
return closest
end

-- Update Hitbox Expanders per player


local function updateHitboxExpander(player)
if not player.Character then return end
local head = player.Character:FindFirstChild("Head")
if not head then return end

if HitboxExpanders[player] and HitboxExpanders[player].Parent ~= head then


HitboxExpanders[player]:Destroy()
HitboxExpanders[player] = nil
end

if HitboxExpanderEnabled then
if not HitboxExpanders[player] then
local box = Instance.new("BoxHandleAdornment")
box.Adornee = head
box.AlwaysOnTop = true
box.ZIndex = 10
box.Transparency = 0.5
box.Color3 = Color3.fromRGB(255, 0, 0)
box.Size = Vector3.new(HitboxExpanderSize, HitboxExpanderSize,
HitboxExpanderSize)
box.Parent = head
HitboxExpanders[player] = box
else
HitboxExpanders[player].Size = Vector3.new(HitboxExpanderSize,
HitboxExpanderSize, HitboxExpanderSize)
end
else
if HitboxExpanders[player] then
HitboxExpanders[player]:Destroy()
HitboxExpanders[player] = nil
end
end
end

-- Fly Bypass movement keys


local flyMove = {
[Enum.KeyCode.W] = Vector3.new(0, 0, -1),
[Enum.KeyCode.S] = Vector3.new(0, 0, 1),
[Enum.KeyCode.A] = Vector3.new(-1, 0, 0),
[Enum.KeyCode.D] = Vector3.new(1, 0, 0),
[Enum.KeyCode.Space] = Vector3.new(0, 1, 0),
[Enum.KeyCode.LeftControl] = Vector3.new(0, -1, 0),
}

local keysPressed = {}

UserInputService.InputBegan:Connect(function(input)
if FlyBypassEnabled then
if flyMove[input.KeyCode] then
keysPressed[input.KeyCode] = true
end
end
end)

UserInputService.InputEnded:Connect(function(input)
if FlyBypassEnabled then
if flyMove[input.KeyCode] then
keysPressed[input.KeyCode] = nil
end
end
end)

RunService.RenderStepped:Connect(function(delta)
-- FOV Circle
fovCircle.Position = UserInputService:GetMouseLocation()
fovCircle.Radius = AimbotFOV
fovCircle.Color = FOVColor
fovCircle.Visible = AimbotEnabled

-- Speed
local char = LocalPlayer.Character
if char and char:FindFirstChildWhichIsA("Humanoid") then
local hum = char:FindFirstChildWhichIsA("Humanoid")
hum.WalkSpeed = OriginalSpeed * CurrentSpeedMultiplier
end

-- Aimbot
if AimbotEnabled and RightMouseHeld then
local target = getClosestTarget()
if target then
local predicted = target.Position
if BulletDropEnabled then
predicted = predicted + Vector3.new(0, -BulletDropStrength,
0)
end
local dir = (predicted - Camera.CFrame.Position).Unit
Camera.CFrame =
Camera.CFrame:Lerp(CFrame.new(Camera.CFrame.Position, Camera.CFrame.Position +
dir), AimbotSmoothness / 100)
end
end

-- ESP
for _, box in pairs(Boxes) do for _, v in pairs(box) do v.Visible = false end
end
for _, player in pairs(Players:GetPlayers()) do
if player ~= LocalPlayer and player.Character and
player.Character:FindFirstChild("HumanoidRootPart") then
local char = player.Character
local hrp = char:FindFirstChild("HumanoidRootPart")
local hum = char:FindFirstChildOfClass("Humanoid")
if hrp and hum and hum.Health > 0 then
local tl = Camera:WorldToViewportPoint(hrp.Position +
Vector3.new(-2, 3, 0))
local br = Camera:WorldToViewportPoint(hrp.Position +
Vector3.new(2, -3, 0))
if br.Z > 0 then
if not Boxes[player] then
Boxes[player] = {
Outline = Drawing.new("Square"),
Box = Drawing.new("Square"),
Health = Drawing.new("Line")
}
for _, obj in pairs(Boxes[player]) do
obj.Thickness = 1 obj.Visible = false end
Boxes[player].Outline.Color = Color3.new(0, 0,
0)
Boxes[player].Box.Color = Color3.new(1, 1, 1)
Boxes[player].Health.Color = Color3.new(0, 1,
0)
end
local box = Boxes[player]
local size = Vector2.new(math.abs(tl.X - br.X),
math.abs(tl.Y - br.Y))
local pos = Vector2.new(math.min(tl.X, br.X),
math.min(tl.Y, br.Y))
local hpRatio = hum.Health / hum.MaxHealth

box.Outline.Size = size + Vector2.new(2, 2)


box.Outline.Position = pos - Vector2.new(1, 1)
box.Outline.Visible = ESPEnabled

box.Box.Size = size
box.Box.Position = pos
box.Box.Visible = ESPEnabled

box.Health.From = Vector2.new(pos.X - 5, pos.Y +


size.Y)
box.Health.To = Vector2.new(pos.X - 5, pos.Y + size.Y
* (1 - hpRatio))
box.Health.Visible = ESPEnabled
end
end

-- Update hitbox expander for player


updateHitboxExpander(player)
end
end

-- Fly Bypass movement


if FlyBypassEnabled then
local char = LocalPlayer.Character
if char and char:FindFirstChild("HumanoidRootPart") then
local hrp = char.HumanoidRootPart
local hum = char:FindFirstChildOfClass("Humanoid")
if not flyBodyVelocity then
flyBodyVelocity = Instance.new("BodyVelocity")
flyBodyVelocity.MaxForce = Vector3.new(1e5, 1e5, 1e5)
flyBodyVelocity.Velocity = Vector3.new(0, 0, 0)
flyBodyVelocity.Parent = hrp

flyBodyGyro = Instance.new("BodyGyro")
flyBodyGyro.MaxTorque = Vector3.new(1e5, 1e5, 1e5)
flyBodyGyro.CFrame = hrp.CFrame
flyBodyGyro.Parent = hrp
end

-- Calculate move direction relative to camera look


local moveDir = Vector3.new(0,0,0)
for key,_ in pairs(keysPressed) do
moveDir = moveDir + flyMove[key]
end

local camCF = Camera.CFrame


local lookVector = camCF.LookVector
local rightVector = camCF.RightVector
local upVector = Vector3.new(0,1,0)

local velocity = Vector3.new(0,0,0)


if moveDir.Magnitude > 0 then
moveDir = moveDir.Unit
velocity = (rightVector * moveDir.X + upVector * moveDir.Y
+ lookVector * moveDir.Z) * FlySpeed
end

flyBodyVelocity.Velocity = velocity
flyBodyGyro.CFrame = CFrame.new(hrp.Position, hrp.Position +
camCF.LookVector)
if hum then
hum.PlatformStand = true
end
else
if flyBodyVelocity then
flyBodyVelocity:Destroy()
flyBodyVelocity = nil
end
if flyBodyGyro then
flyBodyGyro:Destroy()
flyBodyGyro = nil
end
end
else
local char = LocalPlayer.Character
if char then
local hum = char:FindFirstChildOfClass("Humanoid")
if hum and hum.PlatformStand then
hum.PlatformStand = false
end
end
if flyBodyVelocity then
flyBodyVelocity:Destroy()
flyBodyVelocity = nil
end
if flyBodyGyro then
flyBodyGyro:Destroy()
flyBodyGyro = nil
end
end
end)

You might also like