-- AIMDEX V9 - ESP Jarvis com FOV NO CENTRO EXATO (SCRIPT COMPLETO)
local success, err = pcall(function()
local Rayfield
local ok, result = pcall(function()
return loadstring(game:HttpGet('https://sirius.menu/rayfield'))()
end)
if ok and result then
Rayfield = result
else
ok, result = pcall(function()
return loadstring(game:HttpGet('https://raw.githubusercontent.com/shlexware/Rayfield/main/source'))()
end)
if ok and result then Rayfield = result end
end
if not Rayfield then
game:GetService("StarterGui"):SetCore("SendNotification", {Title="Erro", Text="Não foi possível carregar o painel.", Duration=5})
return
end
local Window = Rayfield:CreateWindow({
Name = "AIMDEX V9",
LoadingTitle = "AIMDEX V9",
LoadingSubtitle = "Bernardo Pereira Carvalho",
TouchCompatible = true
})
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Camera = workspace.CurrentCamera
local LocalPlayer = Players.LocalPlayer
-- Variáveis
local aimbot = false
local aimassist = false
local showfov = false
local spin = false
local fov = 150
local spinspeed = 10
local esp = false
local tracer = false
local espcolor = Color3.fromRGB(255,255,255)
local noclip = false
local aimPartName = "Head" -- Variável: parte alvo do aimbot
local speedValue = 16 -- Variável: velocidade do personagem (padrão 16)
-- Pasta organizadora
local ESP_Folder = Instance.new("Folder")
ESP_Folder.Name = "AIMDEX_ESP_System"
pcall(function() ESP_Folder.Parent = game.CoreGui end)
if not ESP_Folder.Parent then
ESP_Folder.Parent = LocalPlayer:WaitForChild("PlayerGui")
end
local TracerGui = Instance.new("ScreenGui")
TracerGui.Name = "Tracers"
TracerGui.Parent = ESP_Folder
TracerGui.IgnoreGuiInset = true
-- Altura desejada da barra de vida em studs (mesmo tamanho do boneco)
local BAR_WORLD_HEIGHT = 5
local espObjects = {}
local function criarESP(player)
if player == LocalPlayer then return end
-- Limpa ESP anterior
if espObjects[player] then
local obj = espObjects[player]
if obj.connection then obj.connection:Disconnect() end
if obj.highlight then obj.highlight:Destroy() end
if obj.billboardInfo then obj.billboardInfo:Destroy() end
if obj.billboardHealth then obj.billboardHealth:Destroy() end
if obj.tracerLine then obj.tracerLine:Destroy() end
espObjects[player] = nil
end
-- Highlight (contorno)
local highlight = Instance.new("Highlight")
highlight.Name = player.Name .. "_Highlight"
highlight.FillTransparency = 1
highlight.OutlineColor = espcolor
highlight.OutlineTransparency = 0
highlight.Enabled = esp
highlight.Parent = ESP_Folder
-- Billboard de informações (nome + distância)
local billboardInfo = Instance.new("BillboardGui")
billboardInfo.Name = player.Name .. "_Info"
billboardInfo.Size = UDim2.new(0, 200, 0, 48) -- largura x altura
billboardInfo.StudsOffset = Vector3.new(0, 2.5, 0) -- acima da cabeça
billboardInfo.AlwaysOnTop = true
billboardInfo.MaxDistance = 2000
billboardInfo.Enabled = false
billboardInfo.Parent = ESP_Folder
local nameLabel = Instance.new("TextLabel", billboardInfo)
nameLabel.Size = UDim2.new(1, 0, 0.5, 0)
nameLabel.Position = UDim2.new(0, 0, 0, 0)
nameLabel.BackgroundTransparency = 1
nameLabel.Text = player.Name
nameLabel.TextColor3 = espcolor
nameLabel.Font = Enum.Font.Code
nameLabel.TextSize = 14
nameLabel.TextScaled = false
nameLabel.TextXAlignment = Enum.TextXAlignment.Center
nameLabel.TextTruncate = Enum.TextTruncate.AtEnd
local distLabel = Instance.new("TextLabel", billboardInfo)
distLabel.Size = UDim2.new(1, 0, 0.5, 0)
distLabel.Position = UDim2.new(0, 0, 0.5, 0)
distLabel.BackgroundTransparency = 1
distLabel.Text = ""
distLabel.TextColor3 = espcolor
distLabel.Font = Enum.Font.Code
distLabel.TextSize = 14
distLabel.TextScaled = false
distLabel.TextXAlignment = Enum.TextXAlignment.Center
-- Billboard da barra de vida (tamanho adaptável)
local billboardHealth = Instance.new("BillboardGui")
billboardHealth.Name = player.Name .. "_HealthBar"
billboardHealth.AlwaysOnTop = true
billboardHealth.MaxDistance = 2000
billboardHealth.Enabled = false
billboardHealth.Parent = ESP_Folder
local healthBg = Instance.new("Frame", billboardHealth)
healthBg.Name = "HealthBg"
healthBg.Size = UDim2.new(1, 0, 1, 0) -- preencherá todo o billboard
healthBg.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
healthBg.BorderSizePixel = 0
local healthBar = Instance.new("Frame", healthBg)
healthBar.Name = "HealthBar"
healthBar.Size = UDim2.new(1, 0, 1, 0) -- será ajustado via script
healthBar.Position = UDim2.new(0, 0, 1, 0) -- ancora no fundo
healthBar.BackgroundColor3 = Color3.fromRGB(0, 255, 0)
healthBar.BorderSizePixel = 0
healthBar.AnchorPoint = Vector2.new(0, 1) -- cresce para cima
-- Linha tracer
local tracerLine = Instance.new("Frame")
tracerLine.Name = "TracerLine" -- nome para identificação
tracerLine.AnchorPoint = Vector2.new(0.5, 0.5)
tracerLine.BackgroundColor3 = espcolor
tracerLine.BorderSizePixel = 0
tracerLine.Parent = TracerGui
-- Atualização contínua
local connection
connection = RunService.RenderStepped:Connect(function()
local character = player.Character
if character and character:FindFirstChild("HumanoidRootPart") and character:FindFirstChild("Humanoid") and character.Humanoid.Health > 0 then
local hrp = character.HumanoidRootPart
local humanoid = character.Humanoid
local head = character:FindFirstChild("Head") or hrp
billboardInfo.Adornee = head
billboardHealth.Adornee = head
highlight.Parent = character
-- Calcula tamanho visual da barra (proporcional ao jogador)
local barBottom = head.Position
local barTop = head.Position + Vector3.new(0, BAR_WORLD_HEIGHT, 0)
local screenBottom, onBottom = Camera:WorldToViewportPoint(barBottom)
local screenTop, onTop = Camera:WorldToViewportPoint(barTop)
if onBottom and onTop then
local barPixelHeight = math.abs(screenTop.Y - screenBottom.Y)
billboardHealth.Size = UDim2.new(0, 4, 0, math.max(barPixelHeight, 1))
-- Ajusta offset para centralizar a barra no boneco
billboardHealth.StudsOffset = Vector3.new(1.5, -BAR_WORLD_HEIGHT/2, 0)
end
-- Atualiza barra de vida
local healthPct = math.clamp(humanoid.Health / humanoid.MaxHealth, 0, 1)
healthBar.Size = UDim2.new(1, 0, healthPct, 0)
healthBar.BackgroundColor3 = Color3.new(1 - healthPct, healthPct, 0)
-- Distância
if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
local dist = math.floor((LocalPlayer.Character.HumanoidRootPart.Position - hrp.Position).Magnitude)
distLabel.Text = dist .. " studs"
end
-- Visibilidade geral (Master ESP)
highlight.Enabled = esp
billboardInfo.Enabled = esp
billboardHealth.Enabled = esp
highlight.OutlineColor = espcolor
nameLabel.TextColor3 = espcolor
distLabel.TextColor3 = espcolor
-- Tracers
if tracer and esp then
local vector, onScreen = Camera:WorldToViewportPoint(hrp.Position)
if onScreen then
tracerLine.Visible = true
local bottomCenter = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y)
local targetPos = Vector2.new(vector.X, vector.Y)
local distance = (bottomCenter - targetPos).Magnitude
tracerLine.Size = UDim2.new(0, 2, 0, distance)
local center = (bottomCenter + targetPos) / 2
tracerLine.Position = UDim2.new(0, center.X, 0, center.Y)
local angle = math.atan2(targetPos.Y - bottomCenter.Y, targetPos.X - bottomCenter.X)
tracerLine.Rotation = math.deg(angle) + 90
else
tracerLine.Visible = false
end
else
tracerLine.Visible = false
end
else
billboardInfo.Adornee = nil
billboardHealth.Adornee = nil
highlight.Parent = ESP_Folder
tracerLine.Visible = false
end
end)
espObjects[player] = {
highlight = highlight,
billboardInfo = billboardInfo,
billboardHealth = billboardHealth,
tracerLine = tracerLine,
connection = connection
}
end
-- Inicializa jogadores existentes
for _, player in ipairs(Players:GetPlayers()) do criarESP(player) end
Players.PlayerAdded:Connect(criarESP)
Players.PlayerRemoving:Connect(function(player)
if espObjects[player] then
local obj = espObjects[player]
if obj.connection then obj.connection:Disconnect() end
if obj.highlight then obj.highlight:Destroy() end
if obj.billboardInfo then obj.billboardInfo:Destroy() end
if obj.billboardHealth then obj.billboardHealth:Destroy() end
if obj.tracerLine then obj.tracerLine:Destroy() end
espObjects[player] = nil
end
end)
-- Círculo de FOV
local fovGui = Instance.new("ScreenGui", game.CoreGui)
local fovCircle = Instance.new("Frame", fovGui)
fovCircle.AnchorPoint = Vector2.new(0.5, 0.5)
fovCircle.Position = UDim2.new(0.5, 0, 0.5, 0)
fovCircle.BackgroundTransparency = 1
fovCircle.Visible = false
local uiCorner = Instance.new("UICorner", fovCircle)
uiCorner.CornerRadius = UDim.new(1, 0)
local fovStroke = Instance.new("UIStroke", fovCircle)
fovStroke.Color = Color3.new(1,1,1)
fovStroke.Thickness = 1
fovStroke.Transparency = 0.3
-- Funções auxiliares
local function toScreen(pos)
local v, on = Camera:WorldToViewportPoint(pos)
return Vector2.new(v.X, v.Y), v.Z > 0
end
local function isTargetVisible(head)
local camPos = Camera.CFrame.Position
local targetPos = head.Position
local dir = (targetPos - camPos).Unit
local dist = (targetPos - camPos).Magnitude - 0.1
local ignoreList = { LocalPlayer.Character, head.Parent }
local hit = workspace:FindPartOnRayWithIgnoreList(Ray.new(camPos, dir * dist), ignoreList)
return hit == nil
end
-- Loop principal
RunService.RenderStepped:Connect(function(delta)
-- Aplica velocidade configurada
if LocalPlayer.Character then
local hum = LocalPlayer.Character:FindFirstChildOfClass("Humanoid")
if hum and hum.WalkSpeed ~= speedValue then
hum.WalkSpeed = speedValue
end
end
if aimbot or aimassist then
local char = LocalPlayer.Character
if char and char:FindFirstChild("HumanoidRootPart") then
local closest = nil
local minDist = fov
for _, p in ipairs(Players:GetPlayers()) do
if p ~= LocalPlayer and p.Character then
local targetPart = p.Character:FindFirstChild(aimPartName)
if not targetPart then
-- Fallback para a cabeça se a parte escolhida não existir
targetPart = p.Character:FindFirstChild("Head")
end
if targetPart then
local pos, on = toScreen(targetPart.Position)
if on then
local d = (Vector2.new(pos.X, pos.Y) - Camera.ViewportSize/2).Magnitude
if d = 0.5 then
local fps = math.floor(fc / tt)
local ping = math.floor(LocalPlayer:GetNetworkPing() * 1000)
fpsLabel.Text = string.format("FPS: %d | Ping: %d ms", fps, ping)
fc, tt = 0, 0
end
end)
Rayfield:Notify({Title="AIMDEX V9", Content="AIMDEX V9 CRIADO POR BERNARDO PEREIRA CARVALHO EMPRESA DEX.", Duration=5})
end)
if not success then
warn("Erro: "..tostring(err))
game:GetService("StarterGui"):SetCore("SendNotification", {Title="Erro AIMDEX", Text=tostring(err), Duration=10})
end