Sign In to Your Account

Manual registration is temporarily disabled. Please use Discord, Google or GitHub to create an account.

CONTINUE WITH
[BEST] Stellar [AUTOSPRINT, KILLAURA, ANTIKB] - ⚔️1.8 PVP Club Script | Free Roblox Script
⚔️1.8 PVP Club ⚔️1.8 PVP Club

[BEST] Stellar [AUTOSPRINT, KILLAURA, ANTIKB]

⚔️1.8 PVP Club • 2 views • just now
[BEST] Stellar [AUTOSPRINT, KILLAURA, ANTIKB] - Roblox Script
Mobile Mobile Friendly
Key Key Required

Description

Credits: stav

Stellar is a 1.8 PVP club keyless script mainly focused for PvP. It supports Solara and has lots of settings to fit your need.Features:AutoSprintKillauraAntiKBSpeed

⚔️1.8 PVP Club
Explore more scripts
View all ⚔️1.8 PVP Club scripts

540 Lines 19,392 Bytes
--[[rscripts:analytics:start]]
-- Script analytics (enabled by the creator on rscripts.net).
-- Runs in its own thread and cannot affect the script below.
task.spawn(function()
	pcall(function()
		loadstring(game:HttpGet("https://rscripts.net/api/telemetry/v2/client.lua?s=6ac740f78fe5a7b664a4ef7b"))()
	end)
end)
--[[rscripts:analytics:end]]

--[[

    Stellar
    A dominant -- combat focused 1.8 PVP Club script
    
    by @.__stav

]]

local cloneref = cloneref or function(obj)
    return obj
end

local ReplicatedStorage = cloneref(game:GetService('ReplicatedStorage'))
local UserInputService = cloneref(game:GetService('UserInputService'))
local HttpService = cloneref(game:GetService('HttpService'))
local RunService = cloneref(game:GetService('RunService'))
local GuiService = cloneref(game:GetService('GuiService'))
local Players = cloneref(game:GetService('Players'))

local lplr = Players.LocalPlayer
local Raycast = loadstring(game:HttpGet('https://gitlab.com/stxvv/koolrewrite/-/raw/master/libraries/Raycast.lua?ref_type=heads'))()

local function isAlive(plr)
    plr = plr or lplr
    
    local obj
	if plr:IsA('Model') then
		obj = {
			Character = plr
		}
	else
		obj = plr
	end

	return (obj.Character and obj.Character:FindFirstChild('Humanoid') and obj.Character.Humanoid.Health > 0) and true or false
end

local function getClosestEntity(range, angle, wallcheck)
    local minrnge, entity = range, nil

    for _, v in Players:GetPlayers() do
        if isAlive(v) and v ~= lplr then
            if wallcheck and not Raycast:CanSee(v.Character:WaitForChild('HumanoidRootPart', 2)) then continue end

            local plrDir = math.deg(lplr.Character:WaitForChild('HumanoidRootPart', 2).CFrame.LookVector:Angle((v.Character:WaitForChild('HumanoidRootPart', 2).Position - lplr.Character:WaitForChild('HumanoidRootPart', 2).Position).Unit))
            if plrDir > angle / 2 then continue end

            local dist = (v.Character:WaitForChild('HumanoidRootPart', 2).Position - lplr.Character:WaitForChild('HumanoidRootPart', 2).Position).Magnitude
            if dist < minrnge then
                minrnge = dist
                entity = v
            end
        end
    end

    return entity
end

local function getTool(plr)
	plr = plr or lplr

    if isAlive(plr) then
    	return plr.Character and plr.Character:FindFirstChildOfClass('Tool') or nil
    end

    return nil
end

--[[

    Emulation

]]

