
KeylessUniversal

-- Nettoyage des anciennes instances pour éviter les conflits
if game.CoreGui:FindFirstChild("AimbotGUI") then
game.CoreGui.AimbotGUI:Destroy()
end
if game.CoreGui:FindFirstChild("LoadingScreenGUI") then
game.CoreGui.LoadingScreenGUI:Destroy()
end
if game.CoreGui:FindFirstChild("FOVCircleGUI") then
game.CoreGui.FOVCircleGUI:Destroy()
end
if game.CoreGui:FindFirstChild("AutoShootWidgetGUI") then
game.CoreGui.AutoShootWidgetGUI:Destroy()
end
-- Services requis
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local VirtualUser = game:GetService("VirtualUser")
local Camera = workspace.CurrentCamera
local LocalPlayer = Players.LocalPlayer
-- Configuration globale avec WallCheck intégré
getgenv().AimbotSettings = {
Enabled = false,
TeamCheck = true,
WallCheck = true, -- WallCheck activé par défaut
Smoothness = 1,
AimSpeed = 15,
TargetPart = "Head",
FOV = 200,
ShowFOV = true,
Prediction = true,
PredictionFactor = 0.165,
SpinBot = false,
InfiniteJump = false,
WalkSpeedVal = 16,
ESPEnabled = false,
Box3DEnabled = false,
AutoShoot = false,
HitboxSize = 2,
HitboxTransparency = 0.5,
HitboxEnabled = false,
HitboxTargetPart = "HumanoidRootPart",
HitboxVisible = true,
FriendCheck = true,
SilentMode = true,
AutoReset = true,
ContinuousLock = false,
AntiCollision = true,
PrecisionBoost = false
}
-- Tables pour stocker les éléments visuels stables
local Box3DObjects = {}
local HitboxBoxes = {}
local function RemoveBox3D(player)
if Box3DObjects[player] then
Box3DObjects[player]:Destroy()
Box3DObjects[player] = nil
end
end
local function RemoveHitboxCube(player)
if HitboxBoxes[player] then
HitboxBoxes[player]:Destroy()
HitboxBoxes[player] = nil
end
end
-- Fonction de WallCheck par Raycast
local function IsVisible(targetPart)
if not getgenv().AimbotSettings.WallCheck then return true end
local origin = Camera.CFrame.Position
local direction = (targetPart.Position - origin)
local raycastParams = RaycastParams.new()
raycastParams.FilterType = Enum.RaycastFilterType.Exclude
local ignoreList = {LocalPlayer.Character}
if targetPart.Parent then
table.insert(ignoreList, targetPart.Parent)
end
raycastParams.FilterDescendantsInstances = ignoreList
raycastParams.IgnoreWater = true
local result = workspace:Raycast(origin, direction, raycastParams)
return result == nil
end
-- Écran de chargement initial
local function CreateLoadingScreen(duration, onComplete)
local LoadGui = Instance.new("ScreenGui")
LoadGui.Name = "LoadingScreenGUI"
LoadGui.ResetOnSpawn = false
LoadGui.Parent = game.CoreGui
local LoadFrame = Instance.new("Frame")
LoadFrame.Size = UDim2.new(0, 380, 0, 180)
LoadFrame.Position = UDim2.new(0.5, -190, 0.5, -90)
LoadFrame.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
LoadFrame.BorderSizePixel = 0
LoadFrame.Parent = LoadGui
local LoadTitle = Instance.new("TextLabel")
LoadTitle.Size = UDim2.new(1, 0, 0, 50)
LoadTitle.Position = UDim2.new(0, 0, 0, 15)
LoadTitle.BackgroundTransparency = 1
LoadTitle.Font = Enum.Font.GothamBold
LoadTitle.Text = "..."
LoadTitle.TextColor3 = Color3.fromRGB(0, 200, 100)
LoadTitle.TextSize = 22
LoadTitle.Parent = LoadFrame
local LoadBarBackground = Instance.new("Frame")
LoadBarBackground.Size = UDim2.new(0, 320, 0, 12)
LoadBarBackground.Position = UDim2.new(0.5, -160, 0, 85)
LoadBarBackground.BackgroundColor3 = Color3.fromRGB(35, 35, 45)
LoadBarBackground.BorderSizePixel = 0
LoadBarBackground.Parent = LoadFrame
local LoadBarFill = Instance.new("Frame")
LoadBarFill.Size = UDim2.new(0, 0, 1, 0)
LoadBarFill.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
LoadBarFill.BorderSizePixel = 0
LoadBarFill.Parent = LoadBarBackground
local LoadStatus = Instance.new("TextLabel")
LoadStatus.Size = UDim2.new(1, 0, 0, 20)
LoadStatus.Position = UDim2.new(0, 0, 0, 115)
LoadStatus.BackgroundTransparency = 1
LoadStatus.Font = Enum.Font.Gotham
LoadStatus.Text = "0%"
LoadStatus.TextColor3 = Color3.fromRGB(150, 150, 150)
LoadStatus.TextSize = 12
LoadStatus.Parent = LoadFrame
task.spawn(function()
local startTime = tick()
local randomChars = {"#", "$", "@", "!", "?", "%", "&", "*", "a", "i", "m", "b", "o", "t"}
while tick() - startTime < duration do
local elapsed = tick() - startTime
local progress = math.clamp(elapsed / duration, 0, 1)
LoadBarFill.Size = UDim2.new(progress, 0, 1, 0)
LoadStatus.Text = math.floor(progress * 100) .."%"
if progress < 0.75 then
local scrambled = ""
for i = 1, 6 do
scrambled = scrambled .. randomChars[math.random(1, #randomChars)]
end
LoadTitle.Text = scrambled
else
LoadTitle.Text = "aimbot"
end
task.wait(0.08)
end
LoadTitle.Text = "aimbot"
task.wait(0.5)
LoadGui:Destroy()
if onComplete then
onComplete()
end
end)
end
CreateLoadingScreen(3, function() -- Réduit à 3 secondes pour ne pas attendre trop longtemps
local ScreenGui = Instance.new("ScreenGui")
ScreenGui.Name = "AimbotGUI"
ScreenGui.ResetOnSpawn = false
ScreenGui.Parent = game.CoreGui
local MainFrame = Instance.new("Frame")
MainFrame.Size = UDim2.new(0, 520, 0, 440)
MainFrame.Position = UDim2.new(0.5, -260, 0.5, -220)
MainFrame.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
MainFrame.BorderSizePixel = 0
MainFrame.Active = true
MainFrame.Draggable = true
MainFrame.Parent = ScreenGui
local UICorner = Instance.new("UICorner")
UICorner.CornerRadius = UDim.new(0, 8)
UICorner.Parent = MainFrame
local TitleBar = Instance.new("Frame")
TitleBar.Size = UDim2.new(1, 0, 0, 40)
TitleBar.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TitleBar.BorderSizePixel = 0
TitleBar.Parent = MainFrame
local TitleCorner = Instance.new("UICorner")
TitleCorner.CornerRadius = UDim.new(0, 8)
TitleCorner.Parent = TitleBar
local TitleText = Instance.new("TextLabel")
TitleText.Size = UDim2.new(1, -20, 1, 0)
TitleText.Position = UDim2.new(0, 15, 0, 0)
TitleText.BackgroundTransparency = 1
TitleText.Font = Enum.Font.GothamBold
TitleText.Text = "SundlyAimbot v1.7.32 [Fixed + WallCheck]"
TitleText.TextColor3 = Color3.fromRGB(255, 255, 255)
TitleText.TextSize = 15
TitleText.TextXAlignment = Enum.TextXAlignment.Left
TitleText.Parent = TitleBar
local TabBar = Instance.new("Frame")
TabBar.Size = UDim2.new(1, -20, 0, 35)
TabBar.Position = UDim2.new(0, 10, 0, 50)
TabBar.BackgroundTransparency = 1
TabBar.Parent = MainFrame
local TabAimbotBtn = Instance.new("TextButton")
TabAimbotBtn.Size = UDim2.new(0.23, 0, 1, 0)
TabAimbotBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 65)
TabAimbotBtn.Font = Enum.Font.GothamBold
TabAimbotBtn.Text = "Aimbot"
TabAimbotBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
TabAimbotBtn.TextSize = 11
TabAimbotBtn.Parent = TabBar
local TabAimbotCorner = Instance.new("UICorner")
TabAimbotCorner.CornerRadius = UDim.new(0, 6)
TabAimbotCorner.Parent = TabAimbotBtn
local TabHitboxBtn = Instance.new("TextButton")
TabHitboxBtn.Size = UDim2.new(0.23, 0, 1, 0)
TabHitboxBtn.Position = UDim2.new(0.25, 0, 0, 0)
TabHitboxBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabHitboxBtn.Font = Enum.Font.GothamBold
TabHitboxBtn.Text = "Hitbox"
TabHitboxBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabHitboxBtn.TextSize = 11
TabHitboxBtn.Parent = TabBar
local TabHitboxCorner = Instance.new("UICorner")
TabHitboxCorner.CornerRadius = UDim.new(0, 6)
TabHitboxCorner.Parent = TabHitboxBtn
local TabSettingsBtn = Instance.new("TextButton")
TabSettingsBtn.Size = UDim2.new(0.23, 0, 1, 0)
TabSettingsBtn.Position = UDim2.new(0.50, 0, 0, 0)
TabSettingsBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabSettingsBtn.Font = Enum.Font.GothamBold
TabSettingsBtn.Text = "Paramètres"
TabSettingsBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabSettingsBtn.TextSize = 11
TabSettingsBtn.Parent = TabBar
local TabSettingsCorner = Instance.new("UICorner")
TabSettingsCorner.CornerRadius = UDim.new(0, 6)
TabSettingsCorner.Parent = TabSettingsBtn
local TabVersionBtn = Instance.new("TextButton")
TabVersionBtn.Size = UDim2.new(0.23, 0, 1, 0)
TabVersionBtn.Position = UDim2.new(0.75, 0, 0, 0)
TabVersionBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabVersionBtn.Font = Enum.Font.GothamBold
TabVersionBtn.Text = "Version"
TabVersionBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabVersionBtn.TextSize = 11
TabVersionBtn.Parent = TabBar
local TabVersionCorner = Instance.new("UICorner")
TabVersionCorner.CornerRadius = UDim.new(0, 6)
TabVersionCorner.Parent = TabVersionBtn
local AimbotContainer = Instance.new("ScrollingFrame")
AimbotContainer.Size = UDim2.new(1, -20, 1, -100)
AimbotContainer.Position = UDim2.new(0, 10, 0, 95)
AimbotContainer.BackgroundTransparency = 1
AimbotContainer.BorderSizePixel = 0
AimbotContainer.CanvasSize = UDim2.new(0, 0, 0, 1150)
AimbotContainer.ScrollBarThickness = 4
AimbotContainer.Visible = true
AimbotContainer.Parent = MainFrame
local AimbotLayout = Instance.new("UIListLayout")
AimbotLayout.SortOrder = Enum.SortOrder.LayoutOrder
AimbotLayout.Padding = UDim.new(0, 10)
AimbotLayout.Parent = AimbotContainer
local HitboxContainer = Instance.new("ScrollingFrame")
HitboxContainer.Size = UDim2.new(1, -20, 1, -100)
HitboxContainer.Position = UDim2.new(0, 10, 0, 95)
HitboxContainer.BackgroundTransparency = 1
HitboxContainer.BorderSizePixel = 0
HitboxContainer.CanvasSize = UDim2.new(0, 0, 0, 900)
HitboxContainer.ScrollBarThickness = 4
HitboxContainer.Visible = false
HitboxContainer.Parent = MainFrame
local HitboxLayout = Instance.new("UIListLayout")
HitboxLayout.SortOrder = Enum.SortOrder.LayoutOrder
HitboxLayout.Padding = UDim.new(0, 10)
HitboxLayout.Parent = HitboxContainer
local SettingsContainer = Instance.new("ScrollingFrame")
SettingsContainer.Size = UDim2.new(1, -20, 1, -100)
SettingsContainer.Position = UDim2.new(0, 10, 0, 95)
SettingsContainer.BackgroundTransparency = 1
SettingsContainer.BorderSizePixel = 0
SettingsContainer.CanvasSize = UDim2.new(0, 0, 0, 300)
SettingsContainer.ScrollBarThickness = 4
SettingsContainer.Visible = false
SettingsContainer.Parent = MainFrame
local SettingsLayout = Instance.new("UIListLayout")
SettingsLayout.SortOrder = Enum.SortOrder.LayoutOrder
SettingsLayout.Padding = UDim.new(0, 10)
SettingsLayout.Parent = SettingsContainer
local VersionContainer = Instance.new("ScrollingFrame")
VersionContainer.Size = UDim2.new(1, -20, 1, -100)
VersionContainer.Position = UDim2.new(0, 10, 0, 95)
VersionContainer.BackgroundTransparency = 1
VersionContainer.BorderSizePixel = 0
VersionContainer.CanvasSize = UDim2.new(0, 0, 0, 450)
VersionContainer.ScrollBarThickness = 4
VersionContainer.Visible = false
VersionContainer.Parent = MainFrame
local VersionLayout = Instance.new("UIListLayout")
VersionLayout.SortOrder = Enum.SortOrder.LayoutOrder
VersionLayout.Padding = UDim.new(0, 10)
VersionLayout.Parent = VersionContainer
TabAimbotBtn.MouseButton1Click:Connect(function()
AimbotContainer.Visible = true
HitboxContainer.Visible = false
SettingsContainer.Visible = false
VersionContainer.Visible = false
TabAimbotBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 65)
TabAimbotBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
TabHitboxBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabHitboxBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabSettingsBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabSettingsBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabVersionBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabVersionBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
end)
TabHitboxBtn.MouseButton1Click:Connect(function()
AimbotContainer.Visible = false
HitboxContainer.Visible = true
SettingsContainer.Visible = false
VersionContainer.Visible = false
TabHitboxBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 65)
TabHitboxBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
TabAimbotBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabAimbotBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabSettingsBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabSettingsBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabVersionBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabVersionBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
end)
TabSettingsBtn.MouseButton1Click:Connect(function()
AimbotContainer.Visible = false
HitboxContainer.Visible = false
SettingsContainer.Visible = true
VersionContainer.Visible = false
TabSettingsBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 65)
TabSettingsBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
TabAimbotBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabAimbotBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabHitboxBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabHitboxBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabVersionBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabVersionBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
end)
TabVersionBtn.MouseButton1Click:Connect(function()
AimbotContainer.Visible = false
HitboxContainer.Visible = false
SettingsContainer.Visible = false
VersionContainer.Visible = true
TabVersionBtn.BackgroundColor3 = Color3.fromRGB(50, 50, 65)
TabVersionBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
TabAimbotBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabAimbotBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabHitboxBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabHitboxBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
TabSettingsBtn.BackgroundColor3 = Color3.fromRGB(35, 35, 42)
TabSettingsBtn.TextColor3 = Color3.fromRGB(180, 180, 180)
end)
local VersionInfoLabel = Instance.new("TextLabel")
VersionInfoLabel.Size = UDim2.new(1, 0, 0, 380)
VersionInfoLabel.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
VersionInfoLabel.BorderSizePixel = 0
VersionInfoLabel.Font = Enum.Font.GothamMedium
VersionInfoLabel.Text = "=== INFORMATIONS DU SCRIPT ===\n" ..
"Version UI : 1.7.32 [Fixed + WallCheck]\n" ..
"Statut : Actif & Sécurisé\n\n" ..
"=== COMPTE & UTILISATEUR ===\n" ..
"Nom du compte : " .. LocalPlayer.Name .. "\n" ..
"ID Utilisateur : " .. tostring(LocalPlayer.UserId) .. "\n\n" ..
"=== CONFIGURATION ===\n" ..
"WallCheck Raycast : Actif\n" ..
"Fréquence de rafraîchissement : Optimisée"
VersionInfoLabel.TextColor3 = Color3.fromRGB(220, 220, 220)
VersionInfoLabel.TextSize = 13
VersionInfoLabel.TextXAlignment = Enum.TextXAlignment.Left
VersionInfoLabel.TextYAlignment = Enum.TextYAlignment.Top
VersionInfoLabel.Parent = VersionContainer
local VersionPadding = Instance.new("UIPadding")
VersionPadding.PaddingLeft = UDim.new(0, 15)
VersionPadding.PaddingTop = UDim.new(0, 15)
VersionPadding.Parent = VersionInfoLabel
local VersionInfoCorner = Instance.new("UICorner")
VersionInfoCorner.CornerRadius = UDim.new(0, 6)
VersionInfoCorner.Parent = VersionInfoLabel
local function CreateToggle(parent, name, default, callback)
local ToggleButton = Instance.new("TextButton")
ToggleButton.Size = UDim2.new(1, 0, 0, 40)
ToggleButton.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
ToggleButton.BorderSizePixel = 0
ToggleButton.Text = ""
ToggleButton.Parent = parent
local ToggleCorner = Instance.new("UICorner")
ToggleCorner.CornerRadius = UDim.new(0, 6)
ToggleCorner.Parent = ToggleButton
local Label = Instance.new("TextLabel")
Label.Size = UDim2.new(1, -60, 1, 0)
Label.Position = UDim2.new(0, 15, 0, 0)
Label.BackgroundTransparency = 1
Label.Font = Enum.Font.GothamMedium
Label.Text = name
Label.TextColor3 = Color3.fromRGB(220, 220, 220)
Label.TextSize = 14
Label.TextXAlignment = Enum.TextXAlignment.Left
Label.Parent = ToggleButton
local Status = Instance.new("Frame")
Status.Size = UDim2.new(0, 24, 0, 24)
Status.Position = UDim2.new(1, -35, 0.5, -12)
Status.BackgroundColor3 = default and Color3.fromRGB(0, 200, 100) or Color3.fromRGB(60, 60, 70)
Status.BorderSizePixel = 0
Status.Parent = ToggleButton
local StatusCorner = Instance.new("UICorner")
StatusCorner.CornerRadius = UDim.new(0, 4)
StatusCorner.Parent = Status
local state = default
ToggleButton.MouseButton1Click:Connect(function()
state = not state
Status.BackgroundColor3 = state and Color3.fromRGB(0, 200, 100) or Color3.fromRGB(60, 60, 70)
callback(state)
end)
end
local function CreateSlider(parent, name, min, max, default, callback)
local SliderFrame = Instance.new("Frame")
SliderFrame.Size = UDim2.new(1, 0, 0, 55)
SliderFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 50)
SliderFrame.BorderSizePixel = 0
SliderFrame.Parent = parent
local SliderCorner = Instance.new("UICorner")
SliderCorner.CornerRadius = UDim.new(0, 6)
SliderCorner.Parent = SliderFrame
local Label = Instance.new("TextLabel")
Label.Size = UDim2.new(1, -20, 0, 25)
Label.Position = UDim2.new(0, 15, 0, 5)
Label.BackgroundTransparency = 1
Label.Font = Enum.Font.GothamMedium
Label.Text = name .. " : " .. tostring(default)
Label.TextColor3 = Color3.fromRGB(220, 220, 220)
Label.TextSize = 14
Label.TextXAlignment = Enum.TextXAlignment.Left
Label.Parent = SliderFrame
local Bar = Instance.new("Frame")
Bar.Size = UDim2.new(1, -30, 0, 6)
Bar.Position = UDim2.new(0, 15, 0, 38)
Bar.BackgroundColor3 = Color3.fromRGB(60, 60, 75)
Bar.BorderSizePixel = 0
Bar.Parent = SliderFrame
local BarCorner = Instance.new("UICorner")
BarCorner.CornerRadius = UDim.new(1, 0)
BarCorner.Parent = Bar
local Knob = Instance.new("TextButton")
Knob.Size = UDim2.new(0, 16, 0, 16)
Knob.Position = UDim2.new((default - min) / (max - min), -8, 0.5, -8)
Knob.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
Knob.BorderSizePixel = 0
Knob.Text = ""
Knob.Parent = Bar
local KnobCorner = Instance.new("UICorner")
KnobCorner.CornerRadius = UDim.new(1, 0)
KnobCorner.Parent = Knob
local dragging = false
Knob.MouseButton1Down:Connect(function()
dragging = true
end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = false
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then
local mousePos = UserInputService:GetMouseLocation().X
local barPos = Bar.AbsolutePosition.X
local barSize = Bar.AbsoluteSize.X
local percent = math.clamp((mousePos - barPos) / barSize, 0, 1)
Knob.Position = UDim2.new(percent, -8, 0.5, -8)
local value = math.floor(min + (max - min) * percent)
Label.Text = name .. " : " .. tostring(value)
callback(value)
end
end)
end
local AutoShootWidget = Instance.new("ScreenGui")
AutoShootWidget.Name = "AutoShootWidgetGUI"
AutoShootWidget.ResetOnSpawn = false
AutoShootWidget.Enabled = false
AutoShootWidget.Parent = game.CoreGui
local WidgetBtn = Instance.new("TextButton")
WidgetBtn.Size = UDim2.new(0, 140, 0, 45)
WidgetBtn.Position = UDim2.new(0.5, -70, 0.1, 0)
WidgetBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
WidgetBtn.BorderSizePixel = 0
WidgetBtn.Active = true
WidgetBtn.Draggable = true
WidgetBtn.Font = Enum.Font.GothamBold
WidgetBtn.Text = "AUTO-SHOOT [OFF]"
WidgetBtn.TextColor3 = Color3.fromRGB(255, 255, 255)
WidgetBtn.TextSize = 12
WidgetBtn.Parent = AutoShootWidget
local WidgetCorner = Instance.new("UICorner")
WidgetCorner.CornerRadius = UDim.new(0, 8)
WidgetCorner.Parent = WidgetBtn
local widgetActive = false
WidgetBtn.MouseButton1Click:Connect(function()
widgetActive = not widgetActive
if widgetActive then
WidgetBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 100)
WidgetBtn.Text = "AUTO-SHOOT [ON]"
else
WidgetBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
WidgetBtn.Text = "AUTO-SHOOT [OFF]"
end
end)
-- Options Aimbot avec Speed Aim & WallCheck
CreateToggle(AimbotContainer, "1. Activer l'Aimbot", false, function(state)
getgenv().AimbotSettings.Enabled = state
end)
CreateSlider(AimbotContainer, "Speed Aim (Vitesse de verrouillage)", 1, 50, 15, function(value)
getgenv().AimbotSettings.AimSpeed = value
end)
CreateToggle(AimbotContainer, "2. Activer AutoShoot (Affiche le widget)", false, function(state)
getgenv().AimbotSettings.AutoShoot = state
AutoShootWidget.Enabled = state
if not state then
widgetActive = false
WidgetBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
WidgetBtn.Text = "AUTO-SHOOT [OFF]"
end
end)
CreateSlider(AimbotContainer, "FOV (Taille de la zone)", 50, 500, 200, function(value)
getgenv().AimbotSettings.FOV = value
end)
CreateToggle(AimbotContainer, "- 3. Afficher le Cube 3D (Box ESP Joueurs)", false, function(state)
getgenv().AimbotSettings.Box3DEnabled = state
if not state then
for player, _ in pairs(Box3DObjects) do
RemoveBox3D(player)
end
end
end)
CreateToggle(AimbotContainer, "4. Vérification d'équipe (TeamCheck)", true, function(state)
getgenv().AimbotSettings.TeamCheck = state
end)
CreateToggle(AimbotContainer, "5. Vérification des murs (WallCheck)", true, function(state)
getgenv().AimbotSettings.WallCheck = state
end)
CreateToggle(AimbotContainer, "6. Viser la Tête (Head)", true, function(state)
getgenv().AimbotSettings.TargetPart = state and "Head" or "HumanoidRootPart"
end)
CreateToggle(AimbotContainer, "7. Afficher le cercle FOV", true, function(state)
getgenv().AimbotSettings.ShowFOV = state
end)
CreateToggle(AimbotContainer, "8. Prédiction de mouvement", false, function(state)
getgenv().AimbotSettings.Prediction = state
end)
CreateToggle(AimbotContainer, "9. SpinBot (Rotation rapide)", false, function(state)
getgenv().AimbotSettings.SpinBot = state
end)
CreateToggle(AimbotContainer, "10. Saut infini (Infinite Jump)", false, function(state)
getgenv().AimbotSettings.InfiniteJump = state
end)
CreateToggle(AimbotContainer, "11. Vitesse augmentée (WalkSpeed)", false, function(state)
getgenv().AimbotSettings.WalkSpeedVal = state and 28 or 16
if LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") then
LocalPlayer.Character.Humanoid.WalkSpeed = getgenv().AimbotSettings.WalkSpeedVal
end
end)
-- === ONGLET HITBOX EXPANDER ===
CreateToggle(HitboxContainer, "1. Activer Hitbox Expander", false, function(state)
getgenv().AimbotSettings.HitboxEnabled = state
end)
CreateSlider(HitboxContainer, "2. Taille de la Hitbox (Scale)", 1, 20, 2, function(value)
getgenv().AimbotSettings.HitboxSize = value
end)
CreateSlider(HitboxContainer, "3. Transparence de la Hitbox", 0, 10, 5, function(value)
getgenv().AimbotSettings.HitboxTransparency = value / 10
end)
CreateToggle(HitboxContainer, "- 4. Afficher le Cube (SelectionBox Hitbox)", true, function(state)
getgenv().AimbotSettings.HitboxVisible = state
end)
CreateToggle(HitboxContainer, "5. Viser le Torse (RootPart)", false, function(state)
getgenv().AimbotSettings.HitboxTargetPart = state and "HumanoidRootPart" or "Head"
end)
CreateToggle(HitboxContainer, "6. Ignorer les Amis (FriendCheck)", true, function(state)
getgenv().AimbotSettings.FriendCheck = state
end)
CreateToggle(HitboxContainer, "7. Mode Silencieux (No Sound/Alert)", true, function(state)
getgenv().AimbotSettings.SilentMode = state
end)
CreateToggle(HitboxContainer, "8. Auto-Reset sur Respawn", true, function(state)
getgenv().AimbotSettings.AutoReset = state
end)
CreateToggle(HitboxContainer, "9. Verrouillage de la caméra en continu", false, function(state)
getgenv().AimbotSettings.ContinuousLock = state
end)
CreateToggle(HitboxContainer, "10. Anti-Collision Hitbox", true, function(state)
getgenv().AimbotSettings.AntiCollision = state
end)
CreateToggle(HitboxContainer, "11. Boost de précision Hitbox+", false, function(state)
getgenv().AimbotSettings.PrecisionBoost = state
end)
CreateToggle(SettingsContainer, "Mode Discret / Anti-Crash", true, function(state)
print("Anti-Crash : " .. tostring(state))
end)
local CloseButton = Instance.new("TextButton")
CloseButton.Size = UDim2.new(1, 0, 0, 40)
CloseButton.BackgroundColor3 = Color3.fromRGB(180, 40, 40)
CloseButton.BorderSizePixel = 0
CloseButton.Font = Enum.Font.GothamBold
CloseButton.Text = "Fermer / Supprimer le Script"
CloseButton.TextColor3 = Color3.fromRGB(255, 255, 255)
CloseButton.TextSize = 14
CloseButton.Parent = SettingsContainer
local CloseCorner = Instance.new("UICorner")
CloseCorner.CornerRadius = UDim.new(0, 6)
CloseCorner.Parent = CloseButton
CloseButton.MouseButton1Click:Connect(function()
ScreenGui:Destroy()
AutoShootWidget:Destroy()
for player, _ in pairs(Box3DObjects) do
RemoveBox3D(player)
end
for player, _ in pairs(HitboxBoxes) do
RemoveHitboxCube(player)
end
end)
UserInputService.JumpRequest:Connect(function()
if getgenv().AimbotSettings.InfiniteJump and LocalPlayer.Character and LocalPlayer.Character:FindFirstChildOfClass("Humanoid") then
LocalPlayer.Character.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
end
end)
-- Cercle FOV natif stable
local FOVGui = Instance.new("ScreenGui")
FOVGui.Name = "FOVCircleGUI"
FOVGui.ResetOnSpawn = false
FOVGui.Parent = game.CoreGui
local FOVFrame = Instance.new("Frame")
FOVFrame.Name = "Ring"
FOVFrame.AnchorPoint = Vector2.new(0.5, 0.5)
FOVFrame.BackgroundTransparency = 1
FOVFrame.BorderSizePixel = 0
FOVFrame.Parent = FOVGui
local FOVUIStroke = Instance.new("UIStroke")
FOVUIStroke.Color = Color3.fromRGB(255, 255, 255)
FOVUIStroke.Thickness = 1.5
FOVUIStroke.Transparency = 0.3
FOVUIStroke.Parent = FOVFrame
local FOVUICorner = Instance.new("UICorner")
FOVUICorner.CornerRadius = UDim.new(1, 0)
FOVUICorner.Parent = FOVFrame
-- Fonction pour trouver la cible la plus proche avec prise en compte du WallCheck
local function GetClosestPlayer()
local closestPlayer = nil
local shortestDistance = getgenv().AimbotSettings.FOV
local screenCenter = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
if UserInputService.MouseBehavior == Enum.MouseBehavior.LockCenter then
screenCenter = screenCenter + Vector2.new(15, 0)
end
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
if getgenv().AimbotSettings.TeamCheck and LocalPlayer.Team and player.Team and player.Team == LocalPlayer.Team then
continue
end
if getgenv().AimbotSettings.FriendCheck and LocalPlayer:IsFriendsWith(player.UserId) then
continue
end
local character = player.Character
if character and character:FindFirstChild("Humanoid") and character.Humanoid.Health > 0 then
local targetPart = character:FindFirstChild(getgenv().AimbotSettings.TargetPart)
if targetPart then
local screenPoint, onScreen = Camera:WorldToViewportPoint(targetPart.Position)
if onScreen then
local distance = (Vector2.new(screenPoint.X, screenPoint.Y) - screenCenter).Magnitude
-- Vérification de la distance (FOV) ET de la visibilité réelle (WallCheck)
if distance < shortestDistance and IsVisible(targetPart) then
shortestDistance = distance
closestPlayer = character
end
end
end
end
end
end
return closestPlayer
end
RunService.RenderStepped:Connect(function()
FOVFrame.Visible = getgenv().AimbotSettings.ShowFOV
local diameter = getgenv().AimbotSettings.FOV * 2
FOVFrame.Size = UDim2.new(0, diameter, 0, diameter)
local currentScreenCenter = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
if UserInputService.MouseBehavior == Enum.MouseBehavior.LockCenter then
currentScreenCenter = currentScreenCenter + Vector2.new(15, 0)
end
FOVFrame.Position = UDim2.new(0, currentScreenCenter.X, 0, currentScreenCenter.Y)
-- Logique Hitbox Expander
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
if getgenv().AimbotSettings.FriendCheck and LocalPlayer:IsFriendsWith(player.UserId) then
continue
end
local character = player.Character
if character and character:FindFirstChild("Humanoid") and character.Humanoid.Health > 0 then
local partName = getgenv().AimbotSettings.HitboxTargetPart
local targetPart = character:FindFirstChild(partName)
if targetPart then
if getgenv().AimbotSettings.HitboxEnabled then
local scale = getgenv().AimbotSettings.HitboxSize
if getgenv().AimbotSettings.PrecisionBoost then
scale = scale * 1.25
end
targetPart.Size = Vector3.new(scale * 2, scale * 2, scale * 2)
targetPart.Transparency = getgenv().AimbotSettings.HitboxVisible and getgenv().AimbotSettings.HitboxTransparency or 1
targetPart.CanCollide = not getgenv().AimbotSettings.AntiCollision
if getgenv().AimbotSettings.HitboxVisible then
if not HitboxBoxes[player] then
local selectionBox = Instance.new("SelectionBox")
selectionBox.Color3 = Color3.fromRGB(0, 255, 100)
selectionBox.LineThickness = 0.03
selectionBox.SurfaceTransparency = 0.8
selectionBox.Parent = game.CoreGui
HitboxBoxes[player] = selectionBox
end
HitboxBoxes[player].Adornee = targetPart
HitboxBoxes[player].Visible = true
else
if HitboxBoxes[player] then
HitboxBoxes[player].Visible = false
end
end
else
targetPart.Size = Vector3.new(2, 1, 1)
targetPart.Transparency = 1
targetPart.CanCollide = true
RemoveHitboxCube(player)
end
else
RemoveHitboxCube(player)
end
else
RemoveHitboxCube(player)
end
else
RemoveHitboxCube(player)
end
end
-- Logique Cube 3D (Box ESP)
for _, player in ipairs(Players:GetPlayers()) do
if player ~= LocalPlayer then
if getgenv().AimbotSettings.Box3DEnabled then
local character = player.Character
if character and character:FindFirstChild("HumanoidRootPart") and character:FindFirstChild("Humanoid") and character.Humanoid.Health > 0 then
if not Box3DObjects[player] then
local selectionBox = Instance.new("SelectionBox")
selectionBox.Color3 = Color3.fromRGB(0, 255, 100)
selectionBox.LineThickness = 0.04
selectionBox.SurfaceTransparency = 0.9
selectionBox.Parent = game.CoreGui
Box3DObjects[player] = selectionBox
end
Box3DObjects[player].Adornee = character
Box3DObjects[player].Visible = true
else
RemoveBox3D(player)
end
else
RemoveBox3D(player)
end
end
end
if getgenv().AimbotSettings.SpinBot and LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") then
LocalPlayer.Character.HumanoidRootPart.CFrame = LocalPlayer.Character.HumanoidRootPart.CFrame * CFrame.Angles(0, math.rad(30), 0)
end
-- Logique Aimbot avec Speed Aim & WallCheck
if getgenv().AimbotSettings.Enabled or getgenv().AimbotSettings.ContinuousLock then
local target = GetClosestPlayer()
if target and target:FindFirstChild(getgenv().AimbotSettings.TargetPart) then
local targetPart = target[getgenv().AimbotSettings.TargetPart]
local finalPosition = targetPart.Position
if getgenv().AimbotSettings.Prediction and target:FindFirstChild("HumanoidRootPart") then
local velocity = target.HumanoidRootPart.AssemblyLinearVelocity
finalPosition = finalPosition + (velocity * getgenv().AimbotSettings.PredictionFactor)
end
local targetCFrame = CFrame.new(Camera.CFrame.Position, finalPosition)
local speedFactor = math.clamp(getgenv().AimbotSettings.AimSpeed / 25, 0.05, 1)
Camera.CFrame = Camera.CFrame:Lerp(targetCFrame, speedFactor)
if getgenv().AimbotSettings.AutoShoot and widgetActive then
pcall(function()
VirtualUser:Button1Down(Vector2.new(0,0))
task.wait(0.05)
VirtualUser:Button1Up(Vector2.new(0,0))
end)
end
end
end
end)
end)No comments yet for this script.



