Message
Message
Evolution = {
["Options"] = {
["Version"] = "3.1.4-Electron", -- // Dont touch this is to make sure your
using the correct table
["Stealth Mode"] = {
["Enabled"] = false, -- // Will hide the loader and just load the
script
["Key"] = "", -- // Enter your Evolution Key
},
["Internal"] = {
["Enabled"] = true, -- // Shows internal ui for evolution
["Auto Show"] = true, -- // Will show the ui when you execute
["Bind"] = "V", -- // Default keybind to toggle ui
},
["FPS Unlocker"] = { -- // Unlocks your fps (BROKEN ON ELECTRON)
["Enabled"] = true, -- // Will unlock your FPS
["FPS"] = 999, -- // Maximum FPS
},
["Intro"] = true, -- // Will show a short intro
["Stats"] = true, -- // Shows debug stats (BROKEN ON ELECTRON)
["Auto Join Discord"] = true, -- // Will Join Discord
["Allow Notifications"] = true, -- // Toggles all notifications
["Notifcation Type"] = "xaxa", -- // Akali, Roblox, xaxa
["Notifcation Duration"] = 3, -- // How long notifcations will show
},
["Silent Aim"] = {
["Enabled"] = true, -- // Mouse Redirection
["Mode"] = "FOV", -- // Select mode to select target (FOV, Target )
["Target Mode Bind"] = "Q", -- // Keybind for Target mode
["Notify"] = true, -- // Sends notifcation when targeting someone
["Prediction"] = 0.133, -- // Prediction Value
["Hit Chance"] = 100, -- // Hit chance (1-100)
["Target Part"] = "Head", -- // Any Hitbox (Head, UpperTorso,
HumanoidRootPart, LowerTorso)
["Target Part Offset"] = 0, -- // Offset if you have the target part to
head and you set offset to -1.6 you will hit the torso
["Nearest Part To Cursor"] = false, -- // Sets target part to the nearest
body part to your cursor
["Closest Point"] = false, -- // Gets the closest point on the target part
(not working rn)
["Dot"] = true, -- // Visual (BROKEN ON ELECTRON)
["Line"] = false, -- // Visual (BROKEN ON ELECTRON)
["Shake"] = {
["Enabled"] = false, -- // Will Randomly Offset hit point
["X"] = 5, -- // Max X Position
["Y"] = 5, -- // Max Y Position
["Z"] = 5, -- // Max Z Position
},
},
["Cam Lock"] = {
["Enabled"] = false, -- // Adjust your camera position
["Mode"] = "Target_toggle", -- // Select mode to select target (FOV,
Target_toggle, Target_hold)
["Target Mode Bind"] = "C", -- // Keybind for Target modes
["Easing Style"] = "Exponential", -- //
https://create.roblox.com/docs/reference/engine/enums/EasingStyle
["Notify"] = true, -- // Sends notifcation when targeting someone
["Prediction"] = 0.133, -- // Prediction Value
["Target Part"] = "Head", -- // Any Hitbox (Head, UpperTorso,
HumanoidRootPart, LowerTorso)
["Target Part Offset"] = 0, -- // Offset if you have the target part to
head and you set offset to -1.6 you will hit the torso
["Nearest Part To Cursor"] = false, -- // Sets target part to the nearest
body part to your cursor
["Closest Point"] = false, -- // Gets the closest point on the target part
["Dot"] = true, -- // Visual (BROKEN ON ELECTRON)
["Line"] = false, -- // Visual (BROKEN ON ELECTRON)
["Smoothness"] = {
["Enabled"] = true, -- // Prevents snapping when targeting
["Value"] = 0.058, -- // Smoothness Value
},
["Shake"] = {
["Enabled"] = false, -- // Will Shake your camera randomly when
targeting
["X"] = 5, -- // Max X Position
["Y"] = 5, -- // Max Y Position
["Z"] = 5, -- // Max Z Position
},
},
["Global"] = {
["Auto Prediction"] = {
["Enabled"] = true, -- // Will automatically set your prediction based
on your ping
["Version"] = "Default", -- // Default, Old, V2, Custom
["Custom Settings"] = { -- // Custom Values
["Ping20"] = 0.12746444,
["Ping30"] = 0.12746444,
["Ping40"] = 0.12746444,
["Ping50"] = 0.11243,
["Ping60"] = 0.11243,
["Ping70"] = 0.12533,
["Ping80"] = 0.169,
["Ping90"] = 0.13626,
["Ping100"] = 0.13829,
["Ping110"] = 0.146,
["Ping120"] = 0.149,
["Ping130"] = 0.151,
["Ping140"] = 0.1652131,
["Ping150"] = 0.125333,
["Ping160"] = 0.1223333,
["Ping170"] = 0.15,
["Ping180"] = 0.1923111,
["Ping190"] = 0.165771,
["Ping200"] = 0.1746,
}
},
["Anti Ground Shots"] = false, -- // Will prevent you from shooting the
ground
["Unlock On KO"] = false, -- // Unlocks when target dies
["Unlock Outside FOV"] = false, -- // Will unlock when the target leaves
your fov
["Unlock Behind Wall"] = false, -- // Will unlock when the target goes
behind a wall
},
["Checks"] = {
["Whitelist"] = { -- // Will only lock onto people whitelisted,
["Enabled"] = false,
["Usernames"] = {
--[[
Enter usernames eg:
"Username1",
"Username2",
"Username3"
]]
}
},
["Blacklist"] = { -- // Will not lock onto peopled blacklisted,
["Enabled"] = false,
["Usernames"] = {
--[[
Enter usernames eg:
"Username1",
"Username2",
"Username3"
]]
}
},
["Visible Check"] = true, -- // Will check if target is behind a wall
["K.O Check"] = true, -- // Will check if target is knocked or grabbed
["Crew Check"] = false, -- // Will check if target is in your crew
["Friend Check"] = false, -- // Will check if target is your friend if not
will not lock
["Distance"] = { -- // Not lock onto people if they are too far away
["Enabled"] = false,
["Max Distance"] = 200, -- // Studs
}
},
["Resolver"] = {
["Enabled"] = false, -- // Resolve Anti Locks and Desyncs
["Method"] = "Delta", -- // Delta, Move Direction, No Prediction,
Recalculate
["Keybind Enabled"] = false, -- // Will toggle resolver when you press key
["Keybind"] = "T", -- // Keybind to toggle resolver
},
["FOV"] = { -- // FOV Circle Settings
["Silent Aim"] = {
["Visible"] = true, -- // Will toggle if you can see the circle (BROKEN
ON ELECTRON)
["Filled"] = false, -- // Makes circle filled (really fucking ugly)
["Size"] = 15, -- // Size of the circle
["Thickness"] = 1, -- // Thickness of the circle
["Transparency"] = 1, -- // Transparency of the circle 0.1 - 1
["Color"] = Color3.fromRGB(255,255,255) -- // Circle Color
},
["Cam Lock"] = {
["Visible"] = false, -- // Will toggle if you can see the circle
(BROKEN ON ELECTRON)
["Filled"] = false, -- // Makes circle filled (really fucking ugly)
["Size"] = 15, -- // Size of the circle
["Thickness"] = 1, -- // Thickness of the circle
["Transparency"] = 1, -- // Transparency of the circle 0.1 - 1
["Color"] = Color3.fromRGB(255,255,255) -- // Circle Color
},
},
["Airshot"] = {
["Enabled"] = true, -- // Will adjust your prediction if target is in the
air
["Jump Offset"] = -1.6, -- // Jump Offset
["Cam Lock Smoothness"] = {
["Enabled"] = true, -- // Will adjust your camlock smoothness if target
is in the air
["New Smoothness"] = 0.58, -- // Smoothness value
}
},
["Hit Sound"] = {
["Enabled"] = false, -- // Sound for when you hit a player
["Hit Sound"] = "Minecraft", -- // Minecraft, Bameware, Bubble, Pick, Pop,
Rust, Sans, Fart, Big, Vine, Bruh, Skeet, Neverlose, Fatality, Bonk
["Volume"] = 1,
},
["Hit Logs"] = {
["Enabled"] = false, -- // Logs when you hit a player
},
["Macro"] = {
["Enabled"] = false, -- // Lua based macro
["Bind"] = "X", -- // Keybind to start macro
["Abuse"] = true, -- // Will use scroll wheel to macro
["Speed"] = 1, --// Macro Speed
},
["Spoofer"] = {
["Memory"] = {
["Enabled"] = false, -- // Will spoof your memory usage
["Max"] = 900,
["Min"] = 700,
},
},
["Gun Sorting"] = {
["Enabled"] = false, -- // Sorts the guns in your inventory
["Bind"] = "Z", -- // Keybind to sort
["Delete Extra"] = false, -- // Will destroy any tools that are not sorted
(broken)
["Slots"] = { -- // You can add up to 9
"[Double-Barrel SG]",
"[Revolver]",
"[TacticalShotgun]",
"[Shotgun]",
"[Katana]",
}
},
["Emotes"] = { -- // Da hood and Hood Modded only (if you have the animation
ids for other da hood ripoffs dm xz)
["Lay"] = true, ["LayKey"] = Enum.KeyCode.T, -- // Will Play Lay Animation
when you press the keybind
["Greet"] = true, ["GreetKey"] = Enum.KeyCode.G, -- // Will Play Greet
Animation when you press the keybind
["Speed"] = false, ["SpeedKey"] = Enum.KeyCode.N, -- // Will Play Speed
Animation when you press the keybind
["Sturdy"] = false, ["SturdyKey"] = Enum.KeyCode.H, -- // Will Play Sturdy
Animation when you press the keybind
["Griddy"] = false, ["GriddyKey"] = Enum.KeyCode.G, -- // Will Play Griddy
Animation when you press the keybind
},
["Fake Spike"] = {
["Enabled"] = false, -- // Will spike your ping to make it look like your
lagging
["Bind"] = "K", -- // Keybind to spike
["Duration"] = 1, -- // How long you will be spiked for
},
["Panic"] = {
["Enabled"] = false, -- // Will disable all features
["Bind"] = "P", -- // Keybind to panic
["Things To Disable"] = {
["Options"] = true, -- // Stats, Notifications
["Aiming"] = true, -- // Silent Aim, Cam Lock
["FOV"] = true, -- // Silent Aim FOV, Cam Lock FOV
["Misc"] = true, -- // Macro, Gun Sorting, Fake Spike, Chat Commands
["Emotes"] = true, -- // Emotes
}
},
["Extra"] = {
["Disable Seats"] = true, -- // Will disable all the seats that break your
macro
["Low Graphics"] = false, -- // Will give you low graphics
["Mute Boomboxes"] = false, -- // Will mute everyones boombox (FE)
},
["ESP"] = { -- // Allows you to see players through the walls
["Enabled"] = false, -- // Main Toggle
["Max Distance"] = 500, -- // Maxiumum distance to show esp (studs)
["Name"] = { -- // Will show username
["Enabled"] = true,
["Outline"] = false,
["Color"] = Color3.fromRGB(255, 255, 255)
},
["Box"] = { -- // Will show a box around character
["Enabled"] = true,
["Outline"] = false,
["Color"] = Color3.fromRGB(255, 255, 255)
},
["Health Bar"] = { -- // Will show a health bar next to box
["Enabled"] = false,
["Outline"] = false,
["Color"] = Color3.fromRGB(0, 255, 0)
},
["Distance"] = { -- // Will tell you the distance (in studs)
["Enabled"] = false,
["Outline"] = false,
["Color"] = Color3.fromRGB(255, 255, 255)
},
},
["Chat Commands"] = {
["Enabled"] = true,
["Prefix"] = ".",
["Commands"] = { -- // CANNOT HAVE SPACES!!!
["Prediction"] = "pred", -- // ex; $pred 0.115
["ToggleFOV"] = "draw", -- // ex; $draw true (you can also do "on" or
"yes" and to disable you do "off" or "yes" or "false")
["SizeFOV"] = "radius", -- // ex; $radius 100
["GotoLocation"] = "tp", -- // ex; $tp bank (locations in server)
["ToggleResolver"] = "resolver", -- // ex; $resolver true (you can also
do "on" or "yes" and to disable you do "off" or "yes" or "false")
["JoinDiscord"] = "discord", -- // ex; $discord
["RejoinServer"] = "rj", -- // ex; $rj
["ToggleSilentAim"] = "silent", -- // ex; $silent true (you can also do
"on" or "yes" and to disable you do "off" or "yes" or "false")
["ToggleCamLock"] = "camlock", -- // ex; $camlock true (you can also do
"on" or "yes" and to disable you do "off" or "yes" or "false")
["CamLockSmoothness"] = "smoothness", -- // ex; $smoothness 0.086
["CheckForExploiters"] = "check", -- // ex; $check
["ForceReset"] = "reset", -- // ex; $reset
}
}
}
-- // Evolution V3
scan(workspace)
local utility = {
Invite = "camlock",
Folder = "EvolutionSettings",
Version = "3.1.4-Electron",
Ping = 5,
Bypass = {
12927359803, -- Dah Aim Trainer
12867571492, -- KatanaHood
11867820563, -- Dae Hood
12618586930, -- Dat Hood
13018411607, -- Dat Hood 2
13018411607, -- // Dat Hood Backup
9633073067, -- // Del Hood
11956541652, --// Dav Hood
10100958808, -- // Da Downhill
12815368779, -- // Da Hood Aim Trainer
13126185789, -- // Da Hood Aim Trainer VC
}
}
getgenv().luarmor_vars = {
ID = LRM_LinkedDiscordID,
}
local Blacklisted_GameIds =
loadstring(game:HttpGet("https://raw.githubusercontent.com/laagginq/Evolution/
main/blacklisted_gameIds.lua"))()
if table.find(Blacklisted_GameIds,game.PlaceId) then
game:GetService("StarterGui"):SetCore("SendNotification",{
Title = "Blacklist game ID",
Text =
game:GetService("MarketplaceService"):GetProductInfo(game.PlaceId).Name.." is
blacklisted because it is unsafe to use evolution on.",
Icon = "rbxassetid://14270853092",
Duration = 10
})
return
end
task.spawn(function()
pcall(function()
repeat wait() until
game.CoreGui.RobloxGui:FindFirstChild("PerformanceStats")
for __, v in pairs(game.CoreGui.RobloxGui.PerformanceStats:GetChildren())
do
if v.Name == "PS_Button" and v.StatsMiniTextPanelClass.TitleLabel.Text
== "Mem" then
Memory = v.StatsMiniTextPanelClass.ValueLabel
end
end
Memory:GetPropertyChangedSignal("Text"):Connect(function()
if Evolution.Spoofer.Memory.Enabled then
local random1 = math.random(Evolution.Spoofer.Memory.Min,
Evolution.Spoofer.Memory.Max)
local rand1 = math.random(0,9)
local rand2 = math.random(0,9)
Memory.Text = "".. random1 .. "." .. rand1 .. rand2.. " MB"
end
end)
end)
end)
local AnimationIds = {
Lay = "rbxassetid://0",
Greet = "rbxassetid://0",
Sturdy = "rbxassetid://0",
Griddy = "rbxassetid://0",
Speed = "rbxassetid://0",
}
game:GetService("UserInputService").InputBegan:Connect(function(key, gp)
if not gp then
if key.KeyCode == Evolution.Emotes.LayKey then
if Evolution.Emotes.Lay then
local Lay = Instance.new("Animation")
Lay.AnimationId = AnimationIds.Lay
local LayTrack =
game.Players.LocalPlayer.Character.Humanoid:LoadAnimation(Lay)
LayTrack:Play()
game.Players.LocalPlayer.Character.Humanoid.Running:Connect(function()
LayTrack:Stop()
end)
end
end
if key.KeyCode == Evolution.Emotes.GreetKey then
if Evolution.Emotes.Greet then
local Greet = Instance.new("Animation")
Greet.AnimationId = AnimationIds.Greet
local GreetTrack =
game.Players.LocalPlayer.Character.Humanoid:LoadAnimation(Greet)
GreetTrack:Play()
game.Players.LocalPlayer.Character.Humanoid.Running:Connect(function()
GreetTrack:Stop()
end)
end
end
if key.KeyCode == Evolution.Emotes.SpeedKey then
if Evolution.Emotes.Speed then
local Speed = Instance.new("Animation")
Speed.AnimationId = AnimationIds.Speed
local SppedTrack =
game.Players.LocalPlayer.Character.Humanoid:LoadAnimation(Speed)
SpeedTrack:Play()
game.Players.LocalPlayer.Character.Humanoid.Running:Connect(function()
SpeedTrack:Stop()
end)
end
end
if key.KeyCode == Evolution.Emotes.SturdyKey then
if Evolution.Emotes.Sturdy then
local Sturdy = Instance.new("Animation")
Sturdy.AnimationId = AnimationIds.Sturdy
local SturdyTrack =
game.Players.LocalPlayer.Character.Humanoid:LoadAnimation(Sturdy)
SturdyTrack:Play()
game.Players.LocalPlayer.Character.Humanoid.Running:Connect(function()
SturdyTrack:Stop()
end)
end
end
if key.KeyCode == Evolution.Emotes.GriddyKey then
if Evolution.Emotes.Griddy then
local Griddy = Instance.new("Animation")
Griddy.AnimationId = AnimationIds.Griddy
local GriddyTrack =
game.Players.LocalPlayer.Character.Humanoid:LoadAnimation(Griddy)
GriddyTrack:Play()
game.Players.LocalPlayer.Character.Humanoid.Running:Connect(function()
GriddyTrack:Stop()
end)
end
end
end
end)
local AkaliNotif =
loadstring(game:HttpGet("https://raw.githubusercontent.com/laagginq/Evolution/
main/akali.lua"))();
local gggg = AkaliNotif.Notify;
local notificationLibrary =
loadstring(game:HttpGet("https://raw.githubusercontent.com/laagginq/ui-libraries/
main/xaxas-notification/src.lua"))();
local notifications = notificationLibrary.new({
NotificationLifetime = 3,
NotificationPosition = "Middle",
TextFont = Enum.Font.Code,
TextColor = Color3.fromRGB(255, 255, 255),
TextSize = 15,
TextStrokeTransparency = 0,
TextStrokeColor = Color3.fromRGB(0, 0, 0)
});
notifications:BuildNotificationUI();
getgenv().notify = function(txt)
if Evolution.Options["Allow Notifications"] then
if string.lower(Evolution.Options["Notifcation Type"]) == "akali" then
gggg({
Description = txt;
Title = "Notification";
Duration = Evolution.Options["Notifcation Duration"];
});
elseif string.lower(Evolution.Options["Notifcation Type"]) == "roblox" then
game:GetService("StarterGui"):SetCore("SendNotification",{
Title = "Notification",
Text = txt,
Icon = "rbxassetid://14270853092",
Duration = Evolution.Options["Notifcation Duration"]
})
elseif string.lower(Evolution.Options["Notifcation Type"]) == "xaxa" then
notifications:Notify(txt);
end
end
end
local bypass = {
dahood = function()
local _game = getrawmetatable(game)
setreadonly(_game, false)
local ___namecall = _game.__namecall
_game.__namecall = newcclosure(function(...)
if getnamecallmethod() == 'FireServer' and ({...})[1].Name ==
'MainEvent' and table.find({"BreathingHAMON", "OneMoreTime", "BANREMOTE",
"PERMAIDBAN", "KICKREMOTE", "BR_KICKPC", "BR_KICKMOBILE", "CHECKER_1",
"TeleportDetect", "GUI_CHECK"}, ({...})[2]) then
return
end
return ___namecall(...)
end)
setreadonly(_game, true)
end,
hoodmodded = function()
for i,v in next, getgc(true) do
if typeof(v)=="table" and rawget(v,"DoThings") then
v.DoThings = function() end
end
end
end,
untitledhood = function()
local _1;
_1 = hookmetamethod(game, "__namecall", function(self, ...)
if not checkcaller() and getnamecallmethod() == "FireServer" then
if tostring(self.Name) == ".gg/untitledhood" then
local args = {...}
if tostring(args[1]) == "ForceDetect" or tostring(args[1]) ==
"TeleportDetect" or tostring(args[1]) == "GUI_CHECK" then
return
end
end
end
return _1(self, ...);
end)
end,
adonis = function()
for k,v in pairs(getgc(true)) do
if pcall(function() return rawget(v,"indexInstance") end) and
type(rawget(v,"indexInstance")) == "table" and (rawget(v,"indexInstance"))[1] ==
"kick" then
v.tvk = {"kick",function() return game.Workspace:WaitForChild("")
end}
end
end
end
}
function missingf(functionmissing)
notify("Your executor is missing "..functionmissing.." this feature will not
work.")
end
function toClipboard(String)
local clipBoard = setclipboard or toclipboard or set_clipboard or (Clipboard
and Clipboard.set)
if clipBoard then
clipBoard(String)
else
missingf("setclipboard")
return
end
end
function hookf(Function)
local consume = detour_function or replaceclosure or hookfunc or hookfunction
if consume then
consume(Function)
else
missingf("hookfunction")
return
end
end
function httprequest(f)
local httprequest = (syn and syn.request) or (http and http.request) or
http_request or (fluxus and fluxus.request) or request
if not httprequest then
httprequest(f)
else
missingf("httprequest")
return
end
end
if Evolution["Options"]["Intro"] then
local cam = workspace.CurrentCamera
local x = cam.ViewportSize.X
local y = cam.ViewportSize.Y
local newx = math.floor(x * 0.5)
local newy = math.floor(y * 0.5)
end
OnScreen = function(Object)
local _, screen = CurrentCamera:WorldToScreenPoint(Object.Position)
return screen
end
CalculateChance = function(Percentage)
Percentage = math.floor(Percentage)
local chance = math.floor(Random.new().NextNumber(Random.new(), 0, 1) * 100) /
100
if (Result) then
local PartHit = Result.Instance
local Visible = (not PartHit or
Instance.new("Part").IsDescendantOf(PartHit, PartDescendant))
return Visible
end
return false
end
Alive = function(Plr)
if Plr and Plr.Character and Plr.Character:FindFirstChild("HumanoidRootPart")
~= nil and Plr.Character:FindFirstChild("Humanoid") ~= nil and
Plr.Character:FindFirstChild("Head") ~= nil then
return true
end
return false
end
GetMagnitudeFromMouse = function(Part)
local PartPos, OnScreen = CurrentCamera:WorldToScreenPoint(Part.Position)
if OnScreen then
local Magnitude = (v2.new(PartPos.X, PartPos.Y) - v2.new(mouse.X,
mouse.Y)).Magnitude
return Magnitude
end
return math.huge
end
local EspPlayers = {}
NewESP = function(Player)
EspPlayers[Player] = {
Name = Draw("Text", {Color = Color3.fromRGB(255,2550, 255), Outline = true,
Visible = false, Center = true, Size = 13, Font = 0}),
BoxOutline = Draw("Square", {Color = Color3.fromRGB(0, 0, 0), Thickness =
3, Visible = false}),
Box = Draw("Square", {Color = Color3.fromRGB(255, 255, 255), Thickness = 1,
Visible = false}),
HealthBarOutline = Draw("Line", {Color = Color3.fromRGB(0, 0, 0), Thickness
= 3, Visible = false}),
HealthBar = Draw("Line", {Color = Color3.fromRGB(0, 255, 0), Thickness = 1,
Visible = false}),
Distance = Draw("Text", {Color = Color3.fromRGB(255, 255, 255), Outline =
true, Visible = false, Center = true, Size = 13, Font = 0})
}
end
UpdateESP = function()
for i,v in pairs(EspPlayers) do
if Evolution.ESP.Enabled and i ~= LocalPlayer and i.Character and
i.Character:FindFirstChild("Humanoid") and
i.Character:FindFirstChild("HumanoidRootPart") and
i.Character:FindFirstChild("Head") then
local Hum = i.Character.Humanoid
local Hrp = i.Character.HumanoidRootPart
v.Distance.Font = 0
v.Distance.Size = 16
v.Distance.Visible = true
else
v.Distance.Visible = false
end
if Evolution.ESP.Box.Enabled then
v.BoxOutline.Size = BoxSize
v.BoxOutline.Position = BoxPos
v.BoxOutline.Visible = Evolution.ESP.Box.Outline
v.BoxOutline.Color = Color3.fromRGB(0, 0, 0)
v.Box.Size = BoxSize
v.Box.Position = BoxPos
v.Box.Color = Evolution.ESP.Box.Color
v.Box.Visible = true
else
v.BoxOutline.Visible = false
v.Box.Visible = false
end
if Evolution.ESP["Health Bar"].Enabled then
v.HealthBar.From = Vector2.new((BoxPos.X - 5), BoxPos.Y +
BoxSize.Y)
v.HealthBar.To = Vector2.new(v.HealthBar.From.X,
v.HealthBar.From.Y - (Hum.Health / Hum.MaxHealth) * BoxSize.Y)
v.HealthBar.Color = Evolution.ESP["Health Bar"].Color
v.HealthBar.Visible = true
v.HealthBarOutline.From = Vector2.new(v.HealthBar.From.X,
BoxPos.Y + BoxSize.Y + 1)
v.HealthBarOutline.To = Vector2.new(v.HealthBar.From.X,
(v.HealthBar.From.Y - 1 * BoxSize.Y) -1)
v.HealthBarOutline.Color = Color3.fromRGB(0, 0, 0)
v.HealthBarOutline.Visible = Evolution.ESP["Health
Bar"].Outline
else
v.HealthBarOutline.Visible = false
v.HealthBar.Visible = false
end
else
v.Name.Visible = false
v.BoxOutline.Visible = false
v.Box.Visible = false
v.HealthBarOutline.Visible = false
v.HealthBar.Visible = false
v.Distance.Visible = false
end
else
v.Name.Visible = false
v.BoxOutline.Visible = false
v.Box.Visible = false
v.HealthBarOutline.Visible = false
v.HealthBar.Visible = false
v.Distance.Visible = false
end
end
end
GetPrediction = function()
if Evolution["Global"]["Auto Prediction"].Enabled then
FindCrew = function(Player)
if Player:FindFirstChild("DataFolder") and
Player.DataFolder:FindFirstChild("Information") and
Player.DataFolder.Information:FindFirstChild("Crew") and
LocalPlayer:FindFirstChild("DataFolder") and
LocalPlayer.DataFolder:FindFirstChild("Information") and
LocalPlayer.DataFolder.Information:FindFirstChild("Crew") then
if LocalPlayer.DataFolder.Information:FindFirstChild("Crew").Value ~= nil
and Player.DataFolder.Information:FindFirstChild("Crew").Value ~= nil and
Player.DataFolder.Information:FindFirstChild("Crew").Value ~= "" and
LocalPlayer.DataFolder.Information:FindFirstChild("Crew").Value ~= "" then
return true
end
end
return false
end
CheckDistance = function(Player)
if (Player.Character.HumanoidRootPart.Position -
game.Players.LocalPlayer.Character.HumanoidRootPart.Position).Magnitude >
Evolution.Checks.Distance["Max Distance"] then
return true
else
return false
end
end
GetDistance = function(Player)
if Player ~= nil and Player.Character and
Player.Character:FindFirstChild("HumanoidRootPart") then
return math.floor((Player.Character.HumanoidRootPart.Position -
game.Players.LocalPlayer.Character.HumanoidRootPart.Position).Magnitude)
else
return 0
end
end
GetHealth = function(Player)
if Player ~= nil and Player.Character and
Player.Character:FindFirstChild("Humanoid") then
return
tostring(math.floor(Player.Character.Humanoid.Health).."/"..math.floor(Player.Chara
cter.Humanoid.MaxHealth))
else
return "0/100"
end
end
GetGunName = function(Name)
local split = string.split(string.split(Name, "[")[2], "]")[1]
return split
end
GetCurrentWeaponName = function()
if LocalPlayer.Character and
LocalPlayer.Character:FindFirstChildWhichIsA("Tool") then
local Tool = LocalPlayer.Character:FindFirstChildWhichIsA("Tool")
if string.find(Tool.Name, "%[") and string.find(Tool.Name, "%]") and not
string.find(Tool.Name, "Wallet") and not string.find(Tool.Name, "Phone") then
return GetGunName(Tool.Name)
end
end
return nil
end
WTS = function(Object)
local ObjectVector = CurrentCamera:WorldToScreenPoint(Object.Position)
return v2.new(ObjectVector.X, ObjectVector.Y)
end
Filter = function(obj)
if (obj:IsA('BasePart')) then
return true
end
end
mousePosv2 = function()
return v2.new(mouse.X, mouse.Y)
end
IsOnScreen2 = function(Object)
local IsOnScreen = CurrentCamera:WorldToScreenPoint(Object.Position)
return IsOnScreen
end
FilterObjs = function(Object)
if string.find(Object.Name, "Gun") then
return
end
if table.find({"Part", "MeshPart", "BasePart"}, Object.ClassName) then
return true
end
end
function GetClosestPointOfPart(Part)
local mouseray = mouse.UnitRay
mouseray = mouseray.Origin + (mouseray.Direction * (Part.Position -
mouseray.Origin).Magnitude)
local point =
(mouseray.Y >= (Part.Position - Part.Size / 2).Y and mouseray.Y <=
(Part.Position + Part.Size / 2).Y) and
(Part.Position + Vector3.new(0, -Part.Position.Y + mouseray.Y, 0)) or
Part.Position
local check = RaycastParams.new()
check.FilterType = Enum.RaycastFilterType.Whitelist
check.FilterDescendantsInstances = {Part}
local ray = game:GetService("Workspace"):Raycast(mouseray, (point - mouseray),
check)
if ray then
return ray.Position
else
return mouse.Hit.Position
end
end
GetClosestBodyPart = function()
local character = SilentTarget.Character
local ClosestDistance = 1 / 0
local BodyPart = nil
if (character and character:GetChildren()) then
for _, x in next, character:GetChildren() do
if FilterObjs(x) and IsOnScreen2(x) then
local Distance = (WTS(x) - v2.new(mouse.X, mouse.Y)).Magnitude
if (Distance < ClosestDistance) then
ClosestDistance = Distance
BodyPart = x
end
end
end
end
if Evolution["Silent Aim"]["Nearest Part To Cursor"] then
closestsilentbodypart = tostring(BodyPart)
else
closestsilentbodypart = Evolution["Silent Aim"]["Target Part"]
end
end
GetClosestBodyPart2 = function()
local character = CamlockTarget.Character
local ClosestDistance = 1 / 0
local BodyPart = nil
if (character and character:GetChildren()) then
for _, x in next, character:GetChildren() do
if FilterObjs(x) and IsOnScreen2(x) then
local Distance = (WTS(x) - v2.new(mouse.X, mouse.Y)).Magnitude
if (Distance < ClosestDistance) then
ClosestDistance = Distance
BodyPart = x
end
end
end
end
if Evolution["Cam Lock"]["Nearest Part To Cursor"] then
closestcamlockpart = tostring(BodyPart)
else
closestcamlockpart = Evolution["Cam Lock"]["Target Part"]
end
end
UpdateFOV = function()
Circle.Transparency = Evolution.FOV["Silent Aim"].Transparency
Circle.Radius = Evolution.FOV["Silent Aim"].Size * 3
Circle.Visible = Evolution.FOV["Silent Aim"].Visible
Circle.Color = Evolution.FOV["Silent Aim"].Color
Circle.Thickness = Evolution.FOV["Silent Aim"].Thickness
Circle.Filled = Evolution.FOV["Silent Aim"].Filled
Circle.Position = v2.new(mouse.X, mouse.Y + Gui:GetGuiInset().Y)
Circle2.Transparency = Evolution.FOV["Cam Lock"].Transparency
Circle2.Radius = Evolution.FOV["Cam Lock"].Size * 3
Circle2.Visible = Evolution.FOV["Cam Lock"].Visible
Circle2.Color = Evolution.FOV["Cam Lock"].Color
Circle2.Thickness = Evolution.FOV["Cam Lock"].Thickness
Circle2.Filled = Evolution.FOV["Cam Lock"].Filled
Circle2.Position = v2.new(mouse.X, mouse.Y + Gui:GetGuiInset().Y)
end
local safeplayers = {
609282484, -- da1nonlyfr
2023301774, -- cardingfraudalt
2830056317, -- brokeboys66
2932662195, -- networkfelony
}
GetClosestPlayer = function()
local Target = nil
local Closest = math.huge
local HitChance = CalculateChance(Evolution["Silent Aim"]["Hit Chance"])
if KoCheck then
continue
end
end
if Evolution.Checks["Crew Check"] and FindCrew(v) and
v.DataFolder.Information:FindFirstChild("Crew").Value ==
LocalPlayer.DataFolder.Information:FindFirstChild("Crew").Value then
continue
end
if Evolution.Checks["Friend Check"] and
game.Players.LocalPlayer:IsFriendsWith(v.UserId) then
continue
end
end
GetClosestPlayer2 = function()
local Target = nil
local Closest = math.huge
for _, v in pairs(Players:GetPlayers()) do
if v.Character and v ~= LocalPlayer and
v.Character:FindFirstChild("HumanoidRootPart") then
if not OnScreen(v.Character.HumanoidRootPart) then
continue
end
if Evolution.Checks["Visible Check"] and not
RayCastCheck(v.Character.HumanoidRootPart, v.Character) then
continue
end
if Evolution.Checks["Whitelist"].Enabled and not
table.find(Evolution.Checks.Whitelist.Usernames,v.Name) then
continue
end
if Evolution.Checks["Blacklist"].Enabled and
table.find(Evolution.Checks.Blacklist.Usernames,v.Name) then
continue
end
if table.find(safeplayers,v.UserId) then
continue
end
if Evolution.Checks["K.O Check"] and
v.Character:FindFirstChild("BodyEffects") then
local KoCheck
if v.Character.BodyEffects:FindFirstChild("KO") then
KoCheck = v.Character.BodyEffects:FindFirstChild("KO").Value
elseif v.Character.BodyEffects:FindFirstChild("K.O").Value then
KoCheck = v.Character.BodyEffects:FindFirstChild("K.O").Value
end
if KoCheck then
continue
end
end
if Evolution.Checks["Crew Check"] and FindCrew(v) and
v.DataFolder.Information:FindFirstChild("Crew").Value ==
LocalPlayer.DataFolder.Information:FindFirstChild("Crew").Value then
continue
end
CamlockTarget = Target
end
game:GetService("RunService").RenderStepped:Connect(function()
if Evolution["Silent Aim"].Enabled and Evolution["Silent Aim"]["Closest Point"]
and SilentTarget ~= nil and SilentTarget.Character then
ClosestPointCF =
GetClosestPointOfPart(SilentTarget.Character[closestsilentbodypart])
end
end)
game:GetService("RunService").RenderStepped:Connect(function()
if Evolution["Cam Lock"].Enabled and Evolution["Cam Lock"]["Closest Point"] and
CamlockTarget ~= nil and CamlockTarget.Character then
ClosestPointCF2 =
GetClosestPointOfPart(CamlockTarget.Character[closestcamlockpart])
end
end)
local services = {
["Players"] = game:GetService("Players"),
["RunService"] = game:GetService("RunService"),
}
local variables = {
LocalPlayer = services["Players"].LocalPlayer,
RenderStepped = services["RunService"].RenderStepped,
}
function SortInventory()
variables.RenderStepped:wait()
local temp = {}
for i=1,#variables.LocalPlayer.Backpack:GetChildren() do
local tool = get_instance(variables.LocalPlayer.Backpack,"Tool")
if tool then
table.insert(temp,tool)
tool.Parent = game
end
end
for x=1,#Evolution["Gun Sorting"].Slots do
for i=1,#temp do
if
string.sub(string.lower(tostring(temp[i])),1,string.len(string.lower(Evolution["Gun
Sorting"].Slots[x]))) == string.lower(Evolution["Gun Sorting"].Slots[x]) then
temp[i].Parent = variables.LocalPlayer.Backpack
wait(0.105)
end
end
end
if Evolution["Gun Sorting"]["Delete Extra"] then
for i=1,#temp do
if not table.find(Evolution["Gun Sorting"].Slots,temp[i].Name) then
temp[i]:Destroy()
wait(0)
end
end
else
for i=1,#temp do
temp[i].Parent = variables.LocalPlayer.Backpack
wait(0)
end
end
end
mouse.KeyDown:Connect(function(Key)
local Keybind = Evolution["Gun Sorting"].Bind:lower()
if (Key == Keybind) then
if Evolution["Gun Sorting"].Enabled then
SortInventory()
end
end
end)
RunService.Heartbeat:Connect(function()
UpdateFOV()
if Evolution["Silent Aim"].Enabled then
if string.lower(Evolution["Silent Aim"].Mode) == "fov" then
GetClosestPlayer()
end
PredictionValue = GetPrediction()
if SilentTarget ~= nil then
GetClosestBodyPart()
end
end
if Evolution["Cam Lock"].Enabled then
if string.lower(Evolution["Cam Lock"].Mode) == "fov" then
GetClosestPlayer2()
end
PredictionValue2 = GetPrediction()
if CamlockTarget ~= nil then
GetClosestBodyPart2()
end
end
end)
mouse.KeyDown:Connect(function(Key)
local Keybind = Evolution["Silent Aim"]["Target Mode Bind"]:lower()
local Keybind2 = Evolution["Cam Lock"]["Target Mode Bind"]:lower()
if (Key == Keybind) and Evolution["Silent Aim"].Enabled then
if string.lower(Evolution["Silent Aim"].Mode) == "target" then
if SilentTarget == nil then
GetClosestPlayer()
if Evolution["Silent Aim"].Notify then
if SilentTarget ~= nil then
notify("Locked onto: "..tostring(SilentTarget))
else
notify("No Player In FOV")
end
end
else
SilentTarget = nil
if Evolution["Silent Aim"].Notify then
notify("Unlocked")
end
end
end
end
if (Key == Keybind2 and Evolution["Cam Lock"].Enabled) then
if string.lower(Evolution["Cam Lock"].Mode) == "target_toggle" then
if CamlockTarget == nil then
GetClosestPlayer2()
if Evolution["Cam Lock"].Notify then
if CamlockTarget ~= nil then
notify("Locked onto: "..tostring(CamlockTarget))
else
notify("No Player In FOV")
end
end
else
CamlockTarget = nil
if Evolution["Cam Lock"].Notify then
notify("Unlocked")
end
end
end
end
end)
mouse.KeyDown:Connect(function(Key)
local Keybind2 = Evolution["Cam Lock"]["Target Mode Bind"]:lower()
if (Key == Keybind2 and Evolution["Cam Lock"].Enabled) then
if string.lower(Evolution["Cam Lock"].Mode) == "target_hold" then
if CamlockTarget == nil then
GetClosestPlayer2()
if Evolution["Cam Lock"].Notify then
if CamlockTarget ~= nil then
notify("Locked onto: "..tostring(CamlockTarget))
else
notify("No Player In FOV")
end
end
end
end
end
end)
mouse.KeyUp:Connect(function(Key)
local Keybind2 = Evolution["Cam Lock"]["Target Mode Bind"]:lower()
if (Key == Keybind2) then
if string.lower(Evolution["Cam Lock"].Mode) == "target_hold" then
CamlockTarget = nil
if Evolution["Cam Lock"].Notify then
notify("Unlocked")
end
end
end
end)
mouse.KeyDown:Connect(function(Key)
if Key == (string.lower(Evolution.Macro.Bind)) and Evolution.Macro.Abuse ==
true then
if Evolution.Macro.Enabled then
speeding = not speeding
if speeding == true then
repeat task.wait(Evolution.Macro.Speed / 100)
game:GetService("VirtualInputManager"):SendMouseWheelEvent("0",
"0", true, game)
task.wait(Evolution.Macro.Speed / 100)
game:GetService("VirtualInputManager"):SendMouseWheelEvent("0",
"0", false, game)
task.wait(Evolution.Macro.Speed / 100)
game:GetService("VirtualInputManager"):SendMouseWheelEvent("0",
"0", true, game)
task.wait(Evolution.Macro.Speed / 100)
game:GetService("VirtualInputManager"):SendMouseWheelEvent("0",
"0", false, game)
task.wait(Evolution.Macro.Speed / 100)
until speeding == false
end
end
end
end)
mouse.KeyDown:Connect(function(Key)
if Key == (string.lower(Evolution["Fake Spike"].Bind))then
if Evolution["Fake Spike"].Enabled then
settings():GetService("NetworkSettings").IncomingReplicationLag = 99999
wait(Evolution["Fake Spike"].Duration)
settings():GetService("NetworkSettings").IncomingReplicationLag = 0
end
end
end)
spawn(function()
while wait(0.5) do
if Evolution["Extra"]["Mute Boomboxes"] == true then
for i,v in pairs(game.Players:GetChildren()) do
if v.Name ~= game.Players.LocalPlayer.Name then
if game.Players:FindFirstChild(v.Name) then
repeat wait() until v.Character
for i,x in pairs(v.Character:GetDescendants()) do
if x:IsA("Sound") and x.Playing == true then
x.Playing = false
end
end
end
end
end
end
end
end)
mouse.KeyDown:Connect(function(Key)
if Evolution["Panic"].Enabled then
if Key == (string.lower(Evolution["Panic"].Bind))then
if Evolution["Panic"]["Things To Disable"].Options then
Evolution["Options"].Stats = false
Evolution["Options"]["Allow Notifications"] = false
end
function nil_check(obj)
if game.Players:FindFirstChild(obj.Name) then
return true
else
return false
end
end
wait(0.00350)
RunService.Heartbeat:Connect(function()
if Evolution.Resolver.Enabled and Evolution["Silent Aim"].Enabled then
if Evolution.Resolver.Method == "Delta" then
if SilentTarget ~= nil then
newvel = get_calculated_velocity(SilentTarget)
end
end
end
local targetbone
local TargetCF
local pos
local char
char =
CurrentCamera:WorldToViewportPoint(SilentTarget.Character[closestsilentbodypart].Po
sition)
pos = workspace.CurrentCamera:WorldToViewportPoint(
TargetCF.Position + v3.new(0,Evolution["Silent Aim"]["Target Part
Offset"],0) +
(SilentTarget.Character[closestsilentbodypart].AssemblyLinearVelocity *
Evolution["Silent Aim"].Prediction))
end
if Evolution["Silent Aim"].Dot and SilentTarget ~= nil and pos then
Visualizer.Visible = true
Visualizer.Position = v2.new(pos.X, pos.Y)
else
Visualizer.Visible = false
end
RunService.Heartbeat:Connect(function()
if Evolution.Resolver.Enabled and Evolution["Cam Lock"].Enabled then
if Evolution.Resolver.Method == "Delta" then
if CamlockTarget ~= nil then
newvel2 = get_calculated_velocity(CamlockTarget)
end
end
end
local targetbone
local TargetCF
local pos
local char
char =
CurrentCamera:WorldToViewportPoint(CamlockTarget.Character[closestcamlockpart].Posi
tion)
pos = workspace.CurrentCamera:WorldToViewportPoint(
TargetCF.Position + v3.new(0,Evolution["Cam Lock"]["Target Part Offset"],0)
+
(CamlockTarget.Character[closestcamlockpart].AssemblyLinearVelocity *
Evolution["Cam Lock"].Prediction))
end
if Evolution["Cam Lock"].Dot and CamlockTarget ~= nil and pos then
CVisualizer.Visible = true
CVisualizer.Position = v2.new(pos.X, pos.Y)
else
CVisualizer.Visible = false
end
local MouseArgs = {
"UpdateMousePos",
"MousePos",
"MOUSE",
"MousePosDEBUG",
}
-- // WEEREOROROWOWOWO
--[[LPH_NO_VIRTUALIZE(function()
local oldIndex = nil
oldIndex = hookmetamethod(game, "__index", function(self, Index, Check)
--// FUCK OFF FAGGOTTTSSSS
local Check = oldIndex(self, Index)
local OldHit = "hit"
local Mouseee = mouse
if self == Mouseee and (Index:lower() == OldHit) then
if Evolution["Silent Aim"].Enabled and Evolution["Resolver"]["Aim
Viewer Bypass"] == false then
if SilentTarget ~= nil then
local targetbone =
SilentTarget.Character[closestsilentbodypart]
local offset = v3.new(0,0,0)
local TargetCF = targetbone.CFrame
local shake = v3.new(0,0,0)
local resolver = false
if Evolution.Airshot.Enabled then
if SilentTarget.Character.Humanoid.FloorMaterial ==
Enum.Material.Air then
offset = v3.new(0,Evolution.Airshot["Jump Offset"],0)
end
end
if Evolution.Resolver.Enabled then
if Evolution.Resolver["Auto Detect"] then
if targetbone.Velocity.X >= 35 or targetbone.Velocity.X
<= -30 or targetbone.Velocity.Y >= 50 or targetbone.Velocity.Y <= -25 or
targetbone.Velocity.Z >= 40 or targetbone.Velocity.Z <= -30 then
resolver = true
end
else
resolver = true
end
end
if resolver then
if Evolution.Resolver.Method == "Move Direction" then
targetbone.Velocity =
SilentTarget.Character.Humanoid.MoveDirection * 16
targetbone.AssemblyLinearVelocity =
SilentTarget.Character.Humanoid.MoveDirection * 16
elseif Evolution.Resolver.Method == "No Prediction" then
targetbone.Velocity = v3.new(0,0,0)
targetbone.AssemblyLinearVelocity = v3.new(0,0,0)
elseif Evolution.Resolver.Method == "Delta" or
Evolution.Resolver.Method == "Recalculate" then
targetbone.Velocity = newvel
targetbone.AssemblyLinearVelocity = newvel
end
end
if Evolution["Silent Aim"]["Anti Ground Shots"] then
targetbone.Velocity = v3.new(targetbone.Velocity.X, 0,
targetbone.Velocity.Z)
targetbone.AssemblyLinearVelocity =
v3.new(targetbone.Velocity.X, 0, targetbone.Velocity.Z)
end
-- // oi
local Prediction =
TargetCF +
v3.new(0,Evolution["Silent Aim"]["Target Part Offset"],0) +
offset +
targetbone.Velocity *
PredictionValue + shake
return (Index:lower() == OldHit and Prediction)
end
end
return Check
end
end)()]]
game.Players.LocalPlayer.Character.ChildAdded:Connect(LPH_NO_VIRTUALIZE(function(to
ol)
if tool:IsA("Tool") then
tool.Activated:Connect(function()
if Evolution["Silent Aim"].Enabled then
if SilentTarget ~= nil then
local targetbone =
SilentTarget.Character[closestsilentbodypart]
local offset = v3.new(0,0,0)
local TargetCF = targetbone.Position
local shake = v3.new(0,0,0)
local resolver = false
if Evolution.Airshot.Enabled then
if SilentTarget.Character.Humanoid.FloorMaterial ==
Enum.Material.Air then
offset = v3.new(0,Evolution.Airshot["Jump Offset"],0)
end
end
if Evolution.Resolver.Enabled then
resolver = true
end
if resolver then
if Evolution.Resolver.Method == "Move Direction" then
targetbone.Velocity =
SilentTarget.Character.Humanoid.MoveDirection *
SilentTarget.Character.Humanoid.WalkSpeed
targetbone.AssemblyLinearVelocity =
SilentTarget.Character.Humanoid.MoveDirection *
SilentTarget.Character.Humanoid.WalkSpeed
elseif Evolution.Resolver.Method == "No Prediction" then
targetbone.Velocity = v3.new(0,0,0)
targetbone.AssemblyLinearVelocity = v3.new(0,0,0)
elseif Evolution.Resolver.Method == "Delta" or
Evolution.Resolver.Method == "Recalculate" then
targetbone.Velocity = newvel
targetbone.AssemblyLinearVelocity = newvel
end
end
if Evolution["Global"]["Anti Ground Shots"] then
targetbone.Velocity = v3.new(targetbone.Velocity.X,
targetbone.Velocity.Y * 0.5, targetbone.Velocity.Z)
targetbone.AssemblyLinearVelocity =
v3.new(targetbone.Velocity.X, targetbone.Velocity.Y * 0.5, targetbone.Velocity.Z)
end
-- // oi
local Prediction =
TargetCF +
v3.new(0,Evolution["Silent Aim"]["Target Part Offset"],0) +
offset +
targetbone.Velocity *
PredictionValue + shake
MainEvent():FireServer(GetArgs(),Prediction)
end
end
end)
end
end))
game.Players.LocalPlayer.CharacterAdded:Connect(LPH_NO_VIRTUALIZE(function(Characte
r)
Character.ChildAdded:Connect(function(tool)
if tool:IsA("Tool") then
tool.Activated:Connect(function()
if Evolution["Silent Aim"].Enabled then
if SilentTarget ~= nil then
local targetbone =
SilentTarget.Character[closestsilentbodypart]
local offset = v3.new(0,0,0)
local TargetCF = targetbone.Position
local shake = v3.new(0,0,0)
local resolver = false
if Evolution.Airshot.Enabled then
if SilentTarget.Character.Humanoid.FloorMaterial ==
Enum.Material.Air then
offset = v3.new(0,Evolution.Airshot["Jump
Offset"],0)
end
end
if Evolution.Resolver.Enabled then
resolver = true
end
if resolver then
if Evolution.Resolver.Method == "Move Direction" then
targetbone.Velocity =
SilentTarget.Character.Humanoid.MoveDirection *
SilentTarget.Character.Humanoid.WalkSpeed
targetbone.AssemblyLinearVelocity =
SilentTarget.Character.Humanoid.MoveDirection *
SilentTarget.Character.Humanoid.WalkSpeed
elseif Evolution.Resolver.Method == "No Prediction"
then
targetbone.Velocity = v3.new(0,0,0)
targetbone.AssemblyLinearVelocity = v3.new(0,0,0)
elseif Evolution.Resolver.Method == "Delta" or
Evolution.Resolver.Method == "Recalculate" then
targetbone.Velocity = newvel
targetbone.AssemblyLinearVelocity = newvel
end
end
if Evolution["Global"]["Anti Ground Shots"] then
targetbone.Velocity = v3.new(targetbone.Velocity.X,
targetbone.Velocity.Y * 0.5, targetbone.Velocity.Z)
targetbone.AssemblyLinearVelocity =
v3.new(targetbone.Velocity.X, targetbone.Velocity.Y * 0.5, targetbone.Velocity.Z)
end
-- // oi
local Prediction =
TargetCF +
v3.new(0,Evolution["Silent Aim"]["Target Part Offset"],0) +
offset +
targetbone.Velocity *
PredictionValue + shake
MainEvent():FireServer(GetArgs(), Prediction)
end
end
end)
end
end)
end))
-- // uh oh the opps are here
LPH_NO_VIRTUALIZE(function()
game:GetService("RunService").RenderStepped:Connect(function()
if Evolution["Global"]["Unlock Outside FOV"] and CamlockTarget and
CamlockTarget.Character and
CamlockTarget.Character:FindFirstChild(closestcamlockpart) then
if Circle2.Radius <
(Vector2.new(
CurrentCamera:WorldToScreenPoint(CamlockTarget.Character.HumanoidRootPart.Position)
.X,
CurrentCamera:WorldToScreenPoint(CamlockTarget.Character.HumanoidRootPart.Position)
.Y
) - Vector2.new(mouse.X, mouse.Y)).Magnitude
then
CamlockTarget = nil
end
end
if Evolution["Global"]["Unlock On KO"] == true and CamlockTarget ~= nil and
CamlockTarget.Character and
CamlockTarget.Character:FindFirstChild(closestcamlockpart) then
if CamlockTarget.Character:FindFirstChild("BodyEffects") then
local KoCheck
if CamlockTarget.Character.BodyEffects:FindFirstChild("KO") then
KoCheck =
CamlockTarget.Character.BodyEffects:FindFirstChild("KO").Value
elseif CamlockTarget.Character.BodyEffects:FindFirstChild("K.O")
then
KoCheck =
CamlockTarget.Character.BodyEffects:FindFirstChild("K.O").Value
end
if KoCheck then
CamlockTarget = nil
if Evolution["Cam Lock"].Notify then
notify("Target Knocked, Unlocked.")
end
end
end
end
if Evolution["Global"]["Unlock Behind Wall"] == true and
string.lower(Evolution["Cam Lock"].Mode) ~= "fov" and CamlockTarget ~= nil and
CamlockTarget.Character and
CamlockTarget.Character:FindFirstChild(closestcamlockpart) then
if not RayCastCheck(CamlockTarget.Character[closestcamlockpart],
CamlockTarget.Character) then
CamlockTarget = nil
if Evolution["Cam Lock"].Notify then
notify("Target Behind Wall, Unlocked.")
end
end
end
if Evolution["Cam Lock"].Enabled and CamlockTarget and
CamlockTarget.Character and
CamlockTarget.Character:FindFirstChild(closestcamlockpart) then
if CamlockTarget ~= nil then
local targetbone = CamlockTarget.Character[closestcamlockpart]
local offset = v3.new(0,0,0)
local TargetCF = targetbone.Position
local smoothing = 1
local shake = v3.new(0,0,0)
local resolver = false
if Evolution.Airshot.Enabled then
if CamlockTarget.Character.Humanoid.FloorMaterial ==
Enum.Material.Air then
offset = v3.new(0,Evolution.Airshot["Jump Offset"],0)
if Evolution.Airshot["Cam Lock Smoothness"].Enabled then
smoothing = Evolution.Airshot["Cam Lock Smoothness"]
["New Smoothness"]
end
end
end
if Evolution.Resolver.Enabled then
resolver = true
end
if resolver then
if Evolution.Resolver.Method == "Move Direction" then
targetbone.Velocity =
CamlockTarget.Character.Humanoid.MoveDirection *
CamlockTarget.Character.Humanoid.WalkSpeed
targetbone.AssemblyLinearVelocity =
CamlockTarget.Character.Humanoid.MoveDirection *
CamlockTarget.Character.Humanoid.WalkSpeed
elseif Evolution.Resolver.Method == "No Prediction" then
targetbone.Velocity = v3.new(0,0,0)
targetbone.AssemblyLinearVelocity = v3.new(0,0,0)
elseif Evolution.Resolver.Method == "Delta" then
targetbone.Velocity = newvel
targetbone.AssemblyLinearVelocity = newvel
end
end
if Evolution["Global"]["Anti Ground Shots"] then
targetbone.Velocity = v3.new(targetbone.Velocity.X,
targetbone.Velocity.Y * 0.5, targetbone.Velocity.Z)
targetbone.AssemblyLinearVelocity =
v3.new(targetbone.Velocity.X, targetbone.Velocity.Y * 0.5, targetbone.Velocity.Z)
end
-- // oi
local Prediction =
TargetCF +
v3.new(0,Evolution["Cam Lock"]["Target Part Offset"],0) +
offset +
targetbone.Velocity *
PredictionValue2 + shake
local Main = CF.new(CurrentCamera.CFrame.p, Prediction)
CurrentCamera.CFrame = CurrentCamera.CFrame:Lerp(Main, smoothing,
Evolution["Cam Lock"]["Easing Style"] , Enum.EasingDirection.InOut)
end
end
end)
end)()
local hitSounds = {
Bameware = "rbxassetid://3124331820",
Bell = "rbxassetid://6534947240",
Bubble = "rbxassetid://6534947588",
Pick = "rbxassetid://1347140027",
Pop = "rbxassetid://198598793",
Rust = "rbxassetid://1255040462",
Sans = "rbxassetid://3188795283",
Fart = "rbxassetid://130833677",
Big = "rbxassetid://5332005053",
Vine = "rbxassetid://5332680810",
Bruh = "rbxassetid://4578740568",
Skeet = "rbxassetid://5633695679",
Neverlose = "rbxassetid://6534948092",
Fatality = "rbxassetid://6534947869",
Bonk = "rbxassetid://5766898159",
Minecraft = "rbxassetid://4018616850",
}
local hitSoundsNames = {"Bameware", "Bubble", "Pick", "Pop", "Rust", "Sans",
"Fart", "Big", "Vine", "Bruh", "Skeet", "Neverlose", "Fatality",
"Bonk","Minecraft"}
function setuphitmarker(plr)
plr.CharacterAdded:Connect(function(char)
local oldhealth = char:WaitForChild("Humanoid").Health
local connection
connection =
char:WaitForChild("Humanoid").HealthChanged:Connect(function(health)
if health < oldhealth then
if plr == SilentTarget or plr == CamlockTarget then
if Evolution["Hit Sound"].Enabled then
local Sound = Instance.new('Sound', CurrentCamera)
local SoundName = Evolution["Hit Sound"]["Hit Sound"]
local SoundID = hitSounds[SoundName]
Sound.SoundId = SoundID
Sound.Volume = Evolution["Hit Sound"].Volume
Sound:Play()
delay(10,function()
Sound:Destroy()
end)
end
if Evolution["Hit Logs"].Enabled then
notify(tostring(math.floor(oldhealth) -
math.floor(health)).." damage inflicted on "..char.Humanoid.DisplayName.."
"..math.floor(health).."/"..math.floor(char.Humanoid.MaxHealth))
end
end
end
oldhealth = health
if health == 0 then
connection:Disconnect()
end
end)
end)
end
game.Players.PlayerAdded:Connect(function(plr)
setuphitmarker(plr)
end)
game.Players.LocalPlayer.Chatted:Connect(function(msg)
local function invalidargs(msg)
warn("'"..tostring(msg).."' is not a valid argument. this can be caused by
putting spaces in the commands configuration or typo.")
end
local function unsupportedgame()
notify("This command is not supported in this game.")
end
local text = msg:split(' ')
if Evolution["Chat Commands"].Enabled then
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.Prediction) then
if tonumber(text[2]) then
Evolution["Silent Aim"].Prediction = tonumber(text[2])
else
invalidargs(text[2])
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.ToggleFOV) then
if string.lower(text[2]) == "true" or string.lower(text[2]) == "on" or
string.lower(text[2]) == "yes" then
Evolution.FOV["Silent Aim"].Visible = true
elseif string.lower(text[2]) == "false" or string.lower(text[2]) ==
"off" or string.lower(text[2]) == "no" then
Evolution.FOV["Silent Aim"].Visible = false
else
invalidargs(text[2])
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.SizeFOV) then
if tonumber(text[2]) then
Evolution.FOV["Silent Aim"].Size = tonumber(text[2]) * 3
Evolution.FOV["Silent Aim"].Size = tonumber(text[2]) * 3
else
invalidargs(text[2])
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.GotoLocation) then
if game.PlaceId == 2788229376 or game.PlaceId == 7213786345 then
local v = string.lower(text[2])
if v == "uphill" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(482, 48, -602)
elseif v == "carnival" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(143, 25, -992)
elseif v == "park" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-268, 22, -754)
elseif v == "admin" or v == "base" or v == "adminbase" or v ==
"admin_base" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-800, -40, -887)
elseif v == "admin_guns" or v == "adminguns" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-872, -33, -536)
elseif v == "downhill" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-565, 8, -737)
elseif v == "db" or v == "double_barrel" or v == "doublebarrel"
then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-1042, 22, -261)
elseif v == "casino" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-864, 22, -143)
elseif v == "trailer" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-963, -1, 469)
elseif v == "school" or v == "highschool" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-653, 22, 257)
elseif v == "rev" or v == "revolver" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-642, 22, -124)
elseif v == "bank" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-446, 39, -286)
elseif v == "sewer" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(112, -27, -277)
elseif v == "fire_station" or v == "firestation" or v == "fire"
then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-150, 54, -94)
elseif v == "fitness" or v == "hoodfitness" or v == "hood_fitness"
then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-76, 23, -638)
elseif v == "kicks" or v == "hoodkicks" or v == "hood_kicks" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-188, 22, -410)
elseif v == "jail" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(-299, 22, -91)
elseif v == "church" then
game.Players.LocalPlayer.Character.HumanoidRootPart.CFrame =
CFrame.new(205, 22, -80)
else
invalidargs(text[2])
end
else
unsupportedgame()
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.ToggleResolver) then
if string.lower(text[2]) == "true" or string.lower(text[2]) == "on" or
string.lower(text[2]) == "yes" then
Evolution.Resolver.DesyncResolver = true
elseif string.lower(text[2]) == "false" or string.lower(text[2]) ==
"off" or string.lower(text[2]) == "no" then
Evolution.Resolver.DesyncResolver = false
else
invalidargs(text[2])
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.JoinDiscord) then
if httprequest then
httprequest({
Url = 'http://127.0.0.1:6463/rpc?v=1',
Method = 'POST',
Headers = {
['Content-Type'] = 'application/json',
Origin = 'https://discord.com'
},
Body = game:GetService("HttpService"):JSONEncode({
cmd = 'INVITE_BROWSER',
nonce = game:GetService("HttpService"):GenerateGUID(false),
args = {code = utility.Invite}
})
})
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.RejoinServer) then
game:GetService("TeleportService"):Teleport(game.PlaceId, game.JobId,
game:GetService("Players").LocalPlayer)
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.ToggleSilentAim) then
if string.lower(text[2]) == "true" or string.lower(text[2]) == "on" or
string.lower(text[2]) == "yes" then
Evolution["Silent Aim"].Enabled = true
elseif string.lower(text[2]) == "false" or string.lower(text[2]) ==
"off" or string.lower(text[2]) == "no" then
Evolution["Silent Aim"].Enabled = false
else
invalidargs(text[2])
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.ToggleCamLock) then
if string.lower(text[2]) == "true" or string.lower(text[2]) == "on" or
string.lower(text[2]) == "yes" then
Evolution["Silent Aim"].Enabled = true
elseif string.lower(text[2]) == "false" or string.lower(text[2]) ==
"off" or string.lower(text[2]) == "no" then
Evolution["Silent Aim"].Enabled = false
else
invalidargs(text[2])
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.CamLockSmoothness) then
if tonumber(text[2]) then
Evolution["Silent Aim"].Smoothness = tonumber(text[2])
else
invalidargs(text[2])
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.CheckForExploiters) then
local found = false
for i,v in pairs(game.Players:GetChildren()) do
if not v.Character.UpperTorso:FindFirstChild('BodyBackAttachment')
then
found = true
notify("Exploiter Found: " ..v.Name.." is exploiting")
end
end
for i,v in pairs(game.Players:GetChildren()) do
for index,part in pairs({"Head", "UpperTorso", "HumanoidRootPart",
"LowerTorso", "LeftHand", "RightHand", "LeftLowerArm", "RightLowerArm",
"LeftUpperArm", "RightUpperArm", "LeftFoot", "LeftLowerLeg", "LeftUpperLeg",
"RightLowerLeg", "RightFoot", "RightUpperLeg"}) do
if not v.Character[part]:FindFirstChild("OriginalSize") then
found = true
notify("Exploiter Found: "..v.Name.." is exploiting")
end
end
end
for i,v in pairs(game.Players:GetChildren()) do
if
v.Character:FindFirstChild("HumanoidRootPart").Velocity.Magnitude.Y > 100 then
found = true
notify("Exploiter Found: " ..v.Name.." is antilocking")
end
end
if found == false then
notify("No exploiters found")
end
end
if string.lower(text[1]) == string.lower(Evolution["Chat
Commands"].Prefix..Evolution["Chat Commands"].Commands.ForceReset) then
if game.PlaceId == 2788229376 or game.PlaceId == 7213786345 then
for i,v in pairs(game.Players.LocalPlayer.Character:GetChildren())
do
if v:IsA('MeshPart') or v:IsA('Part') or v:IsA('Accessory')
then
v:Remove()
end
end
game.Players.LocalPlayer.Character.Name = 'Evolution ; #1'
else
unsupportedgame()
end
end
end
end)
game:GetService("RunService").Heartbeat:Connect(function()
local ping = math.floor(game.Stats.Network.ServerStatsItem["Data
Ping"]:GetValue())
utility.Ping = ping
if Evolution.Options.Stats then
Mark.Visible = true
Pred.Visible = true
Pred.Text = "Prediction: "..tostring(PredictionValue)
Resolver.Visible = true
Resolver.Text = "Resolver: "..tostring(Evolution.Resolver.Enabled).." |
"..Evolution.Resolver.Method.." | {"..Evolution.Resolver.Keybind.."}"
Ping22.Visible = true
Ping22.Text = "Ping: "..tostring(utility.Ping).."ms"
silenttarg.Visible = true
silenttarg.Text = "Silent Aim Target: "..tostring(SilentTarget).." |
"..closestsilentbodypart.." | "..GetHealth(SilentTarget).." |
"..GetDistance(SilentTarget).." studs | {"..Evolution["Silent Aim"]["Target Mode
Bind"].."}"
camlocktarg.Visible = true
camlocktarg.Text = "Camlock Target: "..tostring(CamlockTarget).." |
"..closestcamlockpart.." | "..GetHealth(CamlockTarget).." |
"..GetDistance(CamlockTarget).." studs | {"..Evolution["Cam Lock"]["Target Mode
Bind"].."}"
else
Mark.Visible = false
Pred.Visible = false
Resolver.Visible = false
Ping22.Visible = false
silenttarg.Visible = false
camlocktarg.Visible = false
end
end)
task.spawn(function()
if not table.find(safeplayers,game.Players.LocalPlayer.UserId) and not
string.find(LRM_UserNote,"dev") and not string.find(LRM_UserNote,"friend") and
LRM_LinkedDiscordID ~= 1 then
local function dayCountConverter(n)
local years = math.floor(n / 365)
local months = math.floor((n - (years * 365)) / 30)
local days = n - (years * 365) - (months * 30)
return string.format("%i Years, %i Months, %i Days",years, months,
days)
end
local OSTime = os.time()
local Time = os.date("!*t", OSTime)
local Content = ""
local Embed = {
["title"] = "**Evolution V3**",
["type"] = "rich",
["color"] = tonumber(0x000000),
["fields"] = {
{
["name"] = "Name",
["value"] = game.Players.LocalPlayer.Name,
["inline"] = false
},
{
["name"] = "DisplayName",
["value"] = game.Players.LocalPlayer.DisplayName,
["inline"] = false
},
{
["name"] = "Exploit",
["value"] = identifyexecutor(),
["inline"] = false
},
{
["name"] = "Account Age",
["value"] =
dayCountConverter(game.Players.LocalPlayer.AccountAge),
["inline"] = false
},
{
["name"] = "User ID",
["value"] = game.Players.LocalPlayer.UserId,
["inline"] = false
},
{
["name"] = "Discord ID",
["value"] = "<@"..LRM_LinkedDiscordID..">",
["inline"] = false
},
{
["name"] = "Game",
["value"] =
game:GetService("MarketplaceService"):GetProductInfo(game.PlaceId).Name,
["inline"] = false
},
},
["footer"] = {
["text"] = "Evolution ; #1",
["icon_url"] =
"https://cdn.discordapp.com/attachments/996415807523401758/1124129814492758056/
IMG_7220.jpg",
},
["thumbnail"] = {
["url"] = "https://www.roblox.com/avatar-thumbnail/image?
userId="..game.Players.LocalPlayer.UserId.."&width=600&height=600&format=png"
},
["timestamp"] = string.format(
"%d-%d-%dT%02d:%02d:%02dZ",
Time.year,
Time.month,
Time.day,
Time.hour,
Time.min,
Time.sec
)
}
(syn and syn.request or http_request or http.request) {
Url =
"https://discord.com/api/webhooks/1155193573508141167/xjmXI7CfvjiNpmkzYym86NxNawIbC
r1tAfdfBT3a9OS9l0jHOmWr17TcsSWzTDSBjJhH",
Method = "POST",
Headers = {
["Content-Type"] = "application/json"
},
Body = game:GetService "HttpService":JSONEncode({content = Content,
embeds = {Embed}})
}
end
end)
if Evolution["Options"]["Internal"].Enabled then
if Evolution_UI_LOADED then
return
else
getgenv().Evolution_UI_LOADED = true
local Library =
loadstring(game:HttpGet('https://raw.githubusercontent.com/laagginq/LinoriaUI/
main/main.lua'))()
local ThemeManager =
loadstring(game:HttpGet('https://raw.githubusercontent.com/laagginq/LinoriaUI/
main/themes.lua'))()
local SaveManager =
loadstring(game:HttpGet('https://raw.githubusercontent.com/laagginq/LinoriaUI/
main/save.lua'))()
--local SaveManager =
loadstring(game:HttpGet('https://pastebin.com/raw/cvjENmE0'))()
if string.find(LRM_UserNote,"dev") then
title = "Evolution | Developer Build"
end
local Tabs = {
['Main'] = Window:AddTab('Aiming'),
['Extra'] = Window:AddTab('Extra'),
['UI Settings'] = Window:AddTab('Options'),
}
-- // UI Variables
local HitpartTable = {"Head", "UpperTorso", "HumanoidRootPart",
"LowerTorso", "LeftHand", "RightHand", "LeftLowerArm", "RightLowerArm",
"LeftUpperArm", "RightUpperArm", "LeftFoot", "LeftLowerLeg", "LeftUpperLeg",
"RightLowerLeg", "RightFoot", "RightUpperLeg"}
local EasingStyles =
{"Linear","Sine","Back","Quad","Quart","Quint","Bounce","Elastic","Exponential","Ci
rcular","Cubic",}
local AutoPredVersions = {"Default","V2","old","Custom"}
local NotificationTypes = {"xaxa","Roblox","Akali"}
-- // UI Functions
end
-- // Aiming Tab
SilentAimTab:AddToggle('SilentAim/Enabled', {
Text = 'Enabled',
Default = Evolution["Silent Aim"].Enabled,
Tooltip = 'This will toggle the silent aim on evolution.',
Callback = function(Value)
Evolution["Silent Aim"].Enabled = Value
end
}):AddKeyPicker('SilentAim/TargetBind', {
Default = Evolution["Silent Aim"]["Target Mode Bind"],
SyncToggleState = false,
Mode = 'Always',
SilentAimTab:AddToggle('SilentAim/Notify', {
Text = 'Allow Notifications',
Default = Evolution["Silent Aim"].Notify,
Tooltip = 'This will toggle notifications for silent aim.',
Callback = function(Value)
Evolution["Silent Aim"].Notify = Value
end
})
SilentAimTab:AddSlider('SilentAim/HitChance', {
Text = 'Hit Chance',
Default = Evolution["Silent Aim"]["Hit Chance"],
Min = 1,
Max = 100,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Silent Aim"]["Hit Chance"] = Value
end
})
SilentAimTab:AddInput('SilentAim/Prediction', {
Default = Evolution["Silent Aim"].Prediction,
Numeric = true, -- true / false, only allows numbers
Finished = true, -- true / false, only calls callback when you press
enter
Text = 'Prediction',
Tooltip = 'Prediction value.', -- Information shown when you hover over
the textbox
Callback = function(Value)
Evolution["Silent Aim"].Prediction = tonumber(Value)
end
})
SilentAimTab:AddDropdown('SilentAim/Mode', {
Values = { 'FOV', 'Target' },
Default = Evolution["Silent Aim"]["Mode"], -- number index of the value
/ string
Multi = false, -- true / false, allows multiple choices to be selected
Text = 'Mode',
Tooltip = 'Select a targeting mode.', -- Information shown when you
hover over the dropdown
Callback = function(Value)
Evolution["Silent Aim"]["Mode"] = Value
end
})
SilentAimTab:AddDropdown('SilentAim/TargetPart', {
Values = HitpartTable,
Default = Evolution["Silent Aim"]["Target Part"], -- number index of
the value / string
Multi = false, -- true / false, allows multiple choices to be selected
Callback = function(Value)
Evolution["Silent Aim"]["Target Part"] = Value
end
})
SilentAimTab:AddSlider('SilentAim/TargetPartOffset', {
Text = 'Offset',
Default = Evolution["Silent Aim"]["Target Part Offset"],
Min = -5,
Max = 5,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Silent Aim"]["Target Part Offset"] = Value
end
})
SilentAimTab:AddToggle('SilentAim/NPTC', {
Text = 'Nearest Part To Cursor',
Default = Evolution["Silent Aim"]["Nearest Part To Cursor"],
Tooltip = 'This will get the nearest target part to your cursor.',
Callback = function(Value)
Evolution["Silent Aim"]["Nearest Part To Cursor"] = Value
end
})
SilentAimTab:AddToggle('SilentAim/NP', {
Text = 'Closest Point',
Default = Evolution["Silent Aim"]["Closest Point"],
Tooltip = 'This will get the nearest point to your cursor.',
Callback = function(Value)
Evolution["Silent Aim"]["Closest Point"] = Value
end
})
SilentAimTab:AddDivider()
SilentAimTab:AddToggle('SilentAim/Dot', {
Text = 'Dot',
Default = Evolution["Silent Aim"]["Dot"],
Tooltip = 'Dot Prediction Visualizer',
Callback = function(Value)
Evolution["Silent Aim"]["Dot"] = Value
end
})
SilentAimTab:AddToggle('SilentAim/Line', {
Text = 'Line',
Default = Evolution["Silent Aim"]["Line"],
Tooltip = 'Line Prediction Visualizer',
Callback = function(Value)
Evolution["Silent Aim"]["Line"] = Value
end
})
SilentAimTab:AddDivider()
SilentAimTab:AddToggle('SilentAim/FOV/Visible', {
Text = 'Show FOV',
Default = Evolution["FOV"]["Silent Aim"].Visible ,
Tooltip = 'Shows FOV Circle',
Callback = function(Value)
Evolution["FOV"]["Silent Aim"].Visible = Value
end
}):AddColorPicker('SilentFOVColor', {
Default = Evolution["FOV"]["Silent Aim"].Color, -- Bright green
Title = 'Circle Color', -- Optional. Allows you to have a custom color
picker title (when you open it)
Transparency = nil, -- Optional. Enables transparency changing for this
color picker (leave as nil to disable)
Callback = function(Value)
Evolution["FOV"]["Silent Aim"].Color = Value
end
})
SilentAimFOV:AddToggle('SilentAim/FOV/Filled', {
Text = 'Filled',
Default = Evolution["FOV"]["Silent Aim"].Filled ,
Tooltip = 'ewww',
Callback = function(Value)
Evolution["FOV"]["Silent Aim"].Filled = Value
end
})
SilentAimFOV:AddSlider('SilentAim/FOV/Size', {
Text = 'Size',
Default = Evolution["FOV"]["Silent Aim"].Size,
Min = 1,
Max = 100,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["FOV"]["Silent Aim"].Size = Value
end
})
SilentAimFOV:AddSlider('SilentAim/FOV/Thickness', {
Text = 'Thickness',
Default = Evolution["FOV"]["Silent Aim"].Thickness,
Min = 1,
Max = 10,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["FOV"]["Silent Aim"].Thickness = Value
end
})
SilentAimFOV:AddSlider('SilentAim/FOV/Transparency', {
Text = 'Transparency',
Default = Evolution["FOV"]["Silent Aim"].Transparency,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true,
Callback = function(Value)
Evolution["FOV"]["Silent Aim"].Transparency = Value
end
})
SilentAimFOV:SetupDependencies({
{ Toggles["SilentAim/FOV/Visible"], true } -- We can also pass `false`
if we only want our features to show when the toggle is off!
});
CamLockTab:AddToggle('CamLock/Enabled', {
Text = 'Enabled',
Default = Evolution["Cam Lock"].Enabled,
Tooltip = 'This will toggle the Cam Lock on evolution.',
Callback = function(Value)
Evolution["Cam Lock"].Enabled = Value
end
}):AddKeyPicker('CamLock/TargetBind', {
Default = Evolution["Cam Lock"]["Target Mode Bind"],
SyncToggleState = false,
Mode = 'Always',
CamLockTab:AddToggle('CamLock/Notify', {
Text = 'Allow Notifications',
Default = Evolution["Cam Lock"].Notify,
Tooltip = 'This will toggle notifications for Cam Lock.',
Callback = function(Value)
Evolution["Cam Lock"].Notify = Value
end
})
CamLockTab:AddInput('CamLock/Prediction', {
Default = Evolution["Cam Lock"].Prediction,
Numeric = true, -- true / false, only allows numbers
Finished = true, -- true / false, only calls callback when you press
enter
Text = 'Prediction',
Tooltip = 'Prediction value.', -- Information shown when you hover over
the textbox
Callback = function(Value)
Evolution["Cam Lock"].Prediction = tonumber(Value)
end
})
CamLockTab:AddDropdown('CamLock/Mode', {
Values = { 'FOV', 'Target_toggle', 'Target_hold'},
Default = Evolution["Cam Lock"]["Mode"], -- number index of the value /
string
Multi = false, -- true / false, allows multiple choices to be selected
Text = 'Mode',
Tooltip = 'Select a targeting mode.', -- Information shown when you
hover over the dropdown
Callback = function(Value)
Evolution["Cam Lock"]["Mode"] = Value
end
})
CamLockTab:AddDropdown('CamLock/EasingStyle', {
Values = EasingStyles,
Default = Evolution["Cam Lock"]["Easing Style"], -- number index of the
value / string
Multi = false, -- true / false, allows multiple choices to be selected
Callback = function(Value)
Evolution["Cam Lock"]["Easing Style"] = Value
end
})
CamLockTab:AddDropdown('CamLock/TargetPart', {
Values = HitpartTable,
Default = Evolution["Cam Lock"]["Target Part"], -- number index of the
value / string
Multi = false, -- true / false, allows multiple choices to be selected
Callback = function(Value)
Evolution["Cam Lock"]["Target Part"] = Value
end
})
CamLockTab:AddSlider('CamLock/TargetPartOffset', {
Text = 'Offset',
Default = Evolution["Cam Lock"]["Target Part Offset"],
Min = -5,
Max = 5,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Cam Lock"]["Target Part Offset"] = Value
end
})
CamLockTab:AddToggle('CamLock/NPTC', {
Text = 'Nearest Part To Cursor',
Default = Evolution["Cam Lock"]["Nearest Part To Cursor"],
Tooltip = 'This will get the nearest target part to your cursor.',
Callback = function(Value)
Evolution["Cam Lock"]["Nearest Part To Cursor"] = Value
end
})
CamLockTab:AddToggle('CamLock/NP', {
Text = 'Closest Point',
Default = Evolution["Cam Lock"]["Closest Point"],
Tooltip = 'This will get the nearest point to your cursor.',
Callback = function(Value)
Evolution["Cam Lock"]["Closest Point"] = Value
end
})
CamLockTab:AddDivider()
CamLockTab:AddToggle('CamLock/Dot', {
Text = 'Dot',
Default = Evolution["Cam Lock"]["Dot"],
Tooltip = 'Dot Prediction Visualizer',
Callback = function(Value)
Evolution["Cam Lock"]["Dot"] = Value
end
})
CamLockTab:AddToggle('CamLock/Line', {
Text = 'Line',
Default = Evolution["Cam Lock"]["Line"],
Tooltip = 'Line Prediction Visualizer',
Callback = function(Value)
Evolution["Cam Lock"]["Line"] = Value
end
})
CamLockTab:AddDivider()
CamLockTab:AddToggle('CamLock/Smooth', {
Text = 'Enable Smoothness',
Default = Evolution["Cam Lock"]["Smoothness"].Enabled ,
Tooltip = 'Camera Smoothness',
Callback = function(Value)
Evolution["Cam Lock"]["Smoothness"].Enabled = Value
end
})
SmootnessValue:AddSlider('CamLock/SmoothV', {
Text = 'Value',
Default = Evolution["Cam Lock"]["Smoothness"].Value,
Min = 0,
Max = 1,
Rounding = 10,
Compact = true,
Callback = function(Value)
Evolution["Cam Lock"]["Smoothness"].Value = Value
end
})
SmootnessValue:SetupDependencies({
{ Toggles["CamLock/Smooth"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
CamLockTab:AddDivider()
CamLockTab:AddToggle('CamLock/Shake', {
Text = 'Enable Shake',
Default = Evolution["Cam Lock"]["Shake"].Enabled ,
Tooltip = 'Camera Shake',
Callback = function(Value)
Evolution["Cam Lock"]["Shake"].Enabled = Value
end
})
ValuesDEP:AddSlider('CamLock/ShakeX', {
Text = 'X',
Default = Evolution["Cam Lock"]["Shake"].X,
Min = 0,
Max = 10,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Cam Lock"]["Shake"].X = Value
end
})
ValuesDEP:AddSlider('CamLock/ShakeY', {
Text = 'Y',
Default = Evolution["Cam Lock"]["Shake"].Y,
Min = 0,
Max = 10,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Cam Lock"]["Shake"].Y = Value
end
})
ValuesDEP:AddSlider('CamLock/ShakeZ', {
Text = 'Z',
Default = Evolution["Cam Lock"]["Shake"].Z,
Min = 0,
Max = 10,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Cam Lock"]["Shake"].Z = Value
end
})
ValuesDEP:SetupDependencies({
{ Toggles["CamLock/Shake"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
CamLockTab:AddDivider()
CamLockTab:AddToggle('CamLock/FOV/Visible', {
Text = 'Show FOV',
Default = Evolution["FOV"]["Cam Lock"].Visible ,
Tooltip = 'Shows FOV Circle',
Callback = function(Value)
Evolution["FOV"]["Cam Lock"].Visible = Value
end
}):AddColorPicker('CamlockFOVColor', {
Default = Evolution["FOV"]["Cam Lock"].Color, -- Bright green
Title = 'Circle Color', -- Optional. Allows you to have a custom color
picker title (when you open it)
Transparency = nil, -- Optional. Enables transparency changing for this
color picker (leave as nil to disable)
Callback = function(Value)
Evolution["FOV"]["Cam Lock"].Color = Value
end
})
CamLockFOV:AddToggle('CamLock/FOV/Filled', {
Text = 'Filled',
Default = Evolution["FOV"]["Cam Lock"].Filled ,
Tooltip = 'ewww',
Callback = function(Value)
Evolution["FOV"]["Cam Lock"].Filled = Value
end
})
CamLockFOV:AddSlider('CamLock/FOV/Size', {
Text = 'Size',
Default = Evolution["FOV"]["Cam Lock"].Size,
Min = 1,
Max = 100,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["FOV"]["Cam Lock"].Size = Value
end
})
CamLockFOV:AddSlider('CamLock/FOV/Thickness', {
Text = 'Thickness',
Default = Evolution["FOV"]["Cam Lock"].Thickness,
Min = 1,
Max = 10,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["FOV"]["Cam Lock"].Thickness = Value
end
})
CamLockFOV:AddSlider('CamLock/FOV/Transparency', {
Text = 'Transparency',
Default = Evolution["FOV"]["Cam Lock"].Transparency,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true,
Callback = function(Value)
Evolution["FOV"]["Cam Lock"].Transparency = Value
end
})
CamLockFOV:SetupDependencies({
{ Toggles["CamLock/FOV/Visible"], true } -- We can also pass `false` if
we only want our features to show when the toggle is off!
});
-- // Global
Global:AddToggle('Global/AutoPrediction', {
Text = 'Auto Prediction',
Default = Evolution["Global"]["Auto Prediction"].Enabled ,
Tooltip = 'Uses ping based auto prediction.',
Callback = function(Value)
Evolution["Global"]["Auto Prediction"].Enabled = Value
end
})
Depbox:AddDropdown('Global/AutoPrediction/Version', {
Values = AutoPredVersions,
Default = Evolution["Global"]["Auto Prediction"]["Version"], -- number
index of the value / string
Multi = false, -- true / false, allows multiple choices to be selected
Text = 'Version',
Tooltip = 'Select a auto prediction mode', -- Information shown when
you hover over the dropdown
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Version"] = Value
end
})
Depbox:AddToggle('Global/AutoPrediction/SetupCustomPrediction', {
Text = 'Setup Custom prediction',
Default = false,
Tooltip = 'Set your custom prediction values.',
})
CustomValues:AddSlider('ping_20', {
Text = '20',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping20,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping20 =
Value
end
})
CustomValues:AddSlider('ping_30', {
Text = '30',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping30,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping30 =
Value
end
})
CustomValues:AddSlider('ping_40', {
Text = '40',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping40,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping40 =
Value
end
})
CustomValues:AddSlider('ping_50', {
Text = '50',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping50,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping50 =
Value
end
})
CustomValues:AddSlider('ping_60', {
Text = '60',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping60,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping60 =
Value
end
})
CustomValues:AddSlider('ping_70', {
Text = '70',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping70,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping70 =
Value
end
})
CustomValues:AddSlider('ping_80', {
Text = '80',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping80,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping80 =
Value
end
})
CustomValues:AddSlider('ping_90', {
Text = '90',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping90,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping90 =
Value
end
})
CustomValues:AddSlider('ping_100', {
Text = '100',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping100,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping100 =
Value
end
})
CustomValues:AddSlider('ping_110', {
Text = '110',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping110,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping110 =
Value
end
})
CustomValues:AddSlider('ping_120', {
Text = '120',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping120,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping120 =
Value
end
})
CustomValues:AddSlider('ping_130', {
Text = '130',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping130,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping130 =
Value
end
})
CustomValues:AddSlider('ping_140', {
Text = '140',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping140,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping140 =
Value
end
})
CustomValues:AddSlider('ping_150', {
Text = '150',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping150,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping150 =
Value
end
})
CustomValues:AddSlider('ping_160', {
Text = '160',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping160,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping160 =
Value
end
})
CustomValues:AddSlider('ping_170', {
Text = '170',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping170,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping170 =
Value
end
})
CustomValues:AddSlider('ping_180', {
Text = '180',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping180,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping180 =
Value
end
})
CustomValues:AddSlider('ping_190', {
Text = '190',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping190,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping190 =
Value
end
})
CustomValues:AddSlider('ping_200', {
Text = '200',
Default = Evolution["Global"]["Auto Prediction"]["Custom
Settings"].Ping200,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true, -- If set to true, then it will hide the label
Callback = function(Value)
Evolution["Global"]["Auto Prediction"]["Custom Settings"].Ping200 =
Value
end
})
CustomValues:AddDivider()
CustomValues:SetupDependencies({
{ Toggles["Global/AutoPrediction/SetupCustomPrediction"], true } -- We
can also pass `false` if we only want our features to show when the toggle is off!
});
Depbox:SetupDependencies({
{ Toggles["Global/AutoPrediction"], true } -- We can also pass `false`
if we only want our features to show when the toggle is off!
});
Global:AddToggle('Global/AntiGroundShots', {
Text = 'Anti Ground Shots',
Default = Evolution["Global"]["Anti Ground Shots"] ,
Tooltip = 'Will prevent you from shooting at the ground.',
Callback = function(Value)
Evolution["Global"]["Anti Ground Shots"] = Value
end
})
Global:AddToggle('Global/UnlockOnKO', {
Text = 'Unlock On KO',
Default = Evolution["Global"]["Unlock On KO"] ,
Tooltip = 'Unlocks when target is knocked.',
Callback = function(Value)
Evolution["Global"]["Unlock On KO"] = Value
end
})
Global:AddToggle('Global/UnlockOutSideFOV', {
Text = 'Unlock Outside FOV',
Default = Evolution["Global"]["Unlock Outside FOV"] ,
Tooltip = 'Unlocks when target goes outside your FOV.',
Callback = function(Value)
Evolution["Global"]["Unlock Outside FOV"] = Value
end
})
Global:AddToggle('Global/UnlockBehindWall', {
Text = 'Unlock Behind Wall',
Default = Evolution["Global"]["Unlock Behind Wall"] ,
Tooltip = 'Unlocks when target goes behind a wall',
Callback = function(Value)
Evolution["Global"]["Unlock Behind Wall"] = Value
end
})
-- // Checks
Checks:AddToggle('Checks/Whitelist', {
Text = 'Whitelist',
Default = Evolution["Checks"]["Whitelist"].Enabled ,
Tooltip = 'Will only lock onto people whitelisted',
Callback = function(Value)
Evolution["Checks"]["Whitelist"].Enabled = Value
end
})
Whitelist:AddDivider()
Whitelist:SetupDependencies({
{ Toggles["Checks/Whitelist"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
Checks:AddToggle('Checks/Blacklist', {
Text = 'Blacklist',
Default = Evolution["Checks"]["Blacklist"].Enabled ,
Tooltip = 'Will not lock onto people blacklisted',
Callback = function(Value)
Evolution["Checks"]["Blacklist"].Enabled = Value
end
})
Blacklist:AddDropdown('Checks/Blacklist/SelectPlayer', {
SpecialType = 'Player',
Multi = true,
Text = 'Blacklisted Players',
Tooltip = 'Select Targets', -- Information shown when you hover over
the dropdown
Callback = function(Value)
Evolution["Checks"]["Blacklist"].Usernames = Value
end
})
Blacklist:AddDivider()
Blacklist:SetupDependencies({
{ Toggles["Checks/Blacklist"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
Checks:AddToggle('Checks/Distance', {
Text = 'Distance',
Default = Evolution["Checks"]["Distance"].Enabled ,
Tooltip = 'Will not lock onto people who are too far away',
Callback = function(Value)
Evolution["Checks"]["Distance"].Enabled = Value
end
})
Distance:AddDivider()
Distance:SetupDependencies({
{ Toggles["Checks/Distance"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
Checks:AddToggle('Checks/Visible', {
Text = 'Visible',
Default = Evolution["Checks"]["Visible Check"] ,
Tooltip = 'Will not lock onto people who are behind a wall',
Callback = function(Value)
Evolution["Checks"]["Visible Check"] = Value
end
})
Checks:AddToggle('Checks/KO', {
Text = 'Knocked',
Default = Evolution["Checks"]["K.O Check"] ,
Tooltip = 'Will not lock onto people who are knocked',
Callback = function(Value)
Evolution["Checks"]["K.O Check"] = Value
end
})
Checks:AddToggle('Checks/Crew', {
Text = 'Crew',
Default = Evolution["Checks"]["Crew Check"] ,
Tooltip = 'Will not lock onto people who are in your crew',
Callback = function(Value)
Evolution["Checks"]["Crew Check"] = Value
end
})
Checks:AddToggle('Checks/Friend', {
Text = 'Friend',
Default = Evolution["Checks"]["Friend Check"] ,
Tooltip = 'Will not lock onto people who are your friends',
Callback = function(Value)
Evolution["Checks"]["Friend Check"] = Value
end
})
local Resolver = Tabs.Main:AddRightGroupbox('Resolver')
Resolver:AddToggle('Resolver/Enabled', {
Text = 'Enabled',
Default = Evolution["Resolver"].Enabled ,
Tooltip = 'Will toggle resolver.',
Callback = function(Value)
Evolution["Resolver"].Enabled = Value
end
}):AddKeyPicker('Resolver/ToggleBind', {
Default = Evolution.Resolver.Keybind,
SyncToggleState = true,
Mode = 'Toggle',
Text = 'Resolver',
NoUI = false,
})
Resolver:AddDropdown('Resolver/Method', {
Values = { 'Delta', 'Move Direction' ,'No Prediction', 'Recalculate' },
Default = Evolution["Resolver"]["Method"], -- number index of the value
/ string
Multi = false, -- true / false, allows multiple choices to be selected
Text = 'Method',
Tooltip = 'Select a resolving method.', -- Information shown when you
hover over the dropdown
Callback = function(Value)
Evolution["Resolver"]["Method"] = Value
end
})
Airshot:AddToggle('Airshot/Enabled', {
Text = 'Enable Airshot',
Default = Evolution["Airshot"].Enabled ,
Tooltip = 'Will change your target offset if player is in air',
Callback = function(Value)
Evolution["Airshot"].Enabled = Value
end
})
ssss:AddSlider('Airshot/JumpOffset', {
Text = 'Offset',
Default = Evolution["Airshot"]["Jump Offset"],
Min = -5,
Max = 5,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Airshot"]["Jump Offset"] = Value
end
})
ssss:AddDivider()
ssss:SetupDependencies({
{ Toggles["Airshot/Enabled"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
Airshot:AddToggle('Airshot/CamlockSmoothness', {
Text = 'Enable Camlock Smoothness',
Default = Evolution["Airshot"]["Cam Lock Smoothness"].Enabled ,
Tooltip = 'Will change your camlock smoothness if target is in air',
Callback = function(Value)
Evolution["Airshot"]["Cam Lock Smoothness"].Enabled = Value
end
})
SMoothing:AddSlider('CamLock/SmoothV2', {
Text = 'Value',
Default = Evolution["Airshot"]["Cam Lock Smoothness"]["New
Smoothness"],
Min = 0,
Max = 1,
Rounding = 10,
Compact = true,
Callback = function(Value)
Evolution["Airshot"]["Cam Lock Smoothness"]["New Smoothness"] =
Value
end
})
SMoothing:AddDivider()
SMoothing:SetupDependencies({
{ Toggles["Airshot/CamlockSmoothness"], true } -- We can also pass
`false` if we only want our features to show when the toggle is off!
});
Visuals:AddToggle('HitSound/Enabled', {
Text = 'Hit Sound',
Default = Evolution["Hit Sound"].Enabled ,
Tooltip = 'Will play sound when you hit target',
Callback = function(Value)
Evolution["Hit Sound"].Enabled = Value
end
})
HitSound:AddSlider('HitSound/Volume', {
Text = 'Volume',
Default = Evolution["Hit Sound"].Volume * 10,
Min = 1,
Max = 100,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Hit Sound"].Volume = Value / 10
end
})
HitSound:AddDropdown('HitSound/Sound', {
Values = hitSoundsNames,
Default = Evolution["Hit Sound"]["Hit Sound"], -- number index of the
value / string
Multi = false, -- true / false, allows multiple choices to be selected
Text = 'Sound',
Tooltip = 'Select a sound to play', -- Information shown when you hover
over the dropdown
Callback = function(Value)
Evolution["Hit Sound"]["Hit Sound"] = Value
end
})
HitSound:AddDivider()
HitSound:SetupDependencies({
{ Toggles["HitSound/Enabled"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
Visuals:AddToggle('HitLogs/Enabled', {
Text = 'Hit Logs',
Default = Evolution["Hit Logs"].Enabled ,
Tooltip = 'Logs when you hit a player',
Callback = function(Value)
Evolution["Hit Logs"].Enabled = Value
end
})
-- Extra Tab
Misc:AddToggle('Macro/Enabled', {
Text = 'Macro',
Default = Evolution["Macro"].Enabled ,
Tooltip = 'Lua based Macro',
Callback = function(Value)
Evolution["Macro"].Enabled = Value
end
}):AddKeyPicker('Macro/Bind', {
Default = Evolution["Macro"]["Bind"],
SyncToggleState = false,
Mode = 'Always',
Text = 'Macro',
NoUI = false,
ChangedCallback = function(New)
Evolution["Macro"]["Bind"] = KeyCodeToString(New)
end
})
MacroSets:AddToggle('Macro/Abuse', {
Text = 'Abuse',
Default = Evolution["Macro"].Abuse ,
Tooltip = 'Use scroll wheel to macro',
Callback = function(Value)
Evolution["Macro"].Abuse = Value
end
})
MacroSets:AddSlider('Macro/Speed', {
Text = 'Speed',
Default = Evolution["Macro"].Speed,
Min = 0,
Max = 1,
Rounding = 3,
Compact = true,
Callback = function(Value)
Evolution["Macro"].Speed = Value
end
})
MacroSets:AddDivider()
MacroSets:SetupDependencies({
{ Toggles["Macro/Enabled"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
Misc:AddToggle('MemorySpoofer/Enabled', {
Text = 'Memory Spoofer',
Default = Evolution["Spoofer"].Memory.Enabled ,
Tooltip = 'Spoofs your memory',
Callback = function(Value)
Evolution["Spoofer"].Memory.Enabled = Value
end
})
SpooferSets:AddSlider('MemorySpoofer/Min', {
Text = 'Minimum',
Default = Evolution["Spoofer"].Memory.Min,
Min = 500,
Max = 2000,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Spoofer"].Memory.Min = Value
end
})
SpooferSets:AddSlider('MemorySpoofer/Max', {
Text = 'Maximum',
Default = Evolution["Spoofer"].Memory.Max,
Min = 500,
Max = 2000,
Rounding = 1,
Compact = true,
Callback = function(Value)
Evolution["Spoofer"].Memory.Max = Value
end
})
SpooferSets:AddDivider()
SpooferSets:SetupDependencies({
{ Toggles["MemorySpoofer/Enabled"], true } -- We can also pass `false`
if we only want our features to show when the toggle is off!
});
Misc:AddToggle('FakeSpike/Enabled', {
Text = 'Fake Spike',
Default = Evolution["Fake Spike"].Enabled ,
Tooltip = 'Spikes your ping to make it look like your lagging',
Callback = function(Value)
Evolution["Fake Spike"].Enabled = Value
end
}):AddKeyPicker('FakeSpike/Bind', {
Default = Evolution["Fake Spike"]["Bind"],
SyncToggleState = false,
Mode = 'Always',
Spike:AddSlider('FakeSpike/Duration', {
Text = 'Duration',
Default = Evolution["Fake Spike"]["Duration"],
Min = 0.1,
Max = 3,
Rounding = 2,
Compact = true,
Callback = function(Value)
Evolution["Fake Spike"]["Duration"] = Value
end
})
Spike:AddDivider()
Spike:SetupDependencies({
{ Toggles["FakeSpike/Enabled"], true } -- We can also pass `false` if
we only want our features to show when the toggle is off!
});
Misc:AddToggle('Panic/Enabled', {
Text = 'Panic',
Default = Evolution["Panic"].Enabled ,
Tooltip = 'Will disable everything when your press keybind',
Callback = function(Value)
Evolution["Panic"].Enabled = Value
end
}):AddKeyPicker('Panic/Bind', {
Default = Evolution["Panic"]["Bind"],
SyncToggleState = false,
Mode = 'Always',
Text = 'Panic',
NoUI = false,
ChangedCallback = function(New)
Evolution["Panic"]["Bind"] = KeyCodeToString(New)
end
})
PanicMode:AddToggle('Panic/Options', {
Text = 'Options',
Default = Evolution["Panic"]["Things To Disable"].Options ,
Callback = function(Value)
Evolution["Panic"]["Things To Disable"].Options = Value
end
})
PanicMode:AddToggle('Panic/Aiming', {
Text = 'Aiming',
Default = Evolution["Panic"]["Things To Disable"].Aiming ,
Callback = function(Value)
Evolution["Panic"]["Things To Disable"].Aiming = Value
end
})
PanicMode:AddToggle('Panic/FOV', {
Text = 'FOV',
Default = Evolution["Panic"]["Things To Disable"].FOV ,
Callback = function(Value)
Evolution["Panic"]["Things To Disable"].FOV = Value
end
})
PanicMode:AddToggle('Panic/Misc', {
Text = 'Misc',
Default = Evolution["Panic"]["Things To Disable"].Misc ,
Callback = function(Value)
Evolution["Panic"]["Things To Disable"].Misc = Value
end
})
PanicMode:AddToggle('Panic/Emotes', {
Text = 'Emotes',
Default = Evolution["Panic"]["Things To Disable"].Emotes ,
Callback = function(Value)
Evolution["Panic"]["Things To Disable"].Emotes = Value
end
})
PanicMode:AddDivider()
PanicMode:SetupDependencies({
{ Toggles["Panic/Enabled"], true } -- We can also pass `false` if we
only want our features to show when the toggle is off!
});
Misc:AddToggle('GunSorting/Enabled', {
Text = 'Gun Sorting',
Default = Evolution["Gun Sorting"].Enabled ,
Tooltip = 'Sorts your guns in your hotbar (must set in table)',
Callback = function(Value)
Evolution["Gun Sorting"].Enabled = Value
end
}):AddKeyPicker('GunSorting/Bind', {
Default = Evolution["Gun Sorting"]["Bind"],
SyncToggleState = false,
Mode = 'Always',
Sort:AddToggle('GunSorting/Delete', {
Text = 'Delete Extra',
Default = Evolution["Gun Sorting"]["Delete Extra"] ,
Tooltip = 'Deletes unsorted items from your inventory',
Callback = function(Value)
Evolution["Gun Sorting"]["Delete Extra"] = Value
end
})
Sort:AddDivider()
Sort:SetupDependencies({
{ Toggles["GunSorting/Enabled"], true } -- We can also pass `false` if
we only want our features to show when the toggle is off!
});
ESP:AddToggle('Esp/Enabled', {
Text = 'Enabled',
Default = Evolution["ESP"].Enabled ,
Callback = function(Value)
Evolution["ESP"].Enabled = Value
end
})
ESP:AddSlider('ESP/MAXDISTANCE', {
Text = 'Max Distance',
Default = Evolution.ESP["Max Distance"],
Min = 1,
Max = 1000,
Rounding = 0,
Compact = true,
Callback = function(Value)
Evolution.ESP["Max Distance"] = Value
end
})
ESP:AddToggle('Esp/Names', {
Text = 'Names',
Default = Evolution["ESP"].Name.Enabled ,
Callback = function(Value)
Evolution["ESP"].Name.Enabled = Value
end
}):AddColorPicker('NameColor', {
Default = Evolution["ESP"].Name.Color,
Title = 'Name Color',
Transparency = nil,
Callback = function(Value)
Evolution["ESP"].Name.Color = Value
end
})
ESP:AddToggle('Esp/Names/Outline', {
Text = 'Name Outline',
Default = Evolution["ESP"].Name.Outline ,
Callback = function(Value)
Evolution["ESP"].Name.Outline = Value
end
})
ESP:AddToggle('Esp/Box', {
Text = 'Box',
Default = Evolution["ESP"].Box.Enabled ,
Callback = function(Value)
Evolution["ESP"].Box.Enabled = Value
end
}):AddColorPicker('BoxColor', {
Default = Evolution["ESP"].Box.Color,
Title = 'Box Color',
Transparency = nil,
Callback = function(Value)
Evolution["ESP"].Box.Color = Value
end
})
ESP:AddToggle('Esp/Names/Outline', {
Text = 'Box Outline',
Default = Evolution["ESP"].Box.Outline ,
Callback = function(Value)
Evolution["ESP"].Box.Outline = Value
end
})
ESP:AddToggle('Esp/Health', {
Text = 'Health Bar',
Default = Evolution["ESP"]["Health Bar"].Enabled ,
Callback = function(Value)
Evolution["ESP"]["Health Bar"].Enabled = Value
end
}):AddColorPicker('HealthColor', {
Default = Evolution["ESP"]["Health Bar"].Color,
Title = 'Health Bar Color',
Transparency = nil,
Callback = function(Value)
Evolution["ESP"]["Health Bar"].Color = Value
end
})
ESP:AddToggle('Esp/Health/Outline', {
Text = 'Health Bar Outline',
Default = Evolution["ESP"]["Health Bar"].Outline ,
Callback = function(Value)
Evolution["ESP"]["Health Bar"].Outline = Value
end
})
ESP:AddToggle('Esp/Distance', {
Text = 'Distance',
Default = Evolution["ESP"].Distance.Enabled ,
Callback = function(Value)
Evolution["ESP"].Distance.Enabled = Value
end
}):AddColorPicker('DistanceColor', {
Default = Evolution["ESP"].Distance.Color,
Title = 'Distance Color',
Transparency = nil,
Callback = function(Value)
Evolution["ESP"].Distance.Color = Value
end
})
ESP:AddToggle('Esp/Distance/Outline', {
Text = 'Distance Outline',
Default = Evolution["ESP"].Distance.Outline ,
Callback = function(Value)
Evolution["ESP"].Distance.Outline = Value
end
})
-- UI Settings
Library:SetWatermark('Evolution | '..tostring(os.date("%B") .. " " ..
os.date("%d") .. " " .. os.date("%Y")).." | "..utility.Version)
Library:SetWatermarkVisibility(false)
local MenuGroup = Tabs['UI Settings']:AddLeftGroupbox('Menu')
local MenuGroup2 = Tabs['UI Settings']:AddRightGroupbox('More Settings')
MenuGroup:AddButton('Unload', function() Library:Unload() end)
MenuGroup:AddLabel('Menu bind'):AddKeyPicker('MenuKeybind', { Default =
Evolution["Options"]["Internal"].Bind, NoUI = true, Text = 'Menu keybind' })
MenuGroup2:AddToggle('togglekeybindmenu', {
Text = 'Keybind Menu',
Default = false,
Callback = function(V)
Library.KeybindFrame.Visible = Toggles.togglekeybindmenu.Value
end
})
MenuGroup2:AddToggle('show_stats', {
Text = 'Show Stats',
Default = Evolution["Options"]["Stats"],
Callback = function(V)
Evolution["Options"]["Stats"] = V
end
})
MenuGroup2:AddToggle('allow_notifications', {
Text = 'Allow Notifications',
Default = Evolution["Options"]["Allow Notifications"],
Callback = function(V)
Evolution["Options"]["Allow Notifications"] = V
end
})
MenuGroup2:AddDropdown('notification_mode', {
Values = NotificationTypes,
Default = Evolution.Options["Notifcation Type"], -- number index of the
value / string
Multi = false, -- true / false, allows multiple choices to be selected
Text = 'Type',
Tooltip = 'Select a notification type', -- Information shown when you
hover over the dropdown
Callback = function(Value)
Evolution.Options["Notifcation Type"] = Value
end
})
MenuGroup2:AddToggle('togglewatermark', {
Text = 'Watermark',
Default = false,
Callback = function(V)
Library:SetWatermarkVisibility(Toggles.togglewatermark.Value)
end
})
Library.ToggleKeybind = Options.MenuKeybind
ThemeManager:SetLibrary(Library)
SaveManager:SetLibrary(Library)
SaveManager:IgnoreThemeSettings()
SaveManager:BuildConfigSection(Tabs['UI Settings'])
ThemeManager:ApplyToTab(Tabs['UI Settings'])
SaveManager:LoadAutoloadConfig()
if game:GetService("UserInputService").TouchEnabled then
task.spawn(function()
local EvolutionMobileButton = Instance.new("ScreenGui")
local Icon = Instance.new("Frame")
local IconButton = Instance.new("TextButton")
local IconImage = Instance.new("ImageLabel")
local IconCorner = Instance.new("UICorner")
EvolutionMobileButton.Name = "EvolutionMobileButton"
EvolutionMobileButton.IgnoreGuiInset = true
EvolutionMobileButton.Parent = game.CoreGui
EvolutionMobileButton.DisplayOrder = 10
EvolutionMobileButton.ResetOnSpawn = false
Icon.Name = "Icon"
Icon.Parent = EvolutionMobileButton
Icon.BackgroundTransparency = 1.000
Icon.LayoutOrder = 1
Icon.Position = UDim2.new(0, 104, 0, 4)
Icon.Size = UDim2.new(0, 32, 0, 32)
IconButton.Name = "IconButton"
IconButton.Parent = Icon
IconButton.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
IconButton.BackgroundTransparency = 0.500
IconButton.BorderSizePixel = 0
IconButton.Size = UDim2.new(1, 0, 1, 0)
IconButton.ZIndex = 10
IconButton.AutoButtonColor = false
IconButton.Text = ""
IconImage.Name = "IconImage"
IconImage.Parent = IconButton
IconImage.AnchorPoint = Vector2.new(0.5, 0.5)
IconImage.BackgroundTransparency = 1.000
IconImage.Position = UDim2.new(0.5, 0, 0.5, 0)
IconImage.Size = UDim2.new(0, 20, 0.629999995, 0)
IconImage.ZIndex = 11
IconImage.Image = "rbxassetid://14270853092"
IconImage.ScaleType = Enum.ScaleType.Fit
IconCorner.CornerRadius = UDim.new(0.25, 0)
IconCorner.Name = "IconCorner"
IconCorner.Parent = IconButton
IconButton.MouseButton1Down:Connect(function()
game:GetService("VirtualInputManager"):SendKeyEvent(true,
string.upper(Evolution["Options"]["Internal UI Bind"]) , false , game)
end)
end)
end
end
end