Some mods target the Mono version of the game, which is available by opting into the Steam beta branch "alternate"
TimeNeverStops Mono
Time no longer stops at 4AM. Configurable day speed multiplier. (Mono build)
| Date uploaded | a week ago |
| Version | 1.5.0 |
| Download link | DropDaDeuce-TimeNeverStops_Mono-1.5.0.zip |
| Downloads | 92 |
| Dependency string | DropDaDeuce-TimeNeverStops_Mono-1.5.0 |
This mod requires the following mods to function
LavaGang-MelonLoader
The World's First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono
Preferred version: 0.7.3ifBars-SteamNetworkLib_Mono
A streamlined, object-oriented Steam networking library designed specifically for Schedule 1 mods.
Preferred version: 1.5.0ifBars-S1API_Forked
S1API is an open source collaboration project to help standardize Schedule One modding processes. The goal is to provide a standard place for common functionalities so you can focus on making content versus reverse engineering the game.
Preferred version: 3.2.0README
Time Never Stops
A mod for Schedule I that keeps time moving and lets you control the in‑game day speed.
Report issues on GitHub.
Also on Nexus Mods.
Ask on Discord.
Disclaimer
- AI Content: This mod was created with assistance from AI tools. The icon was generated with ChatGPT v5.
Features
- No 4:00 AM Freeze (default mode): Time keeps advancing; the hard stop is removed.
- Custom Day Speed: 0.1x–100.0x multiplier; applied continuously and re‑applied if other code changes it.
- Live Config Reload: Edit the config file while the game is running; changes take effect within ~1 second.
- Daily Summary Phone App (new, on by default): yesterday's summary lives on your phone, so it never interrupts you. Open it when you want it — and unlike the vanilla popup it scrolls, so a busy day no longer has items quietly cut off the bottom. Needs S1API; if that is missing the mod falls back to the popup automatically.
- Daily Summary While Awake:
EnableDailySummaryAwakeshows the daily summary popup at 07:00 even if you didn’t sleep. Ignored while the phone app is running — the app replaces it. - Silent Sleep (new, on by default): the nightly changeover no longer takes your screen — no fade to black, no HUD drop, no cursor, no waiting. Everything the game does overnight still happens: employees become unpaid for the new day, you wake at full health, wanted levels clear, NPCs revive, machines tick over, and the game saves. Applies while the summary is not being shown as a popup; see
EnableSilentSleep. - Rank-ups and region unlocks are content, not interruptions: the vanilla full-screen rank-up and region-unlocked screens used to seize the game at 07:00. They are now reported as lines in the Summary app instead — including which rank you reached and what it unlocked.
- Sleep Prompt Suppression: Hides the on‑screen sleep prompt (unless you disable full feature set).
- Local Multiplayer (Mono build only, off by default): a second copy of the game on the same PC can join your session with no second Steam account. See below.
- Multiplier Only Mode:
TimeMultiplierOnlyMode = truelimits the mod to only enforcing the day speed multiplier (disables 4AM bypass, awake summary injection, sleep prompt hiding) for a minimal footprint.
Config File
Path: UserData/DropDaDeuce-TimeNeverStops/TimeNeverStops.cfg
Keys:
DaySpeedMultiplier=1.0— string parsed to float, range 0.1–100.0. Invalid or out-of-range values are clamped and rewritten.EnableDailySummaryApp=true— show yesterday's summary in a phone app instead of interrupting you with the popup. Requires S1API; falls back to the popup if it is missing or the app fails to load.EnableDailySummaryAwake=true— show the daily summary popup at 07:00 even if you did not sleep. Ignored while the phone app is active.EnableSilentSleep=true— run the nightly changeover with no screen takeover at all: no fade to black, no HUD drop, no cursor, no waiting. Everything the game does overnight still happens, the daily save included. Only applies when the summary is not being shown as a popup (i.e. the phone app is active, or you setEnableDailySummaryAwake=false); otherwise you get the normal sleep screen, because the popup needs it.EnableLocalMultiplayer=false— Mono build only. Lets a second copy of the game on the same PC join your session, with no second Steam account. See below.TimeMultiplierOnlyMode=false— true means only the speed multiplier is enforced; every other feature is disabled.ForceDailySummaryWhileInUITime=800— an HHmm time. Post-sleep menus still open at this point are closed so the day can move on.EnableDebugLogging=false— extra logging. Turn it on before reporting a bug.
Installation
1. Requirements
-
MelonLoader 0.7.3 or newer
-
Schedule I (legit copy), game version 0.4.6f13
-
SteamNetworkLib by ifBars, 1.5.0 or newer — required for multiplayer time sync. A mod manager installs it for you; if you install by hand, take the copy that matches your game build:
- SteamNetworkLib_IL2Cpp
- SteamNetworkLib_Mono
- On Nexus instead: https://www.nexusmods.com/schedule1/mods/1396
Without it the mod still loads and single-player is unaffected, but time will not sync between players and nothing on screen says why.
-
S1API_Forked by ifBars (KaBooMa's original, forked), 3.2.0 or newer — powers the Daily Summary phone app. A mod manager installs it for you.
- S1API_Forked on Thunderstore
- On Nexus instead: https://www.nexusmods.com/schedule1/mods/1194
One package covers both game builds — unlike SteamNetworkLib there is no Mono/IL2CPP choice to make. Without it the mod still works: it detects that S1API is absent and shows the vanilla daily-summary popup instead, so nothing is lost except the app. Set
EnableDailySummaryApp=falseif you would rather not install it.
2. Choose the Correct Build
You will see two Thunderstore packages / release files:
TimeNeverStops_IL2Cpp.dll(IL2CPP build)TimeNeverStops_Mono.dll(Mono build)
To tell which you have, open the folder with Schedule I.exe in it:
GameAssembly.dllsits next to the exe — you have the IL2CPP build. This is what a standard Steam install is. If you are not sure, it is this one.- No
GameAssembly.dll, andSchedule I_Data/Managed/is full of.dllfiles instead — you have the Mono build, usually a Steam beta branch.
Getting it wrong is harmless. The mod just will not load and MelonLoader says so; swap the file and you are fine.
3. Install
Place the chosen DLL in your Schedule I/Mods/ folder (created by MelonLoader).
Only ever have one of the two DLLs in your Mods folder. Do not put both in.
4. Configure
Edit the config file (it is created after first launch). Save changes; they apply automatically.
Usage Scenarios
- Want everything (no 4AM freeze + awake summary + prompt hiding): leave
TimeMultiplierOnlyMode=false. - Only want adjustable speed (compatibility with other time / sleep mods): set
TimeMultiplierOnlyMode=true. - Read the summary on your own schedule (default): leave
EnableDailySummaryApp=trueand open the Summary app on your phone. - Want the old interrupting popup back: set
EnableDailySummaryApp=false(and keepEnableDailySummaryAwake=true). - Want no summary at all while awake: set both
EnableDailySummaryApp=falseandEnableDailySummaryAwake=false(it still appears after sleeping normally). - Want the fade-to-black back at 07:00: set
EnableSilentSleep=false.
About the pause at 07:00
Whatever you set, the game saves once a night, and that save is a synchronous write — a short hitch, on a big save maybe a couple of seconds. It happens in an unmodded game too; you just never see it, because vanilla hides it behind the sleep screen. With this mod you are awake when it lands. It is the game saving, not the mod stalling, and it should not be skipped.
Local Multiplayer (Mono only)
Mostly useful for testing. Set EnableLocalMultiplayer=true, then:
- Launch two copies of the game on the same PC.
- In the first, load a normal single-player save. The log will say
listening on 127.0.0.1:38465. - In the second, press F6. It joins the first.
Same machine only — this is not LAN, and there is no way to make it LAN: the join address is hardcoded inside the game.
There is no Steam lobby in a local session, so the time sync described below does not run. The clock still follows the host, because the game itself pushes it every in-game minute. What it means in practice: set DaySpeedMultiplier to the same value in both instances, since the host cannot push it to you.
Not available on the IL2CPP build. Multiplayer there is Steam-only; single-player is unaffected.
Multiplayer
Time is synchronised from the host. The host’s day speed is pushed to everyone connected, so while you are in someone else’s game their setting wins; your own is restored when you leave.
The supported setup: everyone has the mod
Every player in the lobby needs this mod installed, and that is the only configuration that is tested or supported.
A player without it still hits the vanilla 4:00 AM stop while everyone else carries on, because the game decides whether a minute may pass using that player's own clock, not the host's. Their clock stops dead at 4:00 and there is no reliable way for the host to push them past it.
Host-only installs are untested and unsupported. They may happen to work; nothing is done to make sure they do, and problems arising from that setup are not bugs.
For the same reason TimeMultiplierOnlyMode and DaySpeedMultiplier should match across the lobby — a player who
has multiplier-only mode switched on keeps vanilla behaviour and will fall out of step with the rest.
This is the half that needs SteamNetworkLib (see Requirements). Without it the mod still loads and single-player is unaffected, but clocks drift apart and nothing on screen says why.
Compatibility
- Harmony patches, for diagnosing conflicts:
TimeManager.RpcLogic___PassMinute_Client_3316948804(prefix & postfix) — the main oneTimeManager.SkipForwardToTime(prefix),TimeManager.StartSleepandTimeManager.SetHostSleepDone(postfix, logging only)SleepCanvas.SleepStart(prefix) andSleepCanvas.AddPostSleepEvent(prefix)DailySummary.Open,DailySummary.CloseandDailySummary.ClearStats(all prefix)RankUpCanvas.StartEvent(prefix)RegionUnlockedCanvas.StartEvent(prefix) andRegionUnlockedCanvas.QueueUnlocked(postfix)HUD.Update(postfix)
- May conflict with other mods that:
- Patch the same methods
- Force or freeze
TimeManager.TimeSpeedMultiplier - Inject alternate daily summary or sleep flows
- If you use another time or sleep mod, set
TimeMultiplierOnlyMode=true. Every patch above then early-returns to vanilla behaviour and only the speed multiplier is applied.
Troubleshooting
Multiplayer time sync does nothing, and the log says "Steam is not initialized"
You are launching the game outside Steam. Some mod managers start Schedule I.exe directly instead of going
through Steam, and when they do the game’s Steam features never initialise — that includes multiplayer itself,
not just this mod’s time sync.
Either fix works:
-
Launch through Steam. This is the supported path and needs nothing else.
-
Or tell the game its Steam app id. Create a file named
steam_appid.txtnext toSchedule I.exe, containing exactly:3164500Plain text, nothing else in the file. Steam still has to be running.
Single-player is unaffected either way. Without Steam there is no lobby, so there is nothing to sync — the error looks alarming but it cannot cause your clock to drift on its own.
It worked before a Schedule I update and now it does not
Worth reporting rather than reinstalling. This mod reaches into the game's time system by name, and a game update can rename what it reaches for. The log will say so.
Where the log is
MelonLoader\Latest.log, in your Schedule I folder. Set EnableDebugLogging = true, reproduce the problem,
and attach that file when reporting anything.
Say which build you are on (Mono or IL2CPP) and whether you were hosting or joining. For anything involving time drifting between players, that last detail is usually the whole answer.
Credits
- Source: https://github.com/DropDaDeuce/Time-Never-Stops
- Template Inspiration: Deeej’s S1 Mono / IL2CPP template
- Harmony / MelonLoader Teams: For tooling enabling mod development.
CHANGELOG
Changelog
[1.5.0] - Daily Summary App & Silent Sleep - 2026-08-23
Supersedes 1.4.1, which was prepared but never published. Everything from it ships here, so the upgrade path for players is 1.4.0 to 1.5.0.
Added
- Daily Summary App:
- Added a Summary app to the in-game phone, so the summary no longer interrupts you.
- Added scrolling to the summary, so a busy day no longer has items cut off.
- Added rank-ups and region unlocks as lines in the app instead of full-screen takeovers.
- Added
EnableDailySummaryApp(default on). Requires S1API by ifBars.
- Silent Sleep:
- Added silent sleep, so the nightly changeover no longer takes over your screen.
- Added story sleep messages to the summary app so they are not lost with the sleep screen.
- Added
EnableSilentSleep(default on).
- Multiplayer:
- Added time synchronisation between everyone in a Steam lobby.
- Added the host's day speed being applied to every player who joins.
- Added restoring your own day speed when you leave someone else's game.
- Added local multiplayer for two copies of the game on one PC (default off, Mono build only).
- Added
EnableLocalMultiplayer(default off).
- Added
ForceDailySummaryWhileInUITime(default 800) to close post-sleep menus left open.
Changed
- Updated the mod for Schedule I 0.4.6f13.
- Changed the day speed in multiplayer so the host now sets it for everyone.
- Changed the daily summary popup to stay hidden while the phone app is active.
Fixed
- Fixed the day speed multiplier doing nothing at all on the IL2CPP build.
- Fixed IL2CPP clients ignoring the host's day speed.
- Fixed clients soft-locking on a black "Waiting for host" screen at the daily summary.
- Fixed the player's head turning while the daily summary was on screen.
- Fixed the HUD snapping at the end of sleep.
- Fixed a false "sleep did not finish" warning on nights with a story message.
- Fixed the hour and day events firing in the wrong order at midnight.
- Fixed time sync degrading after loading several saves without restarting the game.
- Fixed mod behavior for the 0.4.5f2 game update.
Notes
- Massive thanks to ifBars for the Steam lobby networking implementation!
- Every player in the lobby needs this mod. Host-only installs are untested and unsupported.
- The game saves once a night and that briefly freezes it. This happens in an unmodded game too.
- Not yet verified in a live round: local multiplayer, and the Mono build with two players.
[1.4.0] - Stop Breaking Things Update - 2025-09-12
Added
- Config option
EnableDebugLogging(cfgDebugLogging) to selectively emit detailed diagnostic messages without cluttering normal logs.
Changed
- Run ForceSleep at 6:59 to ensure all game mechanics that rely on sleep events can run properly.
- Added many patches to ensure mod functionality works correctly with this change and doesn't interfere with normal game behavior.
- Refactored internal logging to use
TNSLogstatic class for consistent formatting and easier future enhancements. - All debug output (detailed internal state changes, config reloads, etc.) is now conditional on the new
EnableDebugLoggingsetting.
Notes
- Thank you bigjme for the bug report!
1.3.0 - Multiplier Only Mode, Mono Build & Quality Pass - 2025-08-30
Added
- Separate published Mono build (alongside IL2CPP) with its own Thunderstore package; functionally identical feature set.
- Multiplier Only Mode (
TimeMultiplierOnlyMode): restricts the mod to just enforcing the day speed multiplier (disables 4AM freeze bypass, awake daily summary injection, sleep prompt hiding). - Continuous multiplier normalization: re‑applies sanitized value if external code or the game changes
TimeProgressionMultiplier.
Changed
- Packaging pipeline now syncs version from
Version.propsinto both IL2CPP and Mono TOMLs (single source of truth). - Config writes reduced (only when value actually changes) to minimize disk churn.
- Summary / sleep handling cleanly no‑ops when Multiplier Only Mode is enabled.
Notes
- Players wanting only adjustable time speed can enable Multiplier Only Mode; default behavior remains unchanged otherwise.
- Mono and IL2CPP zips are now built and hashed in the same run for easier release verification.
1.2.1 - Compatibility & Stability Fix - 2025-08-29
Fixed
- Crash / NullReference during game load caused by attempting to subscribe to
TimeManagersleep callbacks before the instance existed (or after the game update changed their accessibility/signature). - Removed invalid delegate
+= / -=usage onTimeManagermembers that are no longer proper events after the game update. - Daily Summary + Rank Up flow now reliably suppresses during sleep without relying on those callbacks.
Changed
- Replaced direct sleep event subscriptions with a lightweight coroutine that polls
TimeManager.SleepInProgressand triggers start/end logic on state transitions (safer across updates). - Switched HUD patch target from
FixedUpdatetoUpdateto keep the sleep prompt suppressed after upstream changes. - Defensive null checks around config +
TimeManagerusage to avoid early initialization edge cases. - Internal refactor: consolidated sleep suppression + daily summary rearm logic into clearer helper methods.
Notes
- Functionality is unchanged from the player perspective; this release restores full operation after the latest game update altered internals.
- If further game updates expose stable events again, logic can be swapped back from polling with no user-facing impact.
1.2.0 - Awake Summary & Sleep Fix - 2025-08-10
Added
- EnableDailySummaryAwake config toggle (default: 'true') to allow the Daily Summary to display at 07:00 while awake, and if false won't display unless the player sleeps.
- Awake Daily Summary flow improvements:
- Skips first tick after load to avoid immediate trigger.
- Suppresses summary during sleep; marks the day handled after sleeping.
- Automatically runs RankUpCanvas after the summary closes.
- Ensures an EventSystem exists so the UI is interactable.
Changed
- Removed custom SleepCanvas patch and restored vanilla sleep behavior.
- Sleeping now uses the base game's time skip, so plants grow and cooking advances normally overnight.
- Integrated awake summary with sleep events via 'TimeManager.onSleepStart' and 'TimeManager.onSleepEnd'.
1.1.1 - Minor Fix - 2025-08-09
Fixed
- SetDaySpeedLoop now checks both the config value and the current 'TimeProgressionMultiplier' each tick.
- If the in-game value differs from the config (due to other mods or game logic), it is automatically corrected.
- Prevents cases where the day speed could silently change without user intent.
1.1.0 - Major Bug Fixes & Features - 2025-08-09
Added
- Dedicated config file at 'UserData/DropDaDeuce-TimeNeverStops/TimeNeverStops.cfg' with auto-migration from old settings.
- Support for day speed multipliers up to 100.0x (previously capped at 3.0x).
- Ability to change DaySpeedMultiplier in-game via config file (no need to restart the game).
Changed
- Config entry type changed from float to string for more precise parsing and sanitization.
- Day speed loop now:
- Waits for 'TimeManager' before starting.
- Reloads config file each tick to pick up manual edits.
- Applies changes only when value differs (epsilon compare).
- Reattaches if 'TimeManager.Instance' changes.
- Centralized parsing + sanitization into helper methods.
Fixed
- Issue where day speed could get "stuck" on the old value if 'OnEntryValueChanged' was missed.
- Issue where day speed multiplier was not applied when quitting a save and loading a new/old save.
1.0.2 - Bug Fixes - 2025-08-08
Fixed
- Daily Summary Fix: Fixed an issue where the daily summary UI would appear when loading a new game, and at the start of character creation. Fixed by making sure daily summary only appears after the first day has passed.
1.0.1 - Minor Fixes - 2025-08-07
Fixed
- Website Update: Updated the website link in the mod settings to point to the correct GitHub repository.
1.0.0 - Initial Release - 2025-08-07
Added
- Time Never Stops: Removed the default time freeze at 4:00 AM. The game clock continues to advance, allowing for uninterrupted gameplay.
- Custom Day Speed: Added the ability to adjust the in-game time speed multiplier (0.1x to 3.0x) via mod settings.