--[[
$$\ $$\ $$\ $$$$$$\ $$\ $$\ $$$$$$\ $$\
\__| $$ | $$ | $$ __$$\ $$ | $$ | $$ __$$\ $$ |
$$$$$$\ $$$$$$\ $$$$$$$\ $$\ $$$$$$$\ $$$$$$$\ $$$$$$\ $$$$$$\ $$ | $$\ $$ / $$ | $$$$$$$ | $$$$$$\ $$$$$$\ $$$$$$$\ $$ / \__|$$\ $$\ $$$$$$$\ $$$$$$$\ $$$$$$\ $$$$$$\ $$$$$$\ $$$$$$\
$$ __$$\ \____$$\ $$ __$$\ $$ |$$ _____|$$ __$$\ $$ __$$\ $$ __$$\ $$ | $$ |\$$$$$$$ | $$ __$$ |$$ __$$\ $$ __$$\ $$ __$$\ $$$$\ $$ | $$ |$$ _____|$$ _____|\____$$\\_$$ _| $$ __$$\ $$ __$$\
$$ / $$ | $$$$$$$ |$$ | $$ |$$ |$$ / $$ | $$ |$$ / $$ |$$ / $$ |$$$$$$ / \____$$ | $$ / $$ |$$$$$$$$ |$$ / $$ |$$ | $$ |$$ _| $$ | $$ |\$$$$$$\ $$ / $$$$$$$ | $$ | $$ / $$ |$$ | \__|
$$ | $$ |$$ __$$ |$$ | $$ |$$ |$$ | $$ | $$ |$$ | $$ |$$ | $$ |$$ _$$< $$\ $$ | $$ | $$ |$$ ____|$$ | $$ |$$ | $$ |$$ | $$ | $$ | \____$$\ $$ | $$ __$$ | $$ |$$\ $$ | $$ |$$ |
$$$$$$$ |\$$$$$$$ |$$ | $$ |$$ |\$$$$$$$\ $$ | $$ |\$$$$$$ |\$$$$$$ |$$ | \$$\ \$$$$$$ | \$$$$$$$ |\$$$$$$$\ \$$$$$$ |$$$$$$$ |$$ | \$$$$$$ |$$$$$$$ |\$$$$$$$\\$$$$$$$ | \$$$$ |\$$$$$$ |$$ |
$$ ____/ \_______|\__| \__|\__| \_______|\__| \__| \______/ \______/ \__| \__| \______/ \_______| \_______| \______/ \_______/ \__| \______/ \_______/ \_______|\_______| \____/ \______/ \__|
$$ |
$$ |
\__|
]]
if not LPH_OBFUSCATED then
LPH_JIT = function(...)
return ...
end
LPH_JIT_MAX = function(...)
return ...
end
LPH_JIT_ULTRA = function(...)
return ...
end
LPH_NO_VIRTUALIZE = function(...)
return ...
end
LPH_NO_UPVALUES = function(f)
return function(...)
return f(...)
end
end
LPH_ENCSTR = function(...)
return ...
end
LPH_STRENC = function(...)
return ...
end
LPH_HOOK_FIX = function(...)
return ...
end
LPH_CRASH = function()
return print(debug.traceback())
end
end
local wrap = LPH_NO_VIRTUALIZE(function(f)
coroutine.resume(coroutine.create(f))
end)
-- BYPASS 2
local antihitbox
antihitbox = hookmetamethod(
game,
"__index",
newcclosure(function(...)
local self, k = ...
if not checkcaller() and k == "Size" and self.Name == "Head" then
return Vector3.new(1.67225, 0.835624, 0.835624)
end
return antihitbox(...)
end)
)
warn("[ASTRAL DEV] Full-Hitbox Bypass Loaded Success")
-- Full Server Side Bypass
local index
index = hookmetamethod(
game,
"__index",
newcclosure(LPH_NO_VIRTUALIZE(function(obj, idx)
if index(obj, "Name") == "Leaves" and idx == "Transparency" then
return 0.4
end
if index(obj, "Name") == "Terrain" and idx == "Decoration" then
return true
end
if index(obj, "Name") == "PlayerHitHeadshot" and idx == "SoundId" then
return "rbxassetid://9119561046"
end
if index(obj, "Name") == "PlayerHitHeadshot" and idx == "Volume" then
return 2
end
if index(obj, "Name") == "PlayerHit" and idx == "SoundId" then
return "rbxassetid://9114487369"
end
if index(obj, "Name") == "PlayerHit" and idx == "Volume" then
return 2
end
return index(obj, idx)
end))
)
local config = Instance.new("Folder")
config.Name = "Monkey"
config.Parent = workspace
local OreESPAdornee = Instance.new("Folder")
OreESPAdornee.Name = "OreESPAdornee"
OreESPAdornee.Parent = workspace:WaitForChild("Monkey")
local PlayerESPAdornee = Instance.new("Folder")
PlayerESPAdornee.Name = "PlayerESPAdornee"
PlayerESPAdornee.Parent = workspace:WaitForChild("Monkey")
local TotemESPAdornee = Instance.new("Folder")
TotemESPAdornee.Name = "TotemESPAdornee"
TotemESPAdornee.Parent = workspace:WaitForChild("Monkey")
local StorageESPAdornee = Instance.new("Folder")
StorageESPAdornee.Name = "StorageESPAdornee"
StorageESPAdornee.Parent = workspace:WaitForChild("Monkey")
local oldTick = tick()
local Camera = game:GetService("Workspace").CurrentCamera
local CharcaterMiddle = game:GetService("Workspace").Ignore.LocalCharacter.Middle
local Mouse = game.Players.LocalPlayer:GetMouse()
local Sky = game:GetService("Lighting"):FindFirstChildOfClass("Sky")
if not Sky then
Sky = Instance.new("Sky", Lighting)
end
-- Globals
local _Network = getrenv()._G.modules.Network
local _Player = getrenv()._G.modules.Player
local _Character = getrenv()._G.modules.Character
local _Camera = getrenv()._G.modules.Camera
-- BAR
local UserInputService = game:GetService("UserInputService")
local function RUN()
local scriptConns = {}
local scriptObjects = {}
local barBackground = Drawing.new("Square")
barBackground.Size = Vector2.new(160, 10) -- Adjust the size of the background
barBackground.Color = Color3.new(0, 0, 0)
barBackground.Filled = true
barBackground.Visible = true
scriptObjects.background = barBackground
local barInside = Drawing.new("Square")
barInside.Size = Vector2.new(0, 6) -- Adjust the size of the inside bar
barInside.Color = Color3.fromHSV(0.5, 1, 1)
barInside.Filled = true
barInside.Visible = true
scriptObjects.inside = barInside
local runService = game:GetService("RunService")
local guiService = game:GetService("GuiService")
local timeCounter = 0
scriptConns.Update = runService.Heartbeat:Connect(function(deltaTime)
timeCounter = timeCounter + deltaTime * 2
local barWidth = barBackground.Size.X
local screenCenter = guiService:GetScreenResolution() / 2
local barCenter = screenCenter + Vector2.new(-barWidth / 2, 80)
barBackground.Position = barCenter
if timeCounter >= 0.98 then
game:GetService("Workspace").Ignore.LocalCharacter.Middle.Anchored = false
if game.Workspace:FindFirstChild("Airwalk") then
game.Workspace:FindFirstChild("Airwalk"):Destroy()
end
barBackground:Remove()
barInside:Remove()
scriptConns.Update:Disconnect()
return
end
local insideWidth = timeCounter * barWidth
barInside.Position = barCenter - Vector2.new(insideWidth / 2, 0) + Vector2.new(barWidth / 2, 2)
barInside.Size = Vector2.new(insideWidth, 6) -- Adjust the size of the inside bar
barInside.Color = Color3.fromHSV(0.25 - (timeCounter / 4), 1, 1)
end)
end
--Tables
local Functions = {}
local Esp = {
Settings = {
Boxes = false,
BoxesOutline = true,
BoxesColor = Color3.fromRGB(255, 255, 255),
BoxesOutlineColor = Color3.fromRGB(0, 0, 0),
Sleeping = false,
SleepingColor = Color3.fromRGB(255, 255, 255),
Distances = false,
DistanceColor = Color3.fromRGB(255, 255, 255),
Armour = false,
ArmourColor = Color3.fromRGB(255, 255, 255),
Tool = false,
ToolColor = Color3.fromRGB(255, 255, 255),
Tracer = false,
TracerColor = Color3.fromRGB(255, 255, 255),
TracerThickness = 1,
TracerTransparrency = 1,
TracerFrom = "Bottom",
ViewAngle = false,
ViewAngleColor = Color3.fromRGB(255, 255, 255),
ViewAngleThickness = 1,
ViewAngleTransparrency = 1,
OreDistances = false,
OreDistanceColor = Color3.fromRGB(255, 255, 255),
OreNames = false,
OreNamesColor = Color3.fromRGB(255, 255, 255),
OresRenderDistance = 1500,
TextFont = 2,
TextOutline = true,
TextSize = 15,
RenderDistance = 1500,
TeamCheck = false,
TargetSleepers = false,
MinTextSize = 8,
},
Drawings = {},
Connections = {},
Players = {},
Ores = {},
StorageThings = {},
}
local Fonts = { ["UI"] = 0, ["System"] = 1, ["Plex"] = 2, ["Monospace"] = 3 }
local Fov = {
Settings = {
FovEnabled = false,
FovColor = Color3.fromRGB(255, 255, 255),
FovSize = 90,
FovFilled = false,
FovTransparency = 1,
OutlineFovColor = Color3.fromRGB(0, 0, 0),
Dynamic = true,
RealFovSize = 90,
FovPosition = "Mouse",
Snapline = false,
SnaplineColor = Color3.fromRGB(255, 255, 255),
},
}
local Combat =
{ Settings = {
SilentEnabled = false,
SilentHitChance = 100,
SilentAimPart = "Head",
TeamCheck = true,
SleeperCheck = true,
} }
local Spinbot = { Settings = {
Enabled = false,
Speed = 23,
Mode = "Random",
ForceCrouch = false,
} }
local Misc = { Settings = {
SpeedHackEnabled = false,
SpeedHackSpeed = 30,
LeavesTrans = 0.4,
} }
local cache, OreCache = {}, {}
local AllowedOres, AllowedItems =
{ "StoneOre", "NitrateOre", "IronOre" },
{ "PartsBox", "MilitaryCrate", "SnallBox", "SnallBox", "Backpack", "VendingMachine" }
local SkyBoxes = {
["Standard"] = {
["SkyboxBk"] = Sky.SkyboxBk,
["SkyboxDn"] = Sky.SkyboxDn,
["SkyboxFt"] = Sky.SkyboxFt,
["SkyboxLf"] = Sky.SkyboxLf,
["SkyboxRt"] = Sky.SkyboxRt,
["SkyboxUp"] = Sky.SkyboxUp,
},
["Among Us"] = {
["SkyboxBk"] = "rbxassetid://5752463190",
["SkyboxDn"] = "rbxassetid://5752463190",
["SkyboxFt"] = "rbxassetid://5752463190",
["SkyboxLf"] = "rbxassetid://5752463190",
["SkyboxRt"] = "rbxassetid://5752463190",
["SkyboxUp"] = "rbxassetid://5752463190",
},
["Spongebob"] = {
["SkyboxBk"] = "rbxassetid://277099484",
["SkyboxDn"] = "rbxassetid://277099500",
["SkyboxFt"] = "rbxassetid://277099554",
["SkyboxLf"] = "rbxassetid://277099531",
["SkyboxRt"] = "rbxassetid://277099589",
["SkyboxUp"] = "rbxassetid://277101591",
},
["Deep Space"] = {
["SkyboxBk"] = "rbxassetid://159248188",
["SkyboxDn"] = "rbxassetid://159248183",
["SkyboxFt"] = "rbxassetid://159248187",
["SkyboxLf"] = "rbxassetid://159248173",
["SkyboxRt"] = "rbxassetid://159248192",
["SkyboxUp"] = "rbxassetid://159248176",
},
["Winter"] = {
["SkyboxBk"] = "rbxassetid://510645155",
["SkyboxDn"] = "rbxassetid://510645130",
["SkyboxFt"] = "rbxassetid://510645179",
["SkyboxLf"] = "rbxassetid://510645117",
["SkyboxRt"] = "rbxassetid://510645146",
["SkyboxUp"] = "rbxassetid://510645195",
},
["Clouded Sky"] = {
["SkyboxBk"] = "rbxassetid://252760981",
["SkyboxDn"] = "rbxassetid://252763035",
["SkyboxFt"] = "rbxassetid://252761439",
["SkyboxLf"] = "rbxassetid://252760980",
["SkyboxRt"] = "rbxassetid://252760986",
["SkyboxUp"] = "rbxassetid://252762652",
},
--["test"] = {"SkyboxBk"="rbxassetid://","SkyboxDn"="rbxassetid://","SkyboxFt"="rbxassetid://","SkyboxLf"="rbxassetid://","SkyboxRt"="rbxassetid://","SkyboxUp"="rbxassetid://"},
}
LPH_JIT_MAX(function()
function Functions:GetClosest()
local closest, PlayerDistance, playerTable = nil, Esp.Settings.RenderDistance, nil
for i, v in pairs(getupvalues(getrenv()._G.modules.Player.GetPlayerModel)[1]) do
if v.model:FindFirstChild("HumanoidRootPart") then
local Mouse = game.Players.LocalPlayer:GetMouse()
local pos, OnScreen = Camera.WorldToViewportPoint(Camera, v.model:GetPivot().Position)
local MouseMagnitude = (Vector2.new(pos.X, pos.Y) - Vector2.new(Mouse.X, Mouse.Y)).Magnitude
local PlayerDistance = (CharcaterMiddle:GetPivot().Position - v.model:GetPivot().Position).Magnitude
if
MouseMagnitude < Fov.Settings.RealFovSize
and PlayerDistance <= Esp.Settings.RenderDistance
and OnScreen == true
then
closest = v.model
PlayerDistance = PlayerDistance
playerTable = v
end
end
end
return closest, playerTable
end
end)()
function Functions:GetProjectileInfo()
if getrenv()._G.modules.FPS.GetEquippedItem() == nil then
return 0, 0
end
local mod = require(game:GetService("ReplicatedStorage").ItemConfigs[getrenv()._G.modules.FPS.GetEquippedItem().id])
for i, v in pairs(mod) do
if i == "ProjectileSpeed" or i == "ProjectileDrop" then
return mod.ProjectileSpeed, mod.ProjectileDrop
end
end
return 0, 0
end
LPH_NO_VIRTUALIZE(function()
function Functions:Predict()
local Prediction = Vector3.new(0, 0, 0)
local Drop = Vector3.new(0, 0, 0)
if Functions:GetClosest() ~= nil then
local ps, pd = Functions:GetProjectileInfo()
local Player, PlayerTable = Functions:GetClosest()
local Velocity = PlayerTable.velocityVector
local Distance = (CharcaterMiddle.Position - Player[Combat.Settings.SilentAimPart].Position).Magnitude
if ps == 0 then
ps = 500
end
if pd == 0 then
pd = 1
end
local TimeOfFlight = Distance / ps
newps = ps - 13 * ps ^ 2 * TimeOfFlight ^ 2
TimeOfFlight = TimeOfFlight + (Distance / newps)
if Velocity and TimeOfFlight then
Drop = Vector3.new(0, TimeOfFlight, 0)
Prediction = (Velocity * (TimeOfFlight * 10)) * 0.5
Prediction = Prediction + Drop
end
end
return Prediction, Drop
end
end)()
function Functions:Draw(Type, Propities)
if not Type and not Propities then
return
end
local drawing = Drawing.new(Type)
for i, v in pairs(Propities) do
drawing[i] = v
end
table.insert(Esp.Drawings, drawing)
return drawing
end
function Functions:GetToolNames()
tbl = {}
for i, v in pairs(game:GetService("ReplicatedStorage").HandModels:GetChildren()) do
if not table.find(tbl, v.Name) then
table.insert(tbl, v.Name)
end
end
return tbl
end
function Esp:CheckTools(PlayerTable)
if not PlayerTable then
return
end
if PlayerTable.equippedItem and table.find(Functions:GetToolNames(), PlayerTable["equippedItem"].id) then
return tostring(PlayerTable["equippedItem"].id)
elseif
PlayerTable.handModel
and PlayerTable.handModel.Name
and string.find(PlayerTable.handModel.Name, "Hammer")
then
return PlayerTable["handModel"].Name
else
return "Empty"
end
end
function Esp:CreateEsp(PlayerTable)
if not PlayerTable then
return
end
local drawings = {}
drawings.BoxOutline = Functions:Draw(
"Square",
{
Thickness = 2,
Filled = false,
Transparency = 1,
Color = Esp.Settings.BoxesOutlineColor,
Visible = false,
ZIndex = -1,
Visible = false,
}
)
drawings.Box = Functions:Draw(
"Square",
{ Thickness = 1, Filled = false, Transparency = 1, Color = Esp.Settings.BoxesColor, Visible = false, ZIndex = 2, Visible = false }
)
drawings.Sleeping = Functions:Draw(
"Text",
{
Text = "Nil",
Font = Esp.Settings.TextFont,
Size = Esp.Settings.TextSize,
Center = true,
Outline = Esp.Settings.TextOutline,
Color = Esp.Settings.SleepingColor,
ZIndex = 2,
Visible = false,
}
)
drawings.Armour = Functions:Draw(
"Text",
{
Text = "Naked",
Font = Esp.Settings.TextFont,
Size = Esp.Settings.TextSize,
Center = false,
Outline = Esp.Settings.TextOutline,
Color = Esp.Settings.ArmourColor,
ZIndex = 2,
Visible = false,
}
)
drawings.Tool = Functions:Draw(
"Text",
{
Text = "Nothing",
Font = Esp.Settings.TextFont,
Size = Esp.Settings.TextSize,
Center = false,
Outline = Esp.Settings.TextOutline,
Color = Esp.Settings.ToolColor,
ZIndex = 2,
Visible = false,
}
)
drawings.ViewAngle = Functions:Draw(
"Line",
{
Thickness = Esp.Settings.ViewAngleThickness,
Transparency = Esp.Settings.ViewAngleTransparrency,
Color = Esp.Settings.ViewAngleColor,
ZIndex = 2,
Visible = false,
}
)
drawings.Tracer = Functions:Draw(
"Line",
{ Thickness = Esp.Settings.TracerThickness, Transparency = 1, Color = Esp.Settings.TracerColor, ZIndex = 2, Visible = false }
)
drawings.PlayerTable = PlayerTable
Esp.Players[PlayerTable.model] = drawings
end
function Esp:RemoveEsp(PlayerTable)
if not PlayerTable and PlayerTable.model ~= nil then
return
end
esp = Esp.Players[PlayerTable.model]
if not esp then
return
end
for i, v in pairs(esp) do
if not type(v) == "table" then
v:Remove()
end
end
Esp.Players[PlayerTable.model] = nil
end
function Esp:UpdateEsp()
for i, v in pairs(Esp.Players) do
local Character = i
local Position, OnScreen = Camera:WorldToViewportPoint(Character:GetPivot().Position)
local scale = 1 / (Position.Z * math.tan(math.rad(Camera.FieldOfView * 0.5)) * 2) * 100
local w, h = math.floor(40 * scale), math.floor(55 * scale)
local x, y = math.floor(Position.X), math.floor(Position.Y)
local Distance = (CharcaterMiddle:GetPivot().Position - Character:GetPivot().Position).Magnitude
local BoxPosX, BoxPosY = math.floor(x - w * 0.5), math.floor(y - h * 0.5)
local offsetCFrame = CFrame.new(0, 0, -4)
if Character and Character:FindFirstChild("HumanoidRootPart") and Character:FindFirstChild("Head") then
local TeamTag = Character.Head.Teamtag.Enabled
if OnScreen == true and Esp.Settings.Boxes == true and Distance <= Esp.Settings.RenderDistance then
if Esp.Settings.TeamCheck == true and TeamTag == false then
v.BoxOutline.Visible = Esp.Settings.BoxesOutline
v.Box.Visible = true
elseif Esp.Settings.TeamCheck == true and TeamTag == true then
v.BoxOutline.Visible = false
v.Box.Visible = false
else
v.BoxOutline.Visible = Esp.Settings.BoxesOutline
v.Box.Visible = true
end
if Esp.Settings.TargetSleepers == true and v.PlayerTable.sleeping == true then
v.BoxOutline.Visible = false
v.Box.Visible = false
end
v.BoxOutline.Position = Vector2.new(BoxPosX, BoxPosY)
v.BoxOutline.Size = Vector2.new(w, h)
v.Box.Position = Vector2.new(BoxPosX, BoxPosY)
v.Box.Size = Vector2.new(w, h)
v.Box.Color = Esp.Settings.BoxesColor
v.BoxOutline.Color = Esp.Settings.BoxesOutlineColor
else
v.BoxOutline.Visible = false
v.Box.Visible = false
end
if OnScreen == true and Esp.Settings.Sleeping == true and Distance <= Esp.Settings.RenderDistance then
if v.PlayerTable.sleeping == true then
v.Sleeping.Text = "Sleeping"
else
v.Sleeping.Text = "Awake"
end
if Esp.Settings.TeamCheck == true and TeamTag == false then
v.Sleeping.Visible = true
elseif Esp.Settings.TeamCheck == true and TeamTag == true then
v.Sleeping.Visible = false
else
v.Sleeping.Visible = true
end
if Esp.Settings.TargetSleepers == true and v.PlayerTable.sleeping == true then
v.Sleeping.Visible = false
end
v.Sleeping.Outline = Esp.Settings.TextOutline
v.Sleeping.Color = Esp.Settings.SleepingColor
v.Sleeping.Size = math.max(
math.min(math.abs(Esp.Settings.TextSize * scale), Esp.Settings.TextSize),
Esp.Settings.MinTextSize
)
v.Sleeping.Color = Esp.Settings.SleepingColor
v.Sleeping.Font = Esp.Settings.TextFont
v.Sleeping.Position = Vector2.new(x, math.floor(y - h * 0.5 - v.Sleeping.TextBounds.Y))
else
v.Sleeping.Visible = false
end
if OnScreen == true and Esp.Settings.Distances == true and Distance <= Esp.Settings.RenderDistance then
if Esp.Settings.TeamCheck == true and TeamTag == false then
v.Sleeping.Visible = true
elseif Esp.Settings.TeamCheck == true and TeamTag == true then
v.Sleeping.Visible = false
else
v.Sleeping.Visible = true
end
if Esp.Settings.TargetSleepers == true and v.PlayerTable.sleeping == true then
v.Sleeping.Visible = false
end
if Esp.Settings.Sleeping == false then
v.Sleeping.Text = math.floor(Distance) .. "s"
else
v.Sleeping.Text = v.Sleeping.Text .. " | " .. math.floor(Distance) .. "s"
end
v.Sleeping.Outline = Esp.Settings.TextOutline
v.Sleeping.Color = Esp.Settings.SleepingColor
v.Sleeping.Size = math.max(
math.min(math.abs(Esp.Settings.TextSize * scale), Esp.Settings.TextSize),
Esp.Settings.MinTextSize
)
v.Sleeping.Color = Esp.Settings.SleepingColor
v.Sleeping.Font = Esp.Settings.TextFont
v.Sleeping.Position = Vector2.new(x, math.floor(y - h * 0.5 - v.Sleeping.TextBounds.Y))
else
v.Sleeping.Visible = false
end
if OnScreen == true and Esp.Settings.Tool == true and Distance <= Esp.Settings.RenderDistance then
if Esp.Settings.TeamCheck == true and TeamTag == false then
v.Tool.Visible = true
elseif Esp.Settings.TeamCheck == true and TeamTag == true then
v.Tool.Visible = false
else
v.Tool.Visible = true
end
if Esp.Settings.TargetSleepers == true and v.PlayerTable.sleeping == true then
v.Tool.Visible = false
end
v.Tool.Position = Vector2.new(
math.floor((BoxPosX + w) + v.Tool.TextBounds.X / 10),
BoxPosY + v.Tool.TextBounds.Y * 1.55 * 0.5 - ((v.Tool.TextBounds.Y * 2) * 0.5) + v.Tool.TextBounds.Y
)
v.Tool.Text = Esp:CheckTools(v.PlayerTable)
v.Tool.Outline = Esp.Settings.TextOutline
v.Tool.Size = math.max(
math.min(math.abs(Esp.Settings.TextSize * scale), Esp.Settings.TextSize),
Esp.Settings.MinTextSize
)
v.Tool.Color = Esp.Settings.ToolColor
v.Tool.Font = Esp.Settings.TextFont
else
v.Tool.Visible = false
end
if OnScreen == true and Esp.Settings.Armour == true and Distance <= Esp.Settings.RenderDistance then
if Character.Armor:FindFirstChildOfClass("Folder") then
v.Armour.Text = "Armoured"
else
v.Armour.Text = "Naked"
end
if Esp.Settings.TeamCheck == true and TeamTag == false then
v.Armour.Visible = true
elseif Esp.Settings.TeamCheck == true and TeamTag == true then
v.Armour.Visible = false
else
v.Armour.Visible = true
end
if Esp.Settings.TargetSleepers == true and v.PlayerTable.sleeping == true then
v.Armour.Visible = false
end
v.Armour.Outline = Esp.Settings.TextOutline
v.Armour.Size = math.max(
math.min(math.abs(Esp.Settings.TextSize * scale), Esp.Settings.TextSize),
Esp.Settings.MinTextSize
)
v.Armour.Position = Vector2.new(
math.floor((BoxPosX + w) + v.Armour.TextBounds.X / 10),
BoxPosY + v.Armour.TextBounds.Y * 1.55 * 0.5 - ((v.Armour.TextBounds.Y * 2) * 0.5)
)
v.Armour.Color = Esp.Settings.ArmourColor
v.Armour.Font = Esp.Settings.TextFont
else
v.Armour.Visible = false
end
if OnScreen == true and Esp.Settings.Tracer == true and Distance <= Esp.Settings.RenderDistance then
if Esp.Settings.TeamCheck == true and TeamTag == false then
v.Tracer.Visible = true
elseif Esp.Settings.TeamCheck == true and TeamTag == true then
v.Tracer.Visible = false
else
v.Tracer.Visible = true
end
if Esp.Settings.TargetSleepers == true and v.PlayerTable.sleeping == true then
v.Tracer.Visible = false
end
v.Tracer.Color = Esp.Settings.TracerColor
v.Tracer.Thickness = Esp.Settings.TracerThickness
v.Transparency = Esp.Settings.TracerTransparrency
if Esp.Settings.TracerFrom == "Bottom" then
v.Tracer.From = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y)
v.Tracer.To = Vector2.new(x, y + h * 0.5)
elseif Esp.Settings.TracerFrom == "Middle" then
v.Tracer.From = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / 2)
v.Tracer.To = Vector2.new(x, y)
else
v.Tracer.From =
Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y / Camera.ViewportSize.Y)
if Esp.Settings.Sleeping == true then
v.Tracer.To = Vector2.new(x, (y - h) - v.Sleeping.TextBounds.Y * 0.5)
else
v.Tracer.To = Vector2.new(x, y - h * 0.5)
end
end
else
v.Tracer.Visible = false
end
if OnScreen == true and Esp.Settings.ViewAngle == true and Distance <= Esp.Settings.RenderDistance then
if Esp.Settings.TeamCheck == true and TeamTag == false then
v.ViewAngle.Visible = true
elseif Esp.Settings.TeamCheck == true and TeamTag == true then
v.ViewAngle.Visible = false
else
v.ViewAngle.Visible = true
end
if Esp.Settings.TargetSleepers == true and v.PlayerTable.sleeping == true then
v.ViewAngle.Visible = false
end
v.ViewAngle.Color = Esp.Settings.ViewAngleColor
v.ViewAngle.Thickness = Esp.Settings.ViewAngleThickness
v.Transparency = Esp.Settings.ViewAngleTransparrency
local headpos = Camera:WorldToViewportPoint(Character.Head.Position)
local offsetCFrame = CFrame.new(0, 0, -4)
v.ViewAngle.From = Vector2.new(headpos.X, headpos.Y)
local value = math.clamp(1 / Distance * 100, 0.1, 1)
local dir = Character.Head.CFrame:ToWorldSpace(offsetCFrame)
offsetCFrame = offsetCFrame * CFrame.new(0, 0, 0.4)
local dirpos = Camera:WorldToViewportPoint(Vector3.new(dir.X, dir.Y, dir.Z))
if OnScreen == true then
v.ViewAngle.To = Vector2.new(dirpos.X, dirpos.Y)
offsetCFrame = CFrame.new(0, 0, -4)
end
else
v.ViewAngle.Visible = false
end
else
v.Box.Visible = false
v.BoxOutline.Visible = false
v.Tool.Visible = false
v.Armour.Visible = false
v.Sleeping.Visible = false
v.ViewAngle.Visible = false
v.Tracer.Visible = false
end
end
end
--Drawings
local FovCircle = Functions:Draw(
"Circle",
{
Filled = Fov.Settings.FovFilled,
Color = Fov.Settings.FovColor,
Radius = Fov.Settings.FovSize,
NumSides = 90,
Thickness = 1,
Transparency = Fov.Settings.FovTransparency,
ZIndex = 2,
Visible = false,
}
)
local FovSnapline = Functions:Draw("Line", { Transparency = 1, Thickness = 1, Visible = false })
--Connections
local PlayerUpdater = game:GetService("RunService").RenderStepped
local PlayerConnection = PlayerUpdater:Connect(function()
Esp:UpdateEsp()
end)
--Init Functions
for i, v in pairs(getupvalues(getrenv()._G.modules.Player.GetPlayerModel)[1]) do
if not table.find(cache, v) then
table.insert(cache, v)
Esp:CreateEsp(v)
end
end
game:GetService("Workspace").ChildAdded:Connect(function(child)
if child:FindFirstChild("HumanoidRootPart") then
for i, v in pairs(getupvalues(getrenv()._G.modules.Player.GetPlayerModel)[1]) do
if not table.find(cache, v) then
Esp:CreateEsp(v)
table.insert(cache, v)
end
end
end
end)
local Library =
loadstring(game:HttpGet("https://raw.githubusercontent.com/BigHacker123/Library.lua/main/Library.lua"))()
local SaveManager = loadstring(
game:HttpGet("https://raw.githubusercontent.com/violin-suzutsuki/LinoriaLib/main/addons/SaveManager.lua")
)()
local ThemeManager = loadstring(game:HttpGet("https://raw.githubusercontent.com/violin-suzutsuki/LinoriaLib/main/addons/ThemeManager.lua"))()
local skybox_assets =
loadstring(game:HttpGet("https://raw.githubusercontent.com/BigHacker123/skybox/main/.lua", true))()
--// Create UI
local Build = "Full Undetected"
local Color = "#FF0000"
local Ver = "2.00"
if Build == "Standard" then
Color = "#00FF00"
Ver = "1.1"
elseif Build == "Full Undetected" then
Color = "#FF0000"
Ver = "2.0"
elseif Build == "Personal" then
Color = "#0000FF"
Ver = "1.1"
end
local Window = Library:CreateWindow({
Size = UDim2.fromOffset(550, 610),
Title = 'Astral.pro | '
.. ''
.. Build
.. ""
.. " [v"
.. Ver
.. "]",
Center = true,
AutoShow = true,
})
local CustomTopText = Drawing.new("Text")
CustomTopText.Text = "Astral [Legit Public] - discord.gg/astralttm"
CustomTopText.Visible = true
CustomTopText.Transparency = 1
CustomTopText.Size = 15
CustomTopText.Outline = true
CustomTopText.Center = true
CustomTopText.Font = 3
CustomTopText.Color = Color3.fromRGB(255, 255, 255)
CustomTopText.Position = Vector2.new(Camera.ViewportSize.X / 2, 0)
Library:SetWatermark("Astral TS")
local Tabs = {
Combat = Window:AddTab("Combat"),
Visual = Window:AddTab("Visual"),
Misc = Window:AddTab("Miscellaneous"),
["UISettings"] = Window:AddTab("UI Settings"),
}
local HBExpanderTabbox = Tabs.Combat:AddLeftTabbox()
local HBExpanderTab = HBExpanderTabbox:AddTab("Force Hitbox Expansion")
local GunModsTabbox = Tabs.Combat:AddRightTabbox()
local GunModsTab = GunModsTabbox:AddTab("Modifications")
local RiskyTabbox = Tabs.Combat:AddRightTabbox()
local RiskyTab = RiskyTabbox:AddTab("Risky")
local CustomHitsoundsTabBox = Tabs.Misc:AddLeftTabbox("Custom Hitsounds")
local PlayerHitsoundsTab = CustomHitsoundsTabBox:AddTab("Player Hitsounds")
local NatureHitsoundsTab = CustomHitsoundsTabBox:AddTab("Nature Hitsounds")
local sounds = {
["Defualt Headshot Hit"] = "rbxassetid://9119561046",
["Defualt Body Hit"] = "rbxassetid://9114487369",
["Defualt Wood Hit"] = "rbxassetid://9125573608",
["Defualt Rock Hit"] = "rbxassetid://9118630389",
Neverlose = "rbxassetid://8726881116",
Gamesense = "rbxassetid://4817809188",
One = "rbxassetid://7380502345",
Bell = "rbxassetid://6534947240",
Rust = "rbxassetid://1255040462",
TF2 = "rbxassetid://2868331684",
Slime = "rbxassetid://6916371803",
["Among Us"] = "rbxassetid://5700183626",
Minecraft = "rbxassetid://4018616850",
["CS:GO"] = "rbxassetid://6937353691",
Saber = "rbxassetid://8415678813",
Baimware = "rbxassetid://3124331820",
Osu = "rbxassetid://7149255551",
["TF2 Critical"] = "rbxassetid://296102734",
Bat = "rbxassetid://3333907347",
["Call of Duty"] = "rbxassetid://5952120301",
Bubble = "rbxassetid://6534947588",
Pick = "rbxassetid://1347140027",
Pop = "rbxassetid://198598793",
Bruh = "rbxassetid://4275842574",
Bamboo = "rbxassetid://3769434519",
Crowbar = "rbxassetid://546410481",
Weeb = "rbxassetid://6442965016",
Beep = "rbxassetid://8177256015",
Bambi = "rbxassetid://8437203821",
Stone = "rbxassetid://3581383408",
["Old Fatality"] = "rbxassetid://6607142036",
Click = "rbxassetid://8053704437",
Ding = "rbxassetid://7149516994",
Snow = "rbxassetid://6455527632",
Laser = "rbxassetid://7837461331",
Mario = "rbxassetid://2815207981",
Steve = "rbxassetid://4965083997",
Snowdrake = "rbxassetid://7834724809",
}
local SoundService = game:GetService("SoundService")
SoundService.PlayerHitHeadshot.Volume = 5
SoundService.PlayerHitHeadshot.Pitch = 1
SoundService.PlayerHitHeadshot.EqualizerSoundEffect.HighGain = -2
-- GAME
PlayerHitsoundsTab:AddToggle("Enabled_Toggle1", { Text = "Enabled", Default = false })
PlayerHitsoundsTab:AddDropdown(
"HeadshotHit",
{
Values = {
"Defualt Headshot Hit",
"Neverlose",
"Gamesense",
"One",
"Bell",
"Rust",
"TF2",
"Slime",
"Among Us",
"Minecraft",
"CS:GO",
"Saber",
"Baimware",
"Osu",
"TF2 Critical",
"Bat",
"Call of Duty",
"Bubble",
"Pick",
"Pop",
"Bruh",
"Bamboo",
"Crowbar",
"Weeb",
"Beep",
"Bambi",
"Stone",
"Old Fatality",
"Click",
"Ding",
"Snow",
"Laser",
"Mario",
"Steve",
"Snowdrake",
},
Default = 1,
Multi = false,
Text = "Head Hitsound:",
}
)
Options.HeadshotHit:OnChanged(function()
local soundId = sounds[Options.HeadshotHit.Value]
game:GetService("SoundService").PlayerHitHeadshot.SoundId = soundId
end)
PlayerHitsoundsTab
:AddSlider("Volume_Slider", { Text = "Volume", Default = 5, Min = 0, Max = 10, Rounding = 0, Compact = true })
:OnChanged(function(vol)
SoundService.PlayerHitHeadshot.Volume = vol
end)
PlayerHitsoundsTab
:AddSlider("Pitch_Slider", { Text = "Pitch", Default = 1, Min = 0, Max = 2, Rounding = 1, Compact = true })
:OnChanged(function(pich)
SoundService.PlayerHitHeadshot.Pitch = pich
end)
--
PlayerHitsoundsTab:AddToggle("Enabled_Toggle2", { Text = "Enabled", Default = false })
PlayerHitsoundsTab:AddDropdown(
"Hit",
{
Values = {
"Defualt Body Hit",
"Neverlose",
"Gamesense",
"One",
"Bell",
"Rust",
"TF2",
"Slime",
"Among Us",
"Minecraft",
"CS:GO",
"Saber",
"Baimware",
"Osu",
"TF2 Critical",
"Bat",
"Call of Duty",
"Bubble",
"Pick",
"Pop",
"Bruh",
"Bamboo",
"Crowbar",
"Weeb",
"Beep",
"Bambi",
"Stone",
"Old Fatality",
"Click",
"Ding",
"Snow",
"Laser",
"Mario",
"Steve",
"Snowdrake",
},
Default = 1,
Multi = false,
Text = "Body Hitsound:",
}
)
Options.Hit:OnChanged(function()
local soundId = sounds[Options.Hit.Value]
game:GetService("SoundService").PlayerHit2.SoundId = soundId
end)
PlayerHitsoundsTab
:AddSlider("Volume_Slider", { Text = "Volume", Default = 5, Min = 0, Max = 10, Rounding = 0, Compact = true })
:OnChanged(function(vole)
SoundService.PlayerHit2.Volume = vole
end)
PlayerHitsoundsTab
:AddSlider("Pitch_Slider", { Text = "Pitch", Default = 1, Min = 0, Max = 2, Rounding = 1, Compact = true })
:OnChanged(function(piche)
SoundService.PlayerHit2.Pitch = piche
end)
--* Nature Hitsounds *--
NatureHitsoundsTab:AddToggle("Enabled_Toggle2", { Text = "Enabled", Default = false })
NatureHitsoundsTab:AddDropdown(
"WoodHit",
{
Values = {
"Defualt Wood Hit",
"Neverlose",
"Gamesense",
"One",
"Bell",
"Rust",
"TF2",
"Slime",
"Among Us",
"Minecraft",
"CS:GO",
"Saber",
"Baimware",
"Osu",
"TF2 Critical",
"Bat",
"Call of Duty",
"Bubble",
"Pick",
"Pop",
"Bruh",
"Bamboo",
"Crowbar",
"Weeb",
"Beep",
"Bambi",
"Stone",
"Old Fatality",
"Click",
"Ding",
"Snow",
"Laser",
"Mario",
"Steve",
"Snowdrake",
},
Default = 1,
Multi = false,
Text = "Wood Hitsound:",
}
)
Options.WoodHit:OnChanged(function()
local soundId = sounds[Options.WoodHit.Value]
game:GetService("SoundService").WoodHit.SoundId = soundId
end)
NatureHitsoundsTab
:AddSlider("Volume_Slider", { Text = "Volume", Default = 5, Min = 0, Max = 10, Rounding = 0, Compact = true })
:OnChanged(function(vole)
SoundService.WoodHit.Volume = vole
end)
NatureHitsoundsTab
:AddSlider("Pitch_Slider", { Text = "Pitch", Default = 1, Min = 0, Max = 2, Rounding = 1, Compact = true })
:OnChanged(function(piche)
SoundService.WoodHit.Pitch = piche
end)
--
NatureHitsoundsTab:AddToggle("Enabled_Toggle1", { Text = "Enabled", Default = false })
NatureHitsoundsTab:AddDropdown(
"RockHit",
{
Values = {
"Defualt Rock Hit",
"Neverlose",
"Gamesense",
"One",
"Bell",
"Rust",
"TF2",
"Slime",
"Among Us",
"Minecraft",
"CS:GO",
"Saber",
"Baimware",
"Osu",
"TF2 Critical",
"Bat",
"Call of Duty",
"Bubble",
"Pick",
"Pop",
"Bruh",
"Bamboo",
"Crowbar",
"Weeb",
"Beep",
"Bambi",
"Stone",
"Old Fatality",
"Click",
"Ding",
"Snow",
"Laser",
"Mario",
"Steve",
"Snowdrake",
},
Default = 1,
Multi = false,
Text = "Rock Hitsound:",
}
)
Options.RockHit:OnChanged(function()
local soundId = sounds[Options.RockHit.Value]
game:GetService("SoundService").RockHit.SoundId = soundId
end)
NatureHitsoundsTab
:AddSlider("Volume_Slider", { Text = "Volume", Default = 5, Min = 0, Max = 10, Rounding = 0, Compact = true })
:OnChanged(function(vol)
SoundService.RockHit.Volume = vol
end)
NatureHitsoundsTab
:AddSlider("Pitch_Slider", { Text = "Pitch", Default = 1, Min = 0, Max = 2, Rounding = 1, Compact = true })
:OnChanged(function(pich)
SoundService.RockHit.Pitch = pich
end)
LPH_JIT_MAX(function()
--** Hitbox Expander **--
local SizeX = 0
local SizeY = 0
local SizeZ = 0
local OriginalHeadSize = Vector3.new(1.672248125076294, 0.835624098777771, 0.835624098777771)
local On = false
local function UpdateHeadSizes(newvalue)
local ToggleValue = newvalue
for i, v in pairs(game:GetService("Workspace"):GetChildren()) do
if v:FindFirstChild("HumanoidRootPart") and v:FindFirstChild("Head") then
local hasFakeHead = v:FindFirstChild("FakeHead")
if ToggleValue then
if not hasFakeHead then
local FakeHead = v.Head:Clone()
FakeHead.Name = "FakeHead"
FakeHead.Parent = v
FakeHead.Transparency = 0
FakeHead.Rotation = v.Head.Rotation
end
if not hasFakeHead then
v.Head.Size = Vector3.new(SizeX, SizeY, SizeZ)
v.Head.Transparency = 0.7
v.Head.CanCollide = false
v.Head.Nametag.Enabled = false
end
else
if hasFakeHead then
v.FakeHead:Destroy()
end
v.Head.Size = OriginalHeadSize
v.Head.Nametag.Enabled = true
v.Head.Transparency = 0
end
end
end
end
end)()
HBExpanderTab:AddToggle("HitboxExpander", { Text = "Toggle", Default = false }):OnChanged(function(Value)
On = Value
if Value == true then
while Value == true do
for i, v in pairs(game:GetService("Workspace"):GetChildren()) do
if v:FindFirstChild("HumanoidRootPart") and v:FindFirstChild("Head") then
if not v:FindFirstChild("FakeHead") then
local FakeHead = v.Head:Clone()
FakeHead.Name = "FakeHead"
FakeHead.Parent = v
FakeHead.Transparency = 0
FakeHead.Rotation = v.Head.Rotation
v.Head.Size = Vector3.new(SizeX, SizeY * 0.7, SizeZ)
v.Head.Transparency = 0.7
v.Head.CanCollide = false
v.Head.Nametag.Enabled = false
end
end
end
wait(3)
end
else
if Value == false then
for i, v in pairs(game:GetService("Workspace"):GetChildren()) do
if v:FindFirstChild("HumanoidRootPart") and v:FindFirstChild("Head") then
if v:FindFirstChild("FakeHead") then
v.FakeHead:Destroy()
v.Head.Size = Vector3.new(1.672248125076294, 0.835624098777771, 0.835624098777771)
v.Head.Nametag.Enabled = true
end
end
end
end
end
end)
HBExpanderTab
:AddSlider(
"HBX",
{ Text = "X Size", Default = 1, Min = 0, Max = 4, Rounding = 2, Compact = false, Suffix = "Size" }
)
:OnChanged(function(Value)
SizeX = Value
end)
HBExpanderTab
:AddSlider(
"HBY",
{ Text = "Y Size", Default = 1, Min = 0, Max = 6, Rounding = 2, Compact = false, Suffix = "SIze" }
)
:OnChanged(function(Value)
SizeY = Value
end)
HBExpanderTab
:AddSlider(
"HBZ",
{ Text = "Z Size", Default = 1, Min = 0, Max = 4, Rounding = 2, Compact = false, Suffix = "Size" }
)
:OnChanged(function(Value)
SizeZ = Value
end)
HBExpanderTab:AddButton("Update Hitbox Size", function()
Toggles.HitboxExpander:SetValue(false)
Toggles.HitboxExpander:SetValue(true)
end)
local Recoil = getrenv()._G.modules.Camera.Recoil
RiskyTab:AddToggle("RecoilToggle", { Text = "No Recoil (Cant Toggle Off)", Default = false }):OnChanged(function(Value)
getrenv()._G.modules.Camera.Recoil = function(...)
local args = { ... }
if Value then
args[1].cameraY = 0
args[1].cameraX = 0
args[1].push = 0
args[1].cameraXShake = 0
args[1].rotSpeed = 0
args[1].lerp = 0
end
return Recoil(...)
end
end)
-- BULLET TRACERS
local Markeroid = {
HitTracer = {
Enabled = true,
Texture = "rbxassetid://7071778278",
Color = Color3.fromRGB(95, 0, 255),
},
HitMarker = {
Enabled = true,
Texture = "rbxassetid://316279304",
Color = Color3.fromRGB(95, 0, 255),
Size = UDim2.new(1, 50, 1, 50),
},
HitLog = {
Enabled = false,
Color = Color3.fromRGB(95, 0, 255),
TextSize = 19,
TextFond = 1,
},
}
GunModsTab:AddToggle("HitTracerEnabledToggle", { Text = "Hit Tracer Enabled", Default = false, Tooltip = nil })
Toggles.HitTracerEnabledToggle:OnChanged(function(HitTracerEnabledToggleValue)
Markeroid.HitTracer.Enabled = HitTracerEnabledToggleValue
end)
GunModsTab:AddDropdown("HitTracerTextureDropDown", {
Values = { "Beam", "Beam 2", "DNK", "Wave" },
Default = 1,
Multi = false,
Text = "Texture",
Tooltip = nil,
})
Options.HitTracerTextureDropDown:OnChanged(function(HitTracerTextureDropDownValue)
if HitTracerTextureDropDownValue == "Beam" then
Markeroid.HitTracer.Texture = "rbxassetid://446111271"
elseif HitTracerTextureDropDownValue == "Beam 2" then
Markeroid.HitTracer.Texture = "rbxassetid://7216850022"
elseif HitTracerTextureDropDownValue == "DNK" then
Markeroid.HitTracer.Texture = "rbxassetid://7071778278"
elseif HitTracerTextureDropDownValue == "Wave" then
Markeroid.HitTracer.Texture = "rbxassetid://13832105797"
end
end)
GunModsTab:AddLabel("Color")
:AddColorPicker("TracerColorH", { Default = Color3.fromRGB(95, 0, 255), Title = "Tracer Color" })
Options.TracerColorH:OnChanged(function(TracerColorValue)
Markeroid.HitTracer.Color = TracerColorValue
end)
local Xf = getrenv()._G.modules.Network
local _f
_f = hookfunction(
game.Players.LocalPlayer:FindFirstChild("RemoteEvent").FireServer,
LPH_NO_VIRTUALIZE(function(G, ...)
local w = { ... }
local workspace = game.Workspace
if w[1] == 10 and w[2] == "Hit" and w[5] then
task.spawn(function()
local m = nil
if w[8] then
m = w[8]
else
m = w[3]
end
repeat
wait()
until m ~= nil
if typeof(m) == "Vector3" then
local z, h = workspace.CurrentCamera:WorldToViewportPoint(m)
local R = false
local c = Instance.new("Part")
c.CanCollide = false
c.Anchored = true
c.Parent = workspace
local V = Instance.new("Attachment")
V.Position = workspace.Ignore.LocalCharacter.Middle.Position
V.Parent = c
V.Visible = false
local F = Instance.new("Attachment")
F.Position = m
F.Parent = c
F.Visible = false
local _ = Instance.new("Beam")
_.Enabled = Markeroid.HitTracer.Enabled
_.Brightness = 10
_.LightInfluence = 0.75
_.LightEmission = 0.1
_.Attachment0 = V
_.Attachment1 = F
_.Texture = Markeroid.HitTracer.Texture
_.TextureLength = 7
_.TextureMode = "Stretch"
_.TextureSpeed = 6.21
_.Color = ColorSequence.new({
ColorSequenceKeypoint.new(0, Markeroid.HitTracer.Color),
ColorSequenceKeypoint.new(0.5, Markeroid.HitTracer.Color),
ColorSequenceKeypoint.new(1, Markeroid.HitTracer.Color),
})
_.Transparency = NumberSequence.new(0)
_.Parent = c
_.CurveSize0 = 0
_.CurveSize1 = 0
_.FaceCamera = true
_.Segments = 10
_.Width0 = 2
_.Width1 = 2
_.ZOffset = 0
wait(1)
c:Destroy()
end
end)
end
return _f(G, unpack(w))
end)
)
local PlayerVisualTabbox = Tabs.Visual:AddLeftTabbox()
local PlayerVisualTab = PlayerVisualTabbox:AddTab("Players")
local PlayerSettingsVisualTab = PlayerVisualTabbox:AddTab("Settings")
local PlayerVisualTabbox = Tabs.Visual:AddRightTabbox()
local World = PlayerVisualTabbox:AddTab("World ESP")
local PlayerVisualTabbox = Tabs.Visual:AddRightTabbox()
local Skin = PlayerVisualTabbox:AddTab("SkinChanger")
PlayerVisualTab:AddToggle("Boxes", { Text = "Boxes", Default = false })
:AddColorPicker("BoxesColor", { Default = Color3.fromRGB(155, 95, 255), Title = "Color" })
:AddColorPicker("BoxesOutlineColor", { Default = Color3.fromRGB(0, 0, 0), Title = "Color" })
PlayerVisualTab:AddToggle("Sleeping", { Text = "Sleeping", Default = false })
:AddColorPicker("SleepingColor", { Default = Color3.fromRGB(155, 95, 255), Title = "Color" })
PlayerVisualTab:AddToggle("Distances", { Text = "Distance", Default = false })
:AddColorPicker("DistancesColor", { Default = Color3.fromRGB(155, 95, 255), Title = "Color" })
PlayerVisualTab:AddToggle("Armour", { Text = "Armour", Default = false })
:AddColorPicker("ArmourColor", { Default = Color3.fromRGB(155, 95, 255), Title = "Color" })
PlayerVisualTab:AddToggle("Tool", { Text = "Tool", Default = false })
:AddColorPicker("ToolColor", { Default = Color3.fromRGB(155, 95, 255), Title = "Color" })
PlayerVisualTab:AddToggle("ViewAngle", { Text = "View Angle", Default = false })
:AddColorPicker("ViewAngleColor", { Default = Color3.fromRGB(155, 95, 255), Title = "Color" })
PlayerVisualTab:AddToggle("Tracer", { Text = "Tracer", Default = false })
:AddColorPicker("TracerColor", { Default = Color3.fromRGB(155, 95, 255), Title = "Color" })
-- STORAGE
World:AddToggle("STORAGEfag", { Text = "Crate ESP", Default = false }):OnChanged(function(monkey99)
if monkey99 then
local function onPartAdded(part)
if
part:IsA("Part")
and part.BrickColor == BrickColor.new("Linen")
and part.Material == Enum.Material.WoodPlanks
then
local parent = part.Parent
if parent and parent:IsA("Model") and #parent:GetChildren() == 2 then
local MilitaryEsp = Instance.new("BoxHandleAdornment")
MilitaryEsp.Adornee = part
MilitaryEsp.AlwaysOnTop = true
MilitaryEsp.ZIndex = 0
MilitaryEsp.Size = part.Size
MilitaryEsp.Name = "MilitaryCrate"
MilitaryEsp.Transparency = 0.3
MilitaryEsp.Color = BrickColor.new("Dark Royal blue")
MilitaryEsp.Parent = workspace.Monkey.StorageESPAdornee
end
end
end
workspace.DescendantAdded:Connect(onPartAdded)
wait(1.5)
local parts = workspace:GetDescendants()
local meshes = {}
for _, part in ipairs(parts) do
if
part:IsA("UnionOperation")
and part.BrickColor == BrickColor.new("Cashmere")
and part.Material == Enum.Material.Plastic
then
local PartCrateEsp = Instance.new("BoxHandleAdornment")
PartCrateEsp.Adornee = part
PartCrateEsp.AlwaysOnTop = true
PartCrateEsp.ZIndex = 0
PartCrateEsp.Size = part.Size
PartCrateEsp.Name = "PartCrate"
PartCrateEsp.Transparency = 0.3
PartCrateEsp.Color = BrickColor.new("Bright yellow")
PartCrateEsp.Parent = workspace.Monkey.StorageESPAdornee
end
end
local function onPartAdded(part)
if
part:IsA("UnionOperation")
and part.BrickColor == BrickColor.new("Cashmere")
and part.Material == Enum.Material.Plastic
then
local UpdatePartCrateEsp = Instance.new("BoxHandleAdornment")
UpdatePartCrateEsp.Adornee = part
UpdatePartCrateEsp.AlwaysOnTop = true
UpdatePartCrateEsp.ZIndex = 0
UpdatePartCrateEsp.Size = part.Size
UpdatePartCrateEsp.Name = "PartCrate"
UpdatePartCrateEsp.Transparency = 0.3
UpdatePartCrateEsp.Color = BrickColor.new("Bright yellow")
UpdatePartCrateEsp.Parent = workspace.Monkey.StorageESPAdornee
end
end
workspace.DescendantAdded:Connect(onPartAdded)
else
for _, v in ipairs(workspace.Monkey.StorageESPAdornee:GetDescendants()) do
v:Destroy()
end
end
end)
-- TOTEMS
-- ORES
World:AddToggle("ore4s3", { Text = "Stone ESP", Default = false }):OnChanged(function(monkey4)
if monkey4 then
local function adornStoneOre(part)
if
part:IsA("MeshPart")
and part.BrickColor == BrickColor.new("Flint")
and part.Material == Enum.Material.Limestone
then
local parent = part.Parent
if parent and parent:IsA("Model") and #parent:GetChildren() == 1 then
local StoneEsp = Instance.new("BoxHandleAdornment")
StoneEsp.Adornee = part
StoneEsp.AlwaysOnTop = true
StoneEsp.ZIndex = 0
StoneEsp.Size = part.Size
StoneEsp.Name = "Stone"
StoneEsp.Transparency = 0.3
StoneEsp.Color = BrickColor.new("Grey")
StoneEsp.Parent = workspace.Monkey.OreESPAdornee
end
end
end
local function onPartAdded(part)
adornStoneOre(part)
end
for _, part in ipairs(workspace:GetDescendants()) do
adornStoneOre(part)
end
workspace.DescendantAdded:Connect(onPartAdded)
else
for _, v in ipairs(workspace.Monkey.OreESPAdornee:GetDescendants()) do
if v.Name == "Stone" then
v:Destroy()
end
end
end
end)
World:AddToggle("ores2", { Text = "Iron ESP", Default = false }):OnChanged(function(monkey3)
if monkey3 then
local parts = workspace:GetDescendants()
local meshes = {}
for _, part in ipairs(parts) do
if
part:IsA("MeshPart")
and part.BrickColor == BrickColor.new("Burlap")
and part.Material == Enum.Material.Slate
then
local IronEsp = Instance.new("BoxHandleAdornment")
IronEsp.Adornee = part
IronEsp.AlwaysOnTop = true
IronEsp.ZIndex = 0
IronEsp.Size = part.Size
IronEsp.Name = "Iron"
IronEsp.Transparency = 0.3
IronEsp.Color = BrickColor.new("Burlap")
IronEsp.Parent = workspace.Monkey.OreESPAdornee
end
end
local function onPartAdded(part)
if
part:IsA("MeshPart")
and part.BrickColor == BrickColor.new("Burlap")
and part.Material == Enum.Material.Slate
then
if monkey3 then
local UpdateIronEsp = Instance.new("BoxHandleAdornment")
UpdateIronEsp.Adornee = part
UpdateIronEsp.AlwaysOnTop = true
UpdateIronEsp.ZIndex = 0
UpdateIronEsp.Size = part.Size
UpdateIronEsp.Name = "Iron"
UpdateIronEsp.Transparency = 0.3
UpdateIronEsp.Color = BrickColor.new("Burlap")
UpdateIronEsp.Parent = workspace.Monkey.OreESPAdornee
end
end
end
workspace.DescendantAdded:Connect(onPartAdded)
else
for _, v in ipairs(workspace.Monkey.OreESPAdornee:GetDescendants()) do
if v.Name == "Iron" then
v:Destroy()
end
end
end
end)
World:AddToggle("ores", { Text = "Nitrate ESP", Default = false }):OnChanged(function(monkey2)
if monkey2 then
local parts = workspace:GetDescendants()
local meshes = {}
for _, part in ipairs(parts) do
if
part:IsA("MeshPart")
and part.BrickColor == BrickColor.new("Institutional white")
and part.Material == Enum.Material.Slate
then
local NitrateEsp = Instance.new("BoxHandleAdornment")
NitrateEsp.Adornee = part
NitrateEsp.AlwaysOnTop = true
NitrateEsp.ZIndex = 0
NitrateEsp.Name = "Nitrate"
NitrateEsp.Size = part.Size
NitrateEsp.Transparency = 0.3
NitrateEsp.Color = BrickColor.new("Institutional white")
NitrateEsp.Parent = workspace.Monkey.OreESPAdornee
end
end
local function onPartAdded(part)
if
part:IsA("MeshPart")
and part.BrickColor == BrickColor.new("Institutional white")
and part.Material == Enum.Material.Slate
then
if monkey2 then
local UpdateNitrateEsp = Instance.new("BoxHandleAdornment")
UpdateNitrateEsp.Adornee = part
UpdateNitrateEsp.AlwaysOnTop = true
UpdateNitrateEsp.ZIndex = 0
UpdateNitrateEsp.Size = part.Size
UpdateNitrateEsp.Name = "Nitrate"
UpdateNitrateEsp.Transparency = 0.3
UpdateNitrateEsp.Color = BrickColor.new("Institutional white")
UpdateNitrateEsp.Parent = workspace.Monkey.OreESPAdornee
end
end
end
workspace.DescendantAdded:Connect(onPartAdded)
else
for _, v in ipairs(workspace.Monkey.OreESPAdornee:GetDescendants()) do
if v.Name == "Nitrate" then
v:Destroy()
end
end
end
end)
--Esp Switches
Toggles.ViewAngle:OnChanged(function(Value)
Esp.Settings.ViewAngle = Value
end)
Options.ViewAngleColor:OnChanged(function(Value)
Esp.Settings.ViewAngleColor = Value
end)
Toggles.Tracer:OnChanged(function(Value)
Esp.Settings.Tracer = Value
end)
Options.TracerColor:OnChanged(function(Value)
Esp.Settings.TracerColor = Value
end)
Toggles.Armour:OnChanged(function(Value)
Esp.Settings.Armour = Value
end)
Options.ToolColor:OnChanged(function(Value)
Esp.Settings.ToolColor = Value
end)
Toggles.Tool:OnChanged(function(Value)
Esp.Settings.Tool = Value
end)
Options.ArmourColor:OnChanged(function(Value)
Esp.Settings.ArmourColor = Value
end)
Toggles.Armour:OnChanged(function(Value)
Esp.Settings.Armour = Value
end)
Toggles.Distances:OnChanged(function(Value)
Esp.Settings.Distances = Value
end)
Options.DistancesColor:OnChanged(function(Value)
Esp.Settings.DistanceColor = Value
end)
Options.SleepingColor:OnChanged(function(Value)
Esp.Settings.SleepingColor = Value
end)
Toggles.Sleeping:OnChanged(function(Value)
Esp.Settings.Sleeping = Value
end)
Options.BoxesColor:OnChanged(function(Value)
Esp.Settings.BoxesColor = Value
end)
Options.BoxesOutlineColor:OnChanged(function(Value)
Esp.Settings.BoxesOutlineColor = Value
end)
Toggles.Boxes:OnChanged(function(Value)
Esp.Settings.Boxes = Value
end)
PlayerSettingsVisualTab:AddSlider(
"RenderDistance",
{ Text = "Render Distance", Default = 1500, Min = 1, Max = 1500, Rounding = 0, Compact = false, Suffix = "s" }
):OnChanged(function(Value)
Esp.Settings.RenderDistance = Value
end)
PlayerSettingsVisualTab:AddToggle("TargetSleepers", { Text = "Dont Show Sleepers", Default = false })
:OnChanged(function(Value)
Esp.Settings.TargetSleepers = Value
end)
PlayerSettingsVisualTab:AddToggle("BoxesOutlines", { Text = "Box Outlines", Default = false }):OnChanged(function(Value)
Esp.Settings.BoxesOutline = Value
end)
PlayerSettingsVisualTab:AddToggle("TeamCheck", { Text = "Team Check", Default = false }):OnChanged(function(Value)
Esp.Settings.TeamCheck = Value
end)
PlayerSettingsVisualTab:AddToggle("TextOutline", { Text = "Text Outlines", Default = false }):OnChanged(function(Value)
Esp.Settings.TextOutline = Value
end)
PlayerSettingsVisualTab:AddDropdown(
"TracerPosition",
{ Values = { "Bottom", "Middle", "Top" }, Default = 1, Multi = false, Text = "Tracer Position" }
):OnChanged(function(Value)
Esp.Settings.TracerFrom = Value
end)
--Misc
local LightingTabbox = Tabs.Misc:AddLeftTabbox()
local LightingTab = LightingTabbox:AddTab("Visuals")
local MiscTabbox = Tabs.Misc:AddRightTabbox()
local MiscTab = MiscTabbox:AddTab("Character Exploits")
local MiscTabbox = Tabs.Misc:AddRightTabbox()
local Bullets = MiscTabbox:AddTab("Customization")
-- SKIN Changer
local SkinChoice = "Galaxy"
local SkinRBxId = 0
local SkinsEnabled = false
local Framework = {
Settings = { FullBright = false, Fov = 90, LocalChams = false, LocalGunChams = false },
SkinChanger = { SkinsEnabled = false, SkinChoice = "Galaxy", SkinName = "Float", SkinRBXAssetId = 12319249626 },
}
function Framework:CheckSkins()
local tbl = {}
for i, v in pairs(game:GetService("ReplicatedStorage").ItemSkins:GetChildren()) do
table.insert(tbl, v.Name)
end
return tbl
end
function Framework:SetCammo(SkinName)
if
not require(game:GetService("ReplicatedStorage").ItemConfigs[getrenv()._G.modules.FPS.GetEquippedItem().id]).HandModel
then
return
end
local GunName = require(
game:GetService("ReplicatedStorage").ItemConfigs[getrenv()._G.modules.FPS.GetEquippedItem().id]
).HandModel
if table.find(Framework:CheckSkins(), GunName) then
local SkinFolder = game:GetService("ReplicatedStorage").ItemSkins[GunName]
if game:GetService("ReplicatedStorage").ItemSkins[GunName]:FindFirstChild(GunName .. "_" .. SkinName) then
local SkinChosen = game:GetService("ReplicatedStorage").ItemSkins[GunName][GunName .. "_" .. SkinName]
require(SkinChosen).ApplyToModel(game:GetService("Workspace").Ignore.FPSArms.HandModel)
end
end
end
game:GetService("Workspace").Ignore.FPSArms.ChildAdded:Connect(function()
if game:GetService("Workspace").Ignore.FPSArms:WaitForChild("HandModel") and SkinsEnabled == true then
Framework:SetCammo(SkinChoice)
end
end)
for i, v in pairs(game:GetService("ReplicatedStorage").ItemSkins:GetChildren()) do
if v:FindFirstChild(v.Name .. "_" .. "Galaxy") then
local clone = v:FindFirstChild(v.Name .. "_" .. "Galaxy"):Clone()
clone.Parent = game:GetService("ReplicatedStorage").ItemSkins[v.Name]
clone.Name = v.Name .. "_Frozen"
end
end
Skin:AddToggle("SkinsEnabled", { Text = "Enabled", Default = false })
Skin:AddDropdown("SkinChoice", { Values = { "Galaxy" }, Default = 1, Multi = false, Text = "Skin:" })
Skin:AddInput(
"SkinName",
{ Default = "Skin", Numeric = false, Finished = false, Text = "Name:", Placeholder = "Skin Name" }
)
Skin:AddInput(
"SkinRBXAssetId",
{ Default = 0, Numeric = true, Finished = true, Text = "Asset Id:", Placeholder = "RbxId" }
)
Skin:AddButton("Load Skin", function()
for i, v in pairs(game:GetService("ReplicatedStorage").ItemSkins:GetChildren()) do
if v:FindFirstChild(v.Name .. "_" .. "Galaxy") and not v:FindFirstChild(v.Name .. "_" .. SkinChoice) then
local clone = v:FindFirstChild(v.Name .. "_" .. "Galaxy"):Clone()
clone.Parent = game:GetService("ReplicatedStorage").ItemSkins[v.Name]
clone.Name = v.Name .. "_" .. SkinChoice
setconstant(require(clone).ApplyToModel, 3, "rbxassetid://" .. SkinRBxId)
end
end
Framework:SetCammo(SkinChoice)
end)
Skin:AddButton("Save Skin", function()
writefile(
"AstralPro/Skins/" .. SkinChoice .. ".skin",
game:GetService("HttpService"):JSONEncode({ Id = SkinRBxId, Name = SkinChoice })
)
end)
Toggles.SkinsEnabled:OnChanged(function()
SkinsEnabled = Toggles.SkinsEnabled.Value
end)
Options.SkinName:OnChanged(function()
SkinChoice = Options.SkinName.Value
end)
Options.SkinRBXAssetId:OnChanged(function()
SkinRBxId = Options.SkinRBXAssetId.Value
end)
Options.SkinChoice:OnChanged(function()
SkinChoice = Options.SkinChoice.Value
end)
Bullets:AddLabel("Custom Inventory:"):AddColorPicker("Inventory_Color", { Default = Color3.fromRGB(80, 80, 80) })
Options.Inventory_Color:OnChanged(function(Inventory_Color_Value)
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Armor.ItemSlot26.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Armor.ItemSlot27.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Armor.ItemSlot28.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Armor.ItemSlot29.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot6.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot7.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot8.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot9.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot10.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot11.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot12.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot13.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot14.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot15.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot16.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot17.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot18.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot19.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot20.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot21.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot22.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot23.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot24.BackgroundColor3 =
Inventory_Color_Value
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.ItemSlot25.BackgroundColor3 =
Inventory_Color_Value
end)
Bullets:AddLabel("Energy:"):AddColorPicker("Energy_Color_Value", { Default = Color3.fromRGB(197, 187, 40) })
Options.Energy_Color_Value:OnChanged(function(Energy_Color_Value)
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.Vitals.EnergyFrame.Energy.BackgroundColor3 =
Energy_Color_Value
end)
Bullets:AddLabel("Health:"):AddColorPicker("Health_Color_Value", { Default = Color3.fromRGB(78, 153, 74) })
Options.Health_Color_Value:OnChanged(function(Health_Color_Value)
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.Vitals.HealthFrame.Health.BackgroundColor3 =
Health_Color_Value
end)
Bullets:AddLabel("Ammo:"):AddColorPicker("Ammo_Color_Value", { Default = Color3.fromRGB(255, 255, 255) })
Options.Ammo_Color_Value:OnChanged(function(Ammo_Color_Value)
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Ammo.TextColor3 = Ammo_Color_Value
end)
Bullets:AddSlider(
"Vitals_Transparency",
{ Text = "Vitals Transparency", Suffix = "%", Default = 0.1, Min = 0, Max = 1, Rounding = 2, Compact = true }
):OnChanged(function(VitalsTransparency)
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.Vitals.EnergyFrame.Energy.BackgroundTransparency =
VitalsTransparency
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.Vitals.HealthFrame.Health.BackgroundTransparency =
VitalsTransparency
end)
Bullets:AddSlider(
"Background_Transparency",
{ Text = "Inventory Transparency", Suffix = "%", Default = 0.7, Min = 0, Max = 1, Rounding = 2, Compact = true }
):OnChanged(function(InventoryTransparency)
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Inventory.BackgroundTransparency =
InventoryTransparency
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Hotbar.BackgroundTransparency =
InventoryTransparency
game:GetService("Players").LocalPlayer.PlayerGui.GameUI.FPS.BottomCenter.Armor.BackgroundTransparency =
InventoryTransparency
end)
local Terrain = game:GetService("Workspace").Terrain
local GCEN = Color3.fromRGB(93, 111, 55)
local GRCEND = false
LightingTab:AddToggle("CLRG", { Text = "Color Grass", Default = true, Tooltip = "Off/On" })
:AddColorPicker("ColorGrass", { Default = GCEN, Title = "Changer Color Grass" })
Toggles.CLRG:OnChanged(function(T)
GRCEND = T
Terrain:SetMaterialColor(Enum.Material.Grass, T and GCEN or Color3.fromRGB(93, 111, 55))
end)
Options.ColorGrass:OnChanged(function(Grass1)
if GRCEND then
GCEN = Grass1
Terrain:SetMaterialColor(Enum.Material.Grass, Grass1)
end
end)
local Terrain = game:GetService("Workspace").Terrain
local CloudsColor = Color3.fromRGB(255, 255, 255)
local EnableCustomColor = false
LightingTab:AddToggle("CLRG1", { Text = "Clouds Color", Default = EnableCustomColor, Tooltip = "Off/On" })
:AddColorPicker("ColorGrass1", { Default = CloudsColor, Title = "Change Clouds Color" })
Toggles.CLRG1:OnChanged(function(T)
EnableCustomColor = T
Terrain.Clouds.Color = T and CloudsColor or Color3.fromRGB(255, 255, 255)
end)
Options.ColorGrass1:OnChanged(function(NewColor)
if EnableCustomColor then
CloudsColor = NewColor
Terrain.Clouds.Color = NewColor
end
end)
local CARMS = false
LightingTab:AddToggle("CLRT", { Text = "Arm Color", Default = false, Tooltip = "Off/On" })
:AddColorPicker("ARCCCC", { Default = Color3.fromRGB(0, 0, 0), Title = "Arms Color" })
Options.ARCCCC:OnChanged(function(ARMC)
if CARMS then
game:GetService("Workspace").Ignore.FPSArms.LeftUpperArm.Color = ARMC
game:GetService("Workspace").Ignore.FPSArms.LeftLowerArm.Color = ARMC
game:GetService("Workspace").Ignore.FPSArms.LeftHand.Color = ARMC
game:GetService("Workspace").Ignore.FPSArms.RightUpperArm.Color = ARMC
game:GetService("Workspace").Ignore.FPSArms.RightLowerArm.Color = ARMC
game:GetService("Workspace").Ignore.FPSArms.RightHand.Color = ARMC
else
game:GetService("Workspace").Ignore.FPSArms.LeftUpperArm.BrickColor = BrickColor.new("Dark stone grey")
game:GetService("Workspace").Ignore.FPSArms.LeftLowerArm.BrickColor = BrickColor.new("Linen")
game:GetService("Workspace").Ignore.FPSArms.LeftHand.BrickColor = BrickColor.new("Linen")
game:GetService("Workspace").Ignore.FPSArms.RightUpperArm.BrickColor = BrickColor.new("Dark stone grey")
game:GetService("Workspace").Ignore.FPSArms.RightLowerArm.BrickColor = BrickColor.new("Linen")
game:GetService("Workspace").Ignore.FPSArms.RightHand.BrickColor = BrickColor.new("Linen")
end
end)
Toggles.CLRT:OnChanged(function(T)
CARMS = T
end)
LightingTab:AddDropdown(
"MaterialD",
{ Values = { "Default", "ForceField" }, Default = 1, Multi = false, Text = "Naterial:", Tooltip = "Arms Material" }
):OnChanged(function()
if Options.MaterialD.Value == "Default" then
game:GetService("Workspace").Ignore.FPSArms.RightUpperArm.Material = "Fabric"
game:GetService("Workspace").Ignore.FPSArms.RightLowerArm.Material = "SmoothPlastic"
game:GetService("Workspace").Ignore.FPSArms.RightHand.Material = "SmoothPlastic"
game:GetService("Workspace").Ignore.FPSArms.LeftUpperArm.Material = "Fabric"
game:GetService("Workspace").Ignore.FPSArms.LeftLowerArm.Material = "SmoothPlastic"
game:GetService("Workspace").Ignore.FPSArms.LeftHand.Material = "SmoothPlastic"
end
if Options.MaterialD.Value == "ForceField" then
game:GetService("Workspace").Ignore.FPSArms.RightUpperArm.Material = "ForceField"
game:GetService("Workspace").Ignore.FPSArms.RightLowerArm.Material = "ForceField"
game:GetService("Workspace").Ignore.FPSArms.RightHand.Material = "ForceField"
game:GetService("Workspace").Ignore.FPSArms.LeftUpperArm.Material = "ForceField"
game:GetService("Workspace").Ignore.FPSArms.LeftLowerArm.Material = "ForceField"
game:GetService("Workspace").Ignore.FPSArms.LeftHand.Material = "ForceField"
end
end)
LightingTab:AddInput(
"",
{
Default = "rbxassetid://11414633855",
Numeric = false,
Finished = true,
Text = "Texture ID:",
Placeholder = "rbxassetid://...",
}
):OnChanged(function(TextureID)
game:GetService("Workspace").Ignore.FPSArms.LeftUpperArm.TextureID = TextureID
game:GetService("Workspace").Ignore.FPSArms.LeftLowerArm.TextureID = TextureID
game:GetService("Workspace").Ignore.FPSArms.LeftHand.TextureID = TextureID
game:GetService("Workspace").Ignore.FPSArms.RightUpperArm.TextureID = TextureID
game:GetService("Workspace").Ignore.FPSArms.RightLowerArm.TextureID = TextureID
game:GetService("Workspace").Ignore.FPSArms.RightHand.TextureID = TextureID
end)
--------------------------------------------------------------------------------------------------
MiscTab:AddToggle("", { Text = "Jump Crouch", Default = false }):AddKeyPicker(
"JumpCrouchKey",
{ Default = "B", SyncToggleState = true, Mode = "Toggle", Text = "Jump Crouch", NoUI = false }
)
local stoprun = false
task.spawn(function()
while true do
local state = Options.JumpCrouchKey:GetState()
if state then
keypress(0x57)
keypress(0x10)
wait(0.05)
keypress(0x43)
keypress(0x20)
keyrelease(0x20)
wait(0.5)
keyrelease(0x43)
wait(1)
end
if Library.Unloaded then
break
end
wait()
end
end)
task.spawn(function()
while task.wait() do
local state = Options.JumpCrouchKey:GetState()
if not state then
if stoprun then
keyrelease(0x57)
keyrelease(0x10)
stoprun = false
end
else
stoprun = true
end
end
end)
MiscTab:AddToggle("LootAll", { Text = "Loot All", Default = false })
:AddKeyPicker(
"LootAllKey",
{ Default = "P", SyncToggleState = true, Mode = "Toggle", Text = "Loot All", NoUI = false }
)
Toggles.LootAll:OnChanged(function()
for i = 1, 20 do
game:GetService("Players").LocalPlayer.RemoteEvent:FireServer(12, i, true)
end
end)
local XRAY22 = false
MiscTab:AddToggle("XRAY", { Text = "XRAY", Default = false })
:AddKeyPicker("XRAYKey", { Default = "Z", SyncToggleState = true, Mode = "Toggle", Text = "XRAY", NoUI = false })
:OnChanged(function()
XRAY22 = Toggles.XRAY.Value
if XRAY22 then
for i, v in pairs(game:GetDescendants()) do
if v:FindFirstChild("Hitbox") then
v.Hitbox.Transparency = 0.6
end
end
else
for i, v in pairs(game:GetDescendants()) do
if v:FindFirstChild("Hitbox") then
v.Hitbox.Transparency = 0
end
end
end
end)
--// UI Settings \\--
local GameID = Tabs.UISettings:AddLeftGroupbox("Game")
GameID:AddInput(
"GameID_Check",
{ Default = "Game ID", Numeric = true, Finished = false, Text = "Game ID", Placeholder = "Game ID Here" }
)
GameID:AddButton("Join Game", function()
game:GetService("TeleportService"):Teleport(Options.GameID_Check.Value, plr)
end)
local MenuGroup = Tabs.UISettings:AddRightGroupbox("Menu")
MenuGroup:AddLabel("" .. game:GetService("Players").LocalPlayer.PlayerGui.GameUI.ServerInfo.Text .. "", true)
MenuGroup:AddLabel(' Made By:Anth', true)
MenuGroup:AddButton("Unload Script", function()
Library:Unload()
for i, v in pairs(Toggles) do
v:SetValue(false)
Library:Notify("Unloaded!", 1)
end
end)
MenuGroup:AddButton("Panic Button", function()
for i, v in pairs(Toggles) do
v:SetValue(false)
Library:Notify("Panic Button!", 1)
end
end)
MenuGroup:AddButton("Rejoin Server", function()
game:GetService("TeleportService"):TeleportToPlaceInstance(game.PlaceId, game.JobId)
Library:Notify("Rejoining Server!", 30)
end)
MenuGroup:AddButton("Copy Join Code", function()
setclipboard(
("game:GetService('TeleportService'):TeleportToPlaceInstance(%s, '%s')"):format(game.PlaceId, game.JobId)
)
Library:Notify("Copied Join Code!", 5)
end)
MenuGroup:AddButton("Copy Discord", function()
if pcall(setclipboard, "https://discord.gg/astralttm") then
Library:Notify("Successfully copied discord link to your clipboard!", 5)
end
end)
MenuGroup:AddToggle("WatermarkToggle", { Text = "Watermark", Default = false, Tooltip = nil })
Toggles.WatermarkToggle:OnChanged(function()
Library:SetWatermark("Astral.pro - CRACKED BY PANICHOOK9")
Library:SetWatermarkVisibility(Toggles.WatermarkToggle.Value)
end)
MenuGroup:AddToggle("UISettings_KeybindFrameVisibility", { Text = "Keybind", Default = true }):OnChanged(function()
Library.KeybindFrame.Visible = Toggles.UISettings_KeybindFrameVisibility.Value
end)
MenuGroup:AddLabel("Menu Keybind"):AddKeyPicker("MenuKeybind", { Default = "End", NoUI = true, Text = "Menu keybind" })
Library.ToggleKeybind = Options.MenuKeybind
--// Save manager
SaveManager:SetLibrary(Library)
SaveManager:SetFolder("Astral/folder")
SaveManager:BuildConfigSection(Tabs.UISettings)
SaveManager:IgnoreThemeSettings()
--// Theme manager
ThemeManager:SetLibrary(Library)
ThemeManager:SetFolder("Astral/themes")
ThemeManager:ApplyToTab(Tabs.UISettings)
--Wrapping function - needed to unload(Keep at end of script)
loadstring(
game:HttpGet(
"https://raw.githubusercontent.com/EIOlmqV6v1owgJBEoqj5lK9p01SFE2THpxcOnvX/LinoriaBurnEdition/main/LoaderManager.lua"
)
)
Library:Notify("30 minute timer has started, If your not on a fresh acc anti ban may not work.", 5)
task.wait(1500)
Library:Notify("Initiated Timer Bypass Please Wait", 5)
task.wait(60)
Library:Notify("Bypassed Timer If It Dosent Work Then Please Report", 5)
local old
old = hookfunction(tick, function()
if true then
return 0
end
return old()
end)
local old
old = hookfunction(getrenv().tick, function()
if true then
return 0
end
return old()
end)