
Key Required

-- Байпасс анти чита дурки ( кавиной и танка )
loadstring(game:HttpGet('https://pastebin.com/raw/j7Kfrx3H'))();
-- начало скрипта, лелелелеле дай тенге
-- init
if not game:IsLoaded() then
game.Loaded:Wait()
end
if not syn or not protectgui then
getgenv().protectgui = function() end
end
local SilentAimSettings = {
Enabled = false,
ClassName = 'silent aim by russianwing',
ToggleKey = 'RightAlt',
TeamCheck = false,
VisibleCheck = false,
TargetPart = 'HumanoidRootPart',
SilentAimMethod = 'Raycast',
FOVRadius = 130,
FOVVisible = false,
ShowSilentAimTarget = false,
MouseHitPrediction = false,
MouseHitPredictionAmount = 0.165,
HitChance = 100,
}
-- variables
getgenv().SilentAimSettings = Settings
local MainFileName = 'UniversalSilentAim'
local SelectedFile, FileToSave = '', ''
local Camera = workspace.CurrentCamera
local Players = game:GetService('Players')
local RunService = game:GetService('RunService')
local GuiService = game:GetService('GuiService')
local UserInputService = game:GetService('UserInputService')
local HttpService = game:GetService('HttpService')
local LocalPlayer = Players.LocalPlayer
local Mouse = LocalPlayer:GetMouse()
local GetChildren = game.GetChildren
local GetPlayers = Players.GetPlayers
local WorldToScreen = Camera.WorldToScreenPoint
local WorldToViewportPoint = Camera.WorldToViewportPoint
local GetPartsObscuringTarget = Camera.GetPartsObscuringTarget
local FindFirstChild = game.FindFirstChild
local RenderStepped = RunService.RenderStepped
local GuiInset = GuiService.GetGuiInset
local GetMouseLocation = UserInputService.GetMouseLocation
local resume = coroutine.resume
local create = coroutine.create
local ValidTargetParts = { 'Head', 'HumanoidRootPart' }
local PredictionAmount = 0.165
local mouse_box = Drawing.new('Square')
mouse_box.Visible = true
mouse_box.ZIndex = 999
mouse_box.Color = Color3.fromRGB(54, 57, 241)
mouse_box.Thickness = 20
mouse_box.Size = Vector2.new(20, 20)
mouse_box.Filled = true
local fov_circle = Drawing.new('Circle')
fov_circle.Thickness = 1
fov_circle.NumSides = 100
fov_circle.Radius = 180
fov_circle.Filled = false
fov_circle.Visible = false
fov_circle.ZIndex = 999
fov_circle.Transparency = 1
fov_circle.Color = Color3.fromRGB(54, 57, 241)
local ExpectedArguments = {
FindPartOnRayWithIgnoreList = {
ArgCountRequired = 3,
Args = {
'Instance',
'Ray',
'table',
'boolean',
'boolean',
},
},
FindPartOnRayWithWhitelist = {
ArgCountRequired = 3,
Args = {
'Instance',
'Ray',
'table',
'boolean',
},
},
FindPartOnRay = {
ArgCountRequired = 2,
Args = {
'Instance',
'Ray',
'Instance',
'boolean',
'boolean',
},
},
Raycast = {
ArgCountRequired = 3,
Args = {
'Instance',
'Vector3',
'Vector3',
'RaycastParams',
},
},
}
function CalculateChance(Percentage)
-- // Floor the percentage
Percentage = math.floor(Percentage)
-- // Get the chance
local chance = math.floor(Random.new().NextNumber(Random.new(), 0, 1) * 100)
/ 100
-- // Return
return chance <= Percentage / 100
end
--[[file handling]]
do
if not isfolder(MainFileName) then
makefolder(MainFileName)
end
if
not isfolder(
string.format('%s/%s', MainFileName, tostring(game.PlaceId))
)
then
makefolder(string.format('%s/%s', MainFileName, tostring(game.PlaceId)))
end
end
local Files = listfiles(
string.format('%s/%s', 'UniversalSilentAim', tostring(game.PlaceId))
)
-- functions
local function GetFiles() -- credits to the linoria lib for this function, listfiles returns the files full path and its annoying
local out = {}
for i = 1, #Files do
local file = Files[i]
if file:sub(-4) == '.lua' then
-- i hate this but it has to be done ...
local pos = file:find('.lua', 1, true)
local start = pos
local char = file:sub(pos, pos)
while char ~= '/' and char ~= '\\' and char ~= '' do
pos = pos - 1
char = file:sub(pos, pos)
end
if char == '/' or char == '\\' then
table.insert(out, file:sub(pos + 1, start - 1))
end
end
end
return out
end
local function UpdateFile(FileName)
assert(FileName or FileName == 'string', 'oopsies')
writefile(
string.format(
'%s/%s/%s.lua',
MainFileName,
tostring(game.PlaceId),
FileName
),
HttpService:JSONEncode(SilentAimSettings)
)
end
local function LoadFile(FileName)
assert(FileName or FileName == 'string', 'oopsies')
local File = string.format(
'%s/%s/%s.lua',
MainFileName,
tostring(game.PlaceId),
FileName
)
local ConfigData = HttpService:JSONDecode(readfile(File))
for Index, Value in next, ConfigData do
SilentAimSettings[Index] = Value
end
end
local function getPositionOnScreen(Vector)
local Vec3, OnScreen = WorldToScreen(Camera, Vector)
return Vector2.new(Vec3.X, Vec3.Y), OnScreen
end
local function ValidateArguments(Args, RayMethod)
local Matches = 0
if #Args < RayMethod.ArgCountRequired then
return false
end
for Pos, Argument in next, Args do
if typeof(Argument) == RayMethod.Args[Pos] then
Matches = Matches + 1
end
end
return Matches >= RayMethod.ArgCountRequired
end
local function getDirection(Origin, Position)
return (Position - Origin).Unit * 1000
end
local function getMousePosition()
return GetMouseLocation(UserInputService)
end
local function IsPlayerVisible(Player)
local PlayerCharacter = Player.Character
local LocalPlayerCharacter = LocalPlayer.Character
if not (PlayerCharacter or LocalPlayerCharacter) then
return
end
local PlayerRoot = FindFirstChild(PlayerCharacter, Options.TargetPart.Value)
or FindFirstChild(PlayerCharacter, 'HumanoidRootPart')
if not PlayerRoot then
return
end
local CastPoints, IgnoreList =
{ PlayerRoot.Position, LocalPlayerCharacter, PlayerCharacter },
{ LocalPlayerCharacter, PlayerCharacter }
local ObscuringObjects =
#GetPartsObscuringTarget(Camera, CastPoints, IgnoreList)
return (
(ObscuringObjects == 0 and true) or (ObscuringObjects > 0 and false)
)
end
local function getClosestPlayer()
if not Options.TargetPart.Value then
return
end
local Closest
local DistanceToMouse
for _, Player in next, GetPlayers(Players) do
if Player == LocalPlayer then
continue
end
if Toggles.TeamCheck.Value and Player.Team == LocalPlayer.Team then
continue
end
local Character = Player.Character
if not Character then
continue
end
if Toggles.VisibleCheck.Value and not IsPlayerVisible(Player) then
continue
end
local HumanoidRootPart = FindFirstChild(Character, 'HumanoidRootPart')
local Humanoid = FindFirstChild(Character, 'Humanoid')
if
not HumanoidRootPart
or not Humanoid
or Humanoid and Humanoid.Health <= 0
then
continue
end
local ScreenPosition, OnScreen =
getPositionOnScreen(HumanoidRootPart.Position)
if not OnScreen then
continue
end
local Distance = (getMousePosition() - ScreenPosition).Magnitude
if Distance <= (DistanceToMouse or Options.Radius.Value or 2000) then
Closest = (
(
Options.TargetPart.Value == 'Random'
and Character[ValidTargetParts[math.random(
1,
#ValidTargetParts
)]]
) or Character[Options.TargetPart.Value]
)
DistanceToMouse = Distance
end
end
return Closest
end
-- ui creating & handling
local Library = loadstring(
game:HttpGet(
'https://raw.githubusercontent.com/violin-suzutsuki/LinoriaLib/main/Library.lua'
)
)()
Library:SetWatermark('russianwing test')
local Window = Library:CreateWindow({
Title = 'russianwing full source silent',
Center = true,
AutoShow = true,
TabPadding = 8,
MenuFadeTime = 0.2,
})
local GeneralTab = Window:AddTab('General')
local MainBOX = GeneralTab:AddLeftTabbox('Main')
do
local Main = MainBOX:AddTab('Main')
Main:AddToggle('aim_Enabled', { Text = 'Enabled' }):AddKeyPicker(
'aim_Enabled_KeyPicker',
{
Default = 'RightAlt',
SyncToggleState = true,
Mode = 'Toggle',
Text = 'Enabled',
NoUI = false,
}
)
Options.aim_Enabled_KeyPicker:OnClick(function()
SilentAimSettings.Enabled = not SilentAimSettings.Enabled
Toggles.aim_Enabled.Value = SilentAimSettings.Enabled
Toggles.aim_Enabled:SetValue(SilentAimSettings.Enabled)
mouse_box.Visible = SilentAimSettings.Enabled
end)
Main:AddToggle(
'TeamCheck',
{ Text = 'Team Check', Default = SilentAimSettings.TeamCheck }
):OnChanged(function()
SilentAimSettings.TeamCheck = Toggles.TeamCheck.Value
end)
Main:AddToggle(
'VisibleCheck',
{ Text = 'Visible Check', Default = SilentAimSettings.VisibleCheck }
):OnChanged(function()
SilentAimSettings.VisibleCheck = Toggles.VisibleCheck.Value
end)
Main:AddDropdown(
'TargetPart',
{
AllowNull = true,
Text = 'Target Part',
Default = SilentAimSettings.TargetPart,
Values = { 'Head', 'HumanoidRootPart', 'Random' },
}
):OnChanged(function()
SilentAimSettings.TargetPart = Options.TargetPart.Value
end)
Main:AddDropdown(
'Method',
{
AllowNull = true,
Text = 'Silent Aim Method',
Default = SilentAimSettings.SilentAimMethod,
Values = {
'Raycast',
'FindPartOnRay',
'FindPartOnRayWithWhitelist',
'FindPartOnRayWithIgnoreList',
'Mouse.Hit/Target',
},
}
):OnChanged(function()
SilentAimSettings.SilentAimMethod = Options.Method.Value
end)
Main:AddSlider('HitChance', {
Text = 'Hit chance',
Default = 100,
Min = 0,
Max = 100,
Rounding = 1,
Compact = false,
})
Options.HitChance:OnChanged(function()
SilentAimSettings.HitChance = Options.HitChance.Value
end)
end
local MiscellaneousBOX = GeneralTab:AddLeftTabbox('Miscellaneous')
local FieldOfViewBOX = GeneralTab:AddLeftTabbox('Field Of View')
do
local Main = FieldOfViewBOX:AddTab('Visuals')
Main:AddToggle('Visible', { Text = 'Show FOV Circle' })
:AddColorPicker('Color', { Default = Color3.fromRGB(54, 57, 241) })
:OnChanged(function()
fov_circle.Visible = Toggles.Visible.Value
SilentAimSettings.FOVVisible = Toggles.Visible.Value
end)
Main:AddSlider(
'Radius',
{
Text = 'FOV Circle Radius',
Min = 0,
Max = 360,
Default = 130,
Rounding = 0,
}
):OnChanged(function()
fov_circle.Radius = Options.Radius.Value
SilentAimSettings.FOVRadius = Options.Radius.Value
end)
Main:AddToggle('MousePosition', { Text = 'Show Silent Aim Target' })
:AddColorPicker(
'MouseVisualizeColor',
{ Default = Color3.fromRGB(54, 57, 241) }
)
:OnChanged(function()
mouse_box.Visible = Toggles.MousePosition.Value
SilentAimSettings.ShowSilentAimTarget = Toggles.MousePosition.Value
end)
local PredictionTab = MiscellaneousBOX:AddTab('Prediction')
PredictionTab
:AddToggle('Prediction', { Text = 'Mouse.Hit/Target Prediction' })
:OnChanged(function()
SilentAimSettings.MouseHitPrediction = Toggles.Prediction.Value
end)
PredictionTab:AddSlider(
'Amount',
{
Text = 'Prediction Amount',
Min = 0.165,
Max = 1,
Default = 0.165,
Rounding = 3,
}
):OnChanged(function()
PredictionAmount = Options.Amount.Value
SilentAimSettings.MouseHitPredictionAmount = Options.Amount.Value
end)
end
local CreateConfigurationBOX = GeneralTab:AddRightTabbox('Create Configuration')
do
local Main = CreateConfigurationBOX:AddTab('Create Configuration')
Main
:AddInput(
'CreateConfigTextBox',
{
Default = '',
Numeric = false,
Finished = false,
Text = 'Create Configuration to Create',
Tooltip = 'Creates a configuration file containing settings you can save and load',
Placeholder = 'File Name here',
}
)
:OnChanged(function()
if
Options.CreateConfigTextBox.Value
and string.len(Options.CreateConfigTextBox.Value) ~= ''
then
FileToSave = Options.CreateConfigTextBox.Value
end
end)
Main:AddButton('Create Configuration File', function()
if FileToSave ~= '' or FileToSave ~= nil then
UpdateFile(FileToSave)
end
end)
end
local SaveConfigurationBOX = GeneralTab:AddRightTabbox('Save Configuration')
do
local Main = SaveConfigurationBOX:AddTab('Save Configuration')
Main:AddDropdown(
'SaveConfigurationDropdown',
{
AllowNull = true,
Values = GetFiles(),
Text = 'Choose Configuration to Save',
}
)
Main:AddButton('Save Configuration', function()
if Options.SaveConfigurationDropdown.Value then
UpdateFile(Options.SaveConfigurationDropdown.Value)
end
end)
end
local LoadConfigurationBOX = GeneralTab:AddRightTabbox('Load Configuration')
do
local Main = LoadConfigurationBOX:AddTab('Load Configuration')
Main:AddDropdown(
'LoadConfigurationDropdown',
{
AllowNull = true,
Values = GetFiles(),
Text = 'Choose Configuration to Load',
}
)
Main:AddButton('Load Configuration', function()
if table.find(GetFiles(), Options.LoadConfigurationDropdown.Value) then
LoadFile(Options.LoadConfigurationDropdown.Value)
Toggles.TeamCheck:SetValue(SilentAimSettings.TeamCheck)
Toggles.VisibleCheck:SetValue(SilentAimSettings.VisibleCheck)
Options.TargetPart:SetValue(SilentAimSettings.TargetPart)
Options.Method:SetValue(SilentAimSettings.SilentAimMethod)
Toggles.Visible:SetValue(SilentAimSettings.FOVVisible)
Options.Radius:SetValue(SilentAimSettings.FOVRadius)
Toggles.MousePosition:SetValue(
SilentAimSettings.ShowSilentAimTarget
)
Toggles.Prediction:SetValue(SilentAimSettings.MouseHitPrediction)
Options.Amount:SetValue(SilentAimSettings.MouseHitPredictionAmount)
Options.HitChance:SetValue(SilentAimSettings.HitChance)
end
end)
end
resume(create(function()
RenderStepped:Connect(function()
if Toggles.MousePosition.Value and Toggles.aim_Enabled.Value then
if getClosestPlayer() then
local Root = getClosestPlayer().Parent.PrimaryPart
or getClosestPlayer()
local RootToViewportPoint, IsOnScreen =
WorldToViewportPoint(Camera, Root.Position)
-- using PrimaryPart instead because if your Target Part is "Random" it will flicker the square between the Target's Head and HumanoidRootPart (its annoying)
mouse_box.Visible = IsOnScreen
mouse_box.Position =
Vector2.new(RootToViewportPoint.X, RootToViewportPoint.Y)
else
mouse_box.Visible = false
mouse_box.Position = Vector2.new()
end
end
if Toggles.Visible.Value then
fov_circle.Visible = Toggles.Visible.Value
fov_circle.Color = Options.Color.Value
fov_circle.Position = getMousePosition()
end
end)
end))
-- hooks
local oldNamecall
oldNamecall = hookmetamethod(
game,
'__namecall',
newcclosure(function(...)
local Method = getnamecallmethod()
local Arguments = { ... }
local self = Arguments[1]
local chance = CalculateChance(SilentAimSettings.HitChance)
if
Toggles.aim_Enabled.Value
and self == workspace
and not checkcaller()
and chance == true
then
if
Method == 'FindPartOnRayWithIgnoreList'
and Options.Method.Value == Method
then
if
ValidateArguments(
Arguments,
ExpectedArguments.FindPartOnRayWithIgnoreList
)
then
local A_Ray = Arguments[2]
local HitPart = getClosestPlayer()
if HitPart then
local Origin = A_Ray.Origin
local Direction = getDirection(Origin, HitPart.Position)
Arguments[2] = Ray.new(Origin, Direction)
return oldNamecall(unpack(Arguments))
end
end
elseif
Method == 'FindPartOnRayWithWhitelist'
and Options.Method.Value == Method
then
if
ValidateArguments(
Arguments,
ExpectedArguments.FindPartOnRayWithWhitelist
)
then
local A_Ray = Arguments[2]
local HitPart = getClosestPlayer()
if HitPart then
local Origin = A_Ray.Origin
local Direction = getDirection(Origin, HitPart.Position)
Arguments[2] = Ray.new(Origin, Direction)
return oldNamecall(unpack(Arguments))
end
end
elseif
(Method == 'FindPartOnRay' or Method == 'findPartOnRay')
and Options.Method.Value:lower() == Method:lower()
then
if
ValidateArguments(
Arguments,
ExpectedArguments.FindPartOnRay
)
then
local A_Ray = Arguments[2]
local HitPart = getClosestPlayer()
if HitPart then
local Origin = A_Ray.Origin
local Direction = getDirection(Origin, HitPart.Position)
Arguments[2] = Ray.new(Origin, Direction)
return oldNamecall(unpack(Arguments))
end
end
elseif Method == 'Raycast' and Options.Method.Value == Method then
if ValidateArguments(Arguments, ExpectedArguments.Raycast) then
local A_Origin = Arguments[2]
local HitPart = getClosestPlayer()
if HitPart then
Arguments[3] = getDirection(A_Origin, HitPart.Position)
return oldNamecall(unpack(Arguments))
end
end
end
end
return oldNamecall(...)
end)
)
local oldIndex = nil
oldIndex = hookmetamethod(
game,
'__index',
newcclosure(function(self, Index)
if
self == Mouse
and not checkcaller()
and Toggles.aim_Enabled.Value
and Options.Method.Value == 'Mouse.Hit/Target'
and getClosestPlayer()
then
local HitPart = getClosestPlayer()
if Index == 'Target' or Index == 'target' then
return HitPart
elseif Index == 'Hit' or Index == 'hit' then
return (
(
Toggles.Prediction.Value
and (
HitPart.CFrame
+ (HitPart.Velocity * PredictionAmount)
)
)
or (not Toggles.Prediction.Value and HitPart.CFrame)
)
elseif Index == 'X' or Index == 'x' then
return self.X
elseif Index == 'Y' or Index == 'y' then
return self.Y
elseif Index == 'UnitRay' then
return Ray.new(self.Origin, (self.Hit - self.Origin).Unit)
end
end
return oldIndex(self, Index)
end)
)

Telegram: russianwingx