ggsh
🧩 Syntax:
local active = false
local gui = Instance.new("ScreenGui",game.Players.LocalPlayer.PlayerGui)
gui.ResetOnSpawn = false
local button = Instance.new("TextButton",gui)
button.BackgroundColor3 = Color3.fromRGB(0,0,0)
button.TextColor3 = Color3.fromRGB(255,255,255)
button.FontFace = Font.fromName("PressStart2P")
button.Text = "Enable Exploit"
button.Position = UDim2.new(0, 0,0.238, 0)
button.Size = UDim2.new(0.1,0,0.1,0)
button.TextScaled = true
local ignore
local extra_Y = 10
local box = Vector3.new(10,8,10)
local bind = Instance.new("BindableEvent")
local Bread = false
local SizeX = 0
local SizeZ = 0
local midp = Vector3.zero
local getfloor = nil
local ExtraZ = -1
local ExtraX = 0
local Iextra = 8
local relcframe = Vector3.zero
local currentTween = nil
local destination = game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame
local cdead = false
button.Activated:Connect(function()
if active == false then
active = true
button.Text = "Enabled"
button.TextColor3 = Color3.fromRGB(0,255,0)
checkdead()
CreateIgnoreList()
else
button.Text = "Enable Exploit"
button.TextColor3 = Color3.fromRGB(255,255,255)
game.Workspace.CurrentCamera.CameraType = Enum.CameraType.Fixed
game.Workspace.CurrentCamera.CameraSubject = game.Players.LocalPlayer.Character.HumanoidRootPart
active = false
end
end)
local function gettargetpos(tar)
local X = math.round((tar:FindFirstChildWhichIsA("BasePart").Position.X-midp.X)/box.X)
local Z = math.round((tar:FindFirstChildWhichIsA("BasePart").Position.Z-midp.Z)/box.Z)
return X,Z
end
local function getRandomExcludingZero(min, max)
local randomNumber = math.random(min, max)
if randomNumber >= 0 then
randomNumber = randomNumber + 1
end
return randomNumber
end
function checkdead()
if cdead == false then
cdead = true
local connec
connec = game.Players.LocalPlayer.Character:FindFirstChildWhichIsA("Humanoid").Died:Connect(function()
active = false
button.Text = "Enable Exploit"
button.TextColor3 = Color3.fromRGB(255,255,255)
connec:Disconnect()
cdead = false
end)
end
end
local function gettarget()
wait()
local target = nil
local distance = math.huge
local Banned3 = {}
for i,v in pairs(game.Players:GetPlayers()) do
table.insert(Banned3,v.Character)
end
local Success, Error = pcall(function()
for i,v in pairs(game.Workspace:GetDescendants()) do
if v:IsA("Humanoid") and v.Parent:FindFirstChildWhichIsA("BasePart") and table.find(Banned3,v.Parent) == nil and v.Parent:FindFirstChildWhichIsA("BasePart").Anchored == false and (v.Parent:FindFirstChildWhichIsA("BasePart").Position-game.Players.LocalPlayer.Character.HumanoidRootPart.Position).Magnitude < distance then
target = v.Parent
distance = (v.Parent:FindFirstChildWhichIsA("BasePart").Position-game.Players.LocalPlayer.Character.HumanoidRootPart.Position).Magnitude
end
end
end)
if target ~= nil then
local position = target:FindFirstChildWhichIsA("BasePart").Position
return target
else
return gettarget()
end
end
local function getbiggest(tbl)
local biggest =0
local biggestpart = nil
for i,v in tbl do
if v.Size.X*v.Size.Z*v.Size.Y > biggest then
biggest = v.Size.X*v.Size.Z*v.Size.Y
biggestpart = v
end
end
return biggestpart
end
local function checkzzone(cframe,size)
local overlapParams = OverlapParams.new()
local Folder = {}
for i,v in pairs(ignore) do
table.insert(Folder,v)
end
for i,v in pairs(game.Players:GetPlayers()) do
table.insert(Folder,v.Character)
end
overlapParams.FilterDescendantsInstances = Folder
overlapParams.FilterType = Enum.RaycastFilterType.Blacklist
local bound = game.Workspace:GetPartBoundsInBox(cframe,size,overlapParams)
if #bound==0 then
return true
end
for i,v in pairs(bound) do
if v:IsA("BasePart") then
v.CanTouch = false
end
end
return false
end
local function RayC(pos1,dir,ignore2,Valid)
local hit = nil
local pos = pos1+dir
local ray = Ray.new(pos1,dir)
hit = game.Workspace:FindPartOnRayWithWhitelist(ray,ignore2)
if hit ~= nil then
table.insert(Valid,hit)
table.remove(ignore2,table.find(ignore2,hit))
return RayC(pos1,dir,ignore2,Valid)
else
return Valid
end
end
local function Filtering(ban,Valid)
for ia ,av in pairs(ban) do
for i,v in pairs(Valid) do
if v:IsDescendantOf(av) ==true then
table.remove(Valid,i)
end
end
end
return Valid
end
local function MakeIgnore()
local Valid = {}
local BannedMo = {}
for i,v in pairs(game.Workspace:GetDescendants()) do
if v:IsA("BasePart") and v.CanCollide == true and v.Parent:FindFirstChildWhichIsA("Humanoid") and v.Parent:FindFirstChildWhichIsA("BasePart") and v.Parent:FindFirstChildWhichIsA("BasePart").Anchored==true and table.find(BannedMo,v.Parent) == nil then
table.insert(BannedMo,v.Parent)
else
if v:IsA("BasePart") and v.Anchored == true and v:FindFirstChildWhichIsA("TouchTransmitter") == nil and v.Parent:FindFirstChildWhichIsA("Humanoid") == nil and table.find(Valid,v) == nil then
table.insert(Valid,v)
end
end
end
return Filtering(BannedMo,Valid)
end
local function getfloorsize(floor)
local X = floor.Size.X
local Z = floor.Size.Z
local Y = floor.Size.Y
local TB = {
X;
Y;
Z;
}
local smallest = math.huge
for i,v in pairs(TB) do
if v < smallest then
smallest = v
end
end
if TB[2] == smallest then
return X,Z
elseif TB[1] == smallest then
return Y,Z
else
return X,Y
end
end
function createfloor()
ignore = MakeIgnore()
local ignore2 = {table.unpack(ignore)}
local getfloor2 = RayC(game.Players.LocalPlayer.Character.HumanoidRootPart.Position,Vector3.new(0,-9000,0),ignore2,{})
getfloor = getbiggest(getfloor2)
local signal
signal = getfloor:GetPropertyChangedSignal("Parent"):Connect(function(par)
if par == nil then
signal:Disconnect()
createfloor()
end
end)
end
function CreateIgnoreList()
--local force = Instance.new("BodyForce",game.Players.LocalPlayer.Character.HumanoidRootPart)
local totalmash = 0
for i,v in pairs (game.Players.LocalPlayer.Character:GetDescendants()) do
if v:IsA("BasePart") and v.Massless == false then
v.Massless = true
end
end
--force.force = Vector3.new(0,totalmash*game.workspace.Gravity,0)
local bread = false
createfloor()
repeat wait() until getfloor ~= nil
midp = getfloor.Position
local big1 ,big2 = getfloorsize(getfloor)
SizeX, SizeZ = math.round(big1/box.X/2),math.round(big2/box.Z/2)
end
local function tween(part,cframe)
if currentTween~= nil then
currentTween:Cancel()
currentTween = nil
end
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame = CFrame.lookAt(game.Players.LocalPlayer.Character.PrimaryPart.Position,cframe.Position)
local r1 = Vector3.new(CFrame.lookAt(game.Players.LocalPlayer.Character.PrimaryPart.Position,cframe.Position):ToOrientation())
currentTween = game:GetService("TweenService"):Create(part,TweenInfo.new(1),{CFrame = CFrame.new(cframe.Position)*CFrame.fromOrientation(math.rad(math.deg(r1.X)),math.rad(math.deg(r1.Y)),math.rad(math.deg(r1.Z)))})
currentTween:Play()
end
bind.Event:Connect(function()
wait()
local tar = gettarget()
--game.Workspace.CurrentCamera.CameraType = Enum.CameraType.Scriptable
--game.Workspace.CurrentCamera.CFrame = CFrame.lookAt(tar:FindFirstChild("HumanoidRootPart").Position + Vector3.new(0,30,0),tar:FindFirstChild("HumanoidRootPart").Position)
--local position2,inbound = game.Workspace.CurrentCamera:WorldToScreenPoint(game.Workspace.Part.Position) local frame = Instance.new("Frame",game.Players.LocalPlayer.PlayerGui.ScreenGui)
--game:GetService("VirtualUser"):MoveMouse(Vector2.new(position2.X,position2.Y),game.Workspace.CurrentCamera.CFrame)
end)
bind.Event:Connect(function()
wait()
local Success, Error = pcall(function()
local xS = math.random(-(SizeX-8),SizeX-8)
local xZ= math.random(-(SizeZ-8),SizeZ-8)
local tar = gettarget()
if tar ~= nil and tar:IsDescendantOf(game.Workspace) == true and tar:FindFirstChildWhichIsA("Humanoid") ~= nil then
xS,xZ = gettargetpos(tar)
end
local negX = SizeX
local negZ = SizeZ-5+ExtraZ*Iextra
local RelX = xS+ExtraX*Iextra
local RelZ = xZ+ExtraZ*Iextra
if RelX <0 then
negX = -SizeX
end
if RelZ <0 then
negZ = -SizeZ+5-ExtraZ*Iextra
end
local cframe = CFrame.new(midp+Vector3.new(box.X*((RelX+math.random(-10,10))%negX),box.Y+getfloor.Size.Y/2+game.Players.LocalPlayer.Character.HumanoidRootPart.Size.Y/2+extra_Y+math.random(1,200),box.Z*(RelZ%negZ)))
if checkzzone(cframe,box) == true and checkzzone(game.Players.LocalPlayer.Character.PrimaryPart.CFrame,box) == true then
--destination = cframe
tween(game.Players.LocalPlayer.Character.HumanoidRootPart,cframe)
--else
--tween(game.Players.LocalPlayer.Character.HumanoidRootPart,game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame*CFrame.new(math.random(-30,30)*5,700,-math.random(5,30)*5))
end
end)
end)
delay(0,function()
while true do
wait()
if active == true and game.Players.LocalPlayer.Character and game.Players.LocalPlayer.Character:FindFirstChildWhichIsA("Humanoid") and game.Players.LocalPlayer.Character:FindFirstChildWhichIsA("Humanoid").Health > 0 then
bind:Fire()
end
end
end)
local position,inbound = game.Workspace.CurrentCamera:WorldToScreenPoint(game.Workspace.Part.Position) local frame = Instance.new("Frame",game.Players.LocalPlayer.PlayerGui.ScreenGui) frame.Size = UDim2.new(0,0.5,0,0.5) frame.Position = UDim2.new(0, position.X, 0, position.Y)