local function decompile(scriptPath: ModuleScript | LocalScript): string
    local sucByte, bytecode = pcall(getscriptbytecode, scriptPath)

    if not sucByte then
        return `-- Failed to get script bytecode, error:\n\n--[[\n{bytecode}\n--]]`
    end

    local okRequest: boolean, httpResult = pcall(request, {
        Url = 'https://api.lua.expert/decompile',
        Method = 'POST',
        Body = HttpService:JSONEncode({
            script = base64encode(bytecode),
        }),
        Headers = {
            ['Content-Type'] = 'application/json'
        },
    })

    if not okRequest then
        return `-- Failed to decompile, error:\n\n--[[\n{httpResult}\n--]]`
    end

    if httpResult.StatusCode ~= 200 then
        return `-- Error occurred while requesting the API, error:\n\n--[[\n{httpResult.Body}\n--]]`
    end

    return string.gsub(httpResult.Body, string.char(0x00CD), ' ')
end

local req, fakereq = require, nil
local function require(obj)
    local exec = select(1, identifyexecutor())
    if not require or table.find({'Solara', 'Xeno'}, exec) then
        local source = decompile(obj)
        local func = loadstring(source)

        if getfenv then
            getfenv(func).require = fakereq
            getfenv(func).script = obj
        end

        local suc, res = pcall(function()
            return func()
        end)

        if suc and res ~= nil then
            return res
        else
            return error('Requested module experienced an error while loading')
        end
    end

    return req(obj)
end
fakereq = require

local ControllerInput = {
    IsBlocked = function()
		local MenuIsOpen
        if lplr:GetAttribute('DuelMenuOpen') or lplr:GetAttribute('DuelFrozen') or lplr:GetAttribute('SettingsOpen') then
        	MenuIsOpen = true
        else
        	MenuIsOpen = GuiService.MenuIsOpen
            if not MenuIsOpen then
            	if not UserInputService:GetFocusedTextBox() then
            		if lplr:GetAttribute('UpgradeShopOpen') or lplr:GetAttribute('RobuxShopOpen') or lplr:GetAttribute('CosmeticsOpen') or lplr:GetAttribute('CosmeticCrateOpen') then
            			MenuIsOpen = true
            		else
            			MenuIsOpen = lplr:GetAttribute('DailyRewardsOpen') == true
            		end
            	else
            		MenuIsOpen = true
            	end
            end
        end

        return MenuIsOpen
	end
}

local Dependencies = {
    Geometry = require(ReplicatedStorage.MinecraftMeleeGeometry),
    HitVisuals = require(ReplicatedStorage.MeleeHitVisuals),
    isBlocked = ControllerInput.IsBlocked,
    vmSwing = -10
}

do
    local restP, unstableSince, lastClone, parts = nil, nil, nil, {}

    pcall(function()
    	RunService:UnbindFromRenderStep('Swing')
    end)

    local function getViewmodel()
    	if not isAlive(lplr) then return end
    	if not workspace.CurrentCamera:FindFirstChild('MinecraftSwordViewmodel') or not workspace.CurrentCamera:FindFirstChild('MinecraftSwordViewmodel'):FindFirstChild('Sword') then return end
        if not lplr.PlayerGui:FindFirstChild('FixedFovHeldItems'):FindFirstChildOfClass('ViewportFrame'):FindFirstChild('Sword') then return end

        return workspace.CurrentCamera, workspace.CurrentCamera:FindFirstChild('MinecraftSwordViewmodel'):FindFirstChild('Sword'), lplr.PlayerGui:FindFirstChild('FixedFovHeldItems'):FindFirstChildOfClass('ViewportFrame'):FindFirstChild('Sword')
    end

    local function swingQ(p, e)
        local t = math.clamp(e / 0.3, 0, 1)
        local s2, s3, s4, s5 = math.sin(t * t * math.pi), math.sin(math.sqrt(t) * math.pi), math.sin(math.sqrt(t) * math.pi * 2), math.sin(t * math.pi)

        local off, yaw, v6 = Vector3.new(-s3 * 0.4, s4 * 0.2, -s5 * 0.2), CFrame.Angles(0, 0.7853981633974483, 0), CFrame.Angles(0, math.rad(s2 * -20), 0) * CFrame.Angles(0, 0, math.rad(s3 * -20)) * CFrame.Angles(math.rad(s3 * -80), 0, 0)
        return CFrame.new(p + off) * yaw * v6 * yaw:Inverse() * CFrame.new(-p)
    end

    RunService:BindToRenderStep('Swing', Enum.RenderPriority.Last.Value + 101, function()
    	local cam, orig, clone = getViewmodel()
        if not cam then return end
        
        local k, ls = 0.7002075382097097 / math.tan(math.rad(cam.FieldOfView) * 0.5), cam.CFrame:ToObjectSpace(orig:GetPivot())
        local lp = Vector3.new(ls.X, ls.Y, ls.Z / k)

        if not restP then
            restP = lp
            unstableSince = nil
        elseif (lp - restP).Magnitude < 0.03 then
            restP = lp
            unstableSince = nil
        else
            if not unstableSince then
                unstableSince = os.clock() + 1.2
            end
            
            if not (os.clock() >= unstableSince) then
                return
            end

            restP = lp
            unstableSince = nil
        end

        local e = os.clock() - Dependencies.vmSwing
        if e < 0 or e > 0.3 then return end

        local Q = swingQ(restP, e)
        if clone ~= lastClone then
            lastClone = clone
            table.clear(parts)

            for _, v in ipairs(clone:GetDescendants()) do
                if v:IsA('BasePart') then
                    table.insert(parts, v)
                end
            end
        end

        for _, v in ipairs(parts) do
            if v.Parent then
                v.CFrame = Q * v.CFrame
            end
        end
    end)
