Description
--// DEV AIM + MOVEMENT + ESP TEST SCRIPT --// Use in YOUR OWN Roblox experience. --// Features: --// • Aim Assist --// • Player/NPC ESP --// • Health bars --// • WalkSpeed --// • Fly + Fly Speed --// • Test Infinite Ammo --// • Test Unlock All --// • Mobile-friendly UI local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UIS = game:GetService("UserInputService") local Workspace = game:GetService("Workspace") local LP = Players.LocalPlayer local Camera = Workspace.CurrentCamera local CFG = { AimAssist = false, ESP = false, InfiniteAmmo = false, UnlockAll = false, Fly = false, WalkSpeed = 16, FlySpeed = 60, AimFOV = 250, MaxDistance = 500 } --================================================== -- UI --================================================== local GUI = Instance.new("ScreenGui") GUI.Name = "DeveloperControl" GUI.ResetOnSpawn = false GUI.Parent = LP:WaitForChild("PlayerGui") local Main = Instance.new("Frame") Main.Size = UDim2.fromOffset(350, 520) Main.Position = UDim2.new(.5,-175,.5,-260) Main.BackgroundColor3 = Color3.fromRGB(12,12,18) Main.BorderSizePixel = 0 Main.Parent = GUI Instance.new("UICorner",Main).CornerRadius = UDim.new(0,18) local Stroke = Instance.new("UIStroke") Stroke.Color = Color3.fromRGB(90,90,120) Stroke.Thickness = 1 Stroke.Parent = Main local Header = Instance.new("TextLabel") Header.Size = UDim2.new(1,-20,0,55) Header.Position = UDim2.fromOffset(10,5) Header.BackgroundTransparency = 1 Header.Text = "⚡ DEVELOPER PANEL" Header.TextColor3 = Color3.new(1,1,1) Header.TextSize = 21 Header.Font = Enum.Font.GothamBold Header.Parent = Main local Sub = Instance.new("TextLabel") Sub.Size = UDim2.new(1,-20,0,25) Sub.Position = UDim2.fromOffset(10,43) Sub.BackgroundTransparency = 1 Sub.Text = "TEST / TRAINING CONTROLS" Sub.TextColor3 = Color3.fromRGB(150,150,170) Sub.TextSize = 11 Sub.Font = Enum.Font.Gotham Sub.Parent = Main local Scroll = Instance.new("ScrollingFrame") Scroll.Position = UDim2.fromOffset(10,75) Scroll.Size = UDim2.new(1,-20,1,-85) Scroll.BackgroundTransparency = 1 Scroll.BorderSizePixel = 0 Scroll.ScrollBarThickness = 3 Scroll.Parent = Main local List = Instance.new("UIListLayout") List.Padding = UDim.new(0,8) List.HorizontalAlignment = Enum.HorizontalAlignment.Center List.Parent = Scroll local function toggle(name, callback) local B = Instance.new("TextButton") B.Size = UDim2.new(1,-8,0,48) B.BackgroundColor3 = Color3.fromRGB(27,27,38) B.Text = "" B.AutoButtonColor = false B.Parent = Scroll Instance.new("UICorner",B).CornerRadius = UDim.new(0,12) local T = Instance.new("TextLabel") T.Size = UDim2.new(1,-80,1,0) T.Position = UDim2.fromOffset(15,0) T.BackgroundTransparency = 1 T.Text = name T.TextColor3 = Color3.new(1,1,1) T.TextSize = 14 T.Font = Enum.Font.GothamMedium T.TextXAlignment = Enum.TextXAlignment.Left T.Parent = B local State = Instance.new("TextLabel") State.Size = UDim2.fromOffset(55,28) State.Position = UDim2.new(1,-65,.5,-14) State.BackgroundColor3 = Color3.fromRGB(55,55,70) State.Text = "OFF" State.TextColor3 = Color3.fromRGB(180,180,190) State.TextSize = 11 State.Font = Enum.Font.GothamBold State.Parent = B Instance.new("UICorner",State).CornerRadius = UDim.new(0,9) local enabled = false B.MouseButton1Click:Connect(function() enabled = not enabled if enabled then State.Text = "ON" State.BackgroundColor3 = Color3.fromRGB(70,180,110) State.TextColor3 = Color3.new(1,1,1) else State.Text = "OFF" State.BackgroundColor3 = Color3.fromRGB(55,55,70) State.TextColor3 = Color3.fromRGB(180,180,190) end callback(enabled) end) end local function slider(name,min,max,value,callback) local F = Instance.new("Frame") F.Size = UDim2.new(1,-8,0,65) F.BackgroundColor3 = Color3.fromRGB(27,27,38) F.Parent = Scroll Instance.new("UICorner",F).CornerRadius = UDim.new(0,12) local L = Instance.new("TextLabel") L.Size = UDim2.new(1,-20,0,25) L.Position = UDim2.fromOffset(10,5) L.BackgroundTransparency = 1 L.Text = name.." : "..value L.TextColor3 = Color3.new(1,1,1) L.TextSize = 13 L.Font = Enum.Font.GothamMedium L.TextXAlignment = Enum.TextXAlignment.Left L.Parent = F local Bar = Instance.new("TextButton") Bar.Size = UDim2.new(1,-20,0,8) Bar.Position = UDim2.fromOffset(10,43) Bar.BackgroundColor3 = Color3.fromRGB(55,55,70) Bar.Text = "" Bar.Parent = F Instance.new("UICorner",Bar).CornerRadius = UDim.new(1,0) local Fill = Instance.new("Frame") Fill.Size = UDim2.new((value-min)/(max-min),0,1,0) Fill.BackgroundColor3 = Color3.fromRGB(105,90,255) Fill.BorderSizePixel = 0 Fill.Parent = Bar Instance.new("UICorner",Fill).CornerRadius = UDim.new(1,0) local dragging = false local function update(x) local p = math.clamp( (x-Bar.AbsolutePosition.X)/Bar.AbsoluteSize.X, 0,1 ) local v = math.floor(min+(max-min)*p) Fill.Size = UDim2.new(p,0,1,0) L.Text = name.." : "..v callback(v) end Bar.MouseButton1Down:Connect(function() dragging = true end) UIS.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end) UIS.InputChanged:Connect(function(input) if not dragging then return end if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then update(input.Position.X) end end) end --================================================== -- TARGET FINDER --================================================== local function GetTarget() local best = nil local bestDistance = CFG.AimFOV for _,player in ipairs(Players:GetPlayers()) do if player ~= LP then local char = player.Character local hum = char and char:FindFirstChildOfClass("Humanoid") local root = char and char:FindFirstChild("HumanoidRootPart") if hum and root and hum.Health > 0 then local distance = (root.Position-Camera.CFrame.Position).Magnitude if distance <= CFG.MaxDistance then local pos,visible = Camera:WorldToViewportPoint(root.Position) if visible then local center = Vector2.new( Camera.ViewportSize.X/2, Camera.ViewportSize.Y/2 ) local screenDistance = (Vector2.new(pos.X,pos.Y)-center).Magnitude if screenDistance < bestDistance then bestDistance = screenDistance best = root end end end end end end return best end --================================================== -- AIM ASSIST --================================================== RunService.RenderStepped:Connect(function() if not CFG.AimAssist then return end local target = GetTarget() if target then local desired = CFrame.lookAt( Camera.CFrame.Position, target.Position ) Camera.CFrame = Camera.CFrame:Lerp(desired,.12) end end) --================================================== -- ESP --================================================== local ESPObjects = {} local function RemoveESP(player) local data = ESPObjects[player] if data then if data.Highlight then data.Highlight:Destroy() end if data.Billboard then data.Billboard:Destroy() end ESPObjects[player] = nil end end local function CreateESP(player) if player == LP then return end local char = player.Character if not char then return end RemoveESP(player) local highlight = Instance.new("Highlight") highlight.Name = "DevESP" highlight.FillTransparency = .75 highlight.OutlineTransparency = 0 highlight.Parent = char local head = char:FindFirstChild("Head") local billboard if head then billboard = Instance.new("BillboardGui") billboard.Name = "DevHealth" billboard.Size = UDim2.fromOffset(130,35) billboard.StudsOffset = Vector3.new(0,3,0) billboard.AlwaysOnTop = true billboard.Parent = head local text = Instance.new("TextLabel") text.Size = UDim2.fromScale(1,1) text.BackgroundTransparency = 1 text.TextColor3 = Color3.new(1,1,1) text.TextStrokeTransparency = .3 text.TextSize = 13 text.Font = Enum.Font.GothamBold text.Parent = billboard local hum = char:FindFirstChildOfClass("Humanoid") if hum then local function update() if billboard.Parent then text.Text = player.DisplayName.. "\nHP "..math.floor(hum.Health).. "/"..math.floor(hum.MaxHealth) end end update() hum.HealthChanged:Connect(update) end end ESPObjects[player] = { Highlight = highlight, Billboard = billboard } end local function UpdateESP() for _,player in ipairs(Players:GetPlayers()) do if player ~= LP then if CFG.ESP then CreateESP(player)
Script source Luau
-- [[ BloxScripts Risk Notice ]]
-- This script has not been verified by BloxScripts.fun. Deal with caution.
--
-- Stay safe:
-- • Never log in on unofficial Roblox sites or lookalike domains.
-- • Real Roblox links use roblox.com (check the .com ending).
-- • Treat fake Roblox login / "claim reward" pages as phishing.
-- [[ End BloxScripts Risk Notice ]]
--// DEV AIM + MOVEMENT + ESP TEST SCRIPT
--// Use in YOUR OWN Roblox experience.
--// Features:
--// • Aim Assist
--// • Player/NPC ESP
--// • Health bars
--// • WalkSpeed
--// • Fly + Fly Speed
--// • Test Infinite Ammo
--// • Test Unlock All
--// • Mobile-friendly UI
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")
local Workspace = game:GetService("Workspace")
local LP = Players.LocalPlayer
local Camera = Workspace.CurrentCamera
local CFG = {
AimAssist = false,
ESP = false,
InfiniteAmmo = false,
UnlockAll = false,
Fly = false,
WalkSpeed = 16,
FlySpeed = 60,
AimFOV = 250,
MaxDistance = 500
}
--==================================================
-- UI
--==================================================
local GUI = Instance.new("ScreenGui")
GUI.Name = "DeveloperControl"
GUI.ResetOnSpawn = false
GUI.Parent = LP:WaitForChild("PlayerGui")
local Main = Instance.new("Frame")
Main.Size = UDim2.fromOffset(350, 520)
Main.Position = UDim2.new(.5,-175,.5,-260)
Main.BackgroundColor3 = Color3.fromRGB(12,12,18)
Main.BorderSizePixel = 0
Main.Parent = GUI
Instance.new("UICorner",Main).CornerRadius = UDim.new(0,18)
local Stroke = Instance.new("UIStroke")
Stroke.Color = Color3.fromRGB(90,90,120)
Stroke.Thickness = 1
Stroke.Parent = Main
local Header = Instance.new("TextLabel")
Header.Size = UDim2.new(1,-20,0,55)
Header.Position = UDim2.fromOffset(10,5)
Header.BackgroundTransparency = 1
Header.Text = "⚡ DEVELOPER PANEL"
Header.TextColor3 = Color3.new(1,1,1)
Header.TextSize = 21
Header.Font = Enum.Font.GothamBold
Header.Parent = Main
local Sub = Instance.new("TextLabel")
Sub.Size = UDim2.new(1,-20,0,25)
Sub.Position = UDim2.fromOffset(10,43)
Sub.BackgroundTransparency = 1
Sub.Text = "TEST / TRAINING CONTROLS"
Sub.TextColor3 = Color3.fromRGB(150,150,170)
Sub.TextSize = 11
Sub.Font = Enum.Font.Gotham
Sub.Parent = Main
local Scroll = Instance.new("ScrollingFrame")
Scroll.Position = UDim2.fromOffset(10,75)
Scroll.Size = UDim2.new(1,-20,1,-85)
Scroll.BackgroundTransparency = 1
Scroll.BorderSizePixel = 0
Scroll.ScrollBarThickness = 3
Scroll.Parent = Main
local List = Instance.new("UIListLayout")
List.Padding = UDim.new(0,8)
List.HorizontalAlignment = Enum.HorizontalAlignment.Center
List.Parent = Scroll
local function toggle(name, callback)
local B = Instance.new("TextButton")
B.Size = UDim2.new(1,-8,0,48)
B.BackgroundColor3 = Color3.fromRGB(27,27,38)
B.Text = ""
B.AutoButtonColor = false
B.Parent = Scroll
Instance.new("UICorner",B).CornerRadius = UDim.new(0,12)
local T = Instance.new("TextLabel")
T.Size = UDim2.new(1,-80,1,0)
T.Position = UDim2.fromOffset(15,0)
T.BackgroundTransparency = 1
T.Text = name
T.TextColor3 = Color3.new(1,1,1)
T.TextSize = 14
T.Font = Enum.Font.GothamMedium
T.TextXAlignment = Enum.TextXAlignment.Left
T.Parent = B
local State = Instance.new("TextLabel")
State.Size = UDim2.fromOffset(55,28)
State.Position = UDim2.new(1,-65,.5,-14)
State.BackgroundColor3 = Color3.fromRGB(55,55,70)
State.Text = "OFF"
State.TextColor3 = Color3.fromRGB(180,180,190)
State.TextSize = 11
State.Font = Enum.Font.GothamBold
State.Parent = B
Instance.new("UICorner",State).CornerRadius = UDim.new(0,9)
local enabled = false
B.MouseButton1Click:Connect(function()
enabled = not enabled
if enabled then
State.Text = "ON"
State.BackgroundColor3 = Color3.fromRGB(70,180,110)
State.TextColor3 = Color3.new(1,1,1)
else
State.Text = "OFF"
State.BackgroundColor3 = Color3.fromRGB(55,55,70)
State.TextColor3 = Color3.fromRGB(180,180,190)
end
callback(enabled)
end)
end
local function slider(name,min,max,value,callback)
local F = Instance.new("Frame")
F.Size = UDim2.new(1,-8,0,65)
F.BackgroundColor3 = Color3.fromRGB(27,27,38)
F.Parent = Scroll
Instance.new("UICorner",F).CornerRadius = UDim.new(0,12)
local L = Instance.new("TextLabel")
L.Size = UDim2.new(1,-20,0,25)
L.Position = UDim2.fromOffset(10,5)
L.BackgroundTransparency = 1
L.Text = name.." : "..value
L.TextColor3 = Color3.new(1,1,1)
L.TextSize = 13
L.Font = Enum.Font.GothamMedium
L.TextXAlignment = Enum.TextXAlignment.Left
L.Parent = F
local Bar = Instance.new("TextButton")
Bar.Size = UDim2.new(1,-20,0,8)
Bar.Position = UDim2.fromOffset(10,43)
Bar.BackgroundColor3 = Color3.fromRGB(55,55,70)
Bar.Text = ""
Bar.Parent = F
Instance.new("UICorner",Bar).CornerRadius = UDim.new(1,0)
local Fill = Instance.new("Frame")
Fill.Size = UDim2.new((value-min)/(max-min),0,1,0)
Fill.BackgroundColor3 = Color3.fromRGB(105,90,255)
Fill.BorderSizePixel = 0
Fill.Parent = Bar
Instance.new("UICorner",Fill).CornerRadius = UDim.new(1,0)
local dragging = false
local function update(x)
local p = math.clamp(
(x-Bar.AbsolutePosition.X)/Bar.AbsoluteSize.X,
0,1
)
local v = math.floor(min+(max-min)*p)
Fill.Size = UDim2.new(p,0,1,0)
L.Text = name.." : "..v
callback(v)
end
Bar.MouseButton1Down:Connect(function()
dragging = true
end)
UIS.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = false
end
end)
UIS.InputChanged:Connect(function(input)
if not dragging then return end
if input.UserInputType == Enum.UserInputType.MouseMovement
or input.UserInputType == Enum.UserInputType.Touch then
update(input.Position.X)
end
end)
end
--==================================================
-- TARGET FINDER
--==================================================
local function GetTarget()
local best = nil
local bestDistance = CFG.AimFOV
for _,player in ipairs(Players:GetPlayers()) do
if player ~= LP then
local char = player.Character
local hum = char and char:FindFirstChildOfClass("Humanoid")
local root = char and char:FindFirstChild("HumanoidRootPart")
if hum and root and hum.Health > 0 then
local distance =
(root.Position-Camera.CFrame.Position).Magnitude
if distance <= CFG.MaxDistance then
local pos,visible =
Camera:WorldToViewportPoint(root.Position)
if visible then
local center =
Vector2.new(
Camera.ViewportSize.X/2,
Camera.ViewportSize.Y/2
)
local screenDistance =
(Vector2.new(pos.X,pos.Y)-center).Magnitude
if screenDistance < bestDistance then
bestDistance = screenDistance
best = root
end
end
end
end
end
end
return best
end
--==================================================
-- AIM ASSIST
--==================================================
RunService.RenderStepped:Connect(function()
if not CFG.AimAssist then return end
local target = GetTarget()
if target then
local desired =
CFrame.lookAt(
Camera.CFrame.Position,
target.Position
)
Camera.CFrame =
Camera.CFrame:Lerp(desired,.12)
end
end)
--==================================================
-- ESP
--==================================================
local ESPObjects = {}
local function RemoveESP(player)
local data = ESPObjects[player]
if data then
if data.Highlight then data.Highlight:Destroy() end
if data.Billboard then data.Billboard:Destroy() end
ESPObjects[player] = nil
end
end
local function CreateESP(player)
if player == LP then return end
local char = player.Character
if not char then return end
RemoveESP(player)
local highlight = Instance.new("Highlight")
highlight.Name = "DevESP"
highlight.FillTransparency = .75
highlight.OutlineTransparency = 0
highlight.Parent = char
local head = char:FindFirstChild("Head")
local billboard
if head then
billboard = Instance.new("BillboardGui")
billboard.Name = "DevHealth"
billboard.Size = UDim2.fromOffset(130,35)
billboard.StudsOffset = Vector3.new(0,3,0)
billboard.AlwaysOnTop = true
billboard.Parent = head
local text = Instance.new("TextLabel")
text.Size = UDim2.fromScale(1,1)
text.BackgroundTransparency = 1
text.TextColor3 = Color3.new(1,1,1)
text.TextStrokeTransparency = .3
text.TextSize = 13
text.Font = Enum.Font.GothamBold
text.Parent = billboard
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then
local function update()
if billboard.Parent then
text.Text =
player.DisplayName..
"\nHP "..math.floor(hum.Health)..
"/"..math.floor(hum.MaxHealth)
end
end
update()
hum.HealthChanged:Connect(update)
end
end
ESPObjects[player] = {
Highlight = highlight,
Billboard = billboard
}
end
local function UpdateESP()
for _,player in ipairs(Players:GetPlayers()) do
if player ~= LP then
if CFG.ESP then
CreateESP(player)
else
RemoveESP(player)
end
end
end
end
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function()
task.wait(1)
if CFG.ESP then
CreateESP(player)
end
end)
end)
Players.PlayerRemoving:Connect(RemoveESP)
--==================================================
-- MOVEMENT
--==================================================
local function ApplySpeed()
local char = LP.Character
if not char then return end
local hum = char:FindFirstChildOfClass("Humanoid")
if hum then
hum.WalkSpeed = CFG.WalkSpeed
end
end
LP.CharacterAdded:Connect(function()
task.wait(.5)
ApplySpeed()
end)
--==================================================
-- FLY
--==================================================
local FlyConnection
local function StartFly()
if FlyConnection then
FlyConnection:Disconnect()
end
FlyConnection = RunService.RenderStepped:Connect(function()
if not CFG.Fly then return end
local char = LP.Character
if not char then return end
local root = char:FindFirstChild("HumanoidRootPart")
if not root then return end
local direction = Vector3.zero
if UIS:IsKeyDown(Enum.KeyCode.W) then
direction += Camera.CFrame.LookVector
end
if UIS:IsKeyDown(Enum.KeyCode.S) then
direction -= Camera.CFrame.LookVector
end
if UIS:IsKeyDown(Enum.KeyCode.A) then
direction -= Camera.CFrame.RightVector
end
if UIS:IsKeyDown(Enum.KeyCode.D) then
direction += Camera.CFrame.RightVector
end
if UIS:IsKeyDown(Enum.KeyCode.Space) then
direction += Vector3.yAxis
end
if UIS:IsKeyDown(Enum.KeyCode.LeftControl) then
direction -= Vector3.yAxis
end
if direction.Magnitude > 0 then
root.AssemblyLinearVelocity =
direction.Unit * CFG.FlySpeed
else
root.AssemblyLinearVelocity = Vector3.zero
end
end)
end
StartFly()
--==================================================
-- BUTTONS
--==================================================
toggle("🎯 AIM ASSIST",function(v)
CFG.AimAssist = v
end)
toggle("👁 PLAYER ESP + HEALTH",function(v)
CFG.ESP = v
UpdateESP()
end)
toggle("🔫 INFINITE AMMO (DEV)",function(v)
CFG.InfiniteAmmo = v
-- Connect your own weapon's ammo system here.
-- Example:
-- YourWeapon:SetAttribute("Ammo",999999)
end)
toggle("🔓 UNLOCK ALL (DEV)",function(v)
CFG.UnlockAll = v
-- Connect this to your OWN inventory system.
-- Example:
-- Inventory:SetAttribute("AllWeaponsUnlocked",v)
end)
toggle("🪽 FLY",function(v)
CFG.Fly = v
if not v then
local char = LP.Character
local root = char and char:FindFirstChild("HumanoidRootPart")
if root then
root.AssemblyLinearVelocity = Vector3.zero
end
end
end)
slider("🏃 WALK SPEED",16,150,16,function(v)
CFG.WalkSpeed = v
ApplySpeed()
end)
slider("🪽 FLY SPEED",20,250,60,function(v)
CFG.FlySpeed = v
end)
slider("🎯 AIM FOV",50,600,250,function(v)
CFG.AimFOV = v
end)
--==================================================
-- DRAGGABLE WINDOW
--==================================================
local dragging = false
local dragStart
local startPos
Header.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = Main.Position
end
end)
UIS.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1
or input.UserInputType == Enum.UserInputType.Touch then
dragging = false
end
end)
UIS.InputChanged:Connect(function(input)
if not dragging then return end
if input.UserInputType == Enum.UserInputType.MouseMovement
or input.UserInputType == Enum.UserInputType.Touch then
local delta = input.Position-dragStart
Main.Position =
UDim2.new(
startPos.X.Scale,
startPos.X.Offset+delta.X,
startPos.Y.Scale,
startPos.Y.Offset+delta.Y
)
end
end)
--==================================================
-- RESIZE / CANVAS
--==================================================
task.spawn(function()
while task.wait(.2) do
Scroll.CanvasSize =
UDim2.fromOffset(
0,
List.AbsoluteContentSize.Y+20
)
end
end)
print("DEV CONTROL PANEL LOADED")Review the source before using it. Executions count successful copies, capped at 10 per user and network per script in 24 hours.


Your community, in one place