promotional bannermobile promotional banner

Decoupled time

Per-dimension time independence for NeoForge 1.21.1+

File Details

Decoupled Time 1.0.1

  • R
  • Mar 10, 2026
  • 29.35 KB
  • 10
  • 1.21.1
  • NeoForge

File Name

decoupled_time-1.0.1.jar

Supported Versions

  • 1.21.1

Curse Maven Snippet

NeoForge

implementation "curse.maven:decoupled-time-1482627:7740075"
Curse Maven does not yet support mods that have disabled 3rd party sharing

Learn more about Curse Maven

Changelog

All notable changes to Decoupled Time will be documented in this file.

[1.0.1]

Fixed

  • Sun/Moon Jitter with Day Length Multiplier: Fixed rubber-banding of the sun and moon when using non-default dayLengthMultiplier values. The client was advancing dayTime at vanilla rate (+1/tick) between server syncs, causing visual snapping. Added client-side mixin to match the server's fractional advancement rate.
  • Time Commands Nesting: Fixed /time add and /time query being incorrectly nested under /time set instead of being top-level subcommands.
  • Time Commands on Non-Decoupled Dimensions: Time commands no longer error on non-decoupled dimensions. They now fall back to the global level time and label output with (global).

[1.0.0]

Added

  • Per-Dimension Time Decoupling: Each dimension maintains its own independent dayTime and gameTime, configurable via whitelist/blacklist.
  • Smart Pausing: Local time progression pauses when no active players are present in a dimension (configurable).
  • Dimension-Aware Time Commands: /time set and /time add now accept an optional dimension argument.
  • Sleep Synchronization: When players sleep, only the current dimension's time advances.
  • Time Sync on Join: Optional time packet sync on login and dimension change.
  • Day Length Multiplier: Configurable dayLengthMultiplier to make days longer or shorter per decoupled dimension (e.g., 2.0 = 40 minute days, 0.5 = 10 minute days).
  • Spectator Pause Option: Spectators can optionally not count as active players for smart pause.