repeat
wait()
until game:IsLoaded()
local OldNameCall = nil
OldNameCall = hookmetamethod(game, "__namecall", function(...)
local Self, Key = ...
if (Self.Name == "" or Self.Name == "RemoteEvent") and Self.Parent.Name == "Security" and Self.ClassName == "RemoteEvent" then
return wait(9e9)
end
return OldNameCall(...)
end)
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Workspace = game:GetService("Workspace")
local Balls = Workspace:FindFirstChild("Balls")
local Script = {
Function = {},
Values = {}
}
local SF = Script.Function
local SV = Script.Values
loadstring(game:HttpGet("https://[Log in to view URL]"))()
loadstring(game:HttpGet("https://[Log in to view URL]"))()
for i,v in next, getconnections(LogService.MessageOut) do
v:Enable()
end
for i,v in next, getgc() do
if type(v) == "function" then
if debug.getinfo(v).name == "parry" then
SF.Parry = v
end
end
end
function SF:IsReal()
local Re
for i,v in next, Balls:GetChildren() do
if v:GetAttribute("realBall") and v:GetAttribute("target") == Player.Name and not v.Anchored then
Re = v
end
end
return Re
end
function SF:Baller()
local Real = nil
for i,v in next, Balls:GetChildren() do
if v:GetAttribute("realBall") then
Real = v
end
end
return Real
end
function SF:GetPlayerC()
local Max, Target, Players = math.huge, nil, Players
for i,v in next, Players:GetPlayers() do
if v ~= Player and v.Character and v.Character:FindFirstChild("HumanoidRootPart") then
local Mag = Mag(Player.Character:GetModelCFrame(), v.Character:GetModelCFrame())
if Mag <= Max then
Target = v
end
end
end
return Target
end
function SF:Meth()
if SV.Method == "KeyPress" then
keypress(0x46)
keyrelease(0x46)
elseif SV.Method == "Remote" then
ReplicatedStorage.Remotes.ParryButtonPress:Fire()
elseif SV.Method == "Function" then
SF:Parry()
end
end
function SF:Hit()
local Ball, Clash = SF:IsReal(), true
if Ball then
local M = Mag(Ball.CFrame, Player.Character.HumanoidRootPart.CFrame)
local M2 = Ball.Velocity.Magnitude
local M3 = M2 * (game.Stats.Network.ServerStatsItem["Data Ping"]:GetValue() / 1000)
M2 -= M3
print(M / M2)
if Hate and not Loser then
Player.Character.HumanoidRootPart.CFrame = CFrame.lookAt(Player.Character.HumanoidRootPart.CFrame.Position, Vector3.new(Ball.Position.X, Player.Character.HumanoidRootPart.CFrame.Position.Y, Ball.Position.Z))
end
if (M / M2 < 0.19 or M / M2 > 9e9 and M < 10) and not Clash then
Player.Character.HumanoidRootPart.CFrame = CFrame.new(Ball.CFrame.Position + Vector3.new(math.random(1,5),0,math.random(1,5)))
end
if M / M2 <= 0.5 then
SF:Meth()
if Mag(SF:GetPlayerC().Character:GetModelCFrame(), Player.Character:GetModelCFrame()) <= 7 then
for i=1, 5 do
Clash = false
SF:Hit()
end
end
end
end
end
function SF:JustHit()
local Ball = SF:IsReal()
if Ball then
local Old = Player.Character.HumanoidRootPart.CFrame
Player.Character.HumanoidRootPart.CFrame = CFrame.new(Ball.Position + Vector3.new(10,-0,10))
SF:Meth()
wait()
Player.Character.HumanoidRootPart.CFrame = Old
end
end
function SF:FreezeHit()
local Old = Player.Character.HumanoidRootPart.CFrame
local Ball = SF:IsReal()
if Ball then
ReplicatedStorage:WaitForChild("Remotes"):WaitForChild("Freeze"):FireServer()
Player.Character.HumanoidRootPart.CFrame = CFrame.new(Ball.Position + Vector3.new(0,-10,0))
wait()
SF:Meth()
Player.Character.HumanoidRootPart.CFrame = Old
end
end
local repo = 'https://[Log in to view URL]'
local Library = loadstring(game:HttpGet("https://[Log in to view URL]"))()
local ThemeManager = loadstring(game:HttpGet(repo .. 'addons/ThemeManager.lua'))()
local SaveManager = loadstring(game:HttpGet(repo .. 'addons/SaveManager.lua'))()
local Window = Library:CreateWindow({
Title = MarketplaceService:GetProductInfo(game.PlaceId).Name,
Center = true,
AutoShow = true,
})
local Tabs = {
Main = Window:AddTab('Main'),
['UI Settings'] = Window:AddTab('UI Settings'),
}
local LeftGroupBox = Tabs.Main:AddLeftGroupbox("")
local RightGroupBox = Tabs.Main:AddRightGroupbox("")
local MenuGroup = Tabs['UI Settings']:AddLeftGroupbox('Menu')
LeftGroupBox:AddToggle('parry', {Text = 'Auto Parry', Default = false,Tooltip = "deflects ball at certain degree not 100% acc", Callback = function(A)
Hate = A
RunService.PreSimulation:Connect(function()
if Hate then
if SV.MethodHit:find("Legit") then
for i=1,2 do
SF:Hit()
end
end
end
end)
spawn(function()
while wait() and Hate do
pcall(function()
if SV.MethodHit:find("Blatant") then
SF:JustHit()
elseif SV.MethodHit:find("Insane") then
SF:FreezeHit()
end
end)
end
end)
end})
Toggles.parry:OnChanged(function(State)
Hate = Toggles.parry.Value
end)
LeftGroupBox:AddDropdown('ssfdf', {Values = {"Remote", "KeyPress", "Function"}, Default = 1, Multi = false, Text = 'Deflect Methods', Tooltip = '', Callback = function(A)
SV.Method = A
end})
Options.ssfdf:OnChanged(function()
SV.Method = Options.ssfdf.Value
end)
LeftGroupBox:AddDropdown('e2', {Values = {"Legit (Sucks)", "Blatant (hacker mode)", "Insane (need Freeze Ability)"}, Default = 1, Multi = false, Text = 'Parry Mode', Tooltip = '', Callback = function(A)
SV.MethodHit = A
end})
Options.e2:OnChanged(function()
SV.MethodHit = Options.e2.Value
end)
LeftGroupBox:AddToggle('dt', {Text = 'Auto Farm' , Default = false,Tooltip = "deflects ball at certain degree not 100% acc", Callback = function(A)
Loser = A
Stepped:Connect(function()
if Loser then
pcall(function()
SF:Hit()
for i,v in next, Player.Character:GetChildren() do
if v:IsA("BasePart") then
v.CanCollide = false
v.Velocity = Vector3.new(0,0,0)
end
end
local Ball = SF:Baller()
if Ball and Player.Character:FindFirstChild("HumanoidRootPart") and Player.Character.Parent.Name == "Alive" then
for i=1, 50 do
Player.Character.HumanoidRootPart.CFrame = CFrame.new(Vector3.new(Ball.Position.X, Workspace.Map:FindFirstChild('BALLSPAWN',true).Position.Y + -10, Ball.Position.Z))
end
end
end)
end
end)
end})
Toggles.dt:OnChanged(function(State)
Loser = Toggles.dt.Value
end)
LeftGroupBox:AddToggle('royt', {Text = 'Freeze ability spam', Default = false,Tooltip = "", Callback = function(A)
roy = A
Stepped:Connect(function()
if roy then
pcall(function()
ReplicatedStorage:WaitForChild("Remotes"):WaitForChild("Freeze"):FireServer()
end)
end
end)
end})
Toggles.royt:OnChanged(function(State)
roy = Toggles.royt.Value
end)
LeftGroupBox:AddToggle('Hahaha', {Text = 'Rage Mode', Default = false,Tooltip = "Might not win but will piss people off", Callback = function(A)
Hog = A
Stepped:Connect(function()
if Hog then
pcall(function()
if Player.Character:FindFirstChild("Humanoid") and Player.Character.Parent.Name == "Alive" then
SF:Hit()
Workspace.CurrentCamera.CFrame = CFrame.lookAt(Workspace.CurrentCamera.CFrame.Position, SF:Baller().CFrame.Position)
if not SF:IsReal().Anchored then
Player.Character.Humanoid:MoveTo(SF:Baller().CFrame.Position)
end
end
end)
end
end)
end})
Toggles.Hahaha:OnChanged(function(State)
Hog = Toggles.Hahaha.Value
end)
LeftGroupBox:AddToggle('Sprint', {Text = 'Toggle Sprint', Default = false,Tooltip = "Enables a small sprint", Callback = function(A)
Rog = A
Stepped:Connect(function()
if Rog then
pcall(function()
if Player.Character:FindFirstChild("Humanoid") then
Player.Character.Humanoid.WalkSpeed = 70
end
end)
end
end)
end})
Toggles.Sprint:OnChanged(function(State)
Rog = Toggles.Sprint.Value
end)
LeftGroupBox:AddToggle('Fotf', {Text = 'Auto Buy Explotion Crate', Default = false,Tooltip = "Heheh go boom", Callback = function(A)
Goh = A
spawn(function()
while Goh and wait() do
pcall(function()
ReplicatedStorage.Remote.RemoteFunction:InvokeServer("PromptPurchaseCrate",Workspace.Spawn.Crates.NormalExplosionCrate)
end)
end
end)
end})
Toggles.Fotf:OnChanged(function(State)
Goh = Toggles.Fotf.Value
end)
LeftGroupBox:AddToggle('Gotf', {Text = 'Auto Buy Sword Crate', Default = false,Tooltip = "Heheh go boom", Callback = function(A)
Fot = A
spawn(function()
while Fot and wait() do
pcall(function()
ReplicatedStorage.Remote.RemoteFunction:InvokeServer("PromptPurchaseCrate", Workspace.Spawn.Crates.NormalSwordCrate)
end)
end
end)
end})
Toggles.Gotf:OnChanged(function(State)
Fot = Toggles.Gotf.Value
end)
LeftGroupBox:AddToggle('Face', {Text = 'Always face Ball', Default = false,Tooltip = "Enables a small sprint", Callback = function(A)
Fac = A
spawn(function()
while wait() and Fac do
pcall(function()
Workspace.CurrentCamera.CFrame = CFrame.lookAt(Workspace.CurrentCamera.CFrame.Position, SF:Baller().CFrame.Position)
end)
end
end)
end})
Toggles.Face:OnChanged(function(State)
Fac = Toggles.Face.Value
end)
RightGroupBox:AddToggle('SSS', {Text = 'WalkSpeed Toggle',Default = false,Tooltip = '', Callback = function(A)
WS = A
RunService.Stepped:Connect(function()
if WS then
pcall(function()
Player.Character:FindFirstChildWhichIsA("Humanoid").WalkSpeed = WalkSpeed or 16
end)
end
end)
end})
Toggles.SSS:OnChanged(function(State)
Foe = Toggles.SSS.Value
end)
RightGroupBox:AddInput('SSF3', {Default = 'WalkSpeed',Numeric = true,Finished = false,Text = 'WalkSpeed',Tooltip = 'Numbers Only',Placeholder = 'WalkSpeed'})
Options.SSF3:OnChanged(function(State)
WalkSpeed = Options.SSF3.Value
end)
RightGroupBox:AddToggle('EEE', {Text = 'JumpPower Toggle',Default = false,Tooltip = '', Callback = function(A)
JP = A
RunService.Stepped:Connect(function()
if JP then
pcall(function()
local H = Player.Character:FindFirstChildWhichIsA("Humanoid")
if H.UseJumpPower then
H.JumpPower = JumpPower or 50
else
H.JumpHeight = JumpPower or 50
end
end)
end
end)
end})
Toggles.EEE:OnChanged(function(State)
JP = Toggles.EEE.Value
end)
RightGroupBox:AddInput('SSF1', {Default = 'JumpPower',Numeric = true,Finished = false,Text = 'JumpPower',Tooltip = 'Numbers Only',Placeholder = 'JumpPower'})
Options.SSF1:OnChanged(function(State)
JumpPower = Options.SSF1.Value
end)
RightGroupBox:AddSlider('FlySpeed', {Text = 'FlySpeed',Default = 50,Min = 16,Max = 500,Rounding = 0,Compact = false,Callback = function(Value)
Speed = Value
end})
Options.FlySpeed:OnChanged(function()
Speed = Options.FlySpeed.Value
end)
RightGroupBox:AddLabel('Fly KeyBind'):AddKeyPicker('name2', {Default = 'H',SyncToggleState = false,Mode = 'Toggle',Text = 'Fly',NoUI = true,Callback = function(Value)
VG.Flying(Value, Speed)
end,
ChangedCallback = function(New)
print(New)
end})
Options.name2:SetValue({ 'H', 'Toggle' })
RightGroupBox:AddButton('ServerHop', function() ServerHop() end)
RightGroupBox:AddButton('Rejoin', function()
local Success, ErrorMessage = pcall(function()
Rejoin()
end)
if ErrorMessage and not Success then
warn(ErrorMessage)
elseif Success and not ErrorMessage then
print(Success)
end
end)
Library:SetWatermarkVisibility(true)
local FrameTimer = tick()
local FrameCounter = 0;
local FPS = 60;
local WatermarkConnection = RenderStepped:Connect(function()
FrameCounter =FrameCounter + 1;
if (tick() - FrameTimer) >= 1 then
FPS = FrameCounter;
FrameTimer = tick();
FrameCounter = 0;
end;
Library:SetWatermark(('Fuji Hub | %s fps | %s ms | %s GameId'):format(
math.floor(FPS),
math.floor(game:GetService('Stats').Network.ServerStatsItem['Data Ping']:GetValue()), game.GameId
));
end);
MenuGroup:AddButton('Unload', function() Library:Unload() end)
MenuGroup:AddLabel('Menu bind'):AddKeyPicker('MenuKeybind', { Default = "RightControl", NoUI = true, Text = 'Menu keybind' })
Library.ToggleKeybind = Options.MenuKeybind
ThemeManager:SetLibrary(Library)
SaveManager:SetLibrary(Library)
SaveManager:IgnoreThemeSettings()
SaveManager:SetIgnoreIndexes({ 'MenuKeybind' })
ThemeManager:SetFolder('V.G Hub')
SaveManager:SetFolder("V.G Hub/" .. game.PlaceId)
SaveManager:BuildConfigSection(Tabs['UI Settings'])
ThemeManager:ApplyToTab(Tabs['UI Settings'])
To embed this project on your website, copy the following code and paste it into your website's HTML: