0% found this document useful (0 votes)
33 views9 pages

--

This document contains code for a rewritten aimbot script in Roblox. It allows for settings like prediction, field of view, and notifications. The script tracks the closest player, predicts their movement, and fires simulated shots on their position to lock onto them. It includes logic for airshot prediction and handling anchored players.

Uploaded by

isgoodkatana
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)
33 views9 pages

--

This document contains code for a rewritten aimbot script in Roblox. It allows for settings like prediction, field of view, and notifications. The script tracks the closest player, predicts their movement, and fires simulated shots on their position to lock onto them. It includes logic for airshot prediction and handling anchored players.

Uploaded by

isgoodkatana
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

--]]

--dont mess with he settings unless u know what ur doing (1y#0002)

local Settings = {
rewrittenmain = {
Enabled = true,
Key = "q",
DOT = true,
AIRSHOT = true,
NOTIF = true,
AUTOPRED = true,
FOV = math.huge,
RESOVLER = false
}
}

local SelectedPart = "UpperTorso"


local Prediction = true
local PredictionValue = 0.1259910

local AnchorCount = 0
local MaxAnchor = 50

local CC = game:GetService"Workspace".CurrentCamera
local Plr;
local enabled = false
local accomidationfactor = 0.12348
local mouse = game.Players.LocalPlayer:GetMouse()
local placemarker = Instance.new("Part", game.Workspace)

function makemarker(Parent, Adornee, Color, Size, Size2)


local e = Instance.new("BillboardGui", Parent)
e.Name = "PP"
e.Adornee = Adornee
e.Size = UDim2.new(Size, Size2, Size, Size2)
e.AlwaysOnTop = Settings.rewrittenmain.DOT
local a = Instance.new("Frame", e)
if Settings.rewrittenmain.DOT == true then
a.Size = UDim2.new(2, 2, 2)
else
a.Size = UDim2.new(0, 0, 0, 0)
end
if Settings.rewrittenmain.DOT == true then
a.Transparency = 0
a.BackgroundTransparency = 0
else
a.Transparency = 1
a.BackgroundTransparency = 1
end
a.BackgroundColor3 = Color
local g = Instance.new("UICorner", a)
if Settings.rewrittenmain.DOT == false then
g.CornerRadius = UDim.new(0, 0)
else
g.CornerRadius = UDim.new(1, 1)
end
return(e)
end

local data = game.Players:GetPlayers()


function noob(player)
local character
repeat wait() until player.Character
local handler = makemarker(guimain,
player.Character:WaitForChild(SelectedPart), Color3.fromRGB(68, 214, 44), 0.3, 3)
handler.Name = player.Name
player.CharacterAdded:connect(function(Char) handler.Adornee =
Char:WaitForChild(SelectedPart) end)

spawn(function()
while wait() do
if player.Character then
end
end
end)
end

for i = 1, #data do
if data[i] ~= game.Players.LocalPlayer then
noob(data[i])
end
end

game.Players.PlayerAdded:connect(function(Player)
noob(Player)
end)

spawn(function()
placemarker.Anchored = true
placemarker.CanCollide = false
if Settings.rewrittenmain.DOT == true then
placemarker.Size = Vector3.new(6, 6, 6)
else
placemarker.Size = Vector3.new(0, 0, 0)
end
placemarker.Transparency = 1
if Settings.rewrittenmain.DOT then
makemarker(placemarker, placemarker, Color3.fromRGB(68, 214, 44), 0.40, 0)
end
end)

game.Players.LocalPlayer:GetMouse().KeyDown:Connect(function(k)
if k == Settings.rewrittenmain.Key and Settings.rewrittenmain.Enabled then
if enabled == true then
enabled = false
if Settings.rewrittenmain.NOTIF == true then
Plr = getClosestPlayerToCursor()
game.StarterGui:SetCore("SendNotification", {
Title = "Lock Notification",
Text = "Unlocked",
Icon = "",
Duration = 1,
})
end
else
Plr = getClosestPlayerToCursor()
enabled = true
if Settings.rewrittenmain.NOTIF == true then

game.StarterGui:SetCore("SendNotification", {
Title = "Lock Notification",
Text = "Locked On :"..tostring(Plr.Name);
Icon = "",
Duration = 1,
})

end
end
end
end)

function getClosestPlayerToCursor()
local closestPlayer
local shortestDistance = Settings.rewrittenmain.FOV

for i, v in pairs(game.Players:GetPlayers()) do
if v ~= game.Players.LocalPlayer and v.Character and
v.Character:FindFirstChild("Humanoid") and v.Character.Humanoid.Health ~= 0 and
v.Character:FindFirstChild("HumanoidRootPart") then
local pos =
CC:WorldToViewportPoint(v.Character.PrimaryPart.Position)
local magnitude = (Vector2.new(pos.X, pos.Y) - Vector2.new(mouse.X,
mouse.Y)).magnitude
if magnitude < shortestDistance then
closestPlayer = v
shortestDistance = magnitude
end
end
end
return closestPlayer
end

local pingvalue = nil;


local split = nil;
local ping = nil;

game:GetService"RunService".Stepped:connect(function()
if enabled and Plr.Character ~= nil and
Plr.Character:FindFirstChild("HumanoidRootPart") then
placemarker.CFrame =
CFrame.new(Plr.Character.HumanoidRootPart.Position+
(Plr.Character.HumanoidRootPart.Velocity*accomidationfactor))
else
placemarker.CFrame = CFrame.new(0, 9999, 0)
end
if Settings.rewrittenmain.AUTOPRED == true then
pingvalue = game:GetService("Stats").Network.ServerStatsItem["Data
Ping"]:GetValueString()
split = string.split(pingvalue,'(')
ping = tonumber(split[1])
if ping < 130 then
PredictionValue = 0.151
elseif ping < 125 then
PredictionValue = 0.149
elseif ping < 110 then
PredictionValue = 0.146
elseif ping < 105 then
PredictionValue = 0.138
elseif ping < 90 then
PredictionValue = 0.136
elseif ping < 80 then
PredictionValue = 0.134
elseif ping < 70 then
PredictionValue = 0.131
elseif ping < 60 then
PredictionValue = 0.1229
elseif ping < 50 then
PredictionValue = 0.1225
elseif ping < 40 then
PredictionValue = 0.1256
end
end
end)

local mt = getrawmetatable(game)
local old = mt.__namecall
setreadonly(mt, false)
mt.__namecall = newcclosure(function(...)
local args = {...}
if enabled and getnamecallmethod() == "FireServer" and args[2] ==
"UpdateMousePos" and Settings.rewrittenmain.Enabled and Plr.Character ~= nil then

-- args[3] = Plr.Character.HumanoidRootPart.Position+
(Plr.Character.HumanoidRootPart.Velocity*accomidationfactor)
--[[
if Settings.rewrittenmain.AIRSHOT == true then
if game.Workspace.Players[Plr.Name].Humanoid:GetState() ==
Enum.HumanoidStateType.Freefall then --
Plr.Character:WaitForChild("Humanoid"):GetState() ==
Enum.HumanoidStateType.Freefall

--// Airshot
args[3] = Plr.Character.LeftFoot.Position+
(Plr.Character.LeftFoot.Velocity*PredictionValue)
else
args[3] = Plr.Character.HumanoidRootPart.Position+
(Plr.Character.HumanoidRootPart.Velocity*PredictionValue)
end
else
args[3] = Plr.Character.HumanoidRootPart.Position+
(Plr.Character.HumanoidRootPart.Velocity*PredictionValue)
end
]]
if Prediction == true then

args[3] = Plr.Character[SelectedPart].Position+
(Plr.Character[SelectedPart].Velocity*PredictionValue)

else
args[3] = Plr.Character[SelectedPart].Position

end

return old(unpack(args))
end
return old(...)
end)

game:GetService("RunService").RenderStepped:Connect(function()
if Settings.rewrittenmain.RESOVLER == true and Plr.Character ~= nil and
enabled and Settings.rewrittenmain.Enabled then
if Settings.rewrittenmain.AIRSHOT == true and enabled and Plr.Character ~=
nil then

if game.Workspace.Players[Plr.Name].Humanoid:GetState() ==
Enum.HumanoidStateType.Freefall then --
Plr.Character:WaitForChild("Humanoid"):GetState() ==
Enum.HumanoidStateType.Freefall

--// Airshot

--// Anchor Check

if Plr.Character ~= nil and Plr.Character.HumanoidRootPart.Anchored


== true then
AnchorCount = AnchorCount + 1
if AnchorCount >= MaxAnchor then
Prediction = false
wait(2)
AnchorCount = 0;
end
else
Prediction = true
AnchorCount = 0;
end

SelectedPart = "HumanoidRootPart"

else
--// Anchor Check

if Plr.Character ~= nil and Plr.Character.HumanoidRootPart.Anchored


== true then
AnchorCount = AnchorCount + 1
if AnchorCount >= MaxAnchor then
Prediction = false
wait(2)
AnchorCount = 0;
end
else
Prediction = true
AnchorCount = 0;
end

SelectedPart = "HumanoidRootPart"

end
else
--// Anchor Check

if Plr.Character ~= nil and Plr.Character.HumanoidRootPart.Anchored


== true then
AnchorCount = AnchorCount + 1
if AnchorCount >= MaxAnchor then
Prediction = false
wait(2)
AnchorCount = 0;
end
else
Prediction = true
AnchorCount = 0;
end

SelectedPart = "HumanoidRootPart"
end

else
SelectedPart = "HumanoidRootPart"
end
end)

--the cam lock

getgenv().Prediction = 0.143105125985120958176
getgenv().AimPart = "UpperTorso"
getgenv().Key = "Q"
getgenv().DisableKey = "P"

getgenv().FOV = true
getgenv().ShowFOV = false
getgenv().FOVSize = 55

--// Variables (Service)

local Players = game:GetService("Players")


local RS = game:GetService("RunService")
local WS = game:GetService("Workspace")
local GS = game:GetService("GuiService")
local SG = game:GetService("StarterGui")

--// Variables (regular)

local LP = Players.LocalPlayer
local Mouse = LP:GetMouse()
local Camera = WS.CurrentCamera
local GetGuiInset = GS.GetGuiInset

local AimlockState = true


local Locked
local Victim

local SelectedKey = getgenv().Key


local SelectedDisableKey = getgenv().DisableKey

--// Check if aimlock is loaded


if getgenv().Loaded == true then
Notify("Aimlock is already loaded!")
return
end

getgenv().Loaded = true

--// FOV Circle

local fov = Drawing.new("Circle")


fov.Filled = false
fov.Transparency = 1
fov.Thickness = 1
fov.Color = Color3.fromRGB(255, 255, 0)
fov.NumSides = 1000

--// Functions

function update()
if getgenv().FOV == true then
if fov then
fov.Radius = getgenv().FOVSize * 2
fov.Visible = getgenv().ShowFOV
fov.Position = Vector2.new(Mouse.X, Mouse.Y + GetGuiInset(GS).Y)

return fov
end
end
end

function WTVP(arg)
return Camera:WorldToViewportPoint(arg)
end

function WTSP(arg)
return Camera.WorldToScreenPoint(Camera, arg)
end

function getClosest()
local closestPlayer
local shortestDistance = math.huge

for i, v in pairs(game.Players:GetPlayers()) do
local notKO = v.Character:WaitForChild("BodyEffects")["K.O"].Value ~= true
local notGrabbed = v.Character:FindFirstChild("GRABBING_COINSTRAINT") ==
nil

if v ~= game.Players.LocalPlayer and v.Character and


v.Character:FindFirstChild("Humanoid") and v.Character.Humanoid.Health ~= 0 and
v.Character:FindFirstChild(getgenv().AimPart) and notKO and notGrabbed then
local pos =
Camera:WorldToViewportPoint(v.Character.PrimaryPart.Position)
local magnitude = (Vector2.new(pos.X, pos.Y) - Vector2.new(Mouse.X,
Mouse.Y)).magnitude

if (getgenv().FOV) then
if (fov.Radius > magnitude and magnitude < shortestDistance) then
closestPlayer = v
shortestDistance = magnitude
end
else
if (magnitude < shortestDistance) then
closestPlayer = v
shortestDistance = magnitude
end
end
end
end
return closestPlayer
end

--// Checks if key is down

Mouse.KeyDown:Connect(function(k)
SelectedKey = SelectedKey:lower()
SelectedDisableKey = SelectedDisableKey:lower()
if k == SelectedKey then
if AimlockState == true then
Locked = not Locked
if Locked then
Victim = getClosest()

Notify("Locked onto:
"..tostring(Victim.Character.Humanoid.DisplayName))
else
if Victim ~= nil then
Victim = nil

Notify("Unlocked!")
end
end
else
Notify("Aimlock is not enabled!")
end
end
if k == SelectedDisableKey then
AimlockState = not AimlockState
end
end)

--// Loop update FOV and loop camera lock onto target

RS.RenderStepped:Connect(function()
update()
if AimlockState == true then
if Victim ~= nil then
Camera.CFrame = CFrame.new(Camera.CFrame.p,
Victim.Character[getgenv().AimPart].Position +
Victim.Character[getgenv().AimPart].Velocity*getgenv().Prediction)
end
end
end)
while wait() do
if getgenv().AutoPrediction == true then
local pingvalue = game:GetService("Stats").Network.ServerStatsItem["Data
Ping"]:GetValueString()
local split = string.split(pingvalue,'(')
local ping = tonumber(split[1])
if ping < 225 then
getgenv().Prediction = 1.4
elseif ping < 215 then
getgenv().Prediction = 1.2
elseif ping < 205 then
getgenv().Prediction = 1.0
elseif ping < 190 then
getgenv().Prediction = 0.10
elseif ping < 180 then
getgenv().Prediction = 0.12
elseif ping < 170 then
getgenv().Prediction = 0.15
elseif ping < 160 then
getgenv().Prediction = 0.18
elseif ping < 150 then
getgenv().Prediction = 0.110
elseif ping < 140 then
getgenv().Prediction = 0.113
elseif ping < 130 then
getgenv().Prediction = 0.116
elseif ping < 120 then
getgenv().Prediction = 0.120
elseif ping < 110 then
getgenv().Prediction = 0.124
elseif ping < 105 then
getgenv().Prediction = 0.127
elseif ping < 90 then
getgenv().Prediction = 0.130
elseif ping < 80 then
getgenv().Prediction = 0.133
elseif ping < 70 then
getgenv().Prediction = 0.136
elseif ping < 60 then
getgenv().Prediction = 0.140
elseif ping < 50 then
getgenv().Prediction = 0.143
elseif ping < 40 then
getgenv().Prediction = 0.145
elseif ping < 30 then
getgenv().Prediction = 0.155
elseif ping < 20 then
getgenv().Prediction = 0.157
end
end
end

You might also like