Russian hub
Key RequiredUniversal

Russian hub

Universal ScriptOhioboi123Ohioboi123 52 views 183 executesUpdated Jul 25, 2026
Unrated
00
Lua Script•317 lines (7361 chars)
-- Russian Hub - Standalone Admin/Debug GUI
-- Place this LocalScript in StarterPlayer > StarterPlayerScripts

local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local Lighting = game:GetService("Lighting")
local UserInputService = game:GetService("UserInputService")

local player = Players.LocalPlayer
local camera = workspace.CurrentCamera

-- Настройки
local flyEnabled = false
local fpsBoostEnabled = false
local hitboxEnabled = false
local hitboxSize = 8
local flySpeed = 60

local character
local humanoid
local rootPart

local function setupCharacter(char)
	character = char
	humanoid = char:WaitForChild("Humanoid")
	rootPart = char:WaitForChild("HumanoidRootPart")
end

if player.Character then
	setupCharacter(player.Character)
end

player.CharacterAdded:Connect(setupCharacter)

-- Создание GUI
local gui = Instance.new("ScreenGui")
gui.Name = "RussianHub"
gui.ResetOnSpawn = false
gui.IgnoreGuiInset = true
gui.Parent = player:WaitForChild("PlayerGui")

local main = Instance.new("Frame")
main.Name = "Main"
main.Size = UDim2.new(0, 310, 0, 390)
main.Position = UDim2.new(0.5, -155, 0.5, -195)
main.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
main.BorderSizePixel = 0
main.Active = true
main.Draggable = true
main.Parent = gui

local corner = Instance.new("UICorner")
corner.CornerRadius = UDim.new(0, 16)
corner.Parent = main

local stroke = Instance.new("UIStroke")
stroke.Color = Color3.fromRGB(120, 120, 120)
stroke.Thickness = 1.5
stroke.Parent = main

local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, 0, 0, 55)
title.BackgroundTransparency = 1
title.Text = "RUSSIAN HUB"
title.TextColor3 = Color3.fromRGB(255, 255, 255)
title.TextSize = 25
title.Font = Enum.Font.GothamBold
title.Parent = main

local subtitle = Instance.new("TextLabel")
subtitle.Position = UDim2.new(0, 0, 0, 42)
subtitle.Size = UDim2.new(1, 0, 0, 25)
subtitle.BackgroundTransparency = 1
subtitle.Text = "ADMIN / DEBUG PANEL"
subtitle.TextColor3 = Color3.fromRGB(160, 160, 160)
subtitle.TextSize = 11
subtitle.Font = Enum.Font.Gotham
subtitle.Parent = main

local function createButton(text, position)
	local button = Instance.new("TextButton")
	button.Size = UDim2.new(1, -30, 0, 52)
	button.Position = position
	button.BackgroundColor3 = Color3.fromRGB(35, 35, 43)
	button.TextColor3 = Color3.fromRGB(255, 255, 255)
	button.TextSize = 15
	button.Font = Enum.Font.GothamBold
	button.Text = text
	button.AutoButtonColor = true
	button.Parent = main

	local buttonCorner = Instance.new("UICorner")
	buttonCorner.CornerRadius = UDim.new(0, 12)
	buttonCorner.Parent = button

	return button
end

local fpsButton = createButton("FPS BOOST: OFF", UDim2.new(0, 15, 0, 85))
local flyButton = createButton("FLY: OFF", UDim2.new(0, 15, 0, 150))
local hitboxButton = createButton("HITBOX: OFF", UDim2.new(0, 15, 0, 215))

local closeButton = createButton("CLOSE HUB", UDim2.new(0, 15, 0, 280))

-- Botão móvel para abrir
local openButton = Instance.new("TextButton")
openButton.Size = UDim2.new(0, 65, 0, 65)
openButton.Position = UDim2.new(0, 20, 0.5, -32)
openButton.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
openButton.Text = "R"
openButton.TextColor3 = Color3.fromRGB(255, 255, 255)
openButton.TextSize = 28
openButton.Font = Enum.Font.GothamBold
openButton.Visible = false
openButton.Active = true
openButton.Draggable = true
openButton.Parent = gui

local openCorner = Instance.new("UICorner")
openCorner.CornerRadius = UDim.new(1, 0)
openCorner.Parent = openButton

-- FPS BOOST
local function enableFPSBoost()
	for _, object in ipairs(workspace:GetDescendants()) do
		if object:IsA("ParticleEmitter")
			or object:IsA("Trail")
			or object:IsA("Smoke")
			or object:IsA("Fire")
			or object:IsA("Sparkles") then

			object.Enabled = false
		end

		if object:IsA("BasePart") then
			object.Material = Enum.Material.SmoothPlastic
			object.CastShadow = false
		end
	end

	Lighting.GlobalShadows = false
	Lighting.FogEnd = 100000
	Lighting.Brightness = 1
