
Key Required Verified

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UIS = game:GetService("UserInputService")
local Camera = workspace.CurrentCamera
local LP = Players.LocalPlayer
local HttpService = game:GetService("HttpService")
_G.Config = {
Aimbot = false,
AimbotUseVisibleCheck = true,
Smoothness = 0.5,
Fov = 150,
ShowFov = true,
Esp = false,
EspBoxes = true,
EspNames = true,
EspTeamMode = "Enemies",
UseTeamCheck = true,
UseVisCheck = true,
EnemyColor = Color3.fromRGB(150, 200, 60),
TeammateColor = Color3.fromRGB(60, 150, 200),
HighlightColor = Color3.fromRGB(255, 0, 0),
EspHealthBar = true,
EspDistance = true,
EspTracers = true,
EspHeadDot = true,
MiscBhop = false,
MiscSpeed = false,
SpeedAmount = 30,
MiscNoclip = false,
MiscAntiAim = false,
MiscThirdPerson = false,
MiscHideWeapon = false,
MiscUnderMapKill = false,
UnderMapDepth = 50,
UnderMapTeleportDelay = 0.5,
MenuKey = Enum.KeyCode.Insert,
AutoFire = false,
TriggerBot = false,
TriggerBotDelay = 0.1,
SilentAim = false,
HitChance = 100,
AimPart = "Head",
RecoilControl = false,
NoSpread = false,
InstantRespawn = false,
AutoStomp = false,
InfiniteJump = false,
FlyHack = false,
FlySpeed = 50,
WallBang = false,
KillAll = false,
AutoFarm = false,
TeleportToEnemy = false,
ConfigName = "default"
}
local Configs = {}
local currentConfigName = "default"
local UI_Elements = {}
local function deepCopy(original)
local copy = {}
for key, value in pairs(original) do
if type(value) == "table" then
copy[key] = deepCopy(value)
else
copy[key] = value
end
end
return copy
end
local function SaveConfig(name)
local configToSave = {}
for key, value in pairs(_G.Config) do
if key ~= "ConfigName" then
configToSave[key] = value
end
end
Configs[name] = deepCopy(configToSave)
if writefile then
local success, err = pcall(function()
local json = HttpService:JSONEncode(configToSave)
writefile("karma_config_" .. name .. ".json", json)
end)
if success then
return true
else
warn("Ошибка сохранения конфига:", err)
return false
end
end
return true
end
local function LoadConfig(name)
local configData = nil
if Configs[name] then
configData = Configs[name]
elseif readfile then
local success, data = pcall(function()
return readfile("karma_config_" .. name .. ".json")
end)
if success and data then
local success2, decoded = pcall(function()
return HttpService:JSONDecode(data)
end)
if success2 then
configData = decoded
Configs[name] = deepCopy(decoded)
end
end
end
if not configData then
warn("Конфиг не найден:", name)
return false
end
for key, value in pairs(configData) do
if _G.Config[key] ~= nil then
_G.Config[key] = value
end
end
_G.Config.ConfigName = name
currentConfigName = name
for config_key, elements in pairs(UI_Elements) do
for _, element in ipairs(elements) do
if element.Type == "Toggle" then
element.Box.BackgroundColor3 = _G.Config[config_key] and Color3.fromRGB(150, 200, 60) or Color3.fromRGB(40, 40, 40)
element.Label.TextColor3 = _G.Config[config_key] and Color3.new(1,1,1) or Color3.fromRGB(180, 180, 180)
elseif element.Type == "Slider" then
element.Label.Text = element.Name .. ": " .. _G.Config[config_key]
if element.Max and element.Max > 0 then
element.Fill.Size = UDim2.new((_G.Config[config_key]/element.Max), 0, 1, 0)
end
elseif element.Type == "TeamMode" then
element.Btn.Text = "Mode: " .. _G.Config[config_key]
end
end
end
return true
end
local function DeleteConfig(name)
if Configs[name] then
Configs[name] = nil
end
if delfile then
pcall(function()
delfile("karma_config_" .. name .. ".json")
end)
end
if currentConfigName == name then
currentConfigName = "default"
_G.Config.ConfigName = "default"
end
end
local function ListConfigs()
local configList = {}
if listfiles then
local success, files = pcall(function()
return listfiles("")
end)
if success then
for _, file in ipairs(files) do
if string.find(file, "karma_config_") then
local configName = string.gsub(file, "karma_config_", "")
configName = string.gsub(configName, ".json", "")
table.insert(configList, configName)
end
end
end
end
for name, _ in pairs(Configs) do
if not table.find(configList, name) then
table.insert(configList, name)
end
end
return configList
end
local function ResetToDefault()
local defaultConfig = {
Aimbot = false,
AimbotUseVisibleCheck = true,
Smoothness = 0.5,
Fov = 150,
ShowFov = true,
Esp = false,
EspBoxes = true,
EspNames = true,
EspTeamMode = "Enemies",
UseTeamCheck = true,
UseVisCheck = true,
EnemyColor = Color3.fromRGB(150, 200, 60),
TeammateColor = Color3.fromRGB(60, 150, 200),
HighlightColor = Color3.fromRGB(255, 0, 0),
EspHealthBar = true,
EspDistance = true,
EspTracers = true,
EspHeadDot = true,
MiscBhop = false,
MiscSpeed = false,
SpeedAmount = 30,
MiscNoclip = false,
MiscAntiAim = false,
MiscThirdPerson = false,
MiscHideWeapon = false,
MiscUnderMapKill = false,
UnderMapDepth = 50,
UnderMapTeleportDelay = 0.5,
MenuKey = Enum.KeyCode.Insert,
AutoFire = false,
TriggerBot = false,
TriggerBotDelay = 0.1,
SilentAim = false,
HitChance = 100,
AimPart = "Head",
RecoilControl = false,
NoSpread = false,
InstantRespawn = false,
AutoStomp = false,
InfiniteJump = false,
FlyHack = false,
FlySpeed = 50,
WallBang = false,
KillAll = false,
AutoFarm = false,
TeleportToEnemy = false
}
for key, value in pairs(defaultConfig) do
_G.Config[key] = value
end
_G.Config.ConfigName = "default"
currentConfigName = "default"
for config_key, elements in pairs(UI_Elements) do
for _, element in ipairs(elements) do
if element.Type == "Toggle" then
element.Box.BackgroundColor3 = _G.Config[config_key] and Color3.fromRGB(150, 200, 60) or Color3.fromRGB(40, 40, 40)
element.Label.TextColor3 = _G.Config[config_key] and Color3.new(1,1,1) or Color3.fromRGB(180, 180, 180)
elseif element.Type == "Slider" then
element.Label.Text = element.Name .. ": " .. _G.Config[config_key]
if element.Max and element.Max > 0 then
element.Fill.Size = UDim2.new((_G.Config[config_key]/element.Max), 0, 1, 0)
end
elseif element.Type == "TeamMode" then
element.Btn.Text = "Mode: " .. _G.Config[config_key]
end
end
end
end
local function isEnemy(p)
if p == LP or not LP.Character or not p.Character then return false end
if not _G.Config.UseTeamCheck then return true end
local LPTeamFolder = LP.Character.Parent
local PlayerTeamFolder = p.Character.Parent
local inSameTeam = (LPTeamFolder == PlayerTeamFolder)
if _G.Config.EspTeamMode == "Enemies" then return not inSameTeam
elseif _G.Config.EspTeamMode == "Teammates" then return inSameTeam
elseif _G.Config.EspTeamMode == "All" then return true end
return false
end
local function isVisibleForAimbot(targetChar)
if not _G.Config.AimbotUseVisibleCheck then return true end
if not targetChar or not LP.Character then return false end
local origin = LP.Character:FindFirstChild("Head")
if not origin then origin = LP.Character:FindFirstChild("HumanoidRootPart") end
if not origin then return false end
local targetHead = targetChar:FindFirstChild("Head")
if not targetHead then return false end
local originPos = origin.Position
local targetPos = targetHead.Position
local direction = (targetPos - originPos)
local distance = direction.Magnitude
if distance == 0 then return true end
local rayParams = RaycastParams.new()
rayParams.FilterDescendantsInstances = {LP.Character, targetChar}
rayParams.FilterType = Enum.RaycastFilterType.Exclude
rayParams.IgnoreWater = true
local result = workspace:Raycast(originPos, direction, rayParams)
return result == nil or result.Distance >= distance - 1
end
local ScreenGui = Instance.new("ScreenGui", game:GetService("CoreGui"))
local MainFrame = Instance.new("Frame", ScreenGui)
MainFrame.Name = "SkeetMenu"
MainFrame.Size = UDim2.new(0, 520, 0, 420)
MainFrame.Position = UDim2.new(0.5, -260, 0.5, -210)
MainFrame.BackgroundColor3 = Color3.fromRGB(17, 17, 17)
MainFrame.BorderColor3 = Color3.fromRGB(45, 45, 45)
MainFrame.BorderSizePixel = 1
local Outline = Instance.new("Frame", MainFrame)
Outline.Size = UDim2.new(1, 4, 1, 4)
Outline.Position = UDim2.new(0, -2, 0, -2)
Outline.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
Outline.ZIndex = 0
local AccentBar = Instance.new("Frame", MainFrame)
AccentBar.Size = UDim2.new(1, 0, 0, 2)
AccentBar.BackgroundColor3 = Color3.fromRGB(150, 200, 60)
AccentBar.BorderSizePixel = 0
AccentBar.ZIndex = 2
local Sidebar = Instance.new("Frame", MainFrame)
Sidebar.Size = UDim2.new(0, 110, 1, -2)
Sidebar.Position = UDim2.new(0, 0, 0, 2)
Sidebar.BackgroundColor3 = Color3.fromRGB(22, 22, 22)
Sidebar.BorderSizePixel = 0
local SidebarLayout = Instance.new("UIListLayout", Sidebar)
SidebarLayout.Padding = UDim.new(0, 5)
SidebarLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center
SidebarLayout.SortOrder = Enum.SortOrder.LayoutOrder
SidebarLayout.VerticalAlignment = Enum.VerticalAlignment.Top
local TopSpacer = Instance.new("Frame", Sidebar)
TopSpacer.Size = UDim2.new(1, 0, 0, 10)
TopSpacer.BackgroundTransparency = 1
TopSpacer.LayoutOrder = 0
local TabContainer = Instance.new("Frame", MainFrame)
TabContainer.Size = UDim2.new(1, -125, 1, -45)
TabContainer.Position = UDim2.new(0, 120, 0, 35)
TabContainer.BackgroundTransparency = 1
local Tabs = {
Aimbot = Instance.new("ScrollingFrame", TabContainer),
Visuals = Instance.new("ScrollingFrame", TabContainer),
Misc = Instance.new("ScrollingFrame", TabContainer),
Combat = Instance.new("ScrollingFrame", TabContainer),
Movement = Instance.new("ScrollingFrame", TabContainer),
Config = Instance.new("ScrollingFrame", TabContainer)
}
for _, frame in pairs(Tabs) do
frame.Size = UDim2.new(1, 0, 1, 0)
frame.BackgroundTransparency = 1
frame.Visible = false
frame.ScrollBarThickness = 0
local layout = Instance.new("UIListLayout", frame)
layout.Padding = UDim.new(0, 12)
layout.SortOrder = Enum.SortOrder.LayoutOrder
end
Tabs.Aimbot.Visible = true
local Title = Instance.new("TextLabel", MainFrame)
Title.Text = "gamesense"
Title.Size = UDim2.new(0, 100, 0, 25)
Title.Position = UDim2.new(0, 10, 0, 4)
Title.BackgroundTransparency = 1
Title.TextColor3 = Color3.new(1, 1, 1)
Title.Font = Enum.Font.Code
Title.TextSize = 14
Title.TextXAlignment = Enum.TextXAlignment.Left
local function CreateTabBtn(name)
local Btn = Instance.new("TextButton", Sidebar)
Btn.Name = name .. "TabButton"
Btn.Size = UDim2.new(1, -20, 0, 40)
Btn.BackgroundTransparency = 1
Btn.Text = name:lower()
Btn.Font = Enum.Font.Code
Btn.TextSize = 14
Btn.TextColor3 = (name == "Aimbot" and Color3.new(1,1,1) or Color3.fromRGB(150, 150, 150))
Btn.MouseButton1Click:Connect(function()
for tName, tFrame in pairs(Tabs) do tFrame.Visible = (tName == name) end
for _, b in pairs(Sidebar:GetChildren()) do
if b:IsA("TextButton") then b.TextColor3 = Color3.fromRGB(150, 150, 150) end
end
Btn.TextColor3 = Color3.new(1,1,1)
end)
end
local function CreateToggle(parent, name, config_key, callback)
local TglBtn = Instance.new("TextButton", parent)
TglBtn.Size = UDim2.new(1, 0, 0, 20)
TglBtn.BackgroundTransparency = 1
TglBtn.Text = ""
local Box = Instance.new("Frame", TglBtn)
Box.Size = UDim2.new(0, 10, 0, 10)
Box.Position = UDim2.new(0, 5, 0.5, -5)
Box.BackgroundColor3 = _G.Config[config_key] and Color3.fromRGB(150, 200, 60) or Color3.fromRGB(40, 40, 40)
Box.BorderSizePixel = 1
local Label = Instance.new("TextLabel", TglBtn)
Label.Size = UDim2.new(1, -25, 1, 0)
Label.Position = UDim2.new(0, 25, 0, 0)
Label.Text = name
Label.TextColor3 = _G.Config[config_key] and Color3.new(1,1,1) or Color3.fromRGB(180, 180, 180)
Label.Font = Enum.Font.Code
Label.TextSize = 13
Label.TextXAlignment = Enum.TextXAlignment.Left
Label.BackgroundTransparency = 1
if not UI_Elements[config_key] then
UI_Elements[config_key] = {}
end
table.insert(UI_Elements[config_key], {
Type = "Toggle",
Box = Box,
Label = Label
})
TglBtn.MouseButton1Click:Connect(function()
_G.Config[config_key] = not _G.Config[config_key]
Box.BackgroundColor3 = _G.Config[config_key] and Color3.fromRGB(150, 200, 60) or Color3.fromRGB(40, 40, 40)
Label.TextColor3 = _G.Config[config_key] and Color3.new(1,1,1) or Color3.fromRGB(180, 180, 180)
if callback then callback(_G.Config[config_key]) end
end)
return TglBtn
end
local function CreateSlider(parent, name, min, max, config_key, callback)
local SldFrame = Instance.new("Frame", parent)
SldFrame.Size = UDim2.new(1, -10, 0, 35)
SldFrame.BackgroundTransparency = 1
local Label = Instance.new("TextLabel", SldFrame)
Label.Text = name .. ": " .. _G.Config[config_key]
Label.Size = UDim2.new(1, 0, 0, 15)
Label.TextColor3 = Color3.fromRGB(200, 200, 200)
Label.Font = Enum.Font.Code
Label.TextSize = 12
Label.TextXAlignment = Enum.TextXAlignment.Left
Label.BackgroundTransparency = 1
local Bar = Instance.new("Frame", SldFrame)
Bar.Size = UDim2.new(1, 0, 0, 5)
Bar.Position = UDim2.new(0, 0, 0, 22)
Bar.BackgroundColor3 = Color3.fromRGB(35, 35, 35)
Bar.BorderSizePixel = 1
local Fill = Instance.new("Frame", Bar)
Fill.Size = UDim2.new((_G.Config[config_key]/max), 0, 1, 0)
Fill.BackgroundColor3 = Color3.fromRGB(150, 200, 60)
Fill.BorderSizePixel = 0
if not UI_Elements[config_key] then
UI_Elements[config_key] = {}
end
table.insert(UI_Elements[config_key], {
Type = "Slider",
Name = name,
Label = Label,
Fill = Fill,
Max = max,
Min = min
})
local function UpdateSlider(input)
local per = math.clamp((input.Position.X - Bar.AbsolutePosition.X) / Bar.AbsoluteSize.X, 0, 1)
local val = math.floor(min + (max - min) * per)
Fill.Size = UDim2.new(per, 0, 1, 0)
Label.Text = name .. ": " .. val
_G.Config[config_key] = val
if callback then callback(val) end
end
local draggingBar = false
Bar.InputBegan:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then
draggingBar = true;
UpdateSlider(i);
end
end)
UIS.InputEnded:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then draggingBar = false end
end)
UIS.InputChanged:Connect(function(i)
if draggingBar and i.UserInputType == Enum.UserInputType.MouseMovement then UpdateSlider(i) end
end)
return SldFrame
end
local function CreateTeamModeBtn(parent)
local Btn = Instance.new("TextButton", parent)
Btn.Size = UDim2.new(1, 0, 0, 20)
Btn.BackgroundTransparency = 1
Btn.Font = Enum.Font.Code
Btn.TextSize = 13
Btn.TextXAlignment = Enum.TextXAlignment.Left
local modes = {"Enemies", "Teammates", "All"}
local currentModeIndex = 1
for i, mode in ipairs(modes) do
if mode == _G.Config.EspTeamMode then
currentModeIndex = i
break
end
end
local function UpdateText()
Btn.Text = "Mode: " .. modes[currentModeIndex]
_G.Config.EspTeamMode = modes[currentModeIndex]
end
UpdateText()
if not UI_Elements["EspTeamMode"] then
UI_Elements["EspTeamMode"] = {}
end
table.insert(UI_Elements["EspTeamMode"], {
Type = "TeamMode",
Btn = Btn
})
Btn.MouseButton1Click:Connect(function()
currentModeIndex = currentModeIndex % #modes + 1
UpdateText()
end)
return Btn
end
local function CreateButton(parent, name, callback)
local Btn = Instance.new("TextButton", parent)
Btn.Size = UDim2.new(1, -10, 0, 25)
Btn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
Btn.BorderSizePixel = 1
Btn.BorderColor3 = Color3.fromRGB(80, 80, 80)
Btn.Text = name
Btn.Font = Enum.Font.Code
Btn.TextSize = 12
Btn.TextColor3 = Color3.fromRGB(200, 200, 200)
Btn.MouseEnter:Connect(function()
Btn.BackgroundColor3 = Color3.fromRGB(50, 50, 50)
end)
Btn.MouseLeave:Connect(function()
Btn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
end)
Btn.MouseButton1Click:Connect(callback)
return Btn
end
CreateTabBtn("Aimbot")
CreateTabBtn("Visuals")
CreateTabBtn("Combat")
CreateTabBtn("Movement")
CreateTabBtn("Misc")
CreateTabBtn("Config")
CreateToggle(Tabs.Aimbot, "Enabled", "Aimbot")
CreateToggle(Tabs.Aimbot, "Visible Check", "AimbotUseVisibleCheck")
CreateToggle(Tabs.Aimbot, "Silent Aim", "SilentAim")
CreateToggle(Tabs.Aimbot, "No Recoil", "RecoilControl")
CreateToggle(Tabs.Aimbot, "No Spread", "NoSpread")
CreateSlider(Tabs.Aimbot, "FOV Radius", 10, 600, "Fov")
CreateSlider(Tabs.Aimbot, "Smoothing", 1, 50, "Smoothness", function(v) _G.Config.Smoothness = v/10 end)
CreateSlider(Tabs.Aimbot, "Hit Chance %", 0, 100, "HitChance")
CreateTeamModeBtn(Tabs.Visuals)
CreateToggle(Tabs.Visuals, "Enable ESP", "Esp")
CreateToggle(Tabs.Visuals, "Use Team Check", "UseTeamCheck")
CreateToggle(Tabs.Visuals, "Use Visible Check", "UseVisCheck")
CreateToggle(Tabs.Visuals, "Draw Boxes", "EspBoxes")
CreateToggle(Tabs.Visuals, "Draw Names", "EspNames")
CreateToggle(Tabs.Visuals, "Health Bar", "EspHealthBar")
CreateToggle(Tabs.Visuals, "Distance Text", "EspDistance")
CreateToggle(Tabs.Visuals, "Tracers", "EspTracers")
CreateToggle(Tabs.Visuals, "Head Dot", "EspHeadDot")
CreateToggle(Tabs.Visuals, "Show FOV Circle", "ShowFov")
CreateToggle(Tabs.Combat, "Auto Fire", "AutoFire")
CreateToggle(Tabs.Combat, "Trigger Bot", "TriggerBot")
CreateSlider(Tabs.Combat, "Trigger Delay", 1, 100, "TriggerBotDelay", function(v) _G.Config.TriggerBotDelay = v/100 end)
CreateToggle(Tabs.Combat, "Wall Bang", "WallBang")
CreateToggle(Tabs.Combat, "Auto Stomp", "AutoStomp")
CreateToggle(Tabs.Combat, "Kill All", "KillAll")
CreateToggle(Tabs.Combat, "Auto Farm", "AutoFarm")
CreateToggle(Tabs.Movement, "Bhop", "MiscBhop")
CreateToggle(Tabs.Movement, "Speed Hack", "MiscSpeed")
CreateSlider(Tabs.Movement, "Speed Amount", 16, 150, "SpeedAmount")
CreateToggle(Tabs.Movement, "NoClip", "MiscNoclip")
CreateToggle(Tabs.Movement, "Infinite Jump", "InfiniteJump")
CreateToggle(Tabs.Movement, "Fly Hack", "FlyHack")
CreateSlider(Tabs.Movement, "Fly Speed", 10, 200, "FlySpeed")
CreateToggle(Tabs.Misc, "Third Person", "MiscThirdPerson")
CreateToggle(Tabs.Misc, "Hide Weapons", "MiscHideWeapon")
CreateToggle(Tabs.Misc, "Under Map Kill", "MiscUnderMapKill")
CreateSlider(Tabs.Misc, "Under Map Depth", 10, 200, "UnderMapDepth")
CreateSlider(Tabs.Misc, "Teleport Delay", 1, 100, "UnderMapTeleportDelay", function(v) _G.Config.UnderMapTeleportDelay = v/100 end)
CreateToggle(Tabs.Misc, "Anti Aim", "MiscAntiAim")
CreateToggle(Tabs.Misc, "Instant Respawn", "InstantRespawn")
local currentConfigInput = nil
local configListContainer = nil
local function RefreshConfigList()
if configListContainer then
configListContainer:ClearAllChildren()
local configs = ListConfigs()
local ConfigTitle = Instance.new("TextLabel", configListContainer)
ConfigTitle.Size = UDim2.new(1, -10, 0, 20)
ConfigTitle.Text = "Saved Configs:"
ConfigTitle.TextColor3 = Color3.fromRGB(200, 200, 200)
ConfigTitle.Font = Enum.Font.Code
ConfigTitle.TextSize = 13
ConfigTitle.TextXAlignment = Enum.TextXAlignment.Left
ConfigTitle.BackgroundTransparency = 1
for _, configName in ipairs(configs) do
local ItemFrame = Instance.new("Frame", configListContainer)
ItemFrame.Size = UDim2.new(1, -10, 0, 35)
ItemFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
ItemFrame.BorderSizePixel = 1
ItemFrame.BorderColor3 = Color3.fromRGB(60, 60, 60)
local NameLabel = Instance.new("TextLabel", ItemFrame)
NameLabel.Size = UDim2.new(0.5, -5, 1, 0)
NameLabel.Text = configName
NameLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
NameLabel.Font = Enum.Font.Code
NameLabel.TextSize = 12
NameLabel.TextXAlignment = Enum.TextXAlignment.Left
NameLabel.BackgroundTransparency = 1
NameLabel.Position = UDim2.new(0, 5, 0, 0)
local LoadBtn = Instance.new("TextButton", ItemFrame)
LoadBtn.Size = UDim2.new(0.2, -5, 0.7, 0)
LoadBtn.Position = UDim2.new(0.5, 5, 0.15, 0)
LoadBtn.Text = "LOAD"
LoadBtn.Font = Enum.Font.Code
LoadBtn.TextSize = 11
LoadBtn.TextColor3 = Color3.fromRGB(200, 200, 200)
LoadBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
LoadBtn.BorderSizePixel = 1
LoadBtn.MouseButton1Click:Connect(function()
LoadConfig(configName)
end)
local SaveBtn = Instance.new("TextButton", ItemFrame)
SaveBtn.Size = UDim2.new(0.2, -5, 0.7, 0)
SaveBtn.Position = UDim2.new(0.7, 5, 0.15, 0)
SaveBtn.Text = "SAVE"
SaveBtn.Font = Enum.Font.Code
SaveBtn.TextSize = 11
SaveBtn.TextColor3 = Color3.fromRGB(200, 200, 200)
SaveBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
SaveBtn.BorderSizePixel = 1
SaveBtn.MouseButton1Click:Connect(function()
SaveConfig(configName)
end)
local DeleteBtn = Instance.new("TextButton", ItemFrame)
DeleteBtn.Size = UDim2.new(0.1, -5, 0.7, 0)
DeleteBtn.Position = UDim2.new(0.9, 5, 0.15, 0)
DeleteBtn.Text = "X"
DeleteBtn.Font = Enum.Font.Code
DeleteBtn.TextSize = 11
DeleteBtn.TextColor3 = Color3.fromRGB(255, 100, 100)
DeleteBtn.BackgroundColor3 = Color3.fromRGB(40, 40, 40)
DeleteBtn.BorderSizePixel = 1
DeleteBtn.MouseButton1Click:Connect(function()
DeleteConfig(configName)
RefreshConfigList()
end)
end
if #configs == 0 then
local EmptyLabel = Instance.new("TextLabel", configListContainer)
EmptyLabel.Size = UDim2.new(1, -10, 0, 20)
EmptyLabel.Text = "No saved configs"
EmptyLabel.TextColor3 = Color3.fromRGB(150, 150, 150)
EmptyLabel.Font = Enum.Font.Code
EmptyLabel.TextSize = 12
EmptyLabel.TextXAlignment = Enum.TextXAlignment.Left
EmptyLabel.BackgroundTransparency = 1
end
end
end
CreateButton(Tabs.Config, "Save Current Config", function()
if currentConfigInput and currentConfigInput.Text and currentConfigInput.Text ~= "" then
local configName = currentConfigInput.Text
if SaveConfig(configName) then
RefreshConfigList()
currentConfigInput.Text = ""
end
end
end)
CreateButton(Tabs.Config, "Reset to Default", function()
ResetToDefault()
RefreshConfigList()
end)
CreateButton(Tabs.Config, "Export Config to Clipboard", function()
if setclipboard then
local configStr = HttpService:JSONEncode(_G.Config)
setclipboard(configStr)
end
end)
CreateButton(Tabs.Config, "Import Config from Clipboard", function()
if getclipboard then
local success, clipboard = pcall(getclipboard)
if success and clipboard then
local success2, configData = pcall(function()
return HttpService:JSONDecode(clipboard)
end)
if success2 and configData then
for key, value in pairs(configData) do
if _G.Config[key] ~= nil then
_G.Config[key] = value
end
end
for config_key, elements in pairs(UI_Elements) do
for _, element in ipairs(elements) do
if element.Type == "Toggle" then
element.Box.BackgroundColor3 = _G.Config[config_key] and Color3.fromRGB(150, 200, 60) or Color3.fromRGB(40, 40, 40)
element.Label.TextColor3 = _G.Config[config_key] and Color3.new(1,1,1) or Color3.fromRGB(180, 180, 180)
elseif element.Type == "Slider" then
element.Label.Text = element.Name .. ": " .. _G.Config[config_key]
if element.Max and element.Max > 0 then
element.Fill.Size = UDim2.new((_G.Config[config_key]/element.Max), 0, 1, 0)
end
elseif element.Type == "TeamMode" then
element.Btn.Text = "Mode: " .. _G.Config[config_key]
end
end
end
RefreshConfigList()
end
end
end
end)
local ConfigInputFrame = Instance.new("Frame", Tabs.Config)
ConfigInputFrame.Size = UDim2.new(1, -10, 0, 35)
ConfigInputFrame.BackgroundTransparency = 1
local ConfigInputLabel = Instance.new("TextLabel", ConfigInputFrame)
ConfigInputLabel.Size = UDim2.new(0.3, 0, 1, 0)
ConfigInputLabel.Text = "Config Name:"
ConfigInputLabel.TextColor3 = Color3.fromRGB(200, 200, 200)
ConfigInputLabel.Font = Enum.Font.Code
ConfigInputLabel.TextSize = 12
ConfigInputLabel.TextXAlignment = Enum.TextXAlignment.Left
ConfigInputLabel.BackgroundTransparency = 1
currentConfigInput = Instance.new("TextBox", ConfigInputFrame)
currentConfigInput.Size = UDim2.new(0.7, 0, 1, 0)
currentConfigInput.Position = UDim2.new(0.3, 0, 0, 0)
currentConfigInput.Text = ""
currentConfigInput.PlaceholderText = "Enter config name..."
currentConfigInput.Font = Enum.Font.Code
currentConfigInput.TextSize = 12
currentConfigInput.TextColor3 = Color3.new(1, 1, 1)
currentConfigInput.BackgroundColor3 = Color3.fromRGB(30, 30, 30)
currentConfigInput.BorderSizePixel = 1
currentConfigInput.BorderColor3 = Color3.fromRGB(80, 80, 80)
configListContainer = Instance.new("Frame", Tabs.Config)
configListContainer.Size = UDim2.new(1, -10, 0, 200)
configListContainer.Position = UDim2.new(0, 5, 0, 120)
configListContainer.BackgroundTransparency = 1
local configListLayout = Instance.new("UIListLayout", configListContainer)
configListLayout.Padding = UDim.new(0, 5)
configListLayout.SortOrder = Enum.SortOrder.LayoutOrder
RefreshConfigList()
local FovCircle = Drawing.new("Circle")
FovCircle.Color = Color3.fromRGB(150, 200, 60)
FovCircle.Thickness = 1
FovCircle.NumSides = 100
FovCircle.Transparency = 0.7
FovCircle.Filled = false
local ESP_Table = {}
local targetUnderCrosshair = nil
local underMapActive = false
local currentTarget = nil
local lastTeleportTime = 0
local lastBhopTime = 0
local bhopCooldown = 0.3
local flyBodyPosition = nil
local flyBodyGyro = nil
local function updateFlyHack()
if not _G.Config.FlyHack or not LP.Character then
if flyBodyPosition then
flyBodyPosition:Destroy()
flyBodyGyro:Destroy()
flyBodyPosition = nil
flyBodyGyro = nil
end
return
end
local character = LP.Character
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
if not humanoidRootPart then return end
if not flyBodyPosition then
flyBodyPosition = Instance.new("BodyPosition")
flyBodyPosition.MaxForce = Vector3.new(math.huge, math.huge, math.huge)
flyBodyPosition.Parent = humanoidRootPart
flyBodyGyro = Instance.new("BodyGyro")
flyBodyGyro.MaxTorque = Vector3.new(math.huge, math.huge, math.huge)
flyBodyGyro.P = 10000
flyBodyGyro.D = 1000
flyBodyGyro.Parent = humanoidRootPart
end
local camera = workspace.CurrentCamera
local moveDirection = Vector3.new(0, 0, 0)
if UIS:IsKeyDown(Enum.KeyCode.W) then moveDirection = moveDirection + camera.CFrame.LookVector end
if UIS:IsKeyDown(Enum.KeyCode.S) then moveDirection = moveDirection - camera.CFrame.LookVector end
if UIS:IsKeyDown(Enum.KeyCode.A) then moveDirection = moveDirection - camera.CFrame.RightVector end
if UIS:IsKeyDown(Enum.KeyCode.D) then moveDirection = moveDirection + camera.CFrame.RightVector end
if UIS:IsKeyDown(Enum.KeyCode.Space) then moveDirection = moveDirection + Vector3.new(0, 1, 0) end
if UIS:IsKeyDown(Enum.KeyCode.LeftShift) then moveDirection = moveDirection - Vector3.new(0, 1, 0) end
if moveDirection.Magnitude > 0 then
moveDirection = moveDirection.Unit * _G.Config.FlySpeed
flyBodyPosition.Position = humanoidRootPart.Position + moveDirection
else
flyBodyPosition.Position = humanoidRootPart.Position
end
flyBodyGyro.CFrame = camera.CFrame
end
local function updateUnderMapKill()
if not _G.Config.MiscUnderMapKill or not LP.Character then
underMapActive = false
currentTarget = nil
return
end
local character = LP.Character
local humanoidRootPart = character:FindFirstChild("HumanoidRootPart")
local humanoid = character:FindFirstChild("Humanoid")
if not humanoidRootPart or not humanoid then
underMapActive = false
currentTarget = nil
return
end
local enemies = {}
for _, player in pairs(Players:GetPlayers()) do
if isEnemy(player) and player.Character and player.Character:FindFirstChild("Humanoid") then
local enemyHumanoid = player.Character.Humanoid
if enemyHumanoid.Health > 0 and player.Character:FindFirstChild("HumanoidRootPart") then
table.insert(enemies, player)
end
end
end
if #enemies == 0 then
underMapActive = false
currentTarget = nil
return
end
if not currentTarget or not currentTarget.Character or not currentTarget.Character:FindFirstChild("Humanoid") or
currentTarget.Character.Humanoid.Health <= 0 then
local closestEnemy = nil
local closestDistance = math.huge
for _, enemy in pairs(enemies) do
local enemyRoot = enemy.Character.HumanoidRootPart
local distance = (humanoidRootPart.Position - enemyRoot.Position).Magnitude
if distance < closestDistance then
closestDistance = distance
closestEnemy = enemy
end
end
currentTarget = closestEnemy
end
if not currentTarget or not currentTarget.Character then
currentTarget = nil
return
end
local targetRoot = currentTarget.Character:FindFirstChild("HumanoidRootPart")
local targetHumanoid = currentTarget.Character:FindFirstChild("Humanoid")
if not targetRoot or not targetHumanoid then
currentTarget = nil
return
end
if targetHumanoid.Health <= 0 then
currentTarget = nil
return
end
local underMapPosition = targetRoot.Position - Vector3.new(0, _G.Config.UnderMapDepth, 0)
local currentTime = tick()
if currentTime - lastTeleportTime > _G.Config.UnderMapTeleportDelay then
humanoidRootPart.CFrame = CFrame.new(underMapPosition)
lastTeleportTime = currentTime
end
if mousemoverel then
local targetHead = currentTarget.Character:FindFirstChild("Head")
if targetHead then
local targetPos, onScreen = Camera:WorldToViewportPoint(targetHead.Position)
if onScreen then
local mousePos = UIS:GetMouseLocation()
mousemoverel((targetPos.X - mousePos.X) * 0.2, (targetPos.Y - mousePos.Y) * 0.2)
if _G.Config.AutoFire and mouse1click and math.random(1, 2) == 1 then
mouse1click()
end
end
end
end
humanoidRootPart.Velocity = Vector3.new(0, 0, 0)
humanoidRootPart.RotVelocity = Vector3.new(0, 0, 0)
humanoid.PlatformStand = true
humanoid.AutoRotate = false
humanoidRootPart.CFrame = CFrame.new(humanoidRootPart.Position) * CFrame.Angles(0, 0, 0)
for _, part in pairs(character:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = false
part.Velocity = Vector3.new(0, 0, 0)
end
end
underMapActive = true
end
local function updateWeaponVisibility()
if not LP.Character then return end
if _G.Config.MiscHideWeapon then
for _, child in pairs(LP.Character:GetChildren()) do
if child:IsA("Tool") or child:IsA("HopperBin") then
child.Parent = LP.Backpack
end
end
end
end
local function updateThirdPerson()
if _G.Config.MiscThirdPerson then
Camera.CameraType = Enum.CameraType.Custom
local character = LP.Character
if character and character:FindFirstChild("HumanoidRootPart") then
local rootPart = character.HumanoidRootPart
Camera.CFrame = CFrame.new(rootPart.Position + rootPart.CFrame.LookVector * -10 + Vector3.new(0, 3, 0), rootPart.Position)
end
else
Camera.CameraType = Enum.CameraType.Custom
end
end
local function triggerBot()
if not _G.Config.TriggerBot or not LP.Character then return end
local mouse = LP:GetMouse()
local target = mouse.Target
if target and target.Parent then
local humanoid = target.Parent:FindFirstChild("Humanoid") or target.Parent.Parent:FindFirstChild("Humanoid")
if humanoid and isEnemy(Players:GetPlayerFromCharacter(humanoid.Parent)) then
if mouse1click then
mouse1click()
end
end
end
end
local function autoStomp()
if not _G.Config.AutoStomp or not LP.Character then return end
local character = LP.Character
local humanoid = character:FindFirstChild("Humanoid")
if not humanoid then return end
for _, player in pairs(Players:GetPlayers()) do
if player ~= LP and player.Character then
local targetHum = player.Character:FindFirstChild("Humanoid")
if targetHum and targetHum.Health > 0 then
local targetRoot = player.Character:FindFirstChild("HumanoidRootPart")
local myRoot = character:FindFirstChild("HumanoidRootPart")
if targetRoot and myRoot and (targetRoot.Position - myRoot.Position).Magnitude < 10 then
humanoid.Jump = true
break
end
end
end
end
end
local function killAllEnemies()
if not _G.Config.KillAll then return end
for _, player in pairs(Players:GetPlayers()) do
if isEnemy(player) and player.Character then
local humanoid = player.Character:FindFirstChild("Humanoid")
if humanoid then
humanoid.Health = 0
end
end
end
end
local function teleportToNearestEnemy()
if not _G.Config.TeleportToEnemy then return end
local myRoot = LP.Character and LP.Character:FindFirstChild("HumanoidRootPart")
if not myRoot then return end
local closestEnemy = nil
local closestDistance = math.huge
for _, player in pairs(Players:GetPlayers()) do
if isEnemy(player) and player.Character then
local enemyRoot = player.Character:FindFirstChild("HumanoidRootPart")
if enemyRoot then
local distance = (myRoot.Position - enemyRoot.Position).Magnitude
if distance < closestDistance then
closestDistance = distance
closestEnemy = player
end
end
end
end
if closestEnemy and closestEnemy.Character then
local enemyRoot = closestEnemy.Character:FindFirstChild("HumanoidRootPart")
if enemyRoot then
myRoot.CFrame = enemyRoot.CFrame
end
end
end
RunService.RenderStepped:Connect(function()
FovCircle.Visible = _G.Config.ShowFov
FovCircle.Radius = _G.Config.Fov
FovCircle.Position = UIS:GetMouseLocation()
updateThirdPerson()
updateWeaponVisibility()
updateUnderMapKill()
updateFlyHack()
if _G.Config.TriggerBot then
triggerBot()
end
if _G.Config.AutoStomp then
autoStomp()
end
if _G.Config.InfiniteJump and UIS:IsKeyDown(Enum.KeyCode.Space) then
local character = LP.Character
if character and character:FindFirstChild("Humanoid") then
character.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
end
end
if _G.Config.KillAll then
killAllEnemies()
end
if _G.Config.TeleportToEnemy then
teleportToNearestEnemy()
_G.Config.TeleportToEnemy = false
end
targetUnderCrosshair = nil
if _G.Config.Aimbot and not _G.Config.MiscUnderMapKill then
local target = nil
local dist = _G.Config.Fov
for _, p in pairs(Players:GetPlayers()) do
if isEnemy(p) and p.Character and p.Character:FindFirstChild("Head") and
p.Character:FindFirstChild("Humanoid") and p.Character.Humanoid.Health > 0 then
local isTargetVisible = isVisibleForAimbot(p.Character)
if (not _G.Config.AimbotUseVisibleCheck) or isTargetVisible then
local pos, vis = Camera:WorldToViewportPoint(p.Character.Head.Position)
if vis then
local mag = (Vector2.new(pos.X, pos.Y) - UIS:GetMouseLocation()).Magnitude
if mag < dist and math.random(1, 100) <= _G.Config.HitChance then
dist = mag
target = p
end
end
end
end
end
if target and mousemoverel then
local tPos = Camera:WorldToViewportPoint(target.Character.Head.Position)
local mPos = UIS:GetMouseLocation()
mousemoverel((tPos.X - mPos.X) / math.max(_G.Config.Smoothness, 0.1),
(tPos.Y - mPos.Y) / math.max(_G.Config.Smoothness, 0.1))
end
end
for _, p in pairs(Players:GetPlayers()) do
if not _G.Config.Esp then
if ESP_Table[p] then
for _, d in pairs(ESP_Table[p]) do
d.Visible = false
end
end
else
local shouldDraw = (not _G.Config.UseTeamCheck) or (_G.Config.UseTeamCheck and isEnemy(p)) or
(_G.Config.UseTeamCheck and _G.Config.EspTeamMode == "Teammates")
if shouldDraw and p.Character and p.Character:FindFirstChild("HumanoidRootPart") and p.Character.Humanoid.Health > 0 then
if not ESP_Table[p] then
ESP_Table[p] = {
Box = Drawing.new("Square"),
Name = Drawing.new("Text"),
HealthBar = Drawing.new("Square"),
DistanceText = Drawing.new("Text"),
Tracer = Drawing.new("Line"),
HeadDot = Drawing.new("Circle")
}
end
local data = ESP_Table[p]
local root = p.Character.HumanoidRootPart
local head = p.Character:FindFirstChild("Head")
local pos, vis = Camera:WorldToViewportPoint(root.Position)
if vis then
if head then
local headPos, headVis = Camera:WorldToViewportPoint(head.Position)
if headVis then
local distToCursor = (Vector2.new(headPos.X, headPos.Y) - UIS:GetMouseLocation()).Magnitude
if distToCursor < 50 and targetUnderCrosshair == nil then
targetUnderCrosshair = p
end
end
end
local espColor = (p == targetUnderCrosshair) and _G.Config.HighlightColor or (isEnemy(p) and _G.Config.EnemyColor or _G.Config.TeammateColor)
local size = math.max(2000 / math.max(pos.Z, 1), 10)
data.Box.Visible = _G.Config.EspBoxes
data.Box.Size = Vector2.new(size, size * 1.5)
data.Box.Position = Vector2.new(pos.X - size/2, pos.Y - (size*1.5)/2)
data.Box.Color = espColor
data.Box.Thickness = 1
data.Name.Visible = _G.Config.EspNames
data.Name.Text = p.Name
data.Name.Size = 14
data.Name.Center = true
data.Name.Outline = true
data.Name.Color = espColor
data.Name.Position = Vector2.new(pos.X, pos.Y - (size*1.5)/2 - 16)
local humanoid = p.Character:FindFirstChild("Humanoid")
if _G.Config.EspHealthBar and humanoid then
local healthPer = math.clamp(humanoid.Health / humanoid.MaxHealth, 0, 1)
data.HealthBar.Visible = true
data.HealthBar.Size = Vector2.new(5, size * 1.5 * healthPer)
data.HealthBar.Position = Vector2.new(pos.X - size/2 - 7, pos.Y - (size*1.5)/2 + (size * 1.5 * (1 - healthPer))/2)
data.HealthBar.Color = Color3.fromRGB(math.floor(255 * (1 - healthPer)), math.floor(255 * healthPer), 0)
data.HealthBar.Filled = true
end
if _G.Config.EspDistance and LP.Character and LP.Character:FindFirstChild("HumanoidRootPart") then
data.DistanceText.Visible = true
data.DistanceText.Text = math.floor((LP.Character.HumanoidRootPart.Position - root.Position).Magnitude) .. "m"
data.DistanceText.Size = 12
data.DistanceText.Center = true
data.DistanceText.Color = Color3.new(1,1,1)
data.DistanceText.Position = Vector2.new(pos.X, pos.Y + (size*1.5)/2 + 5)
end
if _G.Config.EspTracers then
data.Tracer.Visible = true
data.Tracer.From = Vector2.new(Camera.ViewportSize.X/2, Camera.ViewportSize.Y)
data.Tracer.To = Vector2.new(pos.X, pos.Y)
data.Tracer.Color = espColor
data.Tracer.Thickness = 1
end
if _G.Config.EspHeadDot and head then
local headPos, headVis = Camera:WorldToViewportPoint(head.Position)
if headVis then
data.HeadDot.Visible = true
data.HeadDot.Radius = 3
data.HeadDot.Position = Vector2.new(headPos.X, headPos.Y)
data.HeadDot.Color = espColor
data.HeadDot.Filled = true
else
data.HeadDot.Visible = false
end
end
else
for _, d in pairs(data) do d.Visible = false end
end
elseif ESP_Table[p] then
for _, d in pairs(ESP_Table[p]) do d.Visible = false end
end
end
end
end)
RunService.Heartbeat:Connect(function()
if LP and LP.Character and LP.Character:FindFirstChild("Humanoid") then
local humanoid = LP.Character.Humanoid
local currentTime = tick()
if not _G.Config.MiscUnderMapKill then
if _G.Config.MiscBhop then
if humanoid.FloorMaterial ~= Enum.Material.Air then
if currentTime - lastBhopTime > bhopCooldown then
humanoid.Jump = true
lastBhopTime = currentTime
end
else
humanoid.Jump = false
end
else
lastBhopTime = 0
end
if _G.Config.MiscSpeed then
humanoid.WalkSpeed = _G.Config.SpeedAmount
else
humanoid.WalkSpeed = 16
end
end
if _G.Config.MiscNoclip or _G.Config.MiscUnderMapKill then
for _, part in pairs(LP.Character:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = false
end
end
elseif not _G.Config.MiscUnderMapKill then
for _, part in pairs(LP.Character:GetDescendants()) do
if part:IsA("BasePart") then
part.CanCollide = true
end
end
end
if not _G.Config.MiscUnderMapKill and underMapActive then
if humanoid then
humanoid.PlatformStand = false
humanoid.AutoRotate = true
local humanoidRootPart = LP.Character:FindFirstChild("HumanoidRootPart")
if humanoidRootPart then
humanoidRootPart.Velocity = Vector3.new(0, 0, 0)
end
end
underMapActive = false
currentTarget = nil
end
if _G.Config.InstantRespawn and humanoid.Health <= 0 then
LP.Character:BreakJoints()
end
end
end)
local dragging, dragStart, startPos
MainFrame.InputBegan:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = true
dragStart = i.Position
startPos = MainFrame.Position
end
end)
UIS.InputEnded:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 then
dragging = false
end
end)
UIS.InputChanged:Connect(function(i)
if dragging and i.UserInputType == Enum.UserInputType.MouseMovement then
local delta = i.Position - dragStart
MainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
end
end)
UIS.InputBegan:Connect(function(i)
if i.KeyCode == _G.Config.MenuKey then
MainFrame.Visible = not MainFrame.Visible
end
end)



w script got 4 round wins no kick
@ProjectL Thx
why do i turn away when i look at the enemy?
@Emirhangjf2 what?
bad script, half of the options dont work and the script looks like a ai wrote it.
@Femboyyy Bro, a neural network was just writing it for me.
good script but my movement its flicking