local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local Workspace = game:GetService("Workspace") local UserInputService = game:GetService("UserInputService") local LocalPlayer = Players.LocalPlayer -- === Services and Remotes === local knitServices = ReplicatedStorage.Packages._Index["sleitnick_knit@1.5.1"].knit.Services local RebirthService = knitServices and knitServices:FindFirstChild("RebirthService") local FightService = knitServices and knitServices:FindFirstChild("FightService") local RandomPotionService = knitServices and knitServices:FindFirstChild("RandomPotionService") -- Remote Definitions local SuperRebirthRF = RebirthService and RebirthService.RF.SuperRebirth local RebirthRF = RebirthService and RebirthService.RF.Rebirth local JoinContest = FightService and FightService.RE.JoinContest local GetWinsEvent = FightService and FightService.RE.GetWinsEvent local QuitContestEvent = FightService and FightService.RE.QuitContestEvent local BuyPotionEvent = RandomPotionService and RandomPotionService.RE.BuyPotionEvent -- === Configuration === local SAFE_NEGATIVE_VALUE = -2e9 local FRUIT_GATES = { "WinGate_1", "WinGate_2", "WinGate_3", "WinGate_4", "WinGate_5", "WinGate_6", "WinGate_7", "WinGate_8", "WinGate_9", "WinGate_10", "WinGate_11", "WinGate_12", "WinGate_13", "WinGate_14", "WinGate_15", "WinGate_16" } local FRUIT_AREA_NAME = "Area_Fruit" -- === Toggles === local AutoWinEnabled = false local AutoRebirthEnabled = false local AutoSuperRebirthEnabled = false local InfMoneyEnabled = false local AutoFruitFarmEnabled = false -- === GUI SETUP (Unchanged) === local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "race" ScreenGui.ResetOnSpawn = false ScreenGui.Parent = LocalPlayer:WaitForChild("PlayerGui") local MainFrame = Instance.new("Frame") MainFrame.Size = UDim2.new(0, 320, 0, 390) MainFrame.Position = UDim2.new(0.5, -160, 0.3, 0) MainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 40) MainFrame.BorderSizePixel = 0 MainFrame.Active = true MainFrame.Draggable = true MainFrame.Parent = ScreenGui local Corner = Instance.new("UICorner") Corner.CornerRadius = UDim.new(0, 12) Corner.Parent = MainFrame local Title = Instance.new("TextLabel") Title.Size = UDim2.new(1, 0, 0, 45) Title.BackgroundColor3 = Color3.fromRGB(0, 170, 255) Title.Text = "horse race" Title.TextColor3 = Color3.new(1,1,1) Title.Font = Enum.Font.GothamBold Title.TextSize = 20 Title.Parent = MainFrame -- Toggle Button Function local function CreateToggle(name, yPos, callback) local btn = Instance.new("TextButton") btn.Size = UDim2.new(0.92, 0, 0, 45) btn.Position = UDim2.new(0.04, 0, 0, yPos) btn.BackgroundColor3 = Color3.fromRGB(200, 50, 50) btn.Text = name .. ": OFF" btn.TextColor3 = Color3.new(1,1,1) btn.Font = Enum.Font.GothamBold btn.TextSize = 18 btn.Parent = MainFrame local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 10) corner.Parent = btn local enabled = false btn.MouseButton1Click:Connect(function() enabled = not enabled btn.Text = name .. ": " .. (enabled and "ON" or "OFF") btn.BackgroundColor3 = enabled and Color3.fromRGB(50, 200, 50) or Color3.fromRGB(200, 50, 50) callback(enabled) end) return btn end -- === TOGGLE DEFINITIONS === CreateToggle("AUTO WIN CONTEST", 55, function(state) AutoWinEnabled = state end) CreateToggle("AUTO REBIRTH", 110, function(state) AutoRebirthEnabled = state end) CreateToggle("AUTO SUPER REBIRTH", 165, function(state) AutoSuperRebirthEnabled = state end) CreateToggle("INFINITE MONEY", 220, function(state) InfMoneyEnabled = state end) CreateToggle("AUTO FARM FRUIT GATES", 275, function(state) AutoFruitFarmEnabled = state end) -- Draggable Logic (Unchanged) local dragging, dragInput, dragStart, startPos Title.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType.Touch then dragging = true dragStart = input.Position startPos = MainFrame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) Title.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType.Touch then dragInput = input end end) UserInputService.InputChanged:Connect(function(input) if dragging and input == dragInput then local delta = input.Position - dragStart MainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) -- === EXPLOIT LOOPS === task.spawn(function() local HRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") while true do if AutoFruitFarmEnabled and HRP then local area = Workspace.Areas:FindFirstChild(FRUIT_AREA_NAME) if area and JoinContest and GetWinsEvent and QuitContestEvent then pcall(function() -- 1. Join Contest JoinContest:FireServer(FRUIT_AREA_NAME) task.wait(0.1) -- 2. Teleport to each Gate and Fire Win Event for _, gateName in ipairs(FRUIT_GATES) do local gateModel = area.WinGates:FindFirstChild(gateName) local gatePart = gateModel and gateModel:FindFirstChild("gate") if gatePart then -- TELEPORT TO GATE POSITION HRP.CFrame = CFrame.new(gatePart.Position + Vector3.new(0, 5, 0)) -- Fire Win Remote GetWinsEvent:FireServer(gateName, gatePart.Position) task.wait(0.05) -- Small delay between gates end end -- 3. Quit Contest QuitContestEvent:FireServer(FRUIT_AREA_NAME) end) end end task.wait(0.6) end end) -- Original: Generic Auto Win Loop (with Teleportation added) task.spawn(function() local HRP = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("HumanoidRootPart") while true do if AutoWinEnabled and HRP then local area = Workspace.Areas:FindFirstChildWhichIsA("Model") if area and JoinContest and GetWinsEvent and QuitContestEvent then pcall(function() JoinContest:FireServer(area.Name) task.wait(0.1) for i, gate in ipairs(area.WinGates:GetChildren()) do local gatePart = gate:FindFirstChild("gate") if gatePart then -- TELEPORT TO GATE POSITION HRP.CFrame = CFrame.new(gatePart.Position + Vector3.new(0, 5, 0)) GetWinsEvent:FireServer("WinGate_" .. tostring(i), gatePart.Position) task.wait(0.05) end end QuitContestEvent:FireServer(area.Name) end) end end task.wait(0.6) end end) -- Auto Rebirth Loops (Unchanged) task.spawn(function() while true do if AutoRebirthEnabled and RebirthRF then pcall(function() RebirthRF:InvokeServer() end) end task.wait(0.1) end end) task.spawn(function() while true do if AutoSuperRebirthEnabled and SuperRebirthRF then pcall(function() SuperRebirthRF:InvokeServer() end) end task.wait(0.1) end end) -- Infinite Money Loop (Unchanged) task.spawn(function() while true do if InfMoneyEnabled and BuyPotionEvent then pcall(function() BuyPotionEvent:FireServer(table.unpack({[1] = SAFE_NEGATIVE_VALUE, [2] = {}, [3] = true, [4] = "yippie!"})) end) end task.wait(2) end end)