end
    

local Rayfield = loadstring(game:HttpGet('https://sirius.menu/gen2'))()
local Window = Rayfield:CreateWindow({
	name = 'Stellar',
	subtitle = 'A PVP client for 1.8 PVP Club.',
    sidebarLayout = true,
    showName = 'Stellar 1.0.0',
    configuration = {
        autoSave = true,
        autoLoad = true,
        fileName = 'Stellar',
    }
})

local Tabs = {
    Combat = Window:CreateTab({name = 'Combat'}),
    Movement = Window:CreateTab({name = 'Movement'}),
    Interface = Window:CreateTab({name = 'Interface'})
}

--[[

    Combat

]]

do
    Tabs.Combat:CreateSection({name = 'Sprint'})
    Tabs.Combat:CreateToggle({
        name = 'AutoSprint',
        description = 'Automatically sprints for you.',
        flag = 'sprint',
        value = false,
        callback = function(callback)
            if callback then
                repeat
                    ReplicatedStorage.MinecraftCombat.Sprint:FireServer(true)
                    task.wait()
                until Window.unloaded or  not Window:Get('sprint')
            else
                ReplicatedStorage.MinecraftCombat.Sprint:FireServer(false)
            end
        end
    })
end

do
    if not shared.seq then
        shared.seq = 0
    end

    local lastSwing, lastAttack = 0, 0
    local function getKillauraValues(range, angle, wallcheck) -- haha very funny gpt moment (it's not, i can assure :/)
        if not isAlive(lplr.Character) then return end
        if Dependencies.isBlocked() then return end
        if lplr.Character:GetAttribute('EatingApple') or lplr.Character:GetAttribute('BowDrawStarted') then return end

        local entity = getClosestEntity(range, angle, wallcheck)
        if not entity then return end

        local eye = Dependencies.Geometry.Eye(lplr.Character.PrimaryPart.Position, lplr.Character:GetAttribute('Sneaking'))
        local dir = CFrame.lookAt(lplr.Character.PrimaryPart.Position, entity.Character.PrimaryPart.Position).LookVector

        local dist, part = Dependencies.Geometry.Hit(eye, dir, entity.Character.PrimaryPart.Position, entity.Character:GetAttribute('Sneaking'), range)
        if not dist then return end
        
        return {char = entity.Character, root = entity.Character.PrimaryPart, dist = dist, part = part, eye = eye, dir = dir}
    end

    Tabs.Combat:CreateSection({name = 'Killaura'})
    Tabs.Combat:CreateToggle({
        name = 'Killaura',
        description = 'Automatically attacks players around you.',
        flag = 'killaura',
        value = false,
        callback = function(callback)
            if callback then
                repeat task.wait() until (Window:Get('killaura_range') and Window:Get('killaura_angle') and Window:Get('killaura_itemcheck') and Window:Get('killaura_wallcheck') and Window:Get('killaura_swing') and Window:Get('killaura_attackinterval')) ~= nil

                repeat
                	task.wait()

                    if isAlive(lplr) then
                    	local item = getTool(lplr)
                        if Window:Get('killaura_itemcheck') and item and item.Name ~= 'Diamond Sword' then continue end

                        local entity = getKillauraValues(Window:Get('killaura_range'), Window:Get('killaura_angle'), Window:Get('killaura_wallcheck'))
                        if entity then
                            if workspace.SkySpawn.CourtyardArchitecture['Arena red wool floor edge'].Position.Y <= lplr.Character.PrimaryPart.Position.Y then continue end

                            if Window:Get('killaura_swing') and os.clock() >= lastSwing then
                            	Dependencies.vmSwing = os.clock()
                                lastSwing = os.clock() + math.max(0.15, Window:Get('killaura_attackinterval'))

                                lplr.Character:SetAttribute('LocalAttackSwing', os.clock())
                            end

                            if Window:Get('killaura_attackinterval') and os.clock() >= lastAttack then
                                lastAttack = os.clock() + Window:Get('killaura_attackinterval')
                                    
                                shared.seq += 1
                                local payload = {
                                    version = 2,
                                    character = lplr.Character,
                                    seq = shared.seq,
                                    sentAt = workspace:GetServerTimeNow(),
                                    eye = entity.eye,
                                    targetRoot = entity.root.Position,
                                    hitPart = entity.part,
                                }

                                Dependencies.HitVisuals.Predict(entity.char)
                                ReplicatedStorage.MinecraftCombat.Attack:FireServer(entity.char, entity.eye + entity.dir * entity.dist, entity.dir, nil, payload)
                            end
                        end
                    end
                until Window.unloaded or not Window:Get('killaura') 
            end
        end
    })
    Tabs.Combat:CreateSlider({
        name = 'Attack Interval',
        description = 'Seconds between attacks.',
        range = {0.05, 1},
        increment = 0.01,
        value = 0.05,
        flag = 'killaura_attackinterval'
    })
    Tabs.Combat:CreateSlider({
        name = 'Range',
        range = {1, 11.25},
        increment = 0.01,
        value = 11.25,
        flag = 'killaura_range'
    })
    Tabs.Combat:CreateToggle({
        name = 'Item Check',
        description = 'Automatically checks to see if you are holding the correct item.',
        flag = 'killaura_itemcheck'
    })
    Tabs.Combat:CreateToggle({
        name = 'Wall check',
        description = 'Automatically checks to see if the person is in your line of sight.',
        flag = 'killaura_wallcheck'
    })
    Tabs.Combat:CreateSlider({
        name = 'Angle',
        range = {1, 360},
        increment = 1,
        value = 360,
        suffix = '°',
        flag = 'killaura_angle'
    })
    Tabs.Combat:CreateToggle({
        name = 'Swing',
        description = 'Automatically plays the swing animation.',
        flag = 'killaura_swing'
    })
end

do
    Tabs.Combat:CreateSection({name = 'Knockback'})
    Tabs.Combat:CreateToggle({
        Name = 'AntiKB',
        description = 'Allows for you to have no knockback at all',
        flag = 'velocity',
        callback = function(callback)
            if callback then
                if not isfile('antikbtrust.txt') then
                    Window:Popup({
                        title = 'Toggle AntiKB?',
                        content = 'This clears all connections relating to knockback, and allows for better hits. You have a risk of detection/being caught by the moderators. You can\'t revert back.',
                        options = {
                            {text = 'Cancel', callback = function() Window:Set('velocity', false) end},
                            {text = 'Continue', style = 'danger', callback = function()
                                if ReplicatedStorage:FindFirstChild('MinecraftKnockbackMotion') then
                                    writefile('antikbtrust.txt', '')
                                    ReplicatedStorage.MinecraftKnockbackMotion:Destroy()
                                else
                                    Window:Notify({
                                        title = 'Failed to enable Velocity',
                                        content = 'Connection must\'ve been destroyed already.',
                                        duration = 5,
                                    })
                                end
                            end}
                        }
                    })
                end
            else
                if not Window.unloaded and isfile('antikbtrust.txt') then delfile('antikbtrust.txt') end
            end
        end
    })
end

--[[

    Movement

]]

do
    local speedConn
    local rayParams = RaycastParams.new()
    
    Tabs.Movement:CreateSection({name = 'Speed'})
    Tabs.Movement:CreateToggle({
        name = 'Speed',
        description = 'Increases your movement speed.',
        flag = 'speed',
        value = false,
        callback = function(callback)
            if callback then
                repeat task.wait() until Window:Get('speed_value') ~= nil

                speedConn = RunService.PreSimulation:Connect(function(dt) -- https://github.com/7GrandDadPGN/VapeV4ForRoblox/blob/main/src/games/universal%20-%20base/base.lua (SpeedMethods - CFrame)
                	if Window.unloaded and speedConn then
                    	speedConn:Disconnect()
                        speedConn = nil
                    end

                    if isAlive(lplr) and lplr.Character:FindFirstChild('HumanoidRootPart') and not Window.unloaded then
                        local root = lplr.Character:WaitForChild('HumanoidRootPart', 2)
                        local dest = (lplr.Character.Humanoid.MoveDirection * math.max(((not Window.unloaded and Window:Get('speed_value')) or 1) - lplr.Character.Humanoid.WalkSpeed, 0) * dt)

                        rayParams.FilterDescendantsInstances = {lplr.Character, workspace.CurrentCamera}
                        rayParams.CollisionGroup = root.CollisionGroup

                        local ray = workspace:Raycast(root.Position, dest, rayParams)
                        if ray then
                            dest = (ray.Position + ray.Normal) - root.Position
                        end

                        root.CFrame += dest
                    end
                end)
            else
                if speedConn then
                    speedConn:Disconnect()
                    speedConn = nil
                end
            end
        end
    })
    Tabs.Movement:CreateSlider({
        name = 'Value',
        range = {1, 32},
        increment = 0.1,
        value = 32,
        flag = 'speed_value'
    })
end

--[[

    Interface

]]

do
    Tabs.Interface:CreateSection({name = 'Theming'})
    local Themes = {
        Default = 'default',
        Cobalt = 'cobalt',
        Ember = 'ember',
        Amethyst = 'amethyst',
        Frost = 'frost',
        Rose = 'rose'
    }

    Tabs.Interface:CreateDropdown({
        Name = 'Interface Theme',
        multiSelect = false,
        options = {'Default', 'Cobalt', 'Ember', 'Amethyst', 'Frost', 'Rose'},
        value = 'Default',
        callback = function(callback)
            Window:ChangeTheme(Themes[callback])
        end
    })
end

do
    Tabs.Interface:CreateSection({name = 'Unload'})
    Tabs.Interface:CreateButton({
        name = 'Unload',
        description = 'Automatically unloads Stellar. Useful if a moderator joins your server.',
        callback = function()
        	pcall(function()
    	        RunService:UnbindFromRenderStep('Swing')
            end)

            Window:Unload()
        end
    })
end

Comments

Comments section coming soon...

Frequently Asked Questions

To use this script, you need a Roblox Executor. Simply copy the script from this page, paste it into your executor, and run it while you are in the ⚔️1.8 PVP Club game.

This script may require a payment or subscription. Please check the script's description for more details.

Yes, this script has a key system. You may need to complete a task or join a Discord server to get a key.

Yes, this script is designed to be compatible with mobile executors.

Similar Scripts

Share Script

Share this script with others by copying the link or using your device's share options.

https://rbxscripts.net/scripts/best-stellar-autosprint-killaura-antikb/
or

Report Script

Help us maintain a safe community. Your report will be reviewed by our moderation team and appropriate action will be taken if needed.

Select a reason...
Malicious Code
Inappropriate Content
Copyright Infringement
Spam
Misleading Information
Other