--// Rayfield Init
local Rayfield = loadstring(game:HttpGet('https://[Log in to view URL]'))()
local Window = Rayfield:CreateWindow({
Name = "🔥Villainhub🔫",
LoadingTitle = "🔫villainhub script 💥",
LoadingSubtitle = "by villain",
ConfigurationSaving = {
Enabled = false,
FolderName = nil,
FileName = "Example Hub"
},
Discord = {
Enabled = false,
Invite = "https://[Log in to view URL]",
RememberJoins = true
},
KeySystem = false
})
local Players = game:GetService("Players")
local localPlayer = Players.LocalPlayer
-------------------------------------------------------------------
-- 🔐 SAFE VALIDATION CHECK SYSTEM (YOU CONTROL THE RESULTS HERE)
-------------------------------------------------------------------
-- 👇 You must replace this with your OWN Luarmor key/blacklist check.
-- Pull the result from your backend, then set this value:
local validation = "success"
-- options: "success", "expired", "blacklisted", "invalid"
local function KickUser(reason)
task.wait(0.2)
localPlayer:Kick(reason)
end
if validation == "expired" then
KickUser("Your key has expired. Get a new one at villainhub.")
return
elseif validation == "blacklisted" then
KickUser("You are blacklisted from Villainhub.")
return
elseif validation == "invalid" then
KickUser("Invalid key.")
return
end
-------------------------------------------------------------------
-- 🔐 END VALIDATION SYSTEM
-------------------------------------------------------------------
-- MAIN TAB
local MainTab = Window:CreateTab("🏠 Home", nil)
Rayfield:Notify({
Title = "You executed the script",
Content = "Very cool gui",
Duration = 5,
Image = 13047715178,
Actions = {
Ignore = {
Name = "Okay!",
Callback = function()
print("The user tapped Okay!")
end
},
},
})
-- Infinite Jump Button
MainTab:CreateButton({
Name = "Infinite Jump Toggle",
Callback = function()
_G.infinjump = not _G.infinjump
if _G.infinJumpStarted == nil then
_G.infinJumpStarted = true
game.StarterGui:SetCore("SendNotification", {Title="Youtube Hub"; Text="Infinite Jump Activated!"; Duration=5;})
local plr = Players.LocalPlayer
local m = plr:GetMouse()
m.KeyDown:Connect(function(k)
if _G.infinjump and k:byte() == 32 then
local humanoid = plr.Character:FindFirstChildOfClass('Humanoid')
if humanoid then
humanoid:ChangeState('Jumping')
task.wait()
humanoid:ChangeState('Seated')
end
end
end)
end
end,
})
-- WalkSpeed Slider
MainTab:CreateSlider({
Name = "WalkSpeed Slider",
Range = {1, 20},
Increment = 1,
Suffix = "Speed",
CurrentValue = 16,
Flag = "sliderws",
Callback = function(Value)
Players.LocalPlayer.Character.Humanoid.WalkSpeed = Value
end,
})
-- JumpPower Slider
MainTab:CreateSlider({
Name = "JumpPower Slider",
Range = {1, 350},
Increment = 1,
Suffix = "Jump",
CurrentValue = 16,
Flag = "sliderjp",
Callback = function(Value)
Players.LocalPlayer.Character.Humanoid.JumpPower = Value
end,
})
-- Area Dropdown
MainTab:CreateDropdown({
Name = "Select Area",
Options = {"Starter World","Pirate Island","Pineapple Paradise"},
CurrentOption = {"Starter World"},
MultipleOptions = false,
Flag = "dropdownarea",
Callback = function(Option)
print(Option)
end,
})
-- Walkspeed Input
MainTab:CreateInput({
Name = "Walkspeed",
PlaceholderText = "1-500",
RemoveTextAfterFocusLost = true,
Callback = function(Text)
Players.LocalPlayer.Character.Humanoid.WalkSpeed = tonumber(Text)
end,
})
-------------------------------------------------------------------
-- TELEPORT TAB
-------------------------------------------------------------------
local TPTab = Window:CreateTab("🏝 Teleports", nil)
TPTab:CreateButton({Name = "marsh mello seller", Callback = function() end})
TPTab:CreateButton({Name = "bank", Callback = function() end})
TPTab:CreateButton({Name = "casino", Callback = function() end})
-------------------------------------------------------------------
-- MISC TAB
-------------------------------------------------------------------
local MiscTab = Window:CreateTab("🎲 Misc", nil)
local RunService = game:GetService("RunService")
-- Autofarm
MiscTab:CreateToggle({
Name = "Autofarm",
CurrentValue = false,
Flag = "Toggle1",
Callback = function(Value)
print('Autofarm toggled:', Value)
end,
})
-- Noclip
local noclip = false
MiscTab:CreateToggle({
Name = "Noclip",
CurrentValue = false,
Flag = "noclipToggle",
Callback = function(Value)
noclip = Value
end,
})
RunService.Stepped:Connect(function()
local char = localPlayer.Character
if char then
for _, part in pairs(char:GetChildren()) do
if part:IsA("BasePart") then
part.CanCollide = not noclip
end
end
end
end)
localPlayer.CharacterAdded:Connect(function(char)
task.wait(0.1)
for _, part in pairs(char:GetChildren()) do
if part:IsA("BasePart") then
part.CanCollide = not noclip
end
end
end)
-- ESP
local espEnabled = false
local highlights = {}
MiscTab:CreateToggle({
Name = "ESP",
CurrentValue = false,
Flag = "ESPtoggle",
Callback = function(Value)
espEnabled = Value
if not espEnabled then
for _, hl in pairs(highlights) do
if hl and hl.Parent then
hl:Destroy()
end
end
highlights = {}
else
for _, player in pairs(Players:GetPlayers()) do
local char = player.Character
if char and not highlights[char] then
local hl = Instance.new("Highlight")
hl.FillColor = Color3.fromRGB(0,255,0)
hl.OutlineColor = Color3.fromRGB(255,255,255)
hl.Parent = char
highlights[char] = hl
end
end
end
end,
})
Players.PlayerAdded:Connect(function(player)
player.CharacterAdded:Connect(function(char)
if espEnabled then
local hl = Instance.new("Highlight")
hl.FillColor = Color3.fromRGB(0,255,0)
hl.OutlineColor = Color3.fromRGB(255,255,255)
hl.Parent = char
highlights[char] = hl
end
end)
end)
To embed this project on your website, copy the following code and paste it into your website's HTML: