local Rayfield = loadstring(game:HttpGet('https://sirius.menu/rayfield'))() local Window = Rayfield:CreateWindow({ Name = "Barry's Prison Obby | RoseHub", Icon = 0, -- Icon in Topbar. Can use Lucide Icons (string) or Roblox Image (number). 0 to use no icon (default). LoadingTitle = "loaded...", LoadingSubtitle = "by Irantom920", ShowText = "Rayfield", -- for mobile users to unhide Rayfield, change if you'd like Theme = "Ocean", -- Check https://docs.sirius.menu/rayfield/configuration/themes ToggleUIKeybind = "K", -- The keybind to toggle the UI visibility (string like "K" or Enum.KeyCode) DisableRayfieldPrompts = false, DisableBuildWarnings = false, -- Prevents Rayfield from emitting warnings when the script has a version mismatch with the interface. -- Heartbeat = "https://www.sentivel.com/api/heartbeat/", -- Pings your Sentivel heartbeat while Rayfield is open, so you can see whether your script is running -- ScriptID = "sid_xxxxxxxxxxxx", -- Your Script ID from developer.sirius.menu — enables analytics, managed keys, and script hosting ConfigurationSaving = { Enabled = true, FolderName = nil, -- Create a custom folder for your hub/game FileName = "Big Hub" }, Discord = { Enabled = false, -- Prompt the user to join your Discord server if their executor supports it Invite = "noinvitelink", -- The Discord invite code, do not include Discord.gg/. E.g. Discord.gg/ABCD would be ABCD RememberJoins = true -- Set this to false to make them join the Discord every time they load it up }, KeySystem = false, -- Set this to true to use our key system KeySettings = { Title = "Untitled", Subtitle = "Key System", Note = "No method of obtaining the key is provided", -- Use this to tell the user how to get a key FileName = "Key", -- It is recommended to use something unique, as other scripts using Rayfield may overwrite your key file SaveKey = true, -- The user's key will be saved, but if you change the key, they will be unable to use your script GrabKeyFromSite = false, -- If this is true, set Key below to the RAW site you would like Rayfield to get the key from Key = {"Hello"} -- List of keys that the system will accept, can be RAW file links (pastebin, github, etc.) or simple strings ("hello", "key22") } }) local CharTab = Window:CreateTab("Character", 4483362458) local MiscTab = Window:CreateTab("Misc", 4483362458) local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local player = Players.LocalPlayer local walkSpeed = 16 local jumpPower = 50 local tpwalking = false local tpwalkSpeed = 43 local infJumpEnabled = false local noclipEnabled = false local flyEnabled = false local flySpeed = 60 local function toggleTPWalk(state) tpwalking = state if not tpwalking then return end task.spawn(function() while tpwalking do local delta = RunService.Heartbeat:Wait() local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if char and hum and hum.MoveDirection.Magnitude > 0 then pcall(function() char:TranslateBy(hum.MoveDirection * tpwalkSpeed * delta * 10) end) end end end) end local function toggleFly(state) flyEnabled = state local char = player.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") local hum = char and char:FindFirstChildWhichIsA("Humanoid") if not flyEnabled then if hum then hum.PlatformStand = false end return end task.spawn(function() local bv = Instance.new("BodyVelocity") bv.MaxForce = Vector3.new(9e9, 9e9, 9e9) bv.Velocity = Vector3.zero bv.Parent = hrp local bg = Instance.new("BodyGyro") bg.MaxTorque = Vector3.new(9e9, 9e9, 9e9) bg.P = 9e4 bg.Parent = hrp while flyEnabled and char and hrp and hum and hum.Parent do RunService.Heartbeat:Wait() hum.PlatformStand = true local cam = workspace.CurrentCamera bg.CFrame = cam.CFrame local moveDir = Vector3.zero if UserInputService:IsKeyDown(Enum.KeyCode.W) then moveDir = moveDir + cam.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.S) then moveDir = moveDir - cam.CFrame.LookVector end if UserInputService:IsKeyDown(Enum.KeyCode.A) then moveDir = moveDir - cam.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.D) then moveDir = moveDir + cam.CFrame.RightVector end if UserInputService:IsKeyDown(Enum.KeyCode.Space) then moveDir = moveDir + Vector3.new(0, 1, 0) end if UserInputService:IsKeyDown(Enum.KeyCode.LeftControl) then moveDir = moveDir - Vector3.new(0, 1, 0) end bv.Velocity = moveDir.Magnitude > 0 and (moveDir.Unit * flySpeed) or Vector3.zero end if bv then bv:Destroy() end if bg then bg:Destroy() end if hum then hum.PlatformStand = false end end) end local function applyHeadless() local char = player.Character if not char then return end local head = char:FindFirstChild("Head") if head and head:IsA("BasePart") then head.Transparency = 1 head.CanCollide = false for _, child in ipairs(head:GetChildren()) do if child:IsA("Decal") or child:IsA("Texture") then child.Transparency = 1 elseif child:IsA("SpecialMesh") or child:IsA("Mesh") then child.Scale = Vector3.new(0, 0, 0) end end end end UserInputService.JumpRequest:Connect(function() if infJumpEnabled then local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if hum then hum:ChangeState(Enum.HumanoidStateType.Jumping) end end end) RunService.Stepped:Connect(function() if noclipEnabled then local char = player.Character if char then for _, part in ipairs(char:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end end end) RunService.Heartbeat:Connect(function() local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if hum then if walkSpeed ~= 16 then hum.WalkSpeed = walkSpeed end if jumpPower ~= 50 then hum.UseJumpPower = true hum.JumpPower = jumpPower end end end) CharTab:CreateSection("Speed & Jump") CharTab:CreateSlider({ Name = "WalkSpeed", Range = {16, 200}, Increment = 1, Suffix = "", CurrentValue = 16, Flag = "SpeedSlider", Callback = function(Value) walkSpeed = Value local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if hum then hum.WalkSpeed = walkSpeed end end, }) CharTab:CreateSlider({ Name = "JumpPower", Range = {50, 300}, Increment = 5, Suffix = "", CurrentValue = 50, Flag = "JumpSlider", Callback = function(Value) jumpPower = Value local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if hum then hum.UseJumpPower = true hum.JumpPower = jumpPower end end, }) CharTab:CreateToggle({ Name = "Enable TPWalk", CurrentValue = false, Flag = "TPWalkToggle", Callback = function(Value) toggleTPWalk(Value) end, }) CharTab:CreateSlider({ Name = "TPWalk Speed", Range = {1, 100}, Increment = 1, Suffix = " studs", CurrentValue = 43, Flag = "TPWalkSpeedSlider", Callback = function(Value) tpwalkSpeed = Value end, }) CharTab:CreateSection("Abilities") CharTab:CreateToggle({ Name = "Infinite Jump", CurrentValue = false, Flag = "InfJumpToggle", Callback = function(Value) infJumpEnabled = Value end, }) CharTab:CreateToggle({ Name = "Noclip (Walk Through Walls)", CurrentValue = false, Flag = "NoclipToggle", Callback = function(Value) noclipEnabled = Value end, }) CharTab:CreateToggle({ Name = "Fly (WASD + Space/Ctrl)", CurrentValue = false, Flag = "FlyToggle", Callback = function(Value) toggleFly(Value) end, }) CharTab:CreateSlider({ Name = "Fly Speed", Range = {10, 250}, Increment = 5, Suffix = "", CurrentValue = 60, Flag = "FlySpeedSlider", Callback = function(Value) flySpeed = Value end, }) MiscTab:CreateSection("Utilities") MiscTab:CreateButton({ Name = "Headless (Client)", Callback = function() applyHeadless() end, }) MiscTab:CreateButton({ Name = "No dmg Killbricks (Lasers / Lava)", Callback = function() for _, obj in ipairs(workspace:GetDescendants()) do if obj:IsA("BasePart") then local name = obj.Name:lower() if name:find("kill") or name:find("laser") or name:find("lava") or name:find("damage") or (obj:FindFirstChild("TouchInterest") and obj.BrickColor == BrickColor.new("Really red")) then obj.CanTouch = false obj.Transparency = 0.7 end end end end, }) MiscTab:CreateButton({ Name = "Reset Character", Callback = function() local char = player.Character local hum = char and char:FindFirstChildWhichIsA("Humanoid") if hum then hum.Health = 0 end end, })