Professional Documents
Culture Documents
Message 100
Message 100
--------------------------------
getgenv().Void =
{
Aiming =
{
-- Silentbot
Silentbot =
{
Strafe = {
Enabled = true;
Offset = {
X = 0;
Y = 0;
Z = 0;
};
Do360 = true; -- If enabled, the x offset won't be taken in usage.
Speed = 5;
}; -- If enabled, whenever you press the target strafe keybind, it will
strafe them
Distances = {
Far = 85;
Mid = 45;
Close = 25;
}; -- Later used for advanced pred (each number key from this table is
gonna be a magnitude comparision)
-- Aiming & Finding method
Finding = 0;
Hitting = 0;
-- Targetting
FOV = {
Enabled = true;
-- Circle --
Circle = true; -- Show circle or not, FOV still can be used
without, since it will modify the radius
Radius = 120; -- This will be used in the get nearest function
Color = Color3.fromRGB(174, 65, 92);
------------
-- Rainbow --
Rainbow = true; -- Rainbow color
RainbowSpeed = 0.025; -- Rainbow Speed
------------
Filled = false;
NumSides = 1024;
Thickness = 1;
------------
-- Misc
Tracer = true; -- Use tracer (Drawing.new('Line'); .From, .To
(thanks to drawing lib for the calculations))
TracerColor = Color3.fromRGB(200, 46, 71);
TracerThickness = 1.5;
------------
-- Rainbow --
RainbowTracer = true; -- Rainbow color
------------
}; -- FOV
Prediction = {
Automatic = {
Enabled = false;
Mode = 'Advanced'; -- Advanced / Unadvanced (advanced = uses
pred generator that is accurate / unadvanced = just uses ping based sets and sets
their value as the pred)
Sets = {
[30] = 0.11;
[40] = 0.1256;
[50] = 0.112;
[60] = 0.1335;
[70] = 0.131;
[80] = 0.132;
[90] = 0.136;
[105] = 0.138;
[110] = 0.146;
[120] = 0.149;
[130] = 0.151;
[140] = 0.153;
}; -- Add ur ping sets in here
};
Enabled = true;
Amount = 0.1804;
};
-- Misc
BasePart = 'HumanoidRootPart'; -- If Hitting == 3 then it will target
this part inside their character
RotateChar = false; -- Rotate your character to their pos as ur
silenting on them (can fling you)
AutomaticResolver = true; -- If they get detected for using anti, turn
on a resolver
ResolverMethod = 'v4'; -- v1: MoveDirection ; v2: LookVector ; v3: 0
pred ; v4: Delta
Resolver = {
AutomaticPred = false; -- Will detect what resolver is being used
and generate a random input from the suggested values (e.g: movedirection (between
1.2 and 2))
-- Predictions
MoveDirection = 1.35;
LookVector = 1.25;
Delta = 3.25;
};
HitChance = {
Enabled = false;
Chance = 60;
Intensity = 1.25; -- Higher = more chance to hit; Lower = less
chance to hit
};
Miss = {
Enabled = false;
Chance = 50;
Intensity = {
-- Vectors
X = {
0.25;
0.85;
};
Y = {
0.15;
1.35;
};
Z = {
0.50;
1;
};
}; -- Miss Intensity
}; -- Beta
};
-- Aimbot
Aimbot = {
Distances = {
Far = 55;
Mid = 25;
Close = 15;
}; -- Later used for advanced pred (each number key from this table is
gonna be a magnitude comparision)
-- Aiming & Finding method
Finding = 0;
Hitting = 0;
-- Targetting
FOV = {
Enabled = true;
-- Circle --
Circle = true; -- Show circle or not, FOV still can be used
without, since it will modify the radius
Radius = 180; -- This will be used in the get nearest function
Color = Color3.fromRGB(255, 0, 0);
------------
-- Rainbow --
Rainbow = false; -- Rainbow color
RainbowSpeed = 0.025; -- Rainbow Speed
------------
Filled = false;
NumSides = 1024;
Thickness = 1;
------------
------------
}; -- FOV
Prediction = {
Automatic = {
Enabled = false;
Mode = 'Advanced'; -- Advanced / Unadvanced (advanced = uses
pred generator that is accurate / unadvanced = just uses ping based sets and sets
their value as the pred)
Sets = {
[30] = 0.11;
[40] = 0.1256;
[50] = 0.112;
[60] = 0.1335;
[70] = 0.131;
[80] = 0.132;
[90] = 0.136;
[105] = 0.138;
[110] = 0.146;
[120] = 0.149;
[130] = 0.151;
[140] = 0.153;
}; -- Add ur ping sets in here
};
Enabled = true;
Amount = 0.1859;
};
-- Misc
BasePart = 'HumanoidRootPart'; -- If Hitting == 3 then it will target
this part inside their character
RotateChar = false; -- Rotate your character to their pos as ur locking
on them (can fling you)
AutomaticResolver = false; -- If they get detected for using anti, turn
on a resolver
ResolverMethod = 'v2'; -- v1: MoveDirection ; v2: LookVector ; v3: 0
pred ; v4: Delta
Resolver = {
AutomaticPred = false; -- Will detect what resolver is being used
and generate a random input from the suggested values (e.g: movedirection (between
1.2 and 2))
-- Predictions
MoveDirection = 1.35;
LookVector = 1.25;
Delta = 3.25;
};
Shake = {
Enabled = false;
X =
{
Random =
{
0.2;
1.2;
};
};
Y =
{
Random =
{
0.2;
0.5;
};
};
Z =
{
Random =
{
0.4;
0.85;
};
};
};
Smoothness = {
Enabled = false;
Amount = 0.1246;
--------------------
EasingStyle = 'Sine'; -- Linear, Sine, Back, Quad, Quart, Quint,
Bounce, Elastic, Exponential, Circular, Cubic
[https://create.roblox.com/docs/reference/engine/enums/EasingStyle,
https://prod.docsiteassets.roblox.com/assets/legacy/EasingStyles.jpg]
EasingDirection = 'InOut'; -- In, Out, InOut
[https://create.roblox.com/docs/reference/engine/enums/EasingDirection]
};
};
Triggerbot = {
Prediction = {
Enabled = true; -- If not enabled it will be like theother shit
triggerbots xD
Amount = 20; -- Keep it between 10 - 20 (if you don't want it
shooting idk where)
-- Pred method --
Method = 0; -- 0 = most accurate | 1 = less accurate | 2 = beta not
finished
};
Delay = {
Enabled = false;
Delay = 500; -- Miliseconds (formula: Delay.Delay / 1000)
};
Radius = {
Enabled = true;
Amount = 40;
}; -- yeah im not adding a fov fuck you dude
HitParts = true; -- If table then : Table of what parts it can hit |
If boolean and boolean := true all hit parts
-- Misc
Mode = 'Legit'; -- Uses mouse1click if mode is legit, else uses
mouse1press & mouse1release (more blatant)
};
};
Global =
{
Whitelisted = {
math.randomseed(os.time());
-------------------------------------------
if not isfolder('void') then
makefolder('void');
end;
if not isfolder('void/assets') then
makefolder('void/assets');
end;
ASSETS = {
['void/assets/logo.png'] =
game:HttpGet('https://raw.githubusercontent.com/chicagogrimreaper/void/main/
logo.png');
['void/assets/logo2.png'] =
game:HttpGet('https://raw.githubusercontent.com/chicagogrimreaper/void/main/
logo2.png');
};
for index, asset in pairs(ASSETS) do
writefile(index, asset);
end;
-- Table globals
VOID_CONTRIBUTORS =
loadstring(game:HttpGet('https://raw.githubusercontent.com/chicagogrimreaper/void/
main/Admins.lua'))();
}; -- ALL COROUTINES (most of them are loops so it doesn't stop the execution
of code and can run further with no problems :D)
Booleans = {
Lock = false;
Silent = false;
Macro = false;
Triggerbot = false;
Strafe = false;
};
Data = {
Lock_Target = nil;
Silent_Target = nil;
Trigger_Target = nil;
};
Assets = {};
GameAssets = {
Logo = getcustomasset('void/assets/logo.png');
Logo2 = getcustomasset('void/assets/logo2.png');
};
WatermarkAssets = {
[0] =
[[
____ ____ .__ .___ __________ ___.
|_ _| |_ _| (_) | ] |_ __ \ [ |
`MA ,V MM MM `MM. MM
8b d8 88 88 88888888ba
88
`8b d8' "" 88 88 "8b
88
`8b d8' 88 88 ,8P
88
`8b d8' ,adPPYba, 88 ,adPPYb,88 88aaaaaa8P' ,adPPYba,
88,dPPYba, ,adPPYba, 8b,dPPYba, 8b,dPPYba,
`8b d8' a8" "8a 88 a8" `Y88 88""""88' a8P_____88
88P' "8a a8" "8a 88P' "Y8 88P' `"8a
`8b d8' 8b d8 88 8b 88 88 `8b 8PP"""""""
88 d8 8b d8 88 88 88
`888' "8a, ,a8" 88 "8a, ,d88 88 `8b "8b, ,aa
88b, ,a8" "8a, ,a8" 88 88 88
`8' `"YbbdP"' 88 `"8bbdP"Y8 88 `8b `"Ybbd8"'
8Y"Ybbd8"' `"YbbdP"' 88 88 88
]];
[12] =
[[
d8, d8b d8b
d88 88b
?88 d8P d8888b 88b d888888 88bd88b d8888b 888888b d8888b 88bd88b
88bd88b
d88 d8P'd8P' ?88 88Pd8P' ?88 88P' `d8b_,dP 88P `?8bd8P' ?88 88P' `
88P' ?8b
?8b ,88' 88b d88 d88 88b ,88b d88 88b d88, d8888b d88 d88 d88
88P
`?888P' `?8888P'd88' `?88P'`88b d88' `?888P'd88'`?88P'`?8888P'd88' d88'
88b
]];
[13] =
[[
.##.....##..#######..####.########.....########..########.########.
..#######..########..##....##
.##.....##.##.....##..##..##.....##....##.....##.##.......##.....##
.##.....##.##.....##.###...##
.##.....##.##.....##..##..##.....##....##.....##.##.......##.....##
.##.....##.##.....##.####..##
.##.....##.##.....##..##..##.....##....########..######...########.
.##.....##.########..##.##.##
..##...##..##.....##..##..##.....##....##...##...##.......##.....##
.##.....##.##...##...##..####
...##.##...##.....##..##..##.....##....##....##..##.......##.....##
.##.....##.##....##..##...###
....###.....#######..####.########.....##.....##.########.########.
..#######..##.....##.##....##
]];
[14] =
[[
db db .d88b. d888888b d8888b. d8888b. d88888b
d8888b. .d88b. d8888b. d8b db
88 88 .8P Y8. `88' 88 `8D 88 `8D 88' 88 `8D .8P
Y8. 88 `8D 888o 88
Y8 8P 88 88 88 88 88 88oobY' 88ooooo 88oooY' 88
88 88oobY' 88V8o 88
`8b d8' 88 88 88 88 88 88`8b 88~~~~~ 88~~~b. 88
88 88`8b 88 V8o88
`8bd8' `8b d8' .88. 88 .8D 88 `88. 88. 88 8D `8b
d8' 88 `88. 88 V888
YP `Y88P' Y888888P Y8888D' 88 YD Y88888P Y8888P'
`Y88P' 88 YD VP V8P
]];
[15] =
[[
V V d RRRR b
V V ii d R R b
V V ooo ddd RRRR eee bbb ooo rrr nnn
V V o o ii d d R R e e b b o o r n n
V ooo ii ddd R RR ee bbb ooo r n n
]];
[16] =
[[
::: ::: :::::::: ::::::::::: ::::::::: ::::::::: :::
::::::: ::::::::: :::::::: ::::::::: :::: :::
:+: :+: :+: :+: :+: :+: :+: :+: :+: :+:
:+: :+: :+: :+: :+: :+: :+:+: :+:
+:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+ +:+
+:+ +:+ +:+ +:+ +:+ +:+ :+:+:+ +:+
+#+ +:+ +#+ +:+ +#+ +#+ +:+ +#++:++#: +#++:
++# +#++:++#+ +#+ +:+ +#++:++#: +#+ +:+ +#+
+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+
+#+ +#+ +#+ +#+ +#+ +#+ +#+ +#+#+#
#+#+#+# #+# #+# #+# #+# #+# #+# #+# #+#
#+# #+# #+# #+# #+# #+# #+# #+#+#
### ######## ########### ######### ### ###
########## ######### ######## ### ### ### ####
]];
[17] =
[[
d b sSSSs d d ss d ss. d sss d ss. sSSSs d
ss. d s b
S S S S S S ~o S b S S b S S S
b S S S
S S S S S S b S P S S P S S S
P S SS
S S S S S S S S sS' S sSSs S sSS' S S S
sS' S S
S S S S S S P S S S S b S S S
S S S
S S S S S S S S S S S P S S S
S S S
"ssS "sss" P P ss" P P P sSSss P `SS "sss" P
P P P
]];
[18] =
[[
______ ____ ____
______
`. .' .~ ~. | |``````. |`````````, |
| ~. .~ ~. |`````````, |.. |
`. .' | | | | | |'''|''''' |______
|____.'_ | | |'''|''''' | ``.. |
`. .' | | | | | | `. |
| ~. | | | `. | ``.. |
`.' `.______.' | |......' | `. |
___________ |_______.' `.______.' | `. | ``|
]];
[19] =
[[
________ ________ ________ _______ _______ ________
________ ________ ________ ________
/ / \/ \ / \_/ \ // \/ \/
/ / \/ \/ / \
/ / /_/ // / // / /
\/ / / /
\ / // / / / _/ _/
/ / _/ /
\\_____/\________/ \________/\________/ \____/___/\________/\
________/\________/\____/___/\__/_____/
]];
[20] =
[[
/$$ /$$ /$$ /$$ /$$$$$$$ /$$
| $$ | $$ |__/ | $$ | $$__ $$ | $$
$$ | $$ | \__| $$ | $$ __$$\ $$ |
| \ | \ | \ | \ | \ | \
/ | / | / | / | / \ / |
function writer.new()
local self = setmetatable({}, writer)
self.indent = 0
self.text = ''
return self
end
function writer:writeIndentation()
for i = 1, self.indent do
self.text = self.text .. "\t"
end
end
function writer:write(text)
self.text = self.text .. text
end
function writer:writeLine(text)
self.text = self.text .. text .. "\n"
end
function writer:writeIndent(text)
self:writeIndentation()
self:write(text)
end
function writer:writeLineIndent(text)
self:writeIndentation()
self:writeLine(text)
end
function writer:incIndent()
self.indent = self.indent + 1
end
function writer:unindent()
self.indent = self.indent - 1
end
-- WRITER --
-- TABLE DUMPER --
local td = {}
td.__index = td
function td.new(tab)
local self = setmetatable({}, td)
self.writer = writer.new()
self.ot = tab
self.memory = {}
self.visitedTables = {}
return self
end
function td:cacheGlobalMemory()
local currentTrack = {'_G'}
local function internalCount(t) local c = 0 for _,__ in pairs(t) do c = c +
1 end return c end
internalCache(_G)
end
function td:resolve()
self:cacheGlobalMemory()
local internalResolve
local function internalResolveSpecial(value)
if value == _G then return '_G' end
if self.memory[value] then return self.memory[value] end
if type(value) == 'table' then
if self.visitedTables[value] ~= nil then
if self.visitedTables[value] == true then return "{...}" end
return self.visitedTables
end
internalResolve(value)
return ''
end
return tostring(value)
end
function td:toString()
self:resolve()
return self.writer:toString()
end
return td.new(t):toString();
end);
-------------------------------------------
-- Settings Handler --
if (getgenv().Void.Misc.Settings.Legit.NoBulletDelay == true) then
pcall(LPH_NO_VIRTUALIZE(function()
CorePackages.Packages:Destroy();
end));
end;
if (getgenv().Void.Misc.Settings.Blatant.AntiMacroFling == true) then
if (Players.LocalPlayer ~= nil and Players.LocalPlayer.Character ~= nil and
Players.LocalPlayer.Character.PrimaryPart ~= nil) then
table.insert(VOID_CONSTRUCTORS.Connections.Misc,
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function()
pcall(LPH_NO_VIRTUALIZE(function()
local OldVelocity =
Players.LocalPlayer.Character.PrimaryPart.Velocity;
-------------------------------------------
Players.LocalPlayer.Character.PrimaryPart.Velocity = Vector3.new(0,
0, 0);
-------------------------------------------
RunService.RenderStepped:Wait();
-------------------------------------------
Players.LocalPlayer.Character.PrimaryPart.Velocity = OldVelocity;
end));
end)));
end;
end;
if (getgenv().Void.Misc.Settings.Legit.LowGFX == true) then
coroutine.wrap(LPH_NO_VIRTUALIZE(function()
for idx, instance in ipairs(workspace:GetDescendants()) do
if instance:IsA('BasePart') or instance:IsA('Part') or
instance:IsA('SpawnLocation') or instance:IsA('WedgePart') or
instance:IsA('Terrain') or instance:IsA('MeshPart') or instance:IsA('Union') or
instance:IsA('TrussPart') or instance:IsA('CornerWedgePart') then
instance.Material = Enum.Material.SmoothPlastic;
end;
if instance:IsA('Texture') or instance:IsA('Decal') then
instance:Destroy();
end;
if instance:IsA('Trail') or instance:IsA('ParticleEmitter') then
instance.Lifetime = NumberRange.new(0);
end;
if instance:IsA('Explosion') then
instance.BlastPressure = 0.5;
instance.BlastRadius = 0.5;
end;
if instance:IsA('Spotlight') or instance:IsA('Sparkles') or
instance:IsA('Smoke') or instance:IsA('Fire') then
instance.Enabled = false;
end;
task.wait(); -- Reduce hard lag on startup if low gfx is enabled
end;
for idx, instance in ipairs(Lighting:GetChildren()) do
if instance:IsA('SunRaysEffect') or
instance:IsA('ColorCorrectionEffect') or instance:IsA('BloomEffect') then
instance.Enabled = false;
end;
end;
-- Terrain --
workspace.Terrain.WaterWaveSize = 0;
workspace.Terrain.WaterWaveSpeed = 0;
workspace.Terrain.WaterReflectance = 0;
workspace.Terrain.Brightness = 0;
workspace.Terrain.WaterTransparency = 0;
workspace.Terrain.GlobalShadows = false;
workspace.Terrain.FogEnd = 9e9;
pcall(LPH_NO_VIRTUALIZE(function()
sethiddenproperty(Lighting, 'Technology',
Enum.Technology.Compatibility);
end));
-- Misc --
settings().Rendering.QualityLevel = 'Level01'; -- Set to lowest
end))();
end;
-------------------------------------------
-------------------------------------------
-- Misc Functions --
-------------------------------------------
-- Advanced Pred Func --
local AdvancedPred = LPH_NO_VIRTUALIZE(function(Ping, Range)
local cache_prediction = 0;
if string.lower(tostring(Range)) == 'far' then
cache_prediction += 0.1 + (Ping / 1250) * 1.05 + ((Ping / 1000) * (Ping /
1500) * 1.040);
elseif string.lower(tostring(Range)) == 'mid' then
cache_prediction += 0.1 + (Ping / 2000) + ((Ping / 1000) * (Ping / 1500) *
1.025);
elseif string.lower(tostring(Range)) == 'close' then
cache_prediction += 0.1 + (Ping / 2500) * 0.95 + ((Ping / 1000) * (Ping /
1500) * 0.95);
end
return cache_prediction;
end);
-------------------------------------------
-- Intro Loader --
local LoadIntro = LPH_NO_VIRTUALIZE(function(Type)
if tostring(Type):lower() == 'game' then
coroutine.wrap(LPH_NO_VIRTUALIZE(function()
VOID_CONSTRUCTORS.GameAssets.Intro = {
Blur = Instance.new('BlurEffect', Lighting);
GUI = Instance.new('ScreenGui', CoreGui);
};
-------------------------------------------
local Start = tick();
coroutine.wrap(function()
while (true) and (getgenv().Void) do
local ElapsedTime = tick() - Start;
-- Shake
workspace.CurrentCamera.CFrame += Vector3.new(
-- X Axis
math.random(-1, 1) * 1.15,
-- Y Axis
math.random(-1, 1) * 1.35,
-- Z Axis
math.random(-1, 1) * 1.2
);
-- Tilt
local Angle = math.sin(ElapsedTime * 5) * 5;
workspace.CurrentCamera.CFrame *= CFrame.Angles(0, 0,
math.rad(Angle) * 1.5);
if (ElapsedTime >= 3) then
break;
end;
wait();
end;
end))();
-------------------------------------------
VOID_CONSTRUCTORS.GameAssets.Intro.Blur.Size = 0;
protectGui(VOID_CONSTRUCTORS.GameAssets.Intro.GUI);
task.wait(.5);
TweenService:Create(VOID_CONSTRUCTORS.GameAssets.Intro.Blur,
TweenInfo.new(1), {Size = 20}):Play();
-------------------------------------------
-- Image --
VOID_CONSTRUCTORS.GameAssets.Intro.Image = Instance.new('ImageLabel',
VOID_CONSTRUCTORS.GameAssets.Intro.GUI);
VOID_CONSTRUCTORS.GameAssets.Intro.Image.AnchorPoint = Vector2.new(0.5,
0.5);
VOID_CONSTRUCTORS.GameAssets.Intro.Image.Position = UDim2.new(0.5, 0,
1, 0);
VOID_CONSTRUCTORS.GameAssets.Intro.Image.Size = UDim2.new(0, 512, 0,
256);
if (getgenv().Void.Misc.Intro.Logo == 1) then
VOID_CONSTRUCTORS.GameAssets.Intro.Image.Image =
VOID_CONSTRUCTORS.GameAssets.Logo;
else
VOID_CONSTRUCTORS.GameAssets.Intro.Image.Image =
VOID_CONSTRUCTORS.GameAssets.Logo2;
end;
VOID_CONSTRUCTORS.GameAssets.Intro.Image.ImageTransparency = 1;
VOID_CONSTRUCTORS.GameAssets.Intro.Image.BorderSizePixel = 0;
VOID_CONSTRUCTORS.GameAssets.Intro.Image.BackgroundTransparency = 1;
VOID_CONSTRUCTORS.GameAssets.Intro.Image.Visible = true;
task.wait(.5);
-------------------------------------------
-- Tweening --
-------------------------------------------
TweenService:Create(VOID_CONSTRUCTORS.GameAssets.Intro.Image,
TweenInfo.new(1), {
ImageTransparency = 0;
Position = UDim2.new(0.5, 0, 0.5, 0);
}):Play();
task.wait(math.random(1, 2));
TweenService:Create(VOID_CONSTRUCTORS.GameAssets.Intro.Blur,
TweenInfo.new(1.8), {Size = 0}):Play();
TweenService:Create(VOID_CONSTRUCTORS.GameAssets.Intro.Image,
TweenInfo.new(1.45), {
ImageTransparency = 1;
Position = UDim2.new(0.5, 0, 0.15, 0);
}):Play();
task.wait(1.45);
VOID_CONSTRUCTORS.GameAssets.Intro.Image:Destroy();
VOID_CONSTRUCTORS.GameAssets.Intro.Blur:Destroy();
end)();
elseif tostring(Type):lower() == 'console' or tostring(Type):lower() ==
'rconsole' then
pcall(function()
rconsolename(string.format('[Void] | %s',
RbxAnalyticsService:GetClientId()));
rconsoleprint('@@LIGHT_BLUE@@');
rconsoleprint(VOID_CONSTRUCTORS.WatermarkAssets[getgenv().Void.Misc.Intro.Logo] or
VOID_CONSTRUCTORS.WatermarkAssets[11]);
rconsoleprint('\n');
rconsoleprint('[beta] - void is ready to be executed, press [enter] to
load');
local keyboard_input = rconsoleinput();
-- the rconsoleinput will yield the other code so ima let it yield it
normally so it actually can load in real time as you press enter
if (keyboard_input == '\13') then
rconsoleclear();
end;
task.wait(1);
rconsoleprint('[beta] - void data below');
rconsoleprint('\n');
rconsoleprint(tableDump(getgenv().Void));
end);
end;
end);
if (getgenv().Void.Misc.Intro.Enabled == true) then
LoadIntro(getgenv().Void.Misc.Intro.Type);
end;
-------------------------------------------
-- Base64 encoder & decoder --
-- https://stackoverflow.com/questions/34618946/lua-base64-encode
local base64_encode = base64_encode or base64 and base64.encode or crypt and
crypt.base64_encode or crypt and crypt.base64 and crypt.base64.encode or syn and
syn.crypt and syn.crypt.base64_encode or function(data)
return ((data:gsub('.', function(x)
local r,b='',x:byte()
for i=8,1,-1 do r=r..(b%2^i-b%2^(i-1)>0 and '1' or '0') end
return r;
end)..'0000'):gsub('%d%d%d?%d?%d?%d?', function(x)
if (#x < 6) then return '' end
local c=0
for i=1,6 do c=c+(x:sub(i,i)=='1' and 2^(6-i) or 0) end
return b:sub(c+1,c+1)
end)..({ '', '==', '=' })[#data%3+1])
end;
local base64_decode = base64_decode or base64 and base64.decode or crypt and
crypt.base64_decode or crypt and crypt.base64 and crypt.base64.encode or syn and
syn.crypt and syn.crypt.base64_decode or function(data)
data = string.gsub(data, '[^'..b..'=]', '')
return (data:gsub('.', function(x)
if (x == '=') then return '' end
local r,f='',(b:find(x)-1)
for i=6,1,-1 do r=r..(f%2^i-f%2^(i-1)>0 and '1' or '0') end
return r;
end):gsub('%d%d%d?%d?%d?%d?%d?%d?', function(x)
if (#x ~= 8) then return '' end
local c=0
for i=1,8 do c=c+(x:sub(i,i)=='1' and 2^(8-i) or 0) end
return string.char(c)
end))
end;
-------------------------------------------
-------------------------------------------
-- Compare 2D Pos and return their magnitude --
local CompareDis = function(pA, pB)
return (pA - pB).Magnitude;
end;
-------------------------------------------
-- Wall check (check if behind a wall) --
local BehindWall = function(char)
if not char then return false; end;
local pos = char.PrimaryPart.Position;
-------------------------------------------
local raycast_params = RaycastParams.new();
raycast_params.FilterType = Enum.RaycastFilterType.Blacklist;
raycast_params.FilterDescendantsInstances = {char, workspace.CurrentCamera};
-------------------------------------------
-- Get Nearest Functions
-------------------------------------------
local GetNearestPlayer = function(t)
if tostring(t):lower() == 'silent' then
local mouse_pos = Vector2.new(UserInputService:GetMouseLocation().X,
UserInputService:GetMouseLocation().Y);
------------------------
local nearest_plr = nil;
local nearest_dis = math.huge;
-- Distance calculation
if (player.Character) and (player.Character and
player.Character.PrimaryPart or false) then
local part_pos = player.Character.PrimaryPart.Position;
local on_screen_pos =
workspace.CurrentCamera:WorldToScreenPoint(part_pos);
-- Distance calculation
if (player.Character) and (player.Character and
player.Character.PrimaryPart or false) then
local part_pos = player.Character.PrimaryPart.Position;
local on_screen_pos =
workspace.CurrentCamera:WorldToViewportPoint(part_pos);
if (getgenv().Void.Aiming.Triggerbot.Prediction.Enabled == true)
then
if IsOnScreen(player.Character) and
(getgenv().Void.Aiming.Triggerbot.Prediction.Amount >= dis_on_screen) and
(dis_on_screen < nearest_dis) then
nearest_dis = dis_on_screen;
nearest_plr = player;
end;
else
if (dis_on_screen < nearest_dis) then
nearest_dis = dis_on_screen;
nearest_plr = player;
end;
end;
end;
end;
return nearest_plr;
end;
end;
local GetNearestPlayerLock = function(t) -- new function cuz i needa fix smth
local mouse_pos = Vector2.new(UserInputService:GetMouseLocation().X,
UserInputService:GetMouseLocation().Y);
------------------------
local nearest_plr = nil;
local nearest_dis = math.huge;
-- Distance calculation
if (player.Character) and (player.Character and
player.Character.PrimaryPart) then
local part_pos = player.Character.PrimaryPart.Position;
local on_screen_pos =
workspace.CurrentCamera:WorldToViewportPoint(part_pos);
-- Selected Part --
local SelectedPart = (
getgenv().Void.Aiming.Aimbot.Hitting == 0 and GetNearestPoint(char) or
getgenv().Void.Aiming.Aimbot.Hitting == 1 and char.PrimaryPart or
getgenv().Void.Aiming.Aimbot.Hitting == 2 and
char[getgenv().Void.Aiming.Aimbot.BasePart] or
getgenv().Void.Aiming.Aimbot.Hitting == 3 and char:children()
[math.random(1, #char:children())] or
char.PrimaryPart
) or char.PrimaryPart or char.HumanoidRootPart;
-- Resolver --
if (getgenv().Void.Aiming.Aimbot.AutomaticResolver == true) then
if (SelectedPart.Velocity.X >= 35 or SelectedPart.Velocity.X <= -30 or
SelectedPart.Velocity.Y >= 50 or SelectedPart.Velocity.Y <= -25 or
SelectedPart.Velocity.Z >= 40 or SelectedPart.Velocity.Z <= -30) then
Resolver = true;
end;
end;
if (Resolver == true) then
SelectedPart.Velocity = Vector3.new(
-- X Axis
0 + (
-- V1
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v1' and ((char.Humanoid.MoveDirection * char.Humanoid.WalkSpeed) *
getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.25,
2) or getgenv().Void.Aiming.Aimbot.Resolver.MoveDirection).X
or
-- V2
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v2' and ((char.PrimaryPart.CFrame.LookVector * char.Humanoid.WalkSpeed) *
(getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.15,
2)) or getgenv().Void.Aiming.Aimbot.Resolver.LookVector).X
or
-- V3
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v3' and 0
or
-- V4
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v4' and ( (Data.Positions.Current - Data.Positions.Last) / ( (Data.Time.Last -
Data.Time.Current) + getgenv().Void.Aiming.Aimbot.Resolver.Delta / 100) ).X
or
-- V ?
0
),
-- Y Axis
0 + (
-- V1
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v1' and ((char.Humanoid.MoveDirection * char.Humanoid.WalkSpeed) *
getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.25,
2) or getgenv().Void.Aiming.Aimbot.Resolver.MoveDirection).Y
or
-- V2
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v2' and ((char.PrimaryPart.CFrame.LookVector * char.Humanoid.WalkSpeed) *
(getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.15,
2)) or getgenv().Void.Aiming.Aimbot.Resolver.LookVector).Y
or
-- V3
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v3' and 0
or
-- V4
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v4' and ( (Data.Positions.Current - Data.Positions.Last) / ( (Data.Time.Last -
Data.Time.Current) + getgenv().Void.Aiming.Aimbot.Resolver.Delta / 100) ).Y
or
-- V ?
0
),
-- Z Axis
0 + (
-- V1
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v1' and ((char.Humanoid.MoveDirection * char.Humanoid.WalkSpeed) *
getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.25,
2) or getgenv().Void.Aiming.Aimbot.Resolver.MoveDirection).Z
or
-- V2
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v2' and ((char.PrimaryPart.CFrame.LookVector * char.Humanoid.WalkSpeed) *
(getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.15,
2)) or getgenv().Void.Aiming.Aimbot.Resolver.LookVector).Z
or
-- V3
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v3' and 0
or
-- V4
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v4' and ( (Data.Positions.Current - Data.Positions.Last) / ( (Data.Time.Last -
Data.Time.Current) + getgenv().Void.Aiming.Aimbot.Resolver.Delta / 100) ).Z
or
-- V ?
0
)
);
SelectedPart.AssemblyLinearVelocity = Vector3.new(
-- X Axis
0 + (
-- V1
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v1' and ((char.Humanoid.MoveDirection * char.Humanoid.WalkSpeed) *
getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.25,
2) or getgenv().Void.Aiming.Aimbot.Resolver.MoveDirection).X
or
-- V2
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v2' and ((char.PrimaryPart.CFrame.LookVector * char.Humanoid.WalkSpeed) *
(getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.15,
2)) or getgenv().Void.Aiming.Aimbot.Resolver.LookVector).X
or
-- V3
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v3' and 0
or
-- V4
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v4' and ( (Data.Positions.Current - Data.Positions.Last) / ( (Data.Time.Last -
Data.Time.Current) + getgenv().Void.Aiming.Aimbot.Resolver.Delta / 100) ).X
or
-- V ?
0
),
-- Y Axis
0 + (
-- V1
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v1' and ((char.Humanoid.MoveDirection * char.Humanoid.WalkSpeed) *
getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.25,
2) or getgenv().Void.Aiming.Aimbot.Resolver.MoveDirection).Y
or
-- V2
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v2' and ((char.PrimaryPart.CFrame.LookVector * char.Humanoid.WalkSpeed) *
(getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.15,
2)) or getgenv().Void.Aiming.Aimbot.Resolver.LookVector).Y
or
-- V3
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v3' and 0
or
-- V4
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v4' and ( (Data.Positions.Current - Data.Positions.Last) / ( (Data.Time.Last -
Data.Time.Current) + getgenv().Void.Aiming.Aimbot.Resolver.Delta / 100) ).Y
or
-- V ?
0
),
-- Z Axis
0 + (
-- V1
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v1' and ((char.Humanoid.MoveDirection * char.Humanoid.WalkSpeed) *
getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.25,
2) or getgenv().Void.Aiming.Aimbot.Resolver.MoveDirection).Z
or
-- V2
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v2' and ((char.PrimaryPart.CFrame.LookVector * char.Humanoid.WalkSpeed) *
(getgenv().Void.Aiming.Aimbot.Resolver.AutomaticPred == true and math.random(1.15,
2)) or getgenv().Void.Aiming.Aimbot.Resolver.LookVector).Z
or
-- V3
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v3' and 0
or
-- V4
tostring(getgenv().Void.Aiming.Aimbot.ResolverMethod):lower()
== 'v4' and ( (Data.Positions.Current - Data.Positions.Last) / ( (Data.Time.Last -
Data.Time.Current) + getgenv().Void.Aiming.Aimbot.Resolver.Delta / 100) ).Z
or
-- V ?
0
)
);
end;
----------------------------------------------
-- Actual Prediction --
if (getgenv().Void.Aiming.Aimbot.Prediction.Enabled == true) then
Predicted_Pos = SelectedPart.Position + (SelectedPart.Velocity *
getgenv().Void.Aiming.Aimbot.Prediction.Amount) + (Vector3.new(
-- X
getgenv().Void.Aiming.Aimbot.Shake.Enabled == true and
math.random(getgenv().Void.Aiming.Aimbot.Shake.X.Random[1],
getgenv().Void.Aiming.Aimbot.Shake.X.Random[2]) or 0,
-- Y
getgenv().Void.Aiming.Aimbot.Shake.Enabled == true and
math.random(getgenv().Void.Aiming.Aimbot.Shake.Y.Random[1],
getgenv().Void.Aiming.Aimbot.Shake.Y.Random[2]) or 0,
-- Z
getgenv().Void.Aiming.Aimbot.Shake.Enabled == true and
math.random(getgenv().Void.Aiming.Aimbot.Shake.Z.Random[1],
getgenv().Void.Aiming.Aimbot.Shake.Z.Random[2]) or 0
) / 10);
else
Predicted_Pos = SelectedPart.Position + (SelectedPart.Velocity) +
(Vector3.new(
-- X
getgenv().Void.Aiming.Aimbot.Shake.Enabled == true and
math.random(getgenv().Void.Aiming.Aimbot.Shake.X.Random[1],
getgenv().Void.Aiming.Aimbot.Shake.X.Random[2]) or 0,
-- Y
getgenv().Void.Aiming.Aimbot.Shake.Enabled == true and
math.random(getgenv().Void.Aiming.Aimbot.Shake.Y.Random[1],
getgenv().Void.Aiming.Aimbot.Shake.Y.Random[2]) or 0,
-- Z
getgenv().Void.Aiming.Aimbot.Shake.Enabled == true and
math.random(getgenv().Void.Aiming.Aimbot.Shake.Z.Random[1],
getgenv().Void.Aiming.Aimbot.Shake.Z.Random[2]) or 0
) / 10);
end;
ReplicatedStorage:FindFirstChild('DefaultSoundEvents'):FindFirstChild('AddCharacter
LoadedEvent'):FireServer();
end)();
task.wait(getgenv().Void.Misc.LagSpike.Duration);
settings():GetService('NetworkSettings').IncomingReplicationLag = 0;
elseif not (gameProcessed) and (Key.KeyCode ==
Enum.KeyCode[getgenv().Void.Global.Keybinds.BadTalk]) and
(getgenv().Void.Misc.BadTalk.Enabled == true) then
-- Bad / Sh*t talk --
ReplicatedStorage:FindFirstChild('DefaultChatSystemChatEvents'):FindFirstChild('Say
MessageRequest'):FireServer(
getgenv().Void.Misc.BadTalk.Phrases[math.random(1,
#getgenv().Void.Misc.BadTalk.Phrases)],
'All'
);
elseif not (gameProcessed) and (Key.KeyCode ==
Enum.KeyCode[getgenv().Void.Global.Keybinds.AutoSortInv]) and
(getgenv().Void.Misc.InventorySorter.Enabled == true) then
coroutine.wrap(function()
if not rawget(game.CoreGui:GetChildren(), 'VoidGuns') then
CACHE = Instance.new('Folder', game.CoreGui);
CACHE.Name = 'VoidGuns'
else
CACHE = game.CoreGui.VoidGuns;
end;
local Backpack = Players.LocalPlayer.Backpack;
-- Tool Names --
-- will be adding more soon cuz i dont play da hood fuck that
local Names = {
DB = {
'Double Barrel';
'[Double-Barrel SG]';
'[DB]';
'DB';
'[Double Barrel]';
'[Double-Barrel]';
};
Rev = {
'[Revolver]';
'Rev';
'Revolver';
'[Rev]';
};
Phone = {
'Phone';
'[Phone]';
};
Wallet = {
'Wallet';
'[Wallet]';
};
Katana = {
'Katana';
'[Katana]';
};
TSG = {
'[TacticalShotgun]';
'TacticalShotgun';
'[TSG]';
'[TG]';
'[Tactical-Shotgun]';
'[Tactical Shotgun]';
};
SG = {
'Shotgun';
'[SG]';
'[Shotgun]';
'SG';
};
Silencer = {
'Silencer';
'[Silencer]';
};
Bat = {
'Bat';
'[Bat]';
};
Molotov = {
'Molotov';
'[Molotov]';
};
Flamethrower = {
'Flamethrower';
'[Flamethrower]';
};
Taser = {
'Taser';
'[Taser]';
};
-- Food --
Pizza = {
'Pizza';
'[Pizza]';
};
Chicken = {
'Chicken';
'[Chicken]';
};
Cranberry = {
'Cranberry';
'[Cranberry]';
};
Lettuce = {
'Lettuce';
'[Lettuce]';
};
Popcorn = {
'Popcorn';
'[Popcorn]';
};
HotDog = {
'HotDog';
'Hotdog';
'[HotDog]';
'[Hotdog]';
};
-- Misc ig?? --
Flower = {
'Flower';
'[Flower]';
}; -- legit adding useless ass shit but for the quality.
PepperSpray = {
'PepperSpray';
'[PepperSpray]';
};
Cuffs = {
'Cuffs';
'[Cuffs]';
};
};
-- Accepted aliases
local DB_Aliases = {
'DB';
'DoubleBarrel';
'Double-Barrel';
}; -- Double Barrel Shotgun aliases
local Rev_Aliases = {
'Rev';
'Revolver';
}; -- Revolver aliases
local Phone_Aliases = {
'Phone';
}; -- Phone aliases
local Wallet_Aliases = {
'Wallet';
}; -- Wallet aliases
local Katana_Aliases = {
'Katana';
}; -- Katana aliases
local TSG_Aliases = {
'TacticalShotgun';
'TSG';
'Tactical-Shotgun';
'Tactical Shotgun';
}; -- Tactical shotgun aliases
local Shotgun_Aliases = {
'Shotgun';
'SG';
'ShotG';
'Shotg';
};
local Flower_Aliases = {
'Flower';
'[Flower]';
};
local Silencer_Aliases = {
'Silencer';
};
local Bat_Aliases = {
'Bat';
};
local Molotov_Aliases = {
'Molotov';
};
local Flamethrower_Aliases = {
'Flamethrower';
'Flamesplitter';
'FT';
};
local Taser_Aliases = {
'Taser';
};
local PepperSpray_Aliases = {
'PepperSpray';
'PS';
'pepperspray';
};
local Cuffs_Aliases = {
'Cuffs';
'[Cuffs]';
};
local Pizza_Aliases = {
'Pizza';
'[Pizza]';
};
local Chicken_Aliases = {
'Chicken';
'[Chicken]';
'Turkey';
};
local Cranberry_Aliases = {
'Cranberry';
'[Cranberry]';
};
local Lettuce_Aliases = {
'Lettuce';
'[Lettuce]';
'Salad';
};
local Popcorn_Aliases = {
'Popcorn';
'PC';
'pc';
'[Popcorn]';
};
local HotDog_Aliases = {
'Hotdog';
'[HotDog]';
'[Hotdog]';
'HotDog';
};
-------------------------------------
-- Data
local Data = {};
-------------------------------------
for index, tool in ipairs(Backpack:GetChildren()) do
tool.Parent = CACHE;
end;
for order, gun in ipairs(getgenv().Void.Misc.InventorySorter.List) do
-- DB
if table.find(DB_Aliases, gun) then
-- Double Barrel Shotgun
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.DB, tool.Name) then
Data.DB = tool;
end;
end;
if (Data.DB) then
Data.DB.Parent = Backpack;
end;
elseif table.find(Rev_Aliases, gun) then
-- REV
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Rev, tool.Name) then
Data.Rev = tool;
end;
end;
if (Data.Rev) then
Data.Rev.Parent = Backpack;
end;
elseif table.find(Phone_Aliases, gun) then
-- PHONE
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Phone, tool.Name) then
Data.Phone = tool;
end;
end;
if (Data.Phone) then
Data.Phone.Parent = Backpack;
end;
elseif table.find(Wallet_Aliases, gun) then
-- WALLET
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Wallet, tool.Name) then
Data.Wallet = tool;
end;
end;
if (Data.Wallet) then
Data.Wallet.Parent = Backpack;
end;
elseif table.find(Katana_Aliases, gun) then
-- KATANA
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Katana, tool.Name) then
Data.Katana = tool;
end;
end;
if (Data.Katana) then
Data.Katana.Parent = Backpack;
end;
elseif table.find(TSG_Aliases, gun) then
-- TACTICAL SHOTGUN
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.TSG, tool.Name) then
Data.TSG = tool;
end;
end;
if (Data.TSG) then
Data.TSG.Parent = Backpack;
end;
elseif table.find(Shotgun_Aliases, gun) then
-- SHOTGUN
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.SG, tool.Name) then
Data.SG = tool;
end;
end;
if (Data.SG) then
Data.SG.Parent = Backpack;
end;
elseif table.find(Flower_Aliases, gun) then
-- FLOWER
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Flower, tool.Name) then
Data.Flower = tool;
end;
end;
if (Data.Flower) then
Data.Flower.Parent = Backpack;
end;
elseif table.find(Silencer_Aliases, gun) then
-- SILENCER
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Silencer, tool.Name) then
Data.Silencer = tool;
end;
end;
if (Data.Silencer) then
Data.Silencer.Parent = Backpack;
end;
elseif table.find(Bat_Aliases, gun) then
-- BAT
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Bat, tool.Name) then
Data.Bat = tool;
end;
end;
if (Data.Bat) then
Data.Bat.Parent = Backpack;
end;
elseif table.find(Molotov_Aliases, gun) then
-- MOLOTOV
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Molotov, tool.Name) then
Data.Molotov = tool;
end;
end;
if (Data.Molotov) then
Data.Molotov.Parent = Backpack;
end;
elseif table.find(Flamethrower_Aliases, gun) then
-- FLAMETHROWER
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Flamethrower, tool.Name) then
Data.Flamethrower = tool;
end;
end;
if (Data.Flamethrower) then
Data.Flamethrower.Parent = Backpack;
end;
elseif table.find(Taser_Aliases, gun) then
-- TASER
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Taser, tool.Name) then
Data.Taser = tool;
end;
end;
if (Data.Taser) then
Data.Taser.Parent = Backpack;
end;
elseif table.find(PepperSpray_Aliases, gun) then
-- PEPPER SPRAY
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.PepperSpray, tool.Name) then
Data.PepperSpray = tool;
end;
end;
if (Data.PepperSpray) then
Data.PepperSpray.Parent = Backpack;
end;
elseif table.find(Cuffs_Aliases, gun) then
-- CUFFS
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Cuffs, tool.Name) then
Data.Cuffs = tool;
end;
end;
if (Data.Cuffs) then
Data.Cuffs.Parent = Backpack;
end;
elseif table.find(Pizza_Aliases, gun) then
-- PIZZA
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Pizza, tool.Name) then
Data.Pizza = tool;
end;
end;
if (Data.Pizza) then
Data.Pizza.Parent = Backpack;
end;
elseif table.find(Chicken_Aliases, gun) then
-- CHICKEN
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Chicken, tool.Name) then
Data.Chicken = tool;
end;
end;
if (Data.Chicken) then
Data.Chicken.Parent = Backpack;
end;
elseif table.find(Lettuce_Aliases, gun) then
-- LETTUCE
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Lettuce, tool.Name) then
Data.Lettuce = tool;
end;
end;
if (Data.Lettuce) then
Data.Lettuce.Parent = Backpack;
end;
elseif table.find(Popcorn_Aliases, gun) then
-- POPCORN
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.Popcorn, tool.Name) then
Data.Popcorn = tool;
end;
end;
if (Data.Popcorn) then
Data.Popcorn.Parent = Backpack;
end;
elseif table.find(HotDog_Aliases, gun) then
-- HOT DOG
for idx, tool in ipairs(CACHE:GetChildren()) do
if table.find(Names.HotDog, tool.Name) then
Data.HotDog = tool;
end;
end;
if (Data.HotDog) then
Data.HotDog.Parent = Backpack;
end;
end;
end;
--------------------------------
for idx, tool in ipairs(CACHE:GetChildren()) do
tool.Parent = Backpack;
end;
end)();
-------------------------------------------
elseif not (gameProcessed) and (Key.KeyCode ==
Enum.KeyCode[getgenv().Void.Global.Keybinds.Macro]) and
(getgenv().Void.Misc.Macro.Enabled == true) then
VOID_CONSTRUCTORS.Booleans.Macro = not VOID_CONSTRUCTORS.Booleans.Macro;
if (VOID_CONSTRUCTORS.Booleans.Macro == true) then
VOID_CONSTRUCTORS.Coroutines['Macro'] = coroutine.wrap(function()
if tostring(getgenv().Void.Misc.Macro.Mode):lower() == 'legit' then
if tostring(getgenv().Void.Misc.Macro.Method):lower() ==
'keypress' then
repeat
RunService.RenderStepped:Wait();
keypress(0x49);
RunService.RenderStepped:Wait();
keyrelease(0x49);
RunService.RenderStepped:Wait();
keypress(0x4F);
RunService.RenderStepped:Wait();
keyrelease(0x4F);
RunService.RenderStepped:Wait();
until VOID_CONSTRUCTORS.Booleans.Macro == false;
elseif tostring(getgenv().Void.Misc.Macro.Method):lower() ==
'virtual' then
repeat
RunService.RenderStepped:Wait();
VirtualInputManager:SendKeyEvent(true, 'I', false,
game);
RunService.RenderStepped:Wait();
VirtualInputManager:SendKeyEvent(true, 'O', false,
game);
RunService.RenderStepped:Wait();
VirtualInputManager:SendKeyEvent(true, 'I', false,
game);
RunService.RenderStepped:Wait();
VirtualInputManager:SendKeyEvent(true, 'O', false,
game);
RunService.RenderStepped:Wait();
until VOID_CONSTRUCTORS.Booleans.Macro == false;
end;
elseif tostring(getgenv().Void.Misc.Macro.Mode):lower() ==
'blatant' then
if tostring(getgenv().Void.Misc.Macro.Method):lower() ==
'keypress' then
RunService.RenderStepped:Wait();
keypress(0x49);
RunService.RenderStepped:Wait();
keyrelease(0x49);
RunService.RenderStepped:Wait();
keypress(0x4F);
RunService.RenderStepped:Wait();
keyrelease(0x4F);
elseif tostring(getgenv().Void.Misc.Macro.Method):lower() ==
'virtual' then
RunService.RenderStepped:Wait();
VirtualInputManager:SendKeyEvent(true, 'I', false, game);
RunService.RenderStepped:Wait();
VirtualInputManager:SendKeyEvent(true, 'O', false, game);
RunService.RenderStepped:Wait();
end;
end;
end);
VOID_CONSTRUCTORS.Coroutines['Macro']();
end;
elseif not (gameProcessed) and (Key.KeyCode ==
Enum.KeyCode[getgenv().Void.Global.Keybinds.SilentStrafe]) and
(getgenv().Void.Aiming.Silentbot.Strafe.Enabled == true) then
VOID_CONSTRUCTORS.Booleans.Strafe = not VOID_CONSTRUCTORS.Booleans.Strafe;
end
end));
-------------------------------------------
-------------------------------------------
-- Memory Spoofer --
-------------------------------------------
VOID_CONSTRUCTORS.Coroutines['MemSpoofer'] = coroutine.wrap(function()
while (true) and (getgenv().Void) do
if (getgenv().Void) and (getgenv().Void.Misc.MemSpoofer.Enabled == true)
then
VOID_CONSTRUCTORS.Coroutines['MemSpoofing'] = coroutine.wrap(function()
local PerformanceStats =
CoreGui:WaitForChild('RobloxGui'):WaitForChild('PerformanceStats', 1);
local DevConsole = CoreGui:WaitForChild('DevConsoleMaster', 1);
if (PerformanceStats ~= nil) then
-- Method 1
if (getgenv().Void.Misc.MemSpoofer.Method == 1) then
coroutine.wrap(function()
for index, key in next,
PerformanceStats:GetDescendants() do
if key:IsA('TextLabel') and key.Text == 'Mem' then
VOID_CONSTRUCTORS.Memory +=
tonumber(string.format('%.2f', math.random() + math.random(-1, 1) ));
if (VOID_CONSTRUCTORS.Memory <
math.random(getgenv().Void.Misc.MemSpoofer.Range[1],
getgenv().Void.Misc.MemSpoofer.Range[2])) then
VOID_CONSTRUCTORS.Memory += math.random() +
math.random(1, 2);
elseif (VOID_CONSTRUCTORS.Memory >
math.random(getgenv().Void.Misc.MemSpoofer.Range[1] - math.random(10, 40),
getgenv().Void.Misc.MemSpoofer.Range[2] - math.random(10, 30))) then
VOID_CONSTRUCTORS.Memory -= math.random() +
math.random(1, 2);
end
key.Parent.ValueLabel.Text =
string.format('%.2f MB', VOID_CONSTRUCTORS.Memory);
end
end
if PerformanceStats:FindFirstChild('PS_Viewer') then
for index, key in next,
PerformanceStats:FindFirstChild('PS_Viewer'):GetDescendants() do
if key:IsA('TextLabel') and
string.find(key.Text, 'Current') then
key.Text = string.format('Current: %.2f
MB', VOID_CONSTRUCTORS.Memory)
end;
if key:IsA('TextLabel') and
string.find(key.Text, 'Average') then
key.Text = string.format('Average: %.2f
MB', VOID_CONSTRUCTORS.Memory - (math.random() * 1.45));
end;
end
end;
end)();
-- Method 0
elseif (getgenv().Void.Misc.MemSpoofer.Method == 0) then
coroutine.wrap(function()
for index, key in next,
PerformanceStats:GetDescendants() do
if key:IsA('TextLabel') and key.Text == 'Mem' then
if not
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY['Spoofer1'] then
-- Spoofer 1 is for the profile info
-- Spoofer 2 is for the dev console
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY.Spoofer1 =
key.Parent.ValueLabel:GetPropertyChangedSignal('Text'):Connect(function()
if
(getgenv().Void.Misc.MemSpoofer.Enabled == true) then
coroutine.wrap(function()
VOID_CONSTRUCTORS.Memory +=
tonumber(string.format('%.2f', math.random() + math.random(-1, 1) ));
if (VOID_CONSTRUCTORS.Memory <
math.random(getgenv().Void.Misc.MemSpoofer.Range[1],
getgenv().Void.Misc.MemSpoofer.Range[2])) then
VOID_CONSTRUCTORS.Memory +=
math.random() + math.random(1, 2);
elseif
(VOID_CONSTRUCTORS.Memory > math.random(getgenv().Void.Misc.MemSpoofer.Range[1] -
math.random(10, 40), getgenv().Void.Misc.MemSpoofer.Range[2] - math.random(10,
30))) then
VOID_CONSTRUCTORS.Memory -=
math.random() + math.random(1, 2);
end
key.Parent.ValueLabel.Text =
string.format('%.2f MB', VOID_CONSTRUCTORS.Memory);
task.wait(getgenv().Void.Misc.MemSpoofer.Delay);
end)();
end;
end);
end;
end
end;
if PerformanceStats:FindFirstChild('PS_Viewer') then
for index, key in next,
PerformanceStats:FindFirstChild('PS_Viewer'):GetDescendants() do
if key:IsA('TextLabel') and
string.find(key.Text, 'Current') then
-- string.format('Current: %.2f MB',
VOID_CONSTRUCTORS.Memory)
if not
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY['Current'] then
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY.Current =
key:GetPropertyChangedSignal('Text'):Connect(function()
key.Text = string.format('Current:
%.2f MB', VOID_CONSTRUCTORS.Memory);
task.wait(getgenv().Void.Misc.MemSpoofer.Delay);
end);
end;
end;
if key:IsA('TextLabel') and
string.find(key.Text, 'Average') then
if not
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY['Avg'] then
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY.Avg =
key:GetPropertyChangedSignal('Text'):Connect(function()
key.Text = string.format('Average:
%.2f MB', VOID_CONSTRUCTORS.Memory + math.random());
task.wait(getgenv().Void.Misc.MemSpoofer.Delay);
end);
end;
end;
end
end;
end)();
end;
end;
if (DevConsole ~= nil) then
if (getgenv().Void.Misc.MemSpoofer.Method == 1) then
coroutine.wrap(function()
for index, key in next, DevConsole:GetDescendants() do
if key:IsA('TextButton') and key.Name ==
'MemoryUsage_MB' then
key.Text = string.format('%d MB',
math.floor(tonumber(VOID_CONSTRUCTORS.Memory)));
end;
end
end)();
elseif (getgenv().Void.Misc.MemSpoofer.Method == 0) then
coroutine.wrap(function()
for index, key in next, DevConsole:GetDescendants() do
if key:IsA('TextButton') and key.Name ==
'MemoryUsage_MB' then
if not
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY.DevConsole then
VOID_CONSTRUCTORS.Connections.CACHE_MEMORY.DevConsole =
key:GetPropertyChangedSignal('Text'):Connect(function()
key.Text = string.format('%d MB',
math.floor(tonumber(VOID_CONSTRUCTORS.Memory)));
task.wait(getgenv().Void.Misc.MemSpoofer.Delay);
end);
end;
end;
end
end)();
end;
end;
Players.LocalPlayer:Kick(getgenv().Void.Misc.Mod.Notification);
elseif (string.lower(getgenv().Void.Misc.Mod.OnJoin) ==
'Notify') then
sendNotification('Void',
getgenv().Void.Misc.Mod.Notification, 3);
end;
end;
end;
elseif (groupID) then
-- Game made by a whole group
for index, player in ipairs(Players:GetPlayers()) do
if player:IsInGroup(groupID) then
if player:GetRankInGroup(groupID) >=
getgenv().Void.Misc.Mod.Rank then
if (string.lower(getgenv().Void.Misc.Mod.OnJoin) ==
'kick') then
Players.LocalPlayer:Kick(getgenv().Void.Misc.Mod.Notification);
elseif (string.lower(getgenv().Void.Misc.Mod.OnJoin) ==
'Notify') then
sendNotification('Void',
getgenv().Void.Misc.Mod.Notification, 3);
end;
end
end;
task.wait(1); -- wait like 1 second before checking again cause
i don't want to get ratelimited
end;
end;
end);
VOID_CONSTRUCTORS.Coroutines['ModDetector']();
end;
task.wait();
end)));
-------------------------------------------
-- Auto Pred --
-------------------------------------------
table.insert(VOID_CONSTRUCTORS.Connections.Misc,
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function()
if (getgenv().Void) and
(getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Enabled == true) then
if
tostring(getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Mode):lower() ==
'advanced' then
if (VOID_CONSTRUCTORS.Data.Silent_Target and
VOID_CONSTRUCTORS.Data.Silent_Target.Character and
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart) and
(Players.LocalPlayer.Character and Players.LocalPlayer.Character.PrimaryPart) then
local Magnitude =
(Players.LocalPlayer.Character.PrimaryPart.Position -
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Position).Magnitude
local Type = '';
if (Magnitude >= getgenv().Void.Aiming.Silentbot.Distances.Far)
then
Type = 'far';
elseif (Magnitude < getgenv().Void.Aiming.Silentbot.Distances.Far
and Magnitude >= getgenv().Void.Aiming.Silentbot.Distances.Mid) then
Type = 'mid';
else
Type = 'close';
end;
getgenv().Void.Aiming.Silentbot.Prediction.Amount =
AdvancedPred(Stats.Network.ServerStatsItem['Data Ping']:GetValue(), Type or
'close')
end;
elseif
tostring(getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Mode):lower() ==
'unadvanced' then
getgenv().Void.Aiming.Silentbot.Prediction.Amount =
-- 30 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 30 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 39) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[30] or
-- 40 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 40 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 49) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[40] or
-- 50 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 50 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 59) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[50] or
-- 60 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 60 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 69) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[60] or
-- 70 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 70 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 79) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[70] or
-- 80 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 80 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 89) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[80] or
-- 90 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 90 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 99) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[90] or
-- 100 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 100 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 109) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[100] or
-- 110 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 110 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 119) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[110] or
-- 120 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 120 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 129) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[120] or
-- 130 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 130 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 139) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[130] or
-- 140 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 140 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 149) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[140] or
-- >140 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 150) and
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Sets[140] +
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() /
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() -
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() - 5) )); -- This is the
worst thing i ever made
-- GG THANKS VOID V3 (i was lazy to re-write it all so fuck you!!
gg !!!)
end;
end;
if (getgenv().Void) and
(getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Enabled == true) then
if tostring(getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Mode):lower()
== 'advanced' then
if (VOID_CONSTRUCTORS.Data.Lock_Target and
VOID_CONSTRUCTORS.Data.Lock_Target.Character and
VOID_CONSTRUCTORS.Data.Lock_Target.Character.PrimaryPart) and
(Players.LocalPlayer.Character and Players.LocalPlayer.Character.PrimaryPart) then
local Magnitude =
(Players.LocalPlayer.Character.PrimaryPart.Position -
VOID_CONSTRUCTORS.Data.Lock_Target.Character.PrimaryPart.Position).Magnitude
local Type = '';
if (Magnitude >= getgenv().Void.Aiming.Aimbot.Distances.Far) then
Type = 'far';
elseif (Magnitude < getgenv().Void.Aiming.Aimbot.Distances.Far and
Magnitude >= getgenv().Void.Aiming.Aimbot.Distances.Mid) then
Type = 'mid';
else
Type = 'close';
end;
getgenv().Void.Aiming.Aimbot.Prediction.Amount =
AdvancedPred(Stats.Network.ServerStatsItem['Data Ping']:GetValue(), Type or
'close')
end;
elseif
tostring(getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Mode):lower() ==
'unadvanced' then
getgenv().Void.Aiming.Aimbot.Prediction.Amount =
-- 30 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 30 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 39) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[30] or
-- 40 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 40 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 49) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[40] or
-- 50 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 50 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 59) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[50] or
-- 60 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 60 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 69) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[60] or
-- 70 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 70 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 79) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[70] or
-- 80 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 80 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 89) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[80] or
-- 90 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 90 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 99) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[90] or
-- 100 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 100 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 109) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[100] or
-- 110 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 110 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 119) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[110] or
-- 120 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 120 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 129) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[120] or
-- 130 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 130 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 139) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[130] or
-- 140 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 140 and
Stats.Network.ServerStatsItem['Data Ping']:GetValue() <= 149) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[140] or
-- >140 Ping
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() >= 150) and
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Sets[140] +
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() /
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() -
(Stats.Network.ServerStatsItem['Data Ping']:GetValue() - 5) )); -- This is the
worst thing i ever made
-- GG THANKS VOID V3 (i was lazy to re-write it all so fuck you!!
gg !!!)
end;
end;
end)));
-------------------------------------------
-- Anti Log --
-------------------------------------------
table.insert(VOID_CONSTRUCTORS.Connections.Misc,
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function()
if (getgenv().Void.Misc.AntiLog == true) then
coroutine.wrap(pcall)(function()
for i, connection in ipairs(getconnections(ScriptContext.Error)) do
connection:Disable();
end
end);
end
end)));
-------------------------------------------
-- Triggerbot --
-------------------------------------------
table.insert(VOID_CONSTRUCTORS.Connections.Misc,
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function()
if (VOID_CONSTRUCTORS.Booleans.Triggerbot == true) then
local Shoot = true;
-- No Pred --
if (getgenv().Void) and
(getgenv().Void.Aiming.Triggerbot.Prediction.Enabled == false) then
if (getgenv().Void.Aiming.Triggerbot.Delay.Enabled == false) then
-- If player found
if
(Players.LocalPlayer:GetMouse().Target.Parent:FindFirstChildOfClass('Humanoid') or
Players.LocalPlayer:GetMouse().Target.Parent.Parent:FindFirstChildOfClass('Humanoid
')) then
-- Declare the player variable
local Player =
Players:GetPlayerFromCharacter(Players.LocalPlayer:GetMouse().Target.Parent) or
Players:GetPlayerFromCharacter(Players.LocalPlayer:GetMouse().Target.Parent.Parent)
;
-- Checks --
-- part check --
local HitPart =
(Players.LocalPlayer:GetMouse().Target):IsA('BasePart') and
(Players.LocalPlayer:GetMouse().Target) or
(Players.LocalPlayer:GetMouse().Target.Parent):IsA('BasePart') and
(Players.LocalPlayer:GetMouse().Target.Parent);
if (getgenv().Void.Aiming.Triggerbot.HitParts ~= true) then
if not
table.find(getgenv().Void.Aiming.Triggerbot.HitParts, HitPart.Name) then
Shoot = false;
end;
end;
-------------------------------------------
-- TEAM CHECK --
-------------------------------------------
if (getgenv().Void.Global.Checks.Teamcheck == true) then
if (Player.Team == Players.LocalPlayer.Team) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- WHITELISTED --
-------------------------------------------
if (getgenv().Void.Global.Checks.Whitelisted == true) then
if table.find(getgenv().Void.Global.Whitelisted,
Player.Name) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- FRIENDS --
-------------------------------------------
if (getgenv().Void.Global.Checks.Friends == true) then
if Player:IsFriendsWith(Players.LocalPlayer.UserId) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- DEAD --
-------------------------------------------
if (getgenv().Void.Global.Checks.Dead == true) then
if (Player:FindFirstChildOfClass('Humanoid') ~= nil and
Player:FindFirstChildOfClass('Humanoid').Health <= 3) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end
end;
-------------------------------------------
-- LOCALPLAYER --
-------------------------------------------
if (getgenv().Void.Global.Checks.LocalPlayer == true) then
if Player == Players.LocalPlayer then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- RADIUS --
-------------------------------------------
if (getgenv().Void.Aiming.Triggerbot.Radius.Enabled == true)
then
-- thanks void get nearest function
-- gg
local MousePos =
Vector2.new(UserInputService:GetMouseLocation().X,
UserInputService:GetMouseLocation().Y);
local PartPos = Player.Character.PrimaryPart.Position;
local OnScreenPos =
workspace.CurrentCamera:WorldToScreenPoint(PartPos);
local DisOnScreen = CompareDis(MousePos,
Vector2.new(OnScreenPos.X, OnScreenPos.Y));
if (DisOnScreen >
getgenv().Void.Aiming.Triggerbot.Radius.Amount) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- Shooting --
-------------------------------------------
-- TEAM CHECK --
-------------------------------------------
if (getgenv().Void.Global.Checks.Teamcheck == true) then
if (Player.Team == Players.LocalPlayer.Team) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- WHITELISTED --
-------------------------------------------
if (getgenv().Void.Global.Checks.Whitelisted == true) then
if table.find(getgenv().Void.Global.Whitelisted,
Player.Name) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- FRIENDS --
-------------------------------------------
if (getgenv().Void.Global.Checks.Friends == true) then
if Player:IsFriendsWith(Players.LocalPlayer.UserId) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- DEAD --
-------------------------------------------
if (getgenv().Void.Global.Checks.Dead == true) then
if (Player:FindFirstChildOfClass('Humanoid') ~= nil and
Player:FindFirstChildOfClass('Humanoid').Health <= 3) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end
end;
-------------------------------------------
-- LOCALPLAYER --
-------------------------------------------
if (getgenv().Void.Global.Checks.LocalPlayer == true) then
if Player == Players.LocalPlayer then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- Shooting --
task.wait(getgenv().Void.Aiming.Triggerbot.Delay.Delay / 1000);
elseif (string.lower(getgenv().Void.Aiming.Triggerbot.Mode)
== 'blatant') then
coroutine.wrap(function()
repeat
mouse1press();
task.wait(getgenv().Void.Aiming.Triggerbot.Delay.Delay / 1000);
until Player == nil;
mouse1release();
end)();
end;
end;
end;
-- End of checking (no pred) --
-------------------------------------------
end;
elseif (getgenv().Void) and
(getgenv().Void.Aiming.Triggerbot.Prediction.Enabled == true) then
-- FULL PRED --
if (getgenv().Void.Aiming.Triggerbot.Delay.Enabled == false) then
if (VOID_CONSTRUCTORS.Data.Trigger_Target ~= nil and
VOID_CONSTRUCTORS.Data.Trigger_Target.Character ~= nil) then
if
(VOID_CONSTRUCTORS.Data.Trigger_Target.Character.PrimaryPart) then
local HitPart =
VOID_CONSTRUCTORS.Data.Trigger_Target.Character.PrimaryPart;
-- please let primarypart slide you fucking retards --
-- swear to god you config makers are always dumbasses --
if (getgenv().Void.Aiming.Triggerbot.HitParts ~= true) then
if not
table.find(getgenv().Void.Aiming.Triggerbot.HitParts, HitPart.Name) then
Shoot = false;
end;
end;
-------------------------------------------
-- TEAM CHECK --
-------------------------------------------
if (getgenv().Void.Global.Checks.Teamcheck == true) then
if (VOID_CONSTRUCTORS.Data.Trigger_Target.Team ==
Players.LocalPlayer.Team) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- WHITELISTED --
-------------------------------------------
if (getgenv().Void.Global.Checks.Whitelisted == true) then
if table.find(getgenv().Void.Global.Whitelisted,
VOID_CONSTRUCTORS.Data.Trigger_Target.Name) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- FRIENDS --
-------------------------------------------
if (getgenv().Void.Global.Checks.Friends == true) then
if
VOID_CONSTRUCTORS.Data.Trigger_Target:IsFriendsWith(Players.LocalPlayer.UserId)
then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- DEAD --
-------------------------------------------
if (getgenv().Void.Global.Checks.Dead == true) then
if
(VOID_CONSTRUCTORS.Data.Trigger_Target.Character:FindFirstChildOfClass('Humanoid')
~= nil and
VOID_CONSTRUCTORS.Data.Trigger_Target.Character:FindFirstChildOfClass('Humanoid').H
ealth <= 3) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end
end;
-------------------------------------------
-- LOCALPLAYER --
-------------------------------------------
if (getgenv().Void.Global.Checks.LocalPlayer == true) then
if VOID_CONSTRUCTORS.Data.Trigger_Target ==
Players.LocalPlayer then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
if (Shoot == true) then
if (string.lower(getgenv().Void.Aiming.Triggerbot.Mode)
== 'legit') then
mouse1click();
elseif
(string.lower(getgenv().Void.Aiming.Triggerbot.Mode) == 'blatant') then
coroutine.wrap(function()
repeat
mouse1press();
task.wait();
until VOID_CONSTRUCTORS.Data.Trigger_Target ==
nil;
mouse1release();
end)();
end;
end;
end;
end;
-- No Delay
elseif (getgenv().Void.Aiming.Triggerbot.Delay.Enabled == true) then
if (VOID_CONSTRUCTORS.Data.Trigger_Target ~= nil and
VOID_CONSTRUCTORS.Data.Trigger_Target.Character ~= nil) then
if
(VOID_CONSTRUCTORS.Data.Trigger_Target.Character.PrimaryPart) then
local HitPart =
VOID_CONSTRUCTORS.Data.Trigger_Target.Character.PrimaryPart;
-- please let primarypart slide you fucking retards --
-- swear to god you config makers are always dumbasses --
if (getgenv().Void.Aiming.Triggerbot.HitParts ~= true) then
if not
table.find(getgenv().Void.Aiming.Triggerbot.HitParts, HitPart.Name) then
Shoot = false;
end;
end;
-- TEAM CHECK --
-------------------------------------------
if (getgenv().Void.Global.Checks.Teamcheck == true) then
if (VOID_CONSTRUCTORS.Data.Trigger_Target.Team ==
Players.LocalPlayer.Team) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- WHITELISTED --
-------------------------------------------
if (getgenv().Void.Global.Checks.Whitelisted == true) then
if table.find(getgenv().Void.Global.Whitelisted,
VOID_CONSTRUCTORS.Data.Trigger_Target.Name) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- FRIENDS --
-------------------------------------------
if (getgenv().Void.Global.Checks.Friends == true) then
if
VOID_CONSTRUCTORS.Data.Trigger_Target:IsFriendsWith(Players.LocalPlayer.UserId)
then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
-- DEAD --
-------------------------------------------
if (getgenv().Void.Global.Checks.Dead == true) then
if
(VOID_CONSTRUCTORS.Data.Trigger_Target.Character:FindFirstChildOfClass('Humanoid')
~= nil and
VOID_CONSTRUCTORS.Data.Trigger_Target.Character:FindFirstChildOfClass('Humanoid').H
ealth <= 3) then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end
end;
-------------------------------------------
-- LOCALPLAYER --
-------------------------------------------
if (getgenv().Void.Global.Checks.LocalPlayer == true) then
if VOID_CONSTRUCTORS.Data.Trigger_Target ==
Players.LocalPlayer then
Shoot = false; -- retrieve the shoot upvalue and set it
to false (this will be used later cuz i don't wanna make it return smth if its not
valid)
end;
end;
-------------------------------------------
if (Shoot == true) then
if (string.lower(getgenv().Void.Aiming.Triggerbot.Mode)
== 'legit') then
mouse1click();
task.wait(getgenv().Void.Aiming.Triggerbot.Delay.Delay / 1000);
elseif
(string.lower(getgenv().Void.Aiming.Triggerbot.Mode) == 'blatant') then
coroutine.wrap(function()
repeat
mouse1press();
task.wait(getgenv().Void.Aiming.Triggerbot.Delay.Delay / 1000);
until VOID_CONSTRUCTORS.Data.Trigger_Target ==
nil;
mouse1release();
end)();
end;
end;
end;
end;
end;
end;
end;
end)));
-------------------------------------------
-- Watermark --
-------------------------------------------
VOID_CONSTRUCTORS.Assets['Watermark'] = Drawing.new('Text');
VOID_CONSTRUCTORS.Assets['Watermark'].Font = Drawing.Fonts.Plex;
VOID_CONSTRUCTORS.Assets['Watermark'].Size = 12;
VOID_CONSTRUCTORS.Assets['Watermark'].Visible = false;
VOID_CONSTRUCTORS.Assets['Watermark'].Text = 'Void';
VOID_CONSTRUCTORS.Assets['Watermark'].Position = Vector2.new(15, 15);
table.insert(VOID_CONSTRUCTORS.Connections.Misc,
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function()
VOID_CONSTRUCTORS.Assets['Watermark'].Visible =
getgenv().Void.Misc.Watermark.Enabled;
end)));
-------------------------------------------
-- FOV --
-------------------------------------------
-- Silent --
VOID_CONSTRUCTORS.Assets['FOV_Silent'] = Drawing.new('Circle');
VOID_CONSTRUCTORS.Assets['FOV_Tracer'] = Drawing.new('Line');
-- Lock --
VOID_CONSTRUCTORS.Assets['FOV_Lock'] = Drawing.new('Circle');
-------------------------------------------
-- Silent --
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Visible = false;
-- Lock --
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Visible = false;
-------------------------------------------
VOID_CONSTRUCTORS.Coroutines['FOV'] = coroutine.wrap(function()
-------------------------------------------
-- Declare float variables --
-------------------------------------------
local SilentHue = 0;
local LockHue = 0;
-------------------------------------------
while (true) and (getgenv().Void) do
-- Float checking --
if (SilentHue >= 1) then
SilentHue = 0;
end;
if (LockHue >= 1) then
LockHue = 0;
end;
-- Silent --
if (getgenv().Void.Aiming.Silentbot.FOV.Tracer == true) then
if (getgenv().Void.Aiming.Silentbot.FOV.RainbowTracer == true) then
VOID_CONSTRUCTORS.Assets['FOV_Tracer'].Color =
Color3.fromHSV(SilentHue, 1, 1);
else
VOID_CONSTRUCTORS.Assets['FOV_Tracer'].Color =
getgenv().Void.Aiming.Silentbot.FOV.TracerColor;
end;
VOID_CONSTRUCTORS.Assets['FOV_Tracer'].Thickness =
getgenv().Void.Aiming.Silentbot.FOV.TracerThickness;
---------------
VOID_CONSTRUCTORS.Assets['FOV_Tracer'].Visible =
(VOID_CONSTRUCTORS.Booleans.Silent);
VOID_CONSTRUCTORS.Assets['FOV_Tracer'].From =
UserInputService:GetMouseLocation();
if (VOID_CONSTRUCTORS.Data.Silent_Target == nil) then
VOID_CONSTRUCTORS.Assets['FOV_Tracer'].To =
UserInputService:GetMouseLocation();
end;
elseif (getgenv().Void.Aiming.Silentbot.FOV.Tracer == false) then
VOID_CONSTRUCTORS.Assets['FOV_Tracer'].Visible = false;
end;
if (getgenv().Void.Aiming.Silentbot.FOV.Rainbow == true) then
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Color =
Color3.fromHSV(SilentHue, 1, 1);
SilentHue += 0.01;
elseif (getgenv().Void.Aiming.Silentbot.FOV.Rainbow == false) then
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Color =
getgenv().Void.Aiming.Silentbot.FOV.Color;
else
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Color =
getgenv().Void.Aiming.Silentbot.FOV.Color;
end;
-- Lock --
if (getgenv().Void.Aiming.Aimbot.FOV.Rainbow == true) then
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Color = Color3.fromHSV(LockHue, 1,
1);
LockHue += 0.01;
elseif (getgenv().Void.Aiming.Aimbot.FOV.Rainbow == false) then
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Color =
getgenv().Void.Aiming.Aimbot.FOV.Color;
else
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Color =
getgenv().Void.Aiming.Aimbot.FOV.Color;
end;
---------------------------------------------------------------
task.wait(getgenv().Void.Aiming.Aimbot.FOV.RainbowSpeed);
end;
end);
VOID_CONSTRUCTORS.Coroutines['FOV']();
table.insert(VOID_CONSTRUCTORS.Connections.Misc,
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function()
-------------------------------------------
-- Silent FOV --
-------------------------------------------
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Thickness =
getgenv().Void.Aiming.Silentbot.FOV.Thickness or 1;
VOID_CONSTRUCTORS.Assets['FOV_Silent'].NumSides =
getgenv().Void.Aiming.Silentbot.FOV.NumSides or 64;
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Radius =
getgenv().Void.Aiming.Silentbot.FOV.Radius;
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Filled =
getgenv().Void.Aiming.Silentbot.FOV.Filled or false;
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Visible =
(getgenv().Void.Aiming.Silentbot.FOV.Enabled == true and
getgenv().Void.Aiming.Silentbot.FOV.Circle == true and true or false);
-------------------------------------------
-- Lock FOV --
-------------------------------------------
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Thickness =
getgenv().Void.Aiming.Aimbot.FOV.Thickness or 1;
VOID_CONSTRUCTORS.Assets['FOV_Lock'].NumSides =
getgenv().Void.Aiming.Aimbot.FOV.NumSides or 64;
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Radius =
getgenv().Void.Aiming.Aimbot.FOV.Radius;
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Filled =
getgenv().Void.Aiming.Aimbot.FOV.Filled or false;
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Visible =
getgenv().Void.Aiming.Aimbot.FOV.Enabled or false;
-------------------------------------------
-- Positioning --
-------------------------------------------
VOID_CONSTRUCTORS.Assets['FOV_Lock'].Position,
VOID_CONSTRUCTORS.Assets['FOV_Silent'].Position =
UserInputService:GetMouseLocation(), UserInputService:GetMouseLocation(); -- woohoo
fixed position cause mouse.hit.p is hooked and also inaccurate pos for the circle
wooho!!
end)));
-------------------------------------------
if (getgenv().Void.Misc.UnlockFPS == true) then
setfpscap(0);
end;
-------------------------------------------
-------------------------------------------
-- Silent --
-------------------------------------------
table.insert(VOID_CONSTRUCTORS.Connections.Misc,
RunService.RenderStepped:Connect(LPH_NO_VIRTUALIZE(function()
-- Silent
VOID_CONSTRUCTORS.Data.Silent_Target = GetNearestPlayer('silent');
-- Triggerbot
VOID_CONSTRUCTORS.Data.Trigger_Target = GetNearestPlayer('triggerbot');
end)));
-------------------------------------------
-- In-Game Commands --
-------------------------------------------
Players.LocalPlayer.Chatted:Connect(function(Msg)
if string.lower((Msg):sub(#getgenv().Void.Commands.Prefix,
#getgenv().Void.Commands.Prefix)) == string.lower(getgenv().Void.Commands.Prefix)
then
-- User 100% is meant to run a void command
local Msg = Msg:sub(2);
local Args = {};
-- Silent Commands --
-------------------------------------
-- Set Pred --
if (Command == getgenv().Void.Commands.Silent.SetPredAmount) then
-- Silent pred setter --
if (#Args < 2) then
return;
end;
local Pred = tonumber(Args[2]);
if Pred then
getgenv().Void.Aiming.Silentbot.Prediction.Amount = Pred;
end;
-------------------------------------
-- Set FOV size --
elseif (Command == getgenv().Void.Commands.Silent.SetFOV) then
-- Silent fov setter --
if (#Args < 2) then
return;
end;
local Size = tonumber(Args[2]);
if Size then
getgenv().Void.Aiming.Silentbot.FOV.Radius = Size;
end;
-------------------------------------
-- Disable FOV --
elseif (Command == getgenv().Void.Commands.Silent.DisableFOV) then
-- Silent FOV setter --
-- Silent on / off --
getgenv().Void.Aiming.Silentbot.FOV.Enabled = false;
-------------------------------------
-- Enable FOV --
elseif (Commnad == getgenv().Void.Commands.Silent.EnableFOV) then
-- Silent FOV setter --
-- Silent on / off --
getgenv().Void.Aiming.Silentbot.FOV.Enabled = true;
-------------------------------------
-- Enable Silent --
elseif (Command == getgenv().Void.Commands.Silent.SetSilent) then
-- Silent on / off --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Misc.Silent = true;
else
getgenv().Void.Misc.Silent = false;
end;
-------------------------------------
-- Silent Auto rotate --
elseif (Command == getgenv().Void.Commands.Silent.SetRotate) then
-- Silent rotate on / off --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Aiming.Silentbot.RotateChar = true;
else
getgenv().Void.Aiming.Silentbot.RotateChar = false;
end;
----------------------------------------------
-- Auto Pred --
elseif (Command == getgenv().Void.Commands.Silent.SetAutoPred) then
-- Silent auto pred on / off --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Enabled =
true;
else
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Enabled =
false;
end;
----------------------------------------------
-- Auto Pred mode --
elseif (Command == getgenv().Void.Commands.Silent.SetAutoPredMode) then
-- Silent auto pred mode --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'advanced') then
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Mode =
'Advanced';
else
getgenv().Void.Aiming.Silentbot.Prediction.Automatic.Mode = Status;
end;
-------------------------------------
-- Hit method --
elseif (Command == getgenv().Void.Commands.Silent.SetHitMethod) then
-- Hit part method --
if (#Args < 2) then
return;
end;
local Method = tonumber(Args[2]);
getgenv().Void.Aiming.Silentbot.Hitting = Method or 0;
-------------------------------------
-- Set miss --
elseif (Command == getgenv().Void.Commands.Silent.SetMiss) then
-- Hit miss method --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Aiming.Silentbot.Miss.Enabled = true;
else
getgenv().Void.Aiming.Silentbot.Miss.Enabled = false;
end;
-- Bad Talk
elseif (Command == getgenv().Void.Commands.BadTalk.RemoveAll) then
-- Remove all bad phrases --
getgenv().Void.Misc.BadTalk.Phrases = {};
-------------------------------------
-- Remove phrase from table with index --
elseif (Command == getgenv().Void.Commands.BadTalk.RemovePhrase) then
if (#Args < 2) then
return;
end;
local Index = tonumber(Args[2]);
if getgenv().Void.Misc.BadTalk.Phrases[Index] ~= nil then
getgenv().Void.Misc.BadTalk.Phrases[Index] = nil;
end;
-------------------------------------
-- Add base64 decoded phrase --
elseif (Command == getgenv().Void.Commands.BadTalk.AddPhrase) then
if (#Args < 3) then
return;
end;
local Index = tonumber(Args[2]);
local String = tostring(Args[3]);
local RawString = base64_decode(String);
if getgenv().Void.Misc.BadTalk.Phrases[Index] ~= nil then
getgenv().Void.Misc.BadTalk.Phrases[Index] = RawString;
end;
end;
-------------------------------------
-- Lock Commands --
if (Command == getgenv().Void.Commands.Lock.SetPredAmount) then
-- Lock pred setter --
if (#Args < 2) then
return;
end;
local Pred = tonumber(Args[2]);
if Pred then
getgenv().Void.Aiming.Aimbot.Prediction.Amount = Pred;
end;
-------------------------------------
-- Lock FOV size setter --
elseif (Command == getgenv().Void.Commands.Lock.SetFOV) then
-- Lock fov setter --
if (#Args < 2) then
return;
end;
local Size = tonumber(Args[2]);
if Size then
getgenv().Void.Aiming.Aimbot.FOV.Radius = Size;
end;
-------------------------------------
-- Lock FOV Disabler --
elseif (Command == getgenv().Void.Commands.Lock.DisableFOV) then
-- Lock FOV setter --
-- Lock on / off --
getgenv().Void.Aiming.Aimbot.FOV.Enabled = false;
-------------------------------------
-- Lock FOV Enabler --
elseif (Command == getgenv().Void.Commands.Lock.EnableFOV) then
-- Lock FOV setter --
-- Lock on / off --
getgenv().Void.Aiming.Aimbot.FOV.Enabled = true;
-------------------------------------
-- Lock Auto Pred --
elseif (Command == getgenv().Void.Commands.Lock.SetAutoPred) then
-- Lock auto pred on / off --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Enabled = true;
else
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Enabled = false;
end;
-------------------------------------
-- Lock Auto Pred mode --
elseif (Command == getgenv().Void.Commands.Lock.SetAutoPredMode) then
-- Lock auto pred mode --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'advanced') then
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Mode =
'Advanced';
else
getgenv().Void.Aiming.Aimbot.Prediction.Automatic.Mode = Status;
end;
-------------------------------------
-- Enable Lock --
elseif (Command == getgenv().Void.Commands.Lock.SetLock) then
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Misc.Lock = true;
else
getgenv().Void.Misc.Lock = false;
end;
-------------------------------------
-- Auto Lock Rotate --
elseif (Command == getgenv().Void.Commands.Lock.SetRotate) then
-- Lock rotate on / off --
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Aiming.Aimbot.RotateChar = true;
else
getgenv().Void.Aiming.Aimbot.RotateChar = false;
end;
-------------------------------------
-- Lock Hit method --
elseif (Command == getgenv().Void.Commands.Lock.SetHitMethod) then
-- Hit part method --
if (#Args < 2) then
return;
end;
local Method = tonumber(Args[2]);
getgenv().Void.Aiming.Aimbot.Hitting = Method or 0;
end;
-------------------------------------
-- Misc Commands --
-------------------------------------
-- REJOIN --
if (Command == getgenv().Void.Commands.Misc.Rejoin) then
TeleportService:Teleport(game.PlaceId, game.JobId,
Players.LocalPlayer);
elseif (Command == getgenv().Void.Commands.Misc.Reset) and
(Players.LocalPlayer.Character) then
for i, v in ipairs(Players.LocalPlayer.Character:GetChildren()) do
if (v:IsA('Accessory') or v:IsA('BasePart') or v:IsA('Part') or
v:IsA('SpecialMesh') or v:IsA('MeshPart')) then
v:Remove();
end;
end;
-------------------------------------
-- RESOLVER --
-------------------------------------
elseif (Command == getgenv().Void.Commands.Misc.Resolver) then
if (#Args < 2) then
return;
end;
local Status = string.lower(tostring(Args[2]));
if (Status == 'on') then
getgenv().Void.Aiming.Silentbot.AutomaticResolver = true;
else
getgenv().Void.Aiming.Silentbot.AutomaticResolver = false;
end;
-------------------------------------
-- SET PREFIX --
-------------------------------------
elseif (Command == getgenv().Void.Commands.Misc.SetPrefix) then
if (#Args < 2) then
return;
end;
local NewPrefix = tostring(Args[2]);
getgenv().Void.Commands.Prefix = NewPrefix;
end;
-------------------------------------
-------------------------------------
end;
end);
LPH_NO_VIRTUALIZE(function()
local GameMT = getrawmetatable(game);
-- Backup variables
local OldIndexFunc = GameMT.__index;
local OldNamecallFunc = GameMT.__namecall;
setreadonly(GameMT, false);
if (getgenv().Void.Misc.BypassAC == true) and
(getgenv().Void.Misc.BypassOnlyAdonis == false) then
-- This will be so laggy
GameMT.__namecall = newcclosure(function(self, ...)
local NamecallArgs = {...};
local DETECTION_STRINGS =
{
'CHECKER_1';
'CHECKER';
'OneMoreTime';
'checkingSPEED';
'PERMAIDBAN';
'BANREMOTE';
'FORCEFIELD';
'TeleportDetect';
};
end);
end;
end;
return OldNamecallFunc(self, ...);
end);
end;
GameMT.__index = newcclosure(function(self, idx)
if (self:IsA('Mouse') and tostring(idx):lower() == 'hit' and self ~= game)
then
-- Prevent shit index hooks (so game.Hit won't return an actual value
(as it's nil) )
local HitChance =
HitChanceGen(getgenv().Void.Aiming.Silentbot.HitChance.Chance,
getgenv().Void.Aiming.Silentbot.HitChance.Intensity);
----------------------------------------
local Resolver = false;
local Data = {
Positions = {
Last = nil;
Current = nil;
};
Time = {
Last = nil;
Current = nil;
};
};
----------------------------------------
if (getgenv().Void.Aiming.Silentbot.HitChance.Enabled == true) and
(VOID_CONSTRUCTORS.Data.Silent_Target) and (VOID_CONSTRUCTORS.Booleans.Silent ==
true) then
if (HitChance == true) then
----------------------------------------
-- Resolver --
if (getgenv().Void.Aiming.Silentbot.AutomaticResolver == true)
then
if
(VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.X >= 35 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Y >= 20 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Z >= 35 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.X <= -30 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Y <= -25 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Z <= -30) then
Resolver = true;
end;
end;
----------------------------------------
coroutine.wrap(function()
if (VOID_CONSTRUCTORS.Data.Silent_Target) and
(VOID_CONSTRUCTORS.Data.Silent_Target ~= nil and
VOID_CONSTRUCTORS.Data.Silent_Target.Character) then
pcall(function()
Data.Positions.Last =
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Position;
Data.Time.Last = tick();
---------------------------------------
wait(0.00350);
---------------------------------------
Data.Positions.Current =
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Position;
Data.Time.Current = tick();
end);
end;
end)();
----------------------------------------
local SelectedPart = (
getgenv().Void.Aiming.Silentbot.Hitting == 0 and
GetNearestPoint(VOID_CONSTRUCTORS.Data.Silent_Target.Character) or
getgenv().Void.Aiming.Silentbot.Hitting == 1 and
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart or
getgenv().Void.Aiming.Silentbot.Hitting == 2 and
VOID_CONSTRUCTORS.Data.Silent_Target.Character[getgenv().Void.Aiming.Silentbot.Base
Part] or
getgenv().Void.Aiming.Silentbot.Hitting == 3 and
VOID_CONSTRUCTORS.Data.Silent_Target.Character:children()[math.random(1,
#VOID_CONSTRUCTORS.Data.Silent_Target.Character:children())] or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart
) or VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart
or VOID_CONSTRUCTORS.Data.Silent_Target.Character.HumanoidRootPart;
if (Resolver == true) then
SelectedPart.Velocity = Vector3.new(
-- X Axis
0 + (
-- V1
),
-- Y Axis
0 + (
-- V1
),
-- Z Axis
0 + (
-- V1
)
);
SelectedPart.AssemblyLinearVelocity = Vector3.new(
-- X Axis
0 + (
-- V1
),
-- Y Axis
0 + (
-- V1
),
-- Z Axis
0 + (
-- V1
)
);
end;
-- Predicted Pos --
local MissChanceGen = function(Percentage)
return math.random() <= (Percentage / 100);
end;
if (getgenv().Void.Aiming.Silentbot.Miss.Enabled == true) then
local Miss =
MissChanceGen(getgenv().Void.Aiming.Silentbot.Miss.Chance);
if (Miss == true) then
SelectedPart.Velocity += Vector3.new(
-- X Axis
math.random(getgenv().Void.Aiming.Silentbot.Miss.Intensity.X[1],
getgenv().Void.Aiming.Silentbot.Miss.Intensity.X[2]),
-- Y Axis
math.random(getgenv().Void.Aiming.Silentbot.Miss.Intensity.Y[1],
getgenv().Void.Aiming.Silentbot.Miss.Intensity.Y[2]),
-- Z Axis
math.random(getgenv().Void.Aiming.Silentbot.Miss.Intensity.Z[1],
getgenv().Void.Aiming.Silentbot.Miss.Intensity.Z[2])
);
end;
end;
Players.LocalPlayer.Character.PrimaryPart.CFrame =
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.CFrame +
getgenv().Void.Aiming.Silentbot.Strafe.Do360 == true and Vector3.new(Degree_X,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Y,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Z) or
Vector3.new(getgenv().Void.Aiming.Silentbot.Strafe.Offset.X,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Y,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Z);
end;
task.wait(1 /
getgenv().Void.Aiming.Silentbot.Strafe.Speed); -- 1 Second / Speed = 1 / 5 = 0.20;
end;
end);
end);
VOID_CONSTRUCTORS.Coroutines['SilentStrafe']();
end;
-------------------------------------
if (HOOK_POS == true) then
return CFrame.new(Predicted_Pos);
end;
end;
elseif (getgenv().Void.Aiming.Silentbot.HitChance.Enabled == false) and
(VOID_CONSTRUCTORS.Data.Silent_Target) and (VOID_CONSTRUCTORS.Booleans.Silent ==
true) then
----------------------------------------
-- Resolver --
if (getgenv().Void.Aiming.Silentbot.AutomaticResolver == true)
then
if
(VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.X >= 35 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Y >= 20 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Z >= 35 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.X <= -30 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Y <= -25 or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Velocity.Z <= -30) then
Resolver = true;
end;
end;
----------------------------------------
coroutine.wrap(function()
if (VOID_CONSTRUCTORS.Data.Silent_Target) and
(VOID_CONSTRUCTORS.Data.Silent_Target ~= nil and
VOID_CONSTRUCTORS.Data.Silent_Target.Character) then
pcall(function()
Data.Positions.Last =
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Position;
Data.Time.Last = tick();
---------------------------------------
wait(0.00350);
---------------------------------------
Data.Positions.Current =
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.Position;
Data.Time.Current = tick();
end);
end;
end)();
----------------------------------------
local SelectedPart = (
getgenv().Void.Aiming.Silentbot.Hitting == 0 and
GetNearestPoint(VOID_CONSTRUCTORS.Data.Silent_Target.Character) or
getgenv().Void.Aiming.Silentbot.Hitting == 1 and
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart or
getgenv().Void.Aiming.Silentbot.Hitting == 2 and
VOID_CONSTRUCTORS.Data.Silent_Target.Character[getgenv().Void.Aiming.Silentbot.Base
Part] or
getgenv().Void.Aiming.Silentbot.Hitting == 3 and
VOID_CONSTRUCTORS.Data.Silent_Target.Character:children()[math.random(1,
#VOID_CONSTRUCTORS.Data.Silent_Target.Character:children())] or
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart
) or VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart
or VOID_CONSTRUCTORS.Data.Silent_Target.Character.HumanoidRootPart;
if (Resolver == true) then
SelectedPart.Velocity = Vector3.new(
-- X Axis
0 + (
-- V1
),
-- Y Axis
0 + (
-- V1
),
-- Z Axis
0 + (
-- V1
)
);
SelectedPart.AssemblyLinearVelocity = Vector3.new(
-- X Axis
0 + (
-- V1
),
-- Y Axis
0 + (
-- V1
),
-- Z Axis
0 + (
-- V1
)
);
end;
-- Predicted Pos --
local MissChanceGen = function(Percentage)
return math.random() <= (Percentage / 100);
end;
if (getgenv().Void.Aiming.Silentbot.Miss.Enabled == true) then
local Miss =
MissChanceGen(getgenv().Void.Aiming.Silentbot.Miss.Chance);
if (Miss == true) then
SelectedPart.Velocity += Vector3.new(
-- X Axis
math.random(getgenv().Void.Aiming.Silentbot.Miss.Intensity.X[1],
getgenv().Void.Aiming.Silentbot.Miss.Intensity.X[2]),
-- Y Axis
math.random(getgenv().Void.Aiming.Silentbot.Miss.Intensity.Y[1],
getgenv().Void.Aiming.Silentbot.Miss.Intensity.Y[2]),
-- Z Axis
math.random(getgenv().Void.Aiming.Silentbot.Miss.Intensity.Z[1],
getgenv().Void.Aiming.Silentbot.Miss.Intensity.Z[2])
);
end;
end;
Players.LocalPlayer.Character.PrimaryPart.CFrame =
VOID_CONSTRUCTORS.Data.Silent_Target.Character.PrimaryPart.CFrame +
getgenv().Void.Aiming.Silentbot.Strafe.Do360 == true and Vector3.new(Degree_X,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Y,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Z) or
Vector3.new(getgenv().Void.Aiming.Silentbot.Strafe.Offset.X,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Y,
getgenv().Void.Aiming.Silentbot.Strafe.Offset.Z);
end;
task.wait(1 /
getgenv().Void.Aiming.Silentbot.Strafe.Speed); -- 1 Second / Speed = 1 / 5 = 0.20;
end;
end);
end);
VOID_CONSTRUCTORS.Coroutines['SilentStrafe']();
end;
if (HOOK_POS == true) then
return CFrame.new(Predicted_Pos);
end;
end;
end;
return OldIndexFunc(self, idx);
end);
setreadonly(GameMT, true);
end)();