Lewati ke konten
Berfungsi

OPEN SOURCE: Aftermath silent aim

CLclarkdevlinorg1 tayanganUniversal26 Jul 2026
Bagikan
OPEN SOURCE: Aftermath silent aim

Kode Script

Lua
-- https://robloxscripts.com/script/aftermath-full-anti-cheat-bypass
loadstring(game:HttpGet("https://robloxscripts.com/raw/aftermath-full-anti-cheat-bypass"))()

local TargetPart = "Head"

local ReplicatedFirst = cloneref(game:GetService("ReplicatedFirst"))
local ReplicatedStorage = cloneref(game:GetService("ReplicatedStorage"))
local UserInputService = cloneref(game:GetService("UserInputService"))
local Players = cloneref(game:GetService("Players"))

local CustomMeshCharacter = require(ReplicatedFirst:WaitForChild("GunSystemPlugins"):WaitForChild("CustomMeshCharacter"))
local ConfigService = require(ReplicatedStorage:WaitForChild("CustomCharacter"):WaitForChild("ConfigService"))
local GunInventory = require(ReplicatedStorage:WaitForChild("GunSystem"):WaitForChild("GunLibrary"):WaitForChild("GunInventory"))

local LocalPlayer = Players.LocalPlayer
local CurrentCamera = workspace.CurrentCamera

local StateOffsets = {
    ["Normal"] = 4.75,
    ["Crouch"] = 3.5,
    ["Prone"] = 1.75,
    ["Sit"] = 2 -- Idfk cant even shoot while sitting
}

local PlayerState = LocalPlayer:WaitForChild("CharData"):WaitForChild("PlayerState")

local IsDead = function(Player: Player)
    return Player:GetAttribute("Dead") or Player:GetAttribute("StartLoading") ~= nil
end

local IsInSquad = function(Player: Player)
    local Squad = Player:GetAttribute("SquadName")

    if Squad == nil then
        return false
    end

    return Squad == LocalPlayer:GetAttribute("SquadName")
end

local GetClosestPlayer = function()
    local MouseLocation = UserInputService:GetMouseLocation()
    local ClosestPlayer, Distance = nil, math.huge

    for _,Data in CustomMeshCharacter:GetCharacters() do
        local Player = Data.Player

        if Player == LocalPlayer or IsDead(Player) or IsInSquad(Player) then
            continue
        end

        local Char = Data.WorldModel
        local AimPart = Char:FindFirstChild(TargetPart)

        if not AimPart then
            continue
        end

        local ScreenPos, OnScreen = CurrentCamera:WorldToViewportPoint(AimPart.Position)

        if not OnScreen then
            continue
        end

        local Dist = (Vector2.new(ScreenPos.X, ScreenPos.Y) - MouseLocation).Magnitude

        if Distance < Dist then
            continue
        end

        Distance = Dist
        ClosestPlayer = {
            Player = Data.Player,
            WorldModel = Data.WorldModel,
            TargetPart = AimPart,
            Character = Data.Character,
        }
    end

    return ClosestPlayer
end

local DefaultBulletSpeed = ConfigService.server():get("sv_default_bullet_speed")
local LocalInventory = GunInventory.new(LocalPlayer)

local BulletSpeed = DefaultBulletSpeed
local OnSelectedChanged = function(Data)
    local EquippedWeaponData = Data.WeaponData
    if not EquippedWeaponData then
        return
    end

    local Stats = EquippedWeaponData.Stats
    local BulletSettings = Stats.BulletSettings
    BulletSpeed = BulletSettings.BulletSpeed and BulletSettings.BulletSpeed.Value or DefaultBulletSpeed
end

if LocalInventory.WeaponData then
    OnSelectedChanged(LocalInventory)
end
LocalInventory.SelectedChanged:Connect(OnSelectedChanged)

local BulletGravity = ConfigService.server():get("sv_default_bullet_gravity") or 0
local PredictPosition = function(LocalPos, TargetPos, TargetVelocity)
    local TimeToHit = (LocalPos - TargetPos).Magnitude / BulletSpeed
    local Predicted = TargetPos + (TargetVelocity * TimeToHit)

    TimeToHit = (LocalPos - Predicted).Magnitude / BulletSpeed

    return Predicted + Vector3.yAxis * (BulletGravity * TimeToHit ^ 2), Predicted
end

local Offsets = {
    CFrame = { 32, 38, 39, 40, 44 },
    LookVector = { 33, 34, 45, 46 },
    Position = { 49, 50, 51, 56, 16 },
    Spread = 22,
    Pitch = 36,
    Yaw = 37,
    BulletId = 48,
    Multipliers = 54,
    Multipliers2 = 55,
    Timestamps = { 31, 4, 8 },
}

local BulletHoleOffsets = {
    RaycastResult = 3,
    ClientTick = 8,
    Position = { 9, 10 }
}

local GetSpread = function(BulletId, Spread)
    local Rand = Random.new(BulletId)
    return Vector3.new(
        Rand:NextNumber() - Rand:NextNumber(),
        Rand:NextNumber() - Rand:NextNumber(),
        Rand:NextNumber() - Rand:NextNumber()
    ) / Spread
end

local OldCreate; OldCreate = hookfunction(getrenv().buffer.create, newcclosure(function(Size)
    if Size ~= 300 then
        return OldCreate(Size)
    end

    local Stack = debug.getstack(3)[1]

    if type(Stack[BulletHoleOffsets.RaycastResult]) == "table" and Stack[BulletHoleOffsets.RaycastResult].Resimulation then
        -- bullet_hole
        return OldCreate(Size)
    end

    local PredictedCFrame = CFrame.lookAt(Vector3.zero, Stack[Offsets.LookVector[1]])
    local CameraOffset = Vector3.yAxis * (StateOffsets[PlayerState.Value] or 4.75)
    local Origin = Stack[Offsets.Position[1]] + CameraOffset

    local Closest = GetClosestPlayer()
    if Closest then
        local RootPart = Closest.Character:FindFirstChild("Part")
        local CharVelocity = Closest.Player:FindFirstChild("CharData"):FindFirstChild("Velocity")
        local Car = Closest.Player:FindFirstChild("Car")

        local TargetVelocity = Vector3.zero
        local Vehicle = Car and Car.Value

        if Vehicle then
            TargetVelocity = Vehicle:FindFirstChild("Chassis").AssemblyLinearVelocity
        elseif RootPart then
            TargetVelocity = RootPart.AssemblyLinearVelocity
        elseif CharVelocity then
            TargetVelocity = CharVelocity.Value
        else
            TargetVelocity = Vector3.zero
        end

        local TargetPos = PredictPosition(Origin, Closest.TargetPart.Position, TargetVelocity)

        PredictedCFrame = CFrame.lookAt(Origin, TargetPos)
    end

    -- No spread
    local Spread = GetSpread(Stack[Offsets.BulletId] + 1, Stack[Offsets.Spread])
    PredictedCFrame = CFrame.lookAt(Vector3.zero, PredictedCFrame.LookVector - Spread)

    local Pitch, Yaw, _ = PredictedCFrame:ToOrientation()

    Stack[Offsets.Pitch] = Pitch
    Stack[Offsets.Yaw] = Yaw

    for _,Index in Offsets.CFrame do
        Stack[Index] = PredictedCFrame.Rotation
    end

    for _,Index in Offsets.LookVector do
        Stack[Index] = PredictedCFrame.LookVector
    end

    debug.setstack(3, 1, Stack)

    return OldCreate(Size)
end, "create"))

Deskripsi

Made on game version 267 any future versions most likely have new offsets. I will not be updating this script with new ones if they changed

Komentar (0)

Masuk untuk ikut berdiskusi

  • Jadilah yang pertama berkomentar.

Pertanyaan yang sering diajukan

Bagaimana cara menggunakan script OPEN SOURCE: Aftermath silent aim?
Salin kode script di atas, buka executor Roblox Anda, tempel kodenya, lalu tekan execute saat Anda berada di dalam game. Fitur akan aktif seketika setelah script berjalan.
Apakah script OPEN SOURCE: Aftermath silent aim gratis?
Ya. Script ini gratis untuk disalin dan digunakan. Jika menggunakan sistem kunci, ikuti tautan "Dapatkan kunci" untuk membukanya tanpa biaya.
Apakah script OPEN SOURCE: Aftermath silent aim aman digunakan?
Kode sumber lengkap ditampilkan di halaman ini sehingga Anda bisa membaca persis apa yang dilakukannya sebelum menjalankannya. Selalu gunakan executor tepercaya, dan ingat bahwa menggunakan script melanggar ketentuan layanan Roblox, jadi gunakan dengan risiko Anda sendiri.
Executor mana yang kompatibel dengan OPEN SOURCE: Aftermath silent aim?
Script ini bekerja dengan sebagian besar executor Roblox populer. Lihat halaman executor kami untuk menemukan executor gratis atau berbayar yang tepercaya untuk perangkat Anda.
OPEN SOURCE: Aftermath silent aim | BloxScripter