63 40 No KeyDeagle Arena Script (Delta Mobile) – Open Source Silent Aim by Yamis
Deagle Arena · RobloxDescription
DA Silent Aim is a Deagle Arena script you can run in Delta on Android, iOS or PC. It includes silent aim, head / body hitbox, wall check and more. It has no menu: it turns on as soon as you run it, and you change the options in the OPTIONS table at the top of the code. Created by Yamis_Scripts. No key.
Key Features
- Silent Aim: shots go to the nearest valid target
- Hits Head or Body hitboxes
- Wall check with a raycast before redirecting
- Skips teammates
- Targets bots too
- 600 stud max distance
- Unload with getgenv().deagleSilentAim.Unload()
Deagle Arena is one gun, free-for-all deathmatch and ranked ladders, so every shot counts. The Yamis Deagle Arena silent aim script quietly changes where your shots go: you fire as normal, and the shot is sent to a target the script picks. It has no menu and no key, and the full source is right there in the code box.
The settings live in the code
- Enabled
- true. The script switches itself on as soon as it runs.
- AimCone
- 360, so it picks from every direction. Make it smaller to only redirect shots aimed close to a target.
- MaxDistance
- 600 studs, which is also the hard cap.
- TargetBots
- true. It also takes bots and the tutorial dummies.
To change any of these, edit the OPTIONS table at the top before you execute. To switch it off, run getgenv().deagleSilentAim.Unload().
Who gets picked
Players have to be in the round, alive, not ragdolled and not under spawn protection, and teammates are always skipped. Candidates are ranked by how close they are to your aim, then by distance. It tries the head hitbox first and falls back to the body. Before it redirects anything, it runs the game’s own raycast to confirm the shot would really hit that character, which works as a wall check. All of this applies only while you have the Deagle equipped.
When it doesn’t start
- “Unsupported game”: you’re in another place. It only runs in Deagle Arena.
- “Game scripts unavailable”: you executed before the game finished loading. Wait until you’re fully in, then run it again.
- “[executor] is not supported”: your executor is missing hookmetamethod or one of the namecall functions. Delta, Arceus X, Codex, Fluxus and PC tools are expected to have them.
Deagle Arena FAQ
Is there another Deagle Arena script here? Yes, Maddura Hub, which adds a triggerbot and ragebot. This one sticks to silent aim.
Can I get banned? It’s a competitive shooter with rankings, so a shot that lands while you’re aiming elsewhere is easy to report. Expect that risk on your main account.
Ranked tip: lower AimCone to something like 30 before you queue. Your shots then only bend toward players you’re already roughly aimed at, which looks far less suspicious to anyone spectating than hits on players you weren’t facing.
--[[* If you enjoy the script, please consider liking the post.
It helps motivate me to release more open-source scripts and keep existing ones updated.
MADE BY: [https://rscripts.net/@Yamis_Scripts] *]]
-- UNLOAD WITH: getgenv().deagleSilentAim.Unload()
local OPTIONS = {
Enabled = true,
AimCone = 360,
MaxDistance = 600,
TargetBots = true,
}
local SILENT_AIM_SESSION_NAME = "deagleSilentAim"
local HIT_PARTS = { "HeadHitbox", "Head", "BodyHitbox", "UpperTorso", "Torso", "HumanoidRootPart" }
local getgenv, hookmetamethod, newcclosure, getnamecallmethod, setnamecallmethod, identifyexecutor =
getgenv, hookmetamethod, newcclosure, getnamecallmethod, setnamecallmethod, identifyexecutor
local StarterGui = game:GetService("StarterGui")
local function notify(title, description)
for attempt = 1, 5 do
local delivered = pcall(StarterGui.SetCore, StarterGui, "SendNotification", {
Title = title,
Text = description,
Duration = 8,
})
if delivered then
return
end
if attempt < 5 then
task.wait(0.2)
end
end
warn(title .. ": " .. description)
end
if game.PlaceId ~= 84556640895285 then
notify("Unsupported game", "This script only supports Deagle Arena.")
return
end
local executorName = "Unknown executor"
if type(identifyexecutor) == "function" then
local identified, name = pcall(identifyexecutor)
if identified and type(name) == "string" then
executorName = name
end
end
if not (type(getgenv) == "function" and type(hookmetamethod) == "function"
and type(newcclosure) == "function" and type(getnamecallmethod) == "function"
and type(setnamecallmethod) == "function") then
notify("[" .. executorName .. "] is not supported.",
"Your executor is missing required functions.")
return
end
local Players = game:GetService("Players")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local Workspace = game:GetService("Workspace")
local loaded, DeagleShared, GamemodeShared, remote = pcall(function()
local modules = ReplicatedStorage.Modules
return require(modules.Shared.DeagleShared), require(modules.Shared.GamemodeShared),
modules.Packages.Network.NetworkRemote
end)
if not loaded then
notify("Game scripts unavailable", "Join Deagle Arena fully, then execute again.")
return
end
assert(remote:IsA("RemoteEvent"), "NetworkRemote is not a RemoteEvent")
local localPlayer = Players.LocalPlayer
local environment = getgenv()
local session = rawget(environment, SILENT_AIM_SESSION_NAME)
if session ~= nil then
assert(type(session) == "table" and rawget(session, "purpose") == "deagle-silent-aim"
and rawget(session, "schema") == 1
and rawequal(rawget(session, "environment"), environment)
and type(rawget(session, "Unload")) == "function", "Silent aim session key is occupied")
session.Unload()
else
session = { purpose = "deagle-silent-aim", schema = 1, environment = environment }
rawset(environment, SILENT_AIM_SESSION_NAME, session)
end
session.Options = OPTIONS
session.remote = remote
session.lastError = nil
function session.Unload()
session.active = false
session.Options.Enabled = false
session.redirect = nil
local noticeThread = session.noticeThread
if noticeThread and coroutine.status(noticeThread) ~= "dead" then
task.cancel(noticeThread)
end
session.noticeThread = nil
end
local function selectTarget(origin, originalAim)
local localCharacter = localPlayer.Character
if not localCharacter or not localCharacter:FindFirstChild("Deagle") then
return nil
end
local localHumanoid = localCharacter:FindFirstChildOfClass("Humanoid")
local aimDirection = originalAim - origin
if not localHumanoid or localHumanoid.Health <= 0 or aimDirection.Magnitude <= 0 then
return nil
end
local direction = aimDirection.Unit
local minimumDot = math.cos(math.rad(math.clamp(OPTIONS.AimCone, 0, 360) * 0.5))
local maximumDistance = math.clamp(OPTIONS.MaxDistance, 0, 600)
local candidates = {}
local seen = {}
local function consider(character)
if not character or seen[character] or character == localCharacter then
return
end
seen[character] = true
if character:GetAttribute("Alive") == false
or character:GetAttribute("SpawnProtection") == true
or character:GetAttribute("Ragdolled") == true
or GamemodeShared.AreTeammates(localCharacter, character) then
return
end
local humanoid = character:FindFirstChildOfClass("Humanoid")
if not humanoid or humanoid.Health <= 0 then
return
end
for _, partName in ipairs(HIT_PARTS) do
local part = character:FindFirstChild(partName)
if part and part:IsA("BasePart") then
local offset = part.Position - origin
local distance = offset.Magnitude
if distance > 0 and distance <= maximumDistance then
local alignment = direction:Dot(offset.Unit)
if alignment >= minimumDot then
table.insert(candidates, {
character = character, alignment = alignment, distance = distance,
})
end
end
return
end
end
end
for _, player in ipairs(Players:GetPlayers()) do
if player ~= localPlayer and player:GetAttribute("InRound") == true then
consider(player.Character)
end
end
if OPTIONS.TargetBots then
for _, character in ipairs(Workspace:GetChildren()) do
if character:IsA("Model") and (character:GetAttribute("IsBot") == true
or character:GetAttribute("TutorialTarget") == true) then
consider(character)
end
end
end
table.sort(candidates, function(first, second)
if first.alignment == second.alignment then
return first.distance < second.distance
end
return first.alignment > second.alignment
end)
for _, candidate in ipairs(candidates) do
for _, partName in ipairs(HIT_PARTS) do
local part = candidate.character:FindFirstChild(partName)
if part and part:IsA("BasePart") then
local aimPosition = part.Position
local offset = aimPosition - origin
if offset.Magnitude > 0 and offset.Magnitude <= maximumDistance
and direction:Dot(offset.Unit) >= minimumDot then
local hit = DeagleShared.Raycast(localCharacter, origin, aimPosition)
if hit and DeagleShared.GetCharacterFromHit(hit.Instance) == candidate.character then
return aimPosition, hit.Instance, hit.Position
end
end
end
end
end
return nil
end
function session.redirect(arguments)
if arguments.n ~= 6 or arguments[1] ~= "Shoot"
or typeof(arguments[2]) ~= "Vector3" or typeof(arguments[3]) ~= "Vector3" then
return nil
end
local selected, aimPosition, hitPart, hitPosition = pcall(selectTarget, arguments[2], arguments[3])
if not selected then
OPTIONS.Enabled = false
session.lastError = tostring(aimPosition)
session.noticeThread = task.defer(function()
if session.active then
notify("Silent aim stopped", string.sub(session.lastError, 1, 180))
end
session.noticeThread = nil
end)
return nil
end
if aimPosition then
arguments[3], arguments[4], arguments[5] = aimPosition, hitPart, hitPosition
return arguments
end
return nil
end
if not session.installed then
local installed, original = pcall(function()
return hookmetamethod(game, "__namecall", newcclosure(function(receiver, ...)
local method = getnamecallmethod()
if session.active and receiver == session.remote and method == "FireServer"
and session.Options.Enabled then
local arguments = session.redirect(table.pack(...))
setnamecallmethod(method)
if arguments then
return session.forward(receiver, table.unpack(arguments, 1, arguments.n))
end
end
return session.forward(receiver, ...)
end))
end)
if not installed or type(original) ~= "function" then
session.Unload()
notify("[" .. executorName .. "] is not supported.",
"Your executor could not install the required hook.")
return
end
session.forward = original
session.installed = true
end
session.active = true