end

local function disableFPSBoost()
	Lighting.GlobalShadows = true
end

fpsButton.MouseButton1Click:Connect(function()
	fpsBoostEnabled = not fpsBoostEnabled

	if fpsBoostEnabled then
		fpsButton.Text = "FPS BOOST: ON"
		enableFPSBoost()
	else
		fpsButton.Text = "FPS BOOST: OFF"
		disableFPSBoost()
	end
end)

-- FLY SYSTEM
local flyConnection
local bodyVelocity
local bodyGyro

local function startFly()
	if not rootPart or not humanoid then
		return
	end

	flyEnabled = true
	humanoid.PlatformStand = true

	bodyVelocity = Instance.new("BodyVelocity")
	bodyVelocity.MaxForce = Vector3.new(100000, 100000, 100000)
	bodyVelocity.Velocity = Vector3.zero
	bodyVelocity.Parent = rootPart

	bodyGyro = Instance.new("BodyGyro")
	bodyGyro.MaxTorque = Vector3.new(100000, 100000, 100000)
	bodyGyro.P = 10000
	bodyGyro.CFrame = rootPart.CFrame
	bodyGyro.Parent = rootPart

	flyConnection = RunService.RenderStepped:Connect(function()
		if not flyEnabled or not rootPart then
			return
		end

		local moveDirection = humanoid.MoveDirection

		if moveDirection.Magnitude > 0 then
			bodyVelocity.Velocity = moveDirection * flySpeed
		else
			bodyVelocity.Velocity = Vector3.zero
		end

		bodyGyro.CFrame = camera.CFrame
	end)
end

local function stopFly()
	flyEnabled = false

	if flyConnection then
		flyConnection:Disconnect()
		flyConnection = nil
	end

	if bodyVelocity then
		bodyVelocity:Destroy()
		bodyVelocity = nil
	end

	if bodyGyro then
		bodyGyro:Destroy()
		bodyGyro = nil
	end

	if humanoid then
		humanoid.PlatformStand = false
	end
end

flyButton.MouseButton1Click:Connect(function()
	if flyEnabled then
		stopFly()
		flyButton.Text = "FLY: OFF"
	else
		startFly()
		flyButton.Text = "FLY: ON"
	end
end)

-- HITBOX EXTENDER
local originalSizes = {}

local function enableHitbox()
	for _, target in ipairs(Players:GetPlayers()) do
		if target ~= player and target.Character then
			local targetRoot = target.Character:FindFirstChild("HumanoidRootPart")

			if targetRoot then
				if not originalSizes[targetRoot] then
					originalSizes[targetRoot] = targetRoot.Size
				end

				targetRoot.Size = Vector3.new(
					hitboxSize,
					hitboxSize,
					hitboxSize
				)

				targetRoot.Transparency = 0.7
				targetRoot.CanCollide = false
			end
		end
	end
end

local function disableHitbox()
	for part, originalSize in pairs(originalSizes) do
		if part and part.Parent then
			part.Size = originalSize
			part.Transparency = 1
			part.CanCollide = false
		end
	end

	table.clear(originalSizes)
end

hitboxButton.MouseButton1Click:Connect(function()
	hitboxEnabled = not hitboxEnabled

	if hitboxEnabled then
		hitboxButton.Text = "HITBOX: ON"
		enableHitbox()
	else
		hitboxButton.Text = "HITBOX: OFF"
		disableHitbox()
	end
end)

-- Actualizar nuevos jugadores
Players.PlayerAdded:Connect(function(newPlayer)
	newPlayer.CharacterAdded:Connect(function()
		task.wait(1)

		if hitboxEnabled then
			enableHitbox()
		end
	end)
end)

-- Cerrar y abrir GUI
closeButton.MouseButton1Click:Connect(function()
	main.Visible = false
	openButton.Visible = true
end)

openButton.MouseButton1Click:Connect(function()
	main.Visible = true
	openButton.Visible = false
end)

-- Reiniciar funciones cuando reaparece
player.CharacterAdded:Connect(function(char)
	task.wait(1)
	setupCharacter(char)

	if flyEnabled then
		stopFly()
		flyButton.Text = "FLY: OFF"
	end
end)

Features & Information

Hello this is my first script im just trying scripting out it has a few quality of life features and is completely keyless and mobile friendly in the future I’ll add more features for know enjoy!

Community Comments (0)

No comments yet for this script.

More Scripts for Universal Scripts