-- 99 Nights in the Forest - Advanced Admin (Fly + No Day Limit) -- Prefix: ; local Players = game:GetService("Players") local Workspace = game:GetService("Workspace") local Lighting = game:GetService("Lighting") local RunService = game:GetService("RunService") local LocalPlayer = Players.LocalPlayer local prefix = ";" local flying = false local noclipping = false local flySpeed = 50 print("✅ No Day Limit Admin Loaded! Prefix: " .. prefix) local function notify(title, text) game.StarterGui:SetCore("SendNotification", {Title = title, Text = text, Duration = 5}) end -- === FLY (unchanged) === local function startFly() if flying then return end flying = true notify("Fly", "Enabled (WASD + Space/Shift)") local character = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait() local root = character:WaitForChild("HumanoidRootPart") local bv = Instance.new("BodyVelocity") local bg = Instance.new("BodyGyro") bv.MaxForce = Vector3.new(1e5,1e5,1e5) bg.MaxTorque = Vector3.new(1e5,1e5,1e5) bv.Parent = root bg.Parent = root RunService.Heartbeat:Connect(function() if not flying then bv:Destroy() bg:Destroy() return end local cam = Workspace.CurrentCamera local dir = Vector3.new(0,0,0) local uis = game:GetService("UserInputService") if uis:IsKeyDown(Enum.KeyCode.W) then dir += cam.CFrame.LookVector end if uis:IsKeyDown(Enum.KeyCode.S) then dir -= cam.CFrame.LookVector end if uis:IsKeyDown(Enum.KeyCode.A) then dir -= cam.CFrame.RightVector end if uis:IsKeyDown(Enum.KeyCode.D) then dir += cam.CFrame.RightVector end if uis:IsKeyDown(Enum.KeyCode.Space) then dir += Vector3.new(0,1,0) end if uis:IsKeyDown(Enum.KeyCode.LeftShift) then dir -= Vector3.new(0,1,0) end bv.Velocity = dir.Unit * flySpeed * (dir.Magnitude > 0 and 1 or 0) bg.CFrame = cam.CFrame end) end local function stopFly() flying = false notify("Fly", "Disabled") end -- === NOCLIP === local function toggleNoclip() noclipping = not noclipping notify("Noclip", noclipping and "ON" or "OFF") end RunService.Stepped:Connect(function() if not noclipping then return end local char = LocalPlayer.Character if char then for _, part in pairs(char:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end end) -- === NO DAY LIMIT / SET DAY === local function setDay(amount) amount = tonumber(amount) or 99999 notify("Day System", "Setting day to " .. amount) -- Force Lighting Lighting.ClockTime = 12 -- Try to find and manipulate common day values in the game local success = false -- Common paths in these survival games for _, container in ipairs({Workspace, game.ReplicatedStorage, game.Players.LocalPlayer}) do for _, v in ipairs(container:GetDescendants()) do if v.Name:lower():find("day") or v.Name:lower():find("night") or v.Name == "DayCounter" or v.Name == "CurrentDay" then if v:IsA("IntValue") or v:IsA("NumberValue") then v.Value = amount success = true end end end end -- Extra aggressive method (fires possible remotes) for _, remote in ipairs(game.ReplicatedStorage:GetDescendants()) do if remote:IsA("RemoteEvent") and (remote.Name:lower():find("day") or remote.Name:lower():find("time")) then pcall(function() remote:FireServer(amount) end) end end if success then notify("Success", "Day set to " .. amount .. " (No Limit Applied)") else notify("Partial Success", "Day forced to " .. amount .. " - some values may still be server-sided") end end -- Commands Table local Commands = { fly = startFly, unfly = stopFly, noclip = toggleNoclip, speed = function(args) flySpeed = tonumber(args[1]) or 100 notify("Speed", "Fly speed = " .. flySpeed) end, skipday = function(args) setDay(args[1]) end, skip = function(args) setDay(args[1]) end, day = function(args) setDay(args[1]) end, setday = function(args) setDay(args[1]) end, nolimit = function() setDay(999999) end, unlimited = function() setDay(999999) end, god = function() local hum = LocalPlayer.Character and LocalPlayer.Character:FindFirstChild("Humanoid") if hum then hum.MaxHealth = 9e9; hum.Health = 9e9 end notify("God Mode", "ON") end, } -- Chat Handler LocalPlayer.Chatted:Connect(function(msg) if not msg:sub(1,1) == prefix then return end local cmd = msg:sub(2):lower() local args = {} for s in cmd:gmatch("%S+") do table.insert(args, s) end local command = table.remove(args, 1) if Commands[command] then Commands[command](args) else notify("Unknown", "Commands: fly, noclip, setday 500, nolimit, god") end end) notify("No Day Limit Added!", ";nolimit | ;setday 9999 | ;fly | ;noclip") print([[ New Commands: ;nolimit → Sets extremely high day (no limit) ;setday 99999 → Set any day number ;skipday 100 ;fly / ;unfly ;noclip ;god ]])