-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] -- ============================================================ -- FINAL MEGA GUI v1 — drive/noclip/cycle/roll/auto-sell -- ============================================================ local Players = game:GetService("Players") local RS = game:GetService("ReplicatedStorage") local RunService = game:GetService("RunService") local lp = Players.LocalPlayer local Packets = require(RS:WaitForChild("Packages"):WaitForChild("Packets")) local driveOn, noclipOn, cycleOn, rollOn, sellOn = false, false, false, false, false local serverTop, lastDbg, lastRespawnTry, cycleBusy = nil, 0, 0, false local rollN, sellN = 0, 0 local function getCar() local cars = workspace:FindFirstChild("Cars") if not cars then return nil end for _, c in ipairs(cars:GetChildren()) do if c:IsA("Model") and c:GetAttribute("OwnerUserId") == lp.UserId then return c end end return nil end local function myPlot() local g = workspace:FindFirstChild("Game") local plots = g and g:FindFirstChild("Lobby") and g.Lobby:FindFirstChild("Plots") if not plots then return nil end for _, p in ipairs(plots:GetChildren()) do if p:IsA("Model") and p:GetAttribute("OwnerUserId") == lp.UserId then return p end end return nil end -- ================= GUI ================= local gui = Instance.new("ScreenGui") gui.Name = "MEGA_GUI" gui.ResetOnSpawn = false local hui = (gethui and gethui()) or lp:FindFirstChildOfClass("PlayerGui") or lp:WaitForChild("PlayerGui") gui.Parent = hui local main = Instance.new("Frame") main.Size = UDim2.new(0, 180, 0, 250) main.Position = UDim2.new(0, 10, 0.5, -125) main.BackgroundColor3 = Color3.fromRGB(18, 18, 24) main.BorderSizePixel = 0 main.Active = true main.Draggable = true main.Parent = gui Instance.new("UICorner", main).CornerRadius = UDim.new(0, 8) local title = Instance.new("TextLabel") title.Size = UDim2.new(1, 0, 0, 28) title.BackgroundTransparency = 1 title.Text = "MEGA FARM v1" title.TextColor3 = Color3.fromRGB(255, 215, 0) title.Font = Enum.Font.GothamBold title.TextSize = 14 title.Parent = main local status = Instance.new("TextLabel") status.Size = UDim2.new(1, -10, 0, 40) status.Position = UDim2.new(0, 5, 0, 26) status.BackgroundTransparency = 1 status.TextColor3 = Color3.fromRGB(180, 180, 180) status.Font = Enum.Font.Gotham status.TextSize = 11 status.TextWrapped = true status.Text = "loading..." status.Parent = main local btns = {} local function makeBtn(name, key, y, color) local b = Instance.new("TextButton") b.Size = UDim2.new(1, -16, 0, 26) b.Position = UDim2.new(0, 8, 0, y) b.BackgroundColor3 = Color3.fromRGB(35, 35, 45) b.TextColor3 = Color3.fromRGB(220, 220, 220) b.Font = Enum.Font.GothamBold b.TextSize = 12 b.Text = key .. ": " .. name .. " [OFF]" b.Parent = main Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6) btns[key] = {btn = b, name = name, state = false, color = color} b.MouseButton1Click:Connect(function() local st = btns[key] st.state = not st.state b.Text = key .. ": " .. name .. (st.state and " [ON]" or " [OFF]") b.BackgroundColor3 = st.state and color or Color3.fromRGB(35, 35, 45) if key == "T" then driveOn = st.state end if key == "Y" then noclipOn = st.state end if key == "C" then cycleOn = st.state end if key == "R" then rollOn = st.state end if key == "S" then sellOn = st.state end end) end makeBtn("AUTO-DRIVE", "T", 70, Color3.fromRGB(0, 120, 60)) makeBtn("NOCLIP", "Y", 102, Color3.fromRGB(0, 90, 140)) makeBtn("FUEL CYCLE", "C", 134, Color3.fromRGB(150, 90, 0)) makeBtn("ROLL FARM", "R", 166, Color3.fromRGB(120, 40, 160)) makeBtn("AUTO-SELL", "S", 198, Color3.fromRGB(160, 40, 40)) -- keybind tetep works game:GetService("UserInputService").InputBegan:Connect(function(i, g) if g then return end local k = btns[i.KeyCode.Name] if k then k.btn.MouseButton1Click:Fire() end end) -- ================= ENGINE ================= Packets.RollConfirmation.OnClientEvent:Connect(function(a,b,c,d) task.wait(0.05) pcall(function() Packets.ConfirmRollSkip:Fire(d, true) end) end) local function applyNoclip() local car = getCar() if car then for _, p in ipairs(car:GetDescendants()) do if p:IsA("BasePart") then p.CanCollide = false end end end local ch = lp.Character if ch then for _, p in ipairs(ch:GetDescendants()) do if p:IsA("BasePart") then p.CanCollide = false end end end end task.spawn(function() while true do task.wait(0.5) if cycleOn then local car = getCar() if car and not cycleBusy then local fuel = car:GetAttribute("Fuel") if type(fuel) == "number" and fuel < 4 then cycleBusy = true pcall(function() Packets.DespawnCar:Fire() end) task.wait(2) pcall(function() Packets.SpawnCar:Fire() end) task.wait(4) cycleBusy = false end end end if driveOn and not getCar() and not cycleBusy and tick() - lastRespawnTry > 12 then lastRespawnTry = tick() pcall(function() Packets.SpawnCar:Fire() end) end end end) task.spawn(function() while true do task.wait(0.3) if driveOn then pcall(function() Packets.SetTurbo:Fire(true) end) local car = getCar() if car then car:SetAttribute("NitroFuel", 1) end end end end) task.spawn(function() while true do task.wait(1.5) if rollOn then local plot = myPlot() local rolls = plot and plot:FindFirstChild("Rolls") if rolls then for _, sn in ipairs({"RollBlocks", "RollWeapons"}) do local st = rolls:FindFirstChild(sn) local rp = st and st:FindFirstChild("Roll") local pr = rp and rp:FindFirstChild("ProximityPrompt") if pr then pcall(function() if fireproximityprompt then fireproximityprompt(pr) else pr:InputHoldBegin() task.wait(0.1) pr:InputHoldEnd() end end) rollN = rollN + 1 end end end end end end) -- ============ AUTO-SELL ============ task.spawn(function() while true do task.wait(1) if sellOn then local pg = lp:FindFirstChildOfClass("PlayerGui") if pg then local clicked = 0 for _, b in ipairs(pg:GetDescendants()) do if (b:IsA("TextButton") or b:IsA("ImageButton")) and b.Visible then local t = string.lower(b.Name .. " " .. (b:IsA("TextButton") and b.Text or "")) if string.find(t, "sell") and not string.find(t, "seller") then pcall(function() b:Activate() end) clicked = clicked + 1 end end end if clicked > 0 then sellN = sellN + clicked end end end end end) RunService.PostSimulation:Connect(function() if noclipOn then applyNoclip() end if not driveOn then return end local car = getCar() if not car or not car.PrimaryPart then return end local ch = car.PrimaryPart local pos = ch.Position if not serverTop then local t = car:GetAttribute("TopSpeed") if type(t) == "number" and t > 0 then serverTop = t end end local rp = RaycastParams.new() rp.FilterType = Enum.RaycastFilterType.Exclude rp.FilterDescendantsInstances = {car, lp.Character} local hit = workspace:Raycast(Vector3.new(pos.X + 35, pos.Y + 40, pos.Z), Vector3.new(0, -250, 0), rp) local target = (hit and hit.Normal.Y > 0.5) and (hit.Position + Vector3.new(0, 4, 0)) or (pos + Vector3.new(35, 0, 0)) local to = target - pos local vel = ch.AssemblyLinearVelocity local h = Vector3.new(vel.X, 0, vel.Z) local hd = Vector3.new(to.X, 0, to.Z) local SPEED = math.min((serverTop or 60) * 1.3, 135) if h.Magnitude > 2 and hd.Magnitude > 0.1 and h.Unit:Dot(hd.Unit) < 0.3 then ch.AssemblyLinearVelocity = h * 0.85 + Vector3.new(0, vel.Y, 0) else ch.AssemblyLinearVelocity = hd.Unit * SPEED + Vector3.new(0, math.clamp(to.Y * 2, -40, 25), 0) end if tick() - lastDbg > 5 then lastDbg = tick() local cv = lp:FindFirstChild("CashValue") status.Text = string.format("cash: %s\nrolls: %d | sells: %d | vel: %d", cv and tostring(cv.Value) or "?", rollN, sellN, math.floor(h.Magnitude)) end end) print("[MEGA GUI v1] ready — T/Y/C/R/S tombol atau keybind")