-- CONFIG SECTION local config = { Speed = 0 -- Delay between each reward request (in seconds) } -- UI Creation local ScreenGui = Instance.new("ScreenGui", game.CoreGui) ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling local Frame = Instance.new("Frame", ScreenGui) Frame.BackgroundColor3 = Color3.fromRGB(54, 54, 54) Frame.BackgroundTransparency = 0.5 Frame.Position = UDim2.new(0.226, 0, 0.118, 0) Frame.Size = UDim2.new(0, 254, 0, 240) local Title = Instance.new("TextLabel", Frame) Title.Size = UDim2.new(0, 200, 0, 26) Title.Position = UDim2.new(0.106, 0, 0, 0) Title.BackgroundTransparency = 1 Title.Text = "Risky Haul Infinite Farm" Title.Font = Enum.Font.SourceSansBold Title.TextColor3 = Color3.fromRGB(255, 255, 255) Title.TextSize = 16 local StudButton = Instance.new("TextButton", Frame) StudButton.Size = UDim2.new(0, 200, 0, 50) StudButton.Position = UDim2.new(0.106, 0, 0.133, 0) StudButton.Text = "Start Infinite Stud Bucks" StudButton.Font = Enum.Font.SourceSans StudButton.TextColor3 = Color3.fromRGB(0, 0, 0) StudButton.TextSize = 14 local TokenButton = Instance.new("TextButton", Frame) TokenButton.Size = UDim2.new(0, 200, 0, 50) TokenButton.Position = UDim2.new(0.106, 0, 0.396, 0) TokenButton.Text = "Start Infinite Tokens" TokenButton.Font = Enum.Font.SourceSans TokenButton.TextColor3 = Color3.fromRGB(0, 0, 0) TokenButton.TextSize = 14 -- Dragging Support local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local dragging, dragStart, startPos, lastMousePos, lastGoalPos local DRAG_SPEED = 8 local function lerp(a, b, m) return a + (b - a) * m end local function update(dt) if not startPos then return end if not dragging and lastGoalPos then Frame.Position = UDim2.new( startPos.X.Scale, lerp(Frame.Position.X.Offset, lastGoalPos.X.Offset, dt * DRAG_SPEED), startPos.Y.Scale, lerp(Frame.Position.Y.Offset, lastGoalPos.Y.Offset, dt * DRAG_SPEED) ) return end local delta = lastMousePos - UserInputService:GetMouseLocation() local xGoal = startPos.X.Offset - delta.X local yGoal = startPos.Y.Offset - delta.Y lastGoalPos = UDim2.new(startPos.X.Scale, xGoal, startPos.Y.Scale, yGoal) Frame.Position = UDim2.new( startPos.X.Scale, lerp(Frame.Position.X.Offset, xGoal, dt * DRAG_SPEED), startPos.Y.Scale, lerp(Frame.Position.Y.Offset, yGoal, dt * DRAG_SPEED) ) end 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 lastMousePos = UserInputService:GetMouseLocation() input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) Frame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then dragInput = input end end) RunService.Heartbeat:Connect(update) -- Infinite Reward Function local function infiniteReward(itemId, rewardId, label) local replicatedStorage = game:GetService("ReplicatedStorage") local remoteFunc = replicatedStorage:WaitForChild("RemoteFunctions"):WaitForChild("Rewards"):WaitForChild("GiveReward") while true do local args = {itemId, rewardId, "Playtime", 1} remoteFunc:InvokeServer(unpack(args)) label.Text = "Farming... (" .. tostring(itemId) .. ")" task.wait(config.Speed) end end -- Button Events StudButton.MouseButton1Click:Connect(function() StudButton.Text = "Starting Stud Bucks..." StudButton.Active = false infiniteReward(820, 4, StudButton) end) TokenButton.MouseButton1Click:Connect(function() TokenButton.Text = "Starting Tokens..." TokenButton.Active = false infiniteReward(866, 3, TokenButton) end)