Trips universal
Key Required

Trips universal

Just a Baseplate.TripfanTripfan 732 views 1.9K executesUpdated Sep 21, 2026
5.0/ 5(1 votes)
10100% Positive
Lua Script•587 lines (14867 chars)
--// TRIPS HUB
--// Small Key Screen + Rayfield Hub
--// For your own Roblox game
--// Key: trips123

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

local Player = Players.LocalPlayer
local PlayerGui = Player:WaitForChild("PlayerGui")

local KEY = "trips123"

local DISCORD_LINK = "https://discord.gg/4hwfPa3Qtp"
local GET_KEY_LINK = "https://link-hub.net/6656955/0fbEp3JD5TQX"

--==================================================
-- SMALL KEY SCREEN
--==================================================

local KeyGui = Instance.new("ScreenGui")
KeyGui.Name = "TripsKeyScreen"
KeyGui.ResetOnSpawn = false
KeyGui.IgnoreGuiInset = true
KeyGui.Parent = PlayerGui

local Frame = Instance.new("Frame")
Frame.Size = UDim2.fromOffset(300, 230)
Frame.Position = UDim2.fromScale(0.5, 0.5)
Frame.AnchorPoint = Vector2.new(0.5, 0.5)
Frame.BackgroundColor3 = Color3.fromRGB(24, 24, 32)
Frame.BorderSizePixel = 0
Frame.Parent = KeyGui

local Corner = Instance.new("UICorner")
Corner.CornerRadius = UDim.new(0, 12)
Corner.Parent = Frame

local Stroke = Instance.new("UIStroke")
Stroke.Color = Color3.fromRGB(70, 120, 255)
Stroke.Thickness = 2
Stroke.Parent = Frame

local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -20, 0, 35)
Title.Position = UDim2.fromOffset(10, 10)
Title.BackgroundTransparency = 1
Title.Text = "TRIPS HUB"
Title.TextColor3 = Color3.new(1, 1, 1)
Title.TextSize = 22
Title.Font = Enum.Font.GothamBold
Title.Parent = Frame

local Sub = Instance.new("TextLabel")
Sub.Size = UDim2.new(1, -20, 0, 25)
Sub.Position = UDim2.fromOffset(10, 42)
Sub.BackgroundTransparency = 1
Sub.Text = "Get a key to start"
Sub.TextColor3 = Color3.fromRGB(170, 170, 180)
Sub.TextSize = 13
Sub.Font = Enum.Font.Gotham
Sub.Parent = Frame

local KeyBox = Instance.new("TextBox")
KeyBox.Size = UDim2.new(1, -30, 0, 38)
KeyBox.Position = UDim2.fromOffset(15, 72)
KeyBox.BackgroundColor3 = Color3.fromRGB(40, 40, 52)
KeyBox.BorderSizePixel = 0
KeyBox.PlaceholderText = "Enter key..."
KeyBox.PlaceholderColor3 = Color3.fromRGB(130, 130, 140)
KeyBox.Text = ""
KeyBox.TextColor3 = Color3.new(1, 1, 1)
KeyBox.TextSize = 14
KeyBox.Font = Enum.Font.Gotham
KeyBox.ClearTextOnFocus = false
KeyBox.Parent = Frame

local BoxCorner = Instance.new("UICorner")
BoxCorner.CornerRadius = UDim.new(0, 7)
BoxCorner.Parent = KeyBox

local Unlock = Instance.new("TextButton")
Unlock.Size = UDim2.fromOffset(130, 36)
Unlock.Position = UDim2.fromOffset(15, 120)
Unlock.BackgroundColor3 = Color3.fromRGB(55, 110, 255)
Unlock.BorderSizePixel = 0
Unlock.Text = "Unlock"
Unlock.TextColor3 = Color3.new(1, 1, 1)
Unlock.TextSize = 14
Unlock.Font = Enum.Font.GothamBold
Unlock.Parent = Frame

local UnlockCorner = Instance.new("UICorner")
UnlockCorner.CornerRadius = UDim.new(0, 7)
UnlockCorner.Parent = Unlock

local GetKey = Instance.new("TextButton")
GetKey.Size = UDim2.fromOffset(130, 36)
GetKey.Position = UDim2.fromOffset(155, 120)
GetKey.BackgroundColor3 = Color3.fromRGB(45, 45, 58)
GetKey.BorderSizePixel = 0
GetKey.Text = "Get Key"
GetKey.TextColor3 = Color3.new(1, 1, 1)
GetKey.TextSize = 14
GetKey.Font = Enum.Font.GothamBold
GetKey.Parent = Frame

local GetCorner = Instance.new("UICorner")
GetCorner.CornerRadius = UDim.new(0, 7)
GetCorner.Parent = GetKey

