Grok Hub
Key Required

Grok Hub

[UPD] Don't Get Crushed By 67NPCNOkNPCNOk 2.4K views 28 executesUpdated Dec 2, 2025
2.5/ 5(2 votes)
1150% Positive
Lua Script•179 lines (5581 chars)
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")

local player = Players.LocalPlayer
local pgui = player:WaitForChild("PlayerGui")

-- Kill any selection boxes forever
game:GetService("RunService").RenderStepped:Connect(function()
    for _, v in pairs(pgui:GetDescendants()) do
        if v:IsA("SelectionBox") or v:IsA("HandleAdornment") then
            v:Destroy()
        end
    end
end)

-- Locations
local TELEPORTS = {
    {name = "Starter world",   pos = Vector3.new(-1884.94751, -58.4999962, 286.599976)},
    {name = "Fire world",  pos = Vector3.new(-2894.94678, -58.5, -950.398804)},
    {name = "Toxic world",  pos = Vector3.new(-4826.94775, -58.5, -2462.39893)}
}
local idx = 1

-- ScreenGui
local gui = Instance.new("ScreenGui")
gui.Name = "Grok Teleport"
gui.ResetOnSpawn = false
gui.Parent = pgui

-- Main Frame
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0, 200, 0, 220)
frame.Position = UDim2.new(0.5, -100, 0.15, 0)
frame.BackgroundColor3 = Color3.fromRGB(30, 30, 35)
frame.BorderSizePixel = 0
frame.Active = true
frame.Parent = gui
Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 16)

-- Custom smooth dragging
local dragging = false
local dragStart, startPos

frame.InputBegan:Connect(function(input)
    if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
        dragging = true
        dragStart = input.Position
        startPos = frame.Position
    end
end)

frame.InputChanged:Connect(function(input)
    if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
        local delta = input.Position - dragStart
        frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X,
                                  startPos.Y.Scale, startPos.Y.Offset + delta.Y)
    end
end)

frame.InputEnded:Connect(function()
    dragging = false
end)

-- GROK LOGO (top-right)
local grokLogo = Instance.new("ImageLabel")
grokLogo.Size = UDim2.new(0, 44, 0, 44)
grokLogo.Position = UDim2.new(1, -54, 0, 8)
grokLogo.BackgroundTransparency = 1
grokLogo.Image = "rbxassetid://18395190734"  -- Official Grok logo (white)
grokLogo.Parent = frame

-- Title
local title = Instance.new("TextLabel")
title.Size = UDim2.new(1, -60, 0, 40)
title.Position = UDim2.new(0, 10, 0, 8)
title.BackgroundTransparency = 1
title.Text = "Grok Hub"
title.TextColor3 = Color3.new(1,1,1)
title.Font = Enum.Font.GothamBold
title.TextSize = 18
title.TextXAlignment = Enum.TextXAlignment.Left
title.Parent = frame

-- Current location
local loc = Instance.new("TextLabel")
loc.Size = UDim2.new(1, -50, 0, 32)
loc.Position = UDim2.new(0, 10, 0, 52)
loc.BackgroundColor3 = Color3.fromRGB(45,45,50)
loc.Text = TELEPORTS[idx].name
loc.TextColor3 = Color3.new(1,1,1)
loc.Font = Enum.Font.GothamSemibold
loc.TextSize = 15
loc.Parent = frame
Instance.new("UICorner", loc).CornerRadius = UDim.new(0,10)

-- Next button
local nextBtn = Instance.new("TextButton")
nextBtn.Size = UDim2.new(0, 38, 0, 32)
nextBtn.Position = UDim2.new(1, -48, 0, 52)
nextBtn.BackgroundColor3 = Color3.fromRGB(0, 200, 110)
nextBtn.Text = ">"
nextBtn.TextColor3 = Color3.new(1,1,1)
nextBtn.Font = Enum.Font.GothamBold
nextBtn.TextSize = 22
nextBtn.BorderSizePixel = 0
nextBtn.Parent = frame
Instance.new("UICorner", nextBtn).CornerRadius = UDim.new(0,10)

nextBtn.Activated:Connect(function()
    idx = idx % #TELEPORTS + 1
    loc.Text = TELEPORTS[idx].name
end)

-- TELEPORT button
local tpBtn = Instance.new("TextButton")
tpBtn.Size = UDim2.new(0.85, 0, 0, 52)
tpBtn.Position = UDim2.new(0.075, 0, 0.45, 0)
tpBtn.BackgroundColor3 = Color3.fromRGB(0, 170, 255)
tpBtn.Text = "TELEPORT"
tpBtn.TextColor3 = Color3.new(1,1,1)
tpBtn.Font = Enum.Font.GothamBold
tpBtn.TextSize = 21
tpBtn.BorderSizePixel = 0
tpBtn.Parent = frame
Instance.new("UICorner", tpBtn).CornerRadius = UDim.new(0,12)

-- Cooldown label
local cdLabel = Instance.new("TextLabel")
cdLabel.Size = UDim2.new(1,0,0,25)
cdLabel.Position = UDim2.new(0,0,0.78,0)
cdLabel.BackgroundTransparency = 1
cdLabel.Text = ""
cdLabel.TextColor3 = Color3.fromRGB(255,100,100)
cdLabel.Font = Enum.Font.GothamBold
cdLabel.TextSize = 17
cdLabel.Parent = frame

-- Teleport logic
local cooldown = 20
local canTP = true

tpBtn.Activated:Connect(function()
    if not canTP then return end
    local hrp = player.Character and player.Character:FindFirstChild("HumanoidRootPart")
    if hrp then
        hrp.CFrame = CFrame.new(TELEPORTS[idx].pos)
        canTP = false
        tpBtn.Text = "WAIT..."
        tpBtn.BackgroundColor3 = Color3.fromRGB(80,80,80)
        for i = cooldown, 1, -1 do
            cdLabel.Text = i.."s"
            task.wait(1)
        end
        cdLabel.Text = ""
        tpBtn.Text = "TELEPORT"
        tpBtn.BackgroundColor3 = Color3.fromRGB(0,170,255)
        canTP = true
    end
end)

-- Close button
local close = Instance.new("TextButton")
close.Size = UDim2.new(0, 32, 0, 32)
close.Position = UDim2.new(1, -40, 0, 8)
close.BackgroundColor3 = Color3.fromRGB(220,50,50)
close.Text = "X"
close.TextColor3 = Color3.new(1,1,1)
close.Font = Enum.Font.GothamBold
close.BorderSizePixel = 0
close.Parent = frame
Instance.new("UICorner", close).CornerRadius = UDim.new(0,16)
close.Activated:Connect(function() gui:Destroy() end)

-- Pop-in animation
frame.Size = UDim2.new(0,0,0,0)
frame.Position = UDim2.new(0.5,0,0.15,0)
TweenService:Create(frame, TweenInfo.new(0.6, Enum.EasingStyle.Back), {
    Size = UDim2.new(0,200,0,220)
}):Play()

Features & Information

Here a 99% chance you can fall into a void because the floor is not big xd

Community Comments (2)

C00LEXPLOITERC00LEXPLOITERDec 5, 2025

Op

MvlrxxMvlrxxDec 11, 2025

Nice

More Scripts for [UPD] Don't Get Crushed By 67