Run it
Copy the script and paste it into your executor.
RUN_SERVICE = (:());
TWEEN_SERVICE = (:());
PLAYERS = (:());
localPlayer = PLAYERS.LocalPlayer;
comm_id, comm_channel = ();
camera = (.CurrentCamera);
ignore = (.Ignore);
mouse = localPlayer:();
closest = ;
btDefault = {enabled = ; outline = ; color = .(, , ); outlineColor = .(, , ); thickness = ; transparency = };
textDefault = {enabled = ; outline = ; color = .(, , ); outlineColor = .(, , ); size = ; font = ; transparency = };
esp = {
settings = {
box = .(btDefault);
tracer = .(btDefault);
name = .(textDefault);
weapon = .(textDefault);
};
};
esp.cache = {
__index = esp;
};
combatSettings = {
visCheck = ;
aimPart = ;
noRecoil = ;
noSway = ;
aimbot = {
enabled = ;
smoothing = ;
};
silentAim = {
enabled = ;
hitChance = ;
};
fovCircle = {
enabled = ;
sides = ;
color = .(, , );
transparency = ;
radius = ;
thickness = ;
filled =
};
};
mouse2Down = ;
esp:()
self.data self.data.character self.data.character.Head self.player.Team ~= localPlayer.Team
torso = self.data.character.Torso;
screenPosition, onScreen = camera:(torso.CFrame.Position);
torso screenPosition onScreen
scaleFactor = / (screenPosition.Z * .(.(camera.FieldOfView / )) * ) * ;
boxWidth, boxHeight = .( * scaleFactor), .( * scaleFactor);
boxPos = .(.(screenPosition.X - boxWidth / ), .(screenPosition.Y - boxHeight / ));
topTextY = (screenPosition.Y - (boxHeight + self.drawings.name.TextBounds.Y + ) / );
bottomTextY = (screenPosition.Y + (boxHeight + self.drawings.weapon.TextBounds.Y - ) / );
self.drawings.boxOutline.Visible = esp.settings.box.enabled esp.settings.box.outline;
self.drawings.boxOutline.Size = .(boxWidth, boxHeight);
self.drawings.boxOutline.Position = boxPos;
self.drawings.boxOutline.Color = esp.settings.box.outlineColor;
self.drawings.boxOutline.Thickness = esp.settings.box.thickness + ;
self.drawings.boxOutline.Transparency = esp.settings.box.transparency;
self.drawings.box.Visible = esp.settings.box.enabled;
self.drawings.box.Size = .(boxWidth, boxHeight);
self.drawings.box.Position = boxPos;
self.drawings.box.Color = esp.settings.box.color;
self.drawings.box.Thickness = esp.settings.box.thickness;
self.drawings.box.Transparency = esp.settings.box.transparency;
self.drawings.tracerOutline.Visible = esp.settings.tracer.enabled esp.settings.tracer.outline;
self.drawings.tracerOutline.From = .(camera.ViewportSize.X / , camera.ViewportSize.Y);
self.drawings.tracerOutline.To = .(screenPosition.X, screenPosition.Y);
self.drawings.tracerOutline.Color = esp.settings.tracer.outlineColor;
self.drawings.tracerOutline.Thickness = esp.settings.tracer.thickness + ;
self.drawings.tracerOutline.Transparency = esp.settings.tracer.transparency;
self.drawings.tracer.Visible = esp.settings.tracer.enabled;
self.drawings.tracer.From = .(camera.ViewportSize.X / , camera.ViewportSize.Y);
self.drawings.tracer.To = .(screenPosition.X, screenPosition.Y);
self.drawings.tracer.Color = esp.settings.tracer.color;
self.drawings.tracer.Thickness = esp.settings.tracer.thickness;
self.drawings.tracer.Transparency = esp.settings.tracer.transparency;
self.drawings.weapon.Visible = esp.settings.weapon.enabled;
self.drawings.weapon.Text = (self.data.weapon) ;
self.drawings.weapon.Size = esp.settings.weapon.size;
self.drawings.weapon.Color = esp.settings.weapon.color;
self.drawings.weapon.Transparency = esp.settings.weapon.transparency;
self.drawings.weapon.Outline = esp.settings.weapon.outline;
self.drawings.weapon.OutlineColor = esp.settings.weapon.outlineColor;
self.drawings.weapon.Font = esp.settings.weapon.font;
self.drawings.weapon.Position = .(screenPosition.X, bottomTextY);
self.drawings.weapon.Center = ;
self.drawings.name.Visible = esp.settings.name.enabled;
self.drawings.name.Text = self.player.Name;
self.drawings.name.Size = esp.settings.name.size;
self.drawings.name.Color = esp.settings.name.color;
self.drawings.name.Transparency = esp.settings.name.transparency;
self.drawings.name.Outline = esp.settings.name.outline;
self.drawings.name.OutlineColor = esp.settings.name.outlineColor;
self.drawings.name.Font = esp.settings.name.font;
self.drawings.name.Position = .(screenPosition.X, topTextY);
self.drawings.name.Center = ;
self.drawings.boxOutline.Visible = ;
self.drawings.box.Visible = ;
self.drawings.tracerOutline.Visible = ;
self.drawings.tracer.Visible = ;
self.drawings.weapon.Visible = ;
self.drawings.name.Visible = ;
self.drawings.boxOutline.Visible = ;
self.drawings.box.Visible = ;
self.drawings.tracerOutline.Visible = ;
self.drawings.tracer.Visible = ;
self.drawings.weapon.Visible = ;
self.drawings.name.Visible = ;
esp.(player, data)
self = ({}, esp.cache);
self.player = player;
self.data = data;
self.drawings = {
boxOutline = .(), {};
box = .(), {};
tracerOutline = .(), {};
tracer = .(), {};
weapon = .(), {};
name = .(), {};
};
self.connection = RUN_SERVICE.RenderStepped:(()
self:()
);
esp.cache[player] = self;
self;
esp:()
self.connection:();
_, drawing , self.drawings
(drawing) ~=
drawing:();
esp.cache[self.player] = ;
.(self);
esp.()
enemies = {};
k, v , esp.cache
(k) == v.data v.data.character k.Team ~= localPlayer.Team
.(enemies, v.data.character);
enemies;
PLAYERS.PlayerRemoving:((player)
self = esp.cache[player];
self
self:();
);
comm_channel.Event:((caller, player, data)
caller ==
self = esp.cache[player];
self
self.data = data;
esp.(player);
);
(()[], , comm_id);
(head, character)
params = RaycastParams.();
params.FilterDescendantsInstances = {camera, ignore};
params.FilterType = .RaycastFilterType.Exclude;
params.IgnoreWater = ;
result = :(camera.CFrame.Position, head.CFrame.Position - camera.CFrame.Position, params);
result result.Instance result.Instance:(character)
;
;
()
enemies = esp.();
maxDist = .huge;
closest = ;
_, v , enemies
v v.Head v[combatSettings.aimPart]
head = v.Head;
headPos = head.CFrame.Position;
headPosV2, onScreen = camera:(headPos);
onScreen
distance = (.(headPosV2.X, headPosV2.Y) - (camera.ViewportSize / )).Magnitude;
((distance < combatSettings.fovCircle.radius) combatSettings.fovCircle.enabled) ( combatSettings.visCheck (head, head.Parent))
distance = (camera.CFrame.Position - headPos).Magnitude;
distance < maxDist
maxDist = distance;
closest = v[combatSettings.aimPart];
closest
closest;
;
(pos)
mousePos = .(mouse.X, mouse.Y);
((pos.X - mousePos.X) / combatSettings.aimbot.smoothing, (pos.Y - mousePos.Y) / combatSettings.aimbot.smoothing);
mouse.Button2Down:(()
mouse2Down = ;
);
mouse.Button2Up:(()
mouse2Down = ;
);
circle = .();
circle.Position = .(camera.ViewportSize.X / , camera.ViewportSize.Y / );
RUN_SERVICE.Heartbeat:(()
closest = ();
comm_channel:(, , {
combatSettings = combatSettings;
closest = closest;
});
combatSettings.aimbot.enabled mouse2Down
closest
(camera:(closest.CFrame.Position));
circle.Visible = combatSettings.fovCircle.enabled;
circle.Thickness = combatSettings.fovCircle.thickness;
circle.NumSides = combatSettings.fovCircle.sides;
circle.Radius = combatSettings.fovCircle.radius;
circle.Color = combatSettings.fovCircle.color;
circle.Transparency = combatSettings.fovCircle.transparency;
)
repo = ;
Library = (:(repo .. ))();
ThemeManager = (:(repo .. ))();
Window = Library:({
Title = ((:()):(.PlaceId).Name) .. .. ;
Center = ;
AutoShow = ;
TabPadding = ;
MenuFadeTime =
});
Tabs = {
Combat = Window:();
ESP = Window:();
[] = Window:()
};
aimingGB = Tabs.Combat:();
gunModsGB = Tabs.Combat:();
boxGB = Tabs.ESP:();
tracerGB = Tabs.ESP:();
nameGB = Tabs.ESP:();
weaponGB = Tabs.ESP:();
aimingGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
combatSettings.aimbot.enabled = Value;
});
aimingGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
combatSettings.silentAim.enabled = Value;
});
aimingGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
combatSettings.visCheck = Value;
});
aimingGB:(, {
Values = {, },
Default = ,
Multi = ,
Text = ,
Tooltip = ,
Callback = (Value)
combatSettings.aimPart = Value;
});
aimingGB:(, {
Text = ,
Default = combatSettings.aimbot.smoothing,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
combatSettings.smoothing = Value;
});
aimingGB:(, {
Text = ,
Default = combatSettings.silentAim.hitChance,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
combatSettings.silentAim.hitChance = Value;
});
aimingGB:();
aimingGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
combatSettings.fovCircle.enabled = Value;
});
aimingGB:(, {
Text = ,
Default = combatSettings.fovCircle.radius,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
combatSettings.fovCircle.radius = Value;
});
aimingGB:(, {
Text = ,
Default = combatSettings.fovCircle.thickness,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
combatSettings.fovCircle.thickness = Value;
});
aimingGB:(, {
Text = ,
Default = combatSettings.fovCircle.sides,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
combatSettings.fovCircle.sides = Value;
});
aimingGB:(, {
Text = ,
Default = combatSettings.fovCircle.transparency,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
combatSettings.fovCircle.transparency = Value;
});
aimingGB:():(, {
Default = combatSettings.fovCircle.color,
Title = ,
Transparency = ,
Callback = (Value)
combatSettings.fovCircle.color = Value;
});
gunModsGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
combatSettings.noRecoil = Value;
});
boxGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.box.enabled = Value;
});
boxGB:(, {
Text = ,
Default = esp.settings.box.thickness,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.box.thickness = Value;
});
boxGB:(, {
Text = ,
Default = esp.settings.box.transparency,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.box.transparency = Value;
});
boxGB:():(, {
Default = esp.settings.box.color,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.box.color = Value;
});
boxGB:()
boxGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.box.outline = Value;
});
boxGB:():(, {
Default = esp.settings.box.outlineColor,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.box.outlineColor = Value;
});
tracerGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.tracer.enabled = Value;
});
tracerGB:(, {
Text = ,
Default = esp.settings.tracer.thickness,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.tracer.thickness = Value;
});
tracerGB:(, {
Text = ,
Default = esp.settings.tracer.transparency,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.tracer.transparency = Value;
});
tracerGB:():(, {
Default = esp.settings.tracer.color,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.tracer.color = Value;
});
tracerGB:()
tracerGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.tracer.outline = Value;
});
tracerGB:():(, {
Default = esp.settings.tracer.outlineColor,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.tracer.outlineColor = Value;
});
nameGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.name.enabled = Value;
});
nameGB:(, {
Values = {, , , },
Default = ,
Multi = ,
Text = ,
Tooltip = ,
Callback = (Value)
esp.settings.name.font = .Fonts[Value];
});
nameGB:(, {
Text = ,
Default = esp.settings.name.size,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.name.size = Value;
});
nameGB:(, {
Text = ,
Default = esp.settings.name.transparency,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.name.transparency = Value;
});
nameGB:():(, {
Default = esp.settings.name.color,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.name.color = Value;
});
nameGB:()
nameGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.name.outline = Value;
});
nameGB:():(, {
Default = esp.settings.name.outlineColor,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.name.outlineColor = Value;
});
weaponGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.weapon.enabled = Value;
});
weaponGB:(, {
Values = {, , , },
Default = ,
Multi = ,
Text = ,
Tooltip = ,
Callback = (Value)
esp.settings.weapon.font = .Fonts[Value];
});
weaponGB:(, {
Text = ,
Default = esp.settings.weapon.size,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.weapon.size = Value;
});
weaponGB:(, {
Text = ,
Default = esp.settings.weapon.transparency,
Min = ,
Max = ,
Rounding = ,
Compact = ,
Callback = (Value)
esp.settings.weapon.transparency = Value;
});
weaponGB:():(, {
Default = esp.settings.weapon.color,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.weapon.color = Value;
});
weaponGB:()
weaponGB:(, {
Text = ;
Default = ;
Tooltip = ;
Callback = (Value)
esp.settings.weapon.outline = Value;
});
weaponGB:():(, {
Default = esp.settings.weapon.outlineColor,
Title = ,
Transparency = ,
Callback = (Value)
esp.settings.weapon.outlineColor = Value;
});
MenuGroup = Tabs[]:();
MenuGroup:(, () Library:() );
MenuGroup:():(, {Default = , NoUI = , Text = });
Library.ToggleKeybind = Options.MenuKeybind;
ThemeManager:(Library);
ThemeManager:(Tabs[]);
ThemeManager:();Loads code from the internet. It downloads more code when it runs (loadstring + HttpGet), which can change after it was posted. From: raw.githubusercontent.com.
-keyless and what not the most legit looking slient aim and esp ion know what else to put here thats it :| NOTE-make sure you can see some part of their body before you shoot at them or just turn off visibility check Made By tupsutumppu EDITED: wait for a web executor to come out if you have one thats decent go ahead and use this