local Discord = Instance.new("TextButton")
Discord.Size = UDim2.new(1, -30, 0, 32)
Discord.Position = UDim2.fromOffset(15, 163)
Discord.BackgroundColor3 = Color3.fromRGB(55, 55, 70)
Discord.BorderSizePixel = 0
Discord.Text = "Discord"
Discord.TextColor3 = Color3.new(1, 1, 1)
Discord.TextSize = 13
Discord.Font = Enum.Font.GothamBold
Discord.Parent = Frame

local DiscordCorner = Instance.new("UICorner")
DiscordCorner.CornerRadius = UDim.new(0, 7)
DiscordCorner.Parent = Discord

local Status = Instance.new("TextLabel")
Status.Size = UDim2.new(1, -20, 0, 25)
Status.Position = UDim2.fromOffset(10, 198)
Status.BackgroundTransparency = 1
Status.Text = ""
Status.TextColor3 = Color3.fromRGB(255, 80, 80)
Status.TextSize = 12
Status.Font = Enum.Font.Gotham
Status.Parent = Frame

--==================================================
-- COPY LINKS
--==================================================

GetKey.MouseButton1Click:Connect(function()

    if typeof(setclipboard) == "function" then
        setclipboard(GET_KEY_LINK)

        Status.TextColor3 = Color3.fromRGB(90, 210, 255)
        Status.Text = "Key link copied!"
    else
        Status.TextColor3 = Color3.fromRGB(255, 210, 90)
        Status.Text = "Get Key: " .. GET_KEY_LINK
    end

end)

Discord.MouseButton1Click:Connect(function()

    if typeof(setclipboard) == "function" then
        setclipboard(DISCORD_LINK)

        Status.TextColor3 = Color3.fromRGB(90, 210, 255)
        Status.Text = "Discord link copied!"
    else
        Status.TextColor3 = Color3.fromRGB(255, 210, 90)
        Status.Text = "Discord: " .. DISCORD_LINK
    end

end)

--==================================================
-- LOAD RAYFIELD AFTER KEY
--==================================================

local function LoadHub()

    KeyGui:Destroy()

    local Rayfield = loadstring(game:HttpGet(
        "https://sirius.menu/rayfield"
    ))()

    --==================================================
    -- MAIN WINDOW
    --==================================================

    local Window = Rayfield:CreateWindow({
        Name = "TRIPS HUB",
        Icon = "gamepad-2",
        LoadingTitle = "TRIPS HUB",
        LoadingSubtitle = "Rayfield Edition",
        ShowText = "TRIPS",
        Theme = "DarkBlue",

        ToggleUIKeybind = "K",

        ConfigurationSaving = {
            Enabled = false,
            FolderName = "TripsHub",
            FileName = "Config"
        },

        -- Our own key screen handles the key.
        KeySystem = false
    })

    --==================================================
    -- MOVEMENT
    --==================================================

    local Movement = Window:CreateTab("Movement", "person-standing")

    Movement:CreateSection("Movement Controls")

    local flying = false
    local noclip = false
    local wallClimb = false
    local flySpeed = 60

    local bodyVelocity
    local flyConnection

    local function getCharacter()
        return Player.Character or Player.CharacterAdded:Wait()
    end

    local function getHumanoid()
        local character = getCharacter()
        return character:FindFirstChildOfClass("Humanoid")
    end

    local function getRoot()
        local character = getCharacter()
        return character:FindFirstChild("HumanoidRootPart")
    end

    --==================================================
    -- FLY
    --==================================================

    Movement:CreateToggle({
        Name = "Fly",
        CurrentValue = false,

        Callback = function(value)

            flying = value

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

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

            if not value then
                return
            end

            local root = getRoot()

            if not root then
                return
            end

            bodyVelocity = Instance.new("BodyVelocity")

            bodyVelocity.MaxForce = Vector3.new(
                math.huge,
                math.huge,
                math.huge
            )

            bodyVelocity.Velocity = Vector3.zero
            bodyVelocity.Parent = root

            flyConnection = RunService.RenderStepped:Connect(function()

                if not flying or not bodyVelocity or not bodyVelocity.Parent then
                    return
                end

                local camera = workspace.CurrentCamera
                local direction = Vector3.zero

                if UIS:IsKeyDown(Enum.KeyCode.W) then
                    direction += camera.CFrame.LookVector
                end

                if UIS:IsKeyDown(Enum.KeyCode.S) then
                    direction -= camera.CFrame.LookVector
                end

                if UIS:IsKeyDown(Enum.KeyCode.A) then
                    direction -= camera.CFrame.RightVector
                end

                if UIS:IsKeyDown(Enum.KeyCode.D) then
                    direction += camera.CFrame.RightVector
                end

                if UIS:IsKeyDown(Enum.KeyCode.Space) then
                    direction += Vector3.yAxis
                end

                if UIS:IsKeyDown(Enum.KeyCode.LeftControl) then
                    direction -= Vector3.yAxis
                end

                if direction.Magnitude > 0 then
                    direction = direction.Unit * flySpeed
                end

                bodyVelocity.Velocity = direction

            end)
        end
    })

    --==================================================
    -- FLY SPEED
    --==================================================

    Movement:CreateSlider({
        Name = "Fly Speed",
        Range = {10, 150},
        Increment = 5,
        Suffix = " Speed",
        CurrentValue = 60,

        Callback = function(value)
            flySpeed = value
        end
    })

    --==================================================
    -- WALKSPEED
    --==================================================

    Movement:CreateSlider({
        Name = "WalkSpeed",
        Range = {8, 100},
        Increment = 1,
        Suffix = " Speed",
        CurrentValue = 16,

        Callback = function(value)

            local humanoid = getHumanoid()

            if humanoid then
                humanoid.WalkSpeed = value
            end

        end
    })

    --==================================================
    -- JUMP POWER
    --==================================================

    Movement:CreateSlider({
        Name = "JumpPower",
        Range = {25, 150},
        Increment = 5,
        Suffix = " Power",
        CurrentValue = 50,

        Callback = function(value)

            local humanoid = getHumanoid()

            if humanoid then
                humanoid.UseJumpPower = true
                humanoid.JumpPower = value
            end

        end
    })

    --==================================================
    -- NOCLIP
    --==================================================

    Movement:CreateToggle({
        Name = "Noclip",
        CurrentValue = false,

        Callback = function(value)
            noclip = value
        end
    })

    RunService.Stepped:Connect(function()

        if not noclip then
            return
        end

        local character = Player.Character

        if character then

            for _, object in ipairs(character:GetDescendants()) do

                if object:IsA("BasePart") then
                    object.CanCollide = false
                end

            end

        end

    end)

    --==================================================
    -- WALL CLIMB
    --==================================================

    Movement:CreateToggle({
        Name = "Wall Climb",
        CurrentValue = false,

        Callback = function(value)
            wallClimb = value
        end
    })

    RunService.Heartbeat:Connect(function()

        if not wallClimb then
            return
        end

        local character = Player.Character
        local root = character and character:FindFirstChild("HumanoidRootPart")

        if not root then
            return
        end

        local params = RaycastParams.new()

        params.FilterType = Enum.RaycastFilterType.Exclude
        params.FilterDescendantsInstances = {character}

        local hit = workspace:Raycast(
            root.Position,
            root.CFrame.LookVector * 3,
            params
        )

        if hit and UIS:IsKeyDown(Enum.KeyCode.Space) then

            root.AssemblyLinearVelocity = Vector3.new(
                root.AssemblyLinearVelocity.X,
                35,
                root.AssemblyLinearVelocity.Z
            )

        end

    end)

    --==================================================
    -- LINKS TAB
    --==================================================

    local Links = Window:CreateTab("Links", "link")

    Links:CreateSection("TRIPS HUB LINKS")

    Links:CreateButton({
        Name = "Get Key",
        Callback = function()

            if typeof(setclipboard) == "function" then
                setclipboard(GET_KEY_LINK)

                Rayfield:Notify({
                    Title = "Get Key",
                    Content = "Key link copied!",
                    Duration = 3
                })
            end

        end
    })

    Links:CreateButton({
        Name = "Discord",
        Callback = function()

            if typeof(setclipboard) == "function" then
                setclipboard(DISCORD_LINK)

                Rayfield:Notify({
                    Title = "Discord",
                    Content = "Discord link copied!",
                    Duration = 3
                })
            end

        end
    })

    --==================================================
    -- PLAYER TAB
    --==================================================

    local PlayerTab = Window:CreateTab("Player", "user")

    PlayerTab:CreateButton({
        Name = "Reset Character",

        Callback = function()

            local humanoid = getHumanoid()

            if humanoid then
                humanoid.Health = 0
            end

        end
    })

    --==================================================
    -- INFO
    --==================================================

    local Info = Window:CreateTab("Info", "info")

    Info:CreateParagraph({
        Title = "TRIPS HUB",

        Content =
            "TRIPS HUB\n\n" ..
            "Key: trips123\n\n" ..
            "Get Key and Discord are available in the Links tab."
    })

    Rayfield:Notify({
        Title = "TRIPS HUB",
        Content = "TRIPS HUB unlocked!",
        Duration = 4
    })
end

--==================================================
-- UNLOCK
--==================================================

Unlock.MouseButton1Click:Connect(function()

    if KeyBox.Text == KEY then

        Status.TextColor3 = Color3.fromRGB(80, 255, 120)
        Status.Text = "Key accepted!"

        task.wait(0.4)

        LoadHub()

    else

        Status.TextColor3 = Color3.fromRGB(255, 80, 80)
        Status.Text = "Wrong key."

        KeyBox.Text = ""

    end

end)

--==================================================
-- ENTER KEY WITH RETURN
--==================================================

KeyBox.FocusLost:Connect(function(enterPressed)

    if enterPressed then
        Unlock:Activate()
    end

end)

Features & Information

Fly Noclip and more

Community Comments (0)

No comments yet for this script.

More Scripts for Just a Baseplate.