0% found this document useful (0 votes)
1K views6 pages

Phantom Forces GUI Script Cheat

The script is a Roblox game hack that provides features such as Aimbot, ESP, and Silent Aim through a user interface. It allows users to customize settings like FOV, target parts, and colors for various functionalities. The script utilizes drawing functions to visually represent targets and includes options for wall checks and panic modes for enhanced gameplay assistance.

Uploaded by

kutaskoz1111
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1K views6 pages

Phantom Forces GUI Script Cheat

The script is a Roblox game hack that provides features such as Aimbot, ESP, and Silent Aim through a user interface. It allows users to customize settings like FOV, target parts, and colors for various functionalities. The script utilizes drawing functions to visually represent targets and includes options for wall checks and panic modes for enhanced gameplay assistance.

Uploaded by

kutaskoz1111
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 6

Itt a script:

(első localtól kell kimácsolni)

local rs = game:GetService("RunService")
local uis = game:GetService("UserInputService")

local Library = loadstring(game:HttpGet("https://raw.githubusercontent.com/xHeptc/


Kavo-UI-Library/main/source.lua"))()
local Window = Library.CreateLib("CNF'S PF-Hack", "DarkTheme")

local AimbotTab = Window:NewTab("Aimbot")


local AimbotSection = AimbotTab:NewSection("Aimbot")

local EspTab = Window:NewTab("ESP")


local EspSection = EspTab:NewSection("ESP")

local ExperimentalTab = Window:NewTab("Experimental")


local SASection = ExperimentalTab:NewSection("Silent Aim")

local BindsTab = Window:NewTab("Binds")


local BindsSection = BindsTab:NewSection("Binds")

local ColorTab = Window:NewTab("Color")


local ColorSection = ColorTab:NewSection("Color")

local AbColor = Color3.fromRGB(255, 128, 128)


local EspColor = Color3.fromRGB(255, 128, 128)

ColorSection:NewColorPicker("Fov Ring Color", "", Color3.fromRGB(255,128,128),


function(color)
AbColor = color
end)

ColorSection:NewColorPicker("Esp Color", "", Color3.fromRGB(255,128,128),


function(color)
EspColor = color
end)

local smoothing = 1
local fov = 500
local wallCheck = false
local maxWalls = 0
local abTargetPart = "Head"
local FOVringList = {}

local function isPointVisible(targetForWallCheck, mw)


local castPoints = {targetForWallCheck.PrimaryPart.Position}
local ignoreList = {targetForWallCheck, game.Players.LocalPlayer.Character,
game.Workspace.CurrentCamera}
local result = workspace.CurrentCamera:GetPartsObscuringTarget(castPoints,
ignoreList)
return #result <= mw
end

AimbotSection:NewToggle("Enabled", "", function(state)


if state then
FOVringList = {}
abLoop = rs.RenderStepped:Connect(function()
for i,v in pairs(FOVringList) do
v:Remove()
end

FOVringList = {}

local FOVring = Drawing.new("Circle")


FOVring.Visible = true
FOVring.Thickness = 2
FOVring.Radius = fov / workspace.CurrentCamera.FieldOfView
FOVring.Transparency = 1
FOVring.Color = AbColor
FOVring.Position = game.Workspace.CurrentCamera.ViewportSize/2

FOVringList[#FOVringList+1] = FOVring

local team
if game.Players.LocalPlayer.Team.Name == "Ghosts" then team =
"Phantoms" else team = "Ghosts" end

local target = Vector2.new(math.huge, math.huge)


local targetPos
local targetPlayer
if game.Workspace.Players:FindFirstChild(team) then
for i,v in
pairs(game.Workspace.Players:FindFirstChild(team):GetChildren()) do
local pos = v[abTargetPart].Position
local ScreenSpacePos, IsOnScreen =
game.Workspace.CurrentCamera:WorldToViewportPoint(pos)
ScreenSpacePos = Vector2.new(ScreenSpacePos.X,
ScreenSpacePos.Y) - game.Workspace.CurrentCamera.ViewportSize/2

if IsOnScreen and ScreenSpacePos.Magnitude < target.Magnitude


and (isPointVisible(v, maxWalls) or not wallCheck) then
target = ScreenSpacePos
targetPos = pos
targetPlayer = v
end
end
end

if target.Magnitude <= fov / workspace.CurrentCamera.FieldOfView and


uis:IsMouseButtonPressed(Enum.UserInputType.MouseButton2) then
if target ~= Vector2.new(math.huge, math.huge) then
mousemoverel(target.X/smoothing, target.Y/smoothing)
end
end
end)
else
abLoop:Disconnect()
for i,v in pairs(FOVringList) do
v:Remove()
end
end
end)
AimbotSection:NewToggle("Wall Check", "", function(state) wallCheck = state end)
AimbotSection:NewSlider("Max Wallbangs", "Inclusive", 50, 0, function(s) maxWalls =
s end)
AimbotSection:NewSlider("Fov", "", 50000, 500, function(s) fov = s end)
AimbotSection:NewSlider("Smoothing", "", 300, 100, function(s) smoothing = s/100
end)
AimbotSection:NewDropdown("Target Part", "", {"Head", "Torso", "Right Arm", "Left
Arm", "Right Leg", "Left Leg"}, function(currentOption) abTargetPart =
currentOption end)

local saTargetPart = "Head"


local safov = 500
local panicMode = false
local panicDistance = 5
local saWallCheck = false
local saWallBangs = 0
local gunCF
local motor
local sa = false
local saFovRingList = {}

saLoop = rs.RenderStepped:Connect(function()
for i,v in pairs(saFovRingList) do
v:Remove()
end

saFovRingList = {}
if not sa then return end
local FOVring = Drawing.new("Circle")
FOVring.Visible = true
FOVring.Thickness = 2
FOVring.Radius = safov / workspace.CurrentCamera.FieldOfView
FOVring.Transparency = 1
FOVring.Color = AbColor
FOVring.Position = game.Workspace.CurrentCamera.ViewportSize/2

saFovRingList[#saFovRingList+1] = FOVring

local team
if game.Players.LocalPlayer.Team.Name == "Ghosts" then team = "Phantoms" else
team = "Ghosts" end

local targetPos
local last = Vector2.new(math.huge, math.huge)
if game.Workspace.Players:FindFirstChild(team) then
for i,v in pairs(game.Workspace.Players:FindFirstChild(team):GetChildren())
do
local pos = v[saTargetPart].Position
local ScreenSpacePos, IsOnScreen =
game.Workspace.CurrentCamera:WorldToViewportPoint(pos)
ScreenSpacePos = Vector2.new(ScreenSpacePos.X, ScreenSpacePos.Y) -
game.Workspace.CurrentCamera.ViewportSize/2

if (v[saTargetPart].Position -
Workspace.CurrentCamera.CFrame.Position).Magnitude <= panicDistance and panicMode
then
targetPos = pos
break
end

if IsOnScreen and ScreenSpacePos.Magnitude < last.Magnitude and


ScreenSpacePos.Magnitude <= (safov / workspace.CurrentCamera.FieldOfView) and
(isPointVisible(v, saWallBangs) or not saWallCheck) then
last = ScreenSpacePos
targetPos = pos
end
end
end
if targetPos then
motor = Workspace.CurrentCamera:GetChildren()[3].Trigger.Motor6D
local cf = motor.C0

local cf2 = CFrame.new(motor.Part0.CFrame:ToWorldSpace(cf).Position,


targetPos)
gunCF = motor.Part0.CFrame:ToObjectSpace(cf2)
else
gunCF = nil
motor = nil
end
end)
local OldIndex
OldIndex = hookmetamethod(game, "__newindex", newcclosure(function(...)
local Self, Key, Value = ...

if sa and motor and gunCF and Self == motor and Key == "C0" then
return OldIndex(Self, Key, gunCF)
end

return OldIndex(...)
end))

SASection:NewToggle("Silent Aim", "", function(state)


sa = state
end)

SASection:NewToggle("Wall Check", "", function(state) saWallCheck = state end)


SASection:NewSlider("Max Wallbangs", "Inclusive", 50, 0, function(s) saWallBangs =
s end)
SASection:NewSlider("Fov", "", 50000, 500, function(s) safov = s end)
SASection:NewDropdown("Target Part", "", {"Head", "Torso", "Right Arm", "Left Arm",
"Right Leg", "Left Leg"}, function(currentOption)saTargetPart = currentOption end)
SASection:NewToggle("Panic Mode", "Will track closest player if they are within
panic distance", function(state) panicMode = state end)
SASection:NewSlider("Panic Distance", "", 40, 5, function(s) panicDistance = s end)

local LineList = {}
local width = 3
local height = 5

EspSection:NewToggle("Enabled", "", function(state)


if state then
LineList = {}
espLoop = rs.RenderStepped:Connect(function()
for i,v in pairs(LineList) do
if v then
v:Remove()
end
end

local team
if game.Players.LocalPlayer.Team.Name == "Ghosts" then team =
"Phantoms" else team = "Ghosts" end

LineList = {}
if game.Workspace.Players:FindFirstChild(team) then
for i,v in
pairs(game.Workspace.Players:FindFirstChild(team):GetChildren()) do
local pos = v.PrimaryPart.Position
local ScreenSpacePos, IsOnScreen =
game.Workspace.CurrentCamera:WorldToViewportPoint(pos)

a =
game.Workspace.CurrentCamera:WorldToViewportPoint(v.Torso.CFrame:PointToWorldSpace(
Vector3.new(width/2, height/2, 0)))
b =
game.Workspace.CurrentCamera:WorldToViewportPoint(v.Torso.CFrame:PointToWorldSpace(
Vector3.new(-width/2, height/2, 0)))
c =
game.Workspace.CurrentCamera:WorldToViewportPoint(v.Torso.CFrame:PointToWorldSpace(
Vector3.new(-width/2, -height/2, 0)))
d =
game.Workspace.CurrentCamera:WorldToViewportPoint(v.Torso.CFrame:PointToWorldSpace(
Vector3.new(width/2, -height/2, 0)))

a = Vector2.new(a.X, a.Y)
b = Vector2.new(b.X, b.Y)
c = Vector2.new(c.X, c.Y)
d = Vector2.new(d.X, d.Y)

if IsOnScreen then
local Line = Drawing.new("Quad")
Line.Visible = true
Line.PointA = a
Line.PointB = b
Line.PointC = c
Line.PointD = d
Line.Color = EspColor
Line.Thickness = 2
Line.Transparency = 1

LineList[#LineList+1] = Line
end
end
end
end)
else
espLoop:Disconnect()
for i,v in pairs(LineList) do
v:Remove()
end
LineList = {}
end
end)

BindsSection:NewKeybind("Toggle UI", "", Enum.KeyCode.F, function()


Library:ToggleUI()
end)

You might also like