Phantom Forces
Phantom Forces
local Settings = {
FOV = 0,
SilentAim = false,
ShowFOV = false,
UseFOV = false,
AutoShoot = false,
AimForHead = false,
FOVColour = 0,
WalkSpeed = 12,
JumpPower = 4,
FlySpeed = 12,
InfiniteJump = false,
AntiAim = false,
FallDamage = false,
AutoRespawn = false,
FlyKeybind = "Space",
TrackerLength = 1.5,
TrackerFrequency = 0.4,
Tracker = false,
NameESP = false,
BoxESP = false,
HealthESP = false,
DistanceESP = false,
Tracers = false,
TrackerColour = 0,
RainbowGun = false,
RapidFire = false,
InstantReload = false,
InstantEquip = false,
InstantAim = false,
NoRecoil = false,
NoSpread = false,
NoSway = false,
NoFlash = false,
CombineMags = false,
HeadshotChance = 0,
Fullbright = false,
NoBlood = false,
NoShells = false,
WindowsKeybind = "Z"
}
-- Variables
local Services = {
Players = game:GetService("Players"),
ReplicatedStorage = game:GetService("ReplicatedStorage"),
UserInputService = game:GetService("UserInputService"),
RunService = game:GetService("RunService"),
Lighting = game:GetService("Lighting"),
TweenService = game:GetService("TweenService"),
HttpService = game:GetService("HttpService")
}
local Local = {
Player = Services.Players.LocalPlayer,
Mouse = Services.Players.LocalPlayer:GetMouse(),
Cam = workspace.CurrentCamera
}
local Connections = {
RainbowGun = nil
}
local FullbrightSettings = {
Brightness = 1,
ClockTime = 12,
FogEnd = 999999,
GlobalShadows = false,
Ambient = Color3.fromRGB(178, 178, 178)
}
local BypassWords =
Services.HttpService:JSONDecode(game:HttpGet("https://raw.githubusercontent.com/
SykoticCataclysm/ScreamSploit/master/BypassWords.json"))
local Network, Effects, Gamelogic, Char, Particle, Menu, Hud
local Send, Walk, Jump, Bloodhit, Ejectshell, New
local GameGui = Local.Player.PlayerGui.MainGui.GameGui
local FogEnd, Ambient = Services.Lighting.FogEnd, Services.Lighting.Ambient
local Modules = Services.ReplicatedStorage.GunModules
local TracerStart = Vector2.new(Local.Cam.ViewportSize.X / 2,
Local.Cam.ViewportSize.Y)
local SilentTarget, FOVCircle = nil, nil
local ScrMid = Vector2.new(Local.Cam.ViewportSize.X / 2, Local.Cam.ViewportSize.Y /
2)
local IsFlying = false
local TrackFolder = Instance.new("Folder", workspace)
local Parts = { "HumanoidRootPart", "Left Leg", "Right Leg" }
local Esp = { Esps = {} }
local GunData = {}
-- Setup
function SetSilentTarget()
if not Local.Player.Character then return nil end
local Bodypart, Dist = nil, Settings.UseFOV and Settings.FOV or math.huge
for a, b in next, workspace.Players:GetChildren() do
if b ~= Local.Player.Character.Parent then
for c, d in next, b:GetChildren() do
local Pos, Vis = Local.Cam:WorldToViewportPoint(d.Torso.Position)
if Vis and #Local.Cam:GetPartsObscuringTarget({d.Torso.Position},
{d}) == 0 then
local Mag = (ScrMid - Vector2.new(Pos.X, Pos.Y)).Magnitude
if Mag < Dist then
Bodypart = Settings.AimForHead and d.Head or d.Torso
Dist = Mag
end
end
end
end
end
SilentTarget = Bodypart
end
function RegisterChar(char)
Local.Char = char
Local.Hum = char:WaitForChild("Humanoid")
Local.Root = char:WaitForChild("HumanoidRootPart")
Local.Hum.Died:Connect(function()
Local.Char = nil
Local.Hum = nil
Local.Root = nil
end)
end
if Local.Player.Character then
RegisterChar(Local.Player.Character)
end
Local.Player.CharacterAdded:Connect(function(char)
RegisterChar(char)
end)
function Track(char)
coroutine.wrap(function()
local isleft = true
repeat wait(Settings.TrackerFrequency)
for i, v in next, Parts do
if not char:FindFirstChild(v) then
break
end
end
local Step = Instance.new("Part", TrackFolder)
local Part = isleft and char["Left Leg"] or char["Right Leg"]
local Root = char.HumanoidRootPart
Step.Anchored = true
Step.CanCollide = false
Step.BottomSurface = Enum.SurfaceType.Smooth
Step.Color = Color3.fromHSV(Settings.TrackerColour, 1, 1)
Step.Position = Vector3.new(Part.Position.X - 0.25, Root.Position.Y -
3, Part.Position.Z - 0.25)
Step.Rotation = Vector3.new(0, Part.Rotation.Y, 0)
Step.Size = Vector3.new(Part.Size.X + 0.4, 0.4, Part.Size.Z + 0.2)
Step.TopSurface = Enum.SurfaceType.Smooth
isleft = not isleft
coroutine.wrap(function()
wait(Settings.TrackerLength)
local T = Services.TweenService:Create(Step, TweenInfo.new(0.5),
{Transparency = 1})
T.Completed:Connect(function()
Step:Destroy()
end)
T:Play()
end)()
until not char or char.Parent == nil or Settings.Tracker == false
end)()
end
Particle.new = newcclosure(function(tab)
if Settings.SilentAim then
if SilentTarget and Gamelogic.currentgun then
tab.velocity = (SilentTarget.Position - tab.position).Unit *
Gamelogic.currentgun.data.bulletspeed
end
end
New(tab)
end)
function Esp:Create(plr)
local Box = Drawing.new("Square")
Box.Filled = false
Box.Thickness = 2
local Tracer = Drawing.new("Line")
Tracer.From = TracerStart
Tracer.Thickness = 2
local Label = Drawing.new("Text")
Label.Text = plr.Name
Label.Center = true
Label.Outline = false
local Health = Drawing.new("Text")
Health.Text = "[0/100]"
Health.Center = true
Health.Outline = false
local Distance = Drawing.new("Text")
Distance.Text = "0 Studs Away"
Distance.Center = true
Distance.Outline = false
Esp.Esps[plr] = {
Box = Box,
Tracer = Tracer,
Label = Label,
Health = Health,
Distance = Distance
}
return Esp.Esps[plr]
end
function Esp:Remove(plr)
local PlrEsp = Esp.Esps[plr]
if PlrEsp then
for i, v in next, PlrEsp do
v:Remove()
end
Esp.Esps[plr] = nil
end
end
function Esp:Update(plr)
local v = Esp.Esps[plr] or Esp:Create(plr)
local Pos = Hud:getplayerpos(plr)
if Pos then
local RootPos, Vis = Local.Cam:WorldToViewportPoint(Pos)
if Vis then
v.Box.Visible = Settings.BoxESP
v.Tracer.Visible = Settings.Tracers
v.Label.Visible = Settings.NameESP
v.Health.Visible = Settings.HealthESP
v.Distance.Visible = Settings.DistanceESP
local HeadPos = Local.Cam:WorldToViewportPoint(Pos + Vector3.new(0, 3,
0))
local LegPos = Local.Cam:WorldToViewportPoint(Pos - Vector3.new(0, 3,
0))
if Settings.BoxESP then
local Y = HeadPos.Y - LegPos.Y
v.Box.Size = Vector2.new(Y / 1.5, Y)
v.Box.Position = Vector2.new(RootPos.X - v.Box.Size.X / 2,
RootPos.Y - v.Box.Size.Y / 2)
v.Box.Color = plr.Team == Local.Player.Team and Color3.fromRGB(0,
200, 0) or Color3.fromRGB(200, 0, 0)
end
if Settings.Tracers then
v.Tracer.To = Vector2.new(RootPos.X, RootPos.Y - v.Box.Size.Y / 2)
v.Tracer.Color = plr.Team == Local.Player.Team and
Color3.fromRGB(0, 200, 0) or Color3.fromRGB(200, 0, 0)
end
if Settings.NameESP then
v.Label.Position = Vector2.new(RootPos.X, RootPos.Y +
v.Box.Size.Y / 2 - (Settings.HealthESP and v.Label.Size * 2 or v.Label.Size))
v.Label.Color = plr.Team == Local.Player.Team and Color3.fromRGB(0,
200, 0) or Color3.fromRGB(200, 0, 0)
end
if Settings.HealthESP then
v.Health.Text = "[" .. math.floor(Hud:getplayerhealth(plr)) ..
"/100]"
v.Health.Position = Vector2.new(RootPos.X, RootPos.Y + v.Box.Size.Y
/ 2 - v.Label.Size)
v.Health.Color = plr.Team == Local.Player.Team and
Color3.fromRGB(0, 200, 0) or Color3.fromRGB(200, 0, 0)
end
if Settings.DistanceESP then
v.Distance.Text = math.floor((Local.Cam.CFrame.Position -
Pos).Magnitude) .. " Studs Away"
v.Distance.Position = Vector2.new(RootPos.X, RootPos.Y -
v.Box.Size.Y / 2)
v.Distance.Color = plr.Team == Local.Player.Team and
Color3.fromRGB(0, 200, 0) or Color3.fromRGB(200, 0, 0)
end
else
v.Box.Visible = false
v.Tracer.Visible = false
v.Label.Visible = false
v.Health.Visible = false
v.Distance.Visible = false
end
else
v.Box.Visible = false
v.Tracer.Visible = false
v.Label.Visible = false
v.Health.Visible = false
v.Distance.Visible = false
end
end
Services.RunService.Stepped:Connect(function()
for i, v in next, game:GetService("Players"):GetPlayers() do
if v ~= Local.Player then
if not Esp.Esps[v] then
Esp:Create(v)
else
Esp:Update(v)
end
end
end
SetSilentTarget()
if SilentTarget and Settings.SilentAim and Settings.AutoShoot then
mouse1press()
wait()
mouse1release()
end
end)
Services.Players.PlayerRemoving:Connect(function(plr)
Esp:Remove(plr)
end)
FOVCircle = Drawing.new("Circle")
FOVCircle.Color = Color3.fromHSV(Settings.FOVColour, 1, 1)
FOVCircle.Filled = false
FOVCircle.Position = Services.UserInputService:GetMouseLocation()
FOVCircle.Radius = Settings.FOV
FOVCircle.Thickness = 2
Services.UserInputService.InputBegan:Connect(function(input, istyping)
if not istyping and input.KeyCode == Enum.KeyCode.Space and
Settings.InfiniteJump then
if Local.Root and Local.Hum and Local.Hum.FloorMaterial ==
Enum.Material.Air then
Local.Root.Velocity = Vector3.new(Local.Root.Velocity.X,
Settings.JumpPower * 12, Local.Root.Velocity.Z)
end
end
end)
Services.UserInputService.InputChanged:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseMovement then
FOVCircle.Position = Services.UserInputService:GetMouseLocation()
end
end)
Services.UserInputService.InputEnded:Connect(function(input, istyping)
if not istyping and (input.KeyCode.Name == Settings.FlyKeybind or
input.UserInputType.Name == Settings.FlyKeybind) then
IsFlying = false
end
end)
GameGui:GetPropertyChangedSignal("Visible"):Connect(function()
if GameGui.Visible == false and Settings.AutoRespawn then
repeat wait(1)
Menu:deploy()
until Menu:isdeployed()
end
end)
-- Gui
local Library =
loadstring(game:HttpGet("https://raw.githubusercontent.com/SykoticCataclysm/
ScreamSploit/master/GuiLibrary.lua", true))()