-- 5307215810 -- made by @xosmanez getgenv().settings = { ragebot = true, cooldown = 0 } local players = game:GetService("Players") local rs = game:GetService("RunService") local lp = players.LocalPlayer local ccamera = workspace.CurrentCamera local camera = workspace.Camera local wep, lastchar, ping local function isAlive(player) if player.Character and player.Character:FindFirstChild("HumanoidRootPart") and player.Character:FindFirstChild("Head") and player.Character:FindFirstChild("Humanoid") and player.Character.Humanoid.Health > 0 then return true end end local function get_wep(character) for _, gun in next, character:GetChildren() do if gun:FindFirstChild("GunServer") and gun:IsA("Tool") then local module = gun:FindFirstChild("Setting") if module and require(module).BaseDamage then return gun, module end end end end local function ray(origin, direciton, multiplier, params) return workspace:Raycast(origin, direciton * multiplier, params) end local function ray_target(a, b) local params = RaycastParams.new() params.FilterDescendantsInstances = {lp.Character, camera, ccamera} params.FilterType = Enum.RaycastFilterType.Exclude; local result = ray(a, -(a-b).Unit, (a-b).Magnitude, params) return result end local function get_target() for _, player in next, players:GetPlayers() do if player ~= lp and isAlive(player) and not player.Character:FindFirstChildWhichIsA("ForceField") then local result = ray_target(lp.Character.Head.Position, player.Character.Head.Position) if result and result.Instance and result.Instance:IsDescendantOf(player.Character) then return player end end end end local function refresh_wep(character) -- retarded wep = nil lastchar = character task.delay(1, function() if character == lastchar then wep = get_wep(character) end end) end if lp.Character then refresh_wep(lp.Character) end lp.CharacterAdded:Connect(refresh_wep) rs.RenderStepped:Connect(function() if not getgenv().settings.ragebot then return end if not isAlive(lp) then return end ping = game.Stats.PerformanceStats.Ping:GetValue() if not wep or not wep.Parent --[[wep.Parent == nil]] then wep, wep_module = get_wep(lp.Character) if not wep then return end end local target = get_target() if target and wep then local args = { tick(), workspace:GetServerTimeNow(), target.Character.Head.Position, target.Character.Head, target.Character.Head.Position, Vector3.new(1, 0, 0), "Character", require(wep_module).BaseDamage } wep.GunServer.HitTest:InvokeServer(unpack(args)) if getgenv().settings.cooldown ~= 0 then task.wait(getgenv().settings.cooldown) end end end)