RealtimeSync synchronizes Minecraft in-game time with the server's real system time or with a configurable custom day duration.
This is a lightweight server-side Minecraft mod. It disables the vanilla daylight cycle and manually controls world time, making the in-game day follow either the real server clock or your own custom timing rules.
Why use RealtimeSync?
- Real-time day/night cycle — Minecraft time can follow the actual server clock.
- Custom day duration — make a full Minecraft day last as long as you want.
- Server-side only — players do not need to install the mod on their client.
- Multi-loader support — separate builds for Fabric, Quilt, Forge and NeoForge.
- No mixins — safer compatibility with other server-side mods.
- Simple config — no Cloth Config, AutoConfig or client UI dependency.
- Multi-dimension support — sync all loaded worlds or only the Overworld.
- Hot config reload — most config changes are picked up automatically.
Supported loaders
RealtimeSync uses a multi-loader project layout. Do not use one jar for every loader. Download the correct file for your Minecraft version and mod loader.
| Loader | Required file | Notes |
|---|---|---|
| Fabric | realtime-sync-fabric-<mc-version>-<mod-version>.jar |
Requires Fabric API. |
| Quilt | realtime-sync-fabric-<mc-version>-<mod-version>.jar |
Uses the Fabric-compatible jar. |
| Forge | realtime-sync-forge-<mc-version>-<mod-version>.jar |
Native Forge build. |
| NeoForge | realtime-sync-neoforge-<mc-version>-<mod-version>.jar |
Native NeoForge build. |
Compatibility
Each uploaded file is built for a specific Minecraft version and loader. Always check the file name and the CurseForge file game version before downloading.
- Minecraft 1.21.x — supported in the 1.21.x release line.
- Minecraft 26.1.x — supported in the separate 26.1.x release line.
- Java — use the Java version required by your Minecraft version.
- Fabric / Quilt — Fabric API is required.
- Forge — use the Forge jar only on Forge.
- NeoForge — use the NeoForge jar only on NeoForge.
Important: do not mix files between loaders. A Fabric jar will not work on Forge or NeoForge, and a NeoForge jar will not work on Fabric.
Installation
Fabric
- Install a Fabric server or Fabric client profile.
- Install Fabric API for the same Minecraft version.
- Download the RealtimeSync Fabric jar for your Minecraft version.
- Place both jars in the
modsfolder. - Start the server once to generate the config file.
Quilt
- Install a Quilt server or Quilt client profile.
- Install the Fabric API / QFAPI setup required by your Quilt instance.
- Download the RealtimeSync Fabric-compatible jar for your Minecraft version.
- Place it in the
modsfolder. - Start the server once to generate the config file.
Forge
- Install a Forge server or Forge client profile.
- Download the RealtimeSync Forge jar for your Minecraft version.
- Place it in the
modsfolder. - Start the server once to generate the config file.
NeoForge
- Install a NeoForge server or NeoForge client profile.
- Download the RealtimeSync NeoForge jar for your Minecraft version.
- Place it in the
modsfolder. - Start the server once to generate the config file.
Configuration
RealtimeSync uses one shared config file for all loaders:
config/realtime.properties
Default config example:
enabled=true
forceDaylightCycleOff=true
syncAllWorlds=true
updateInterval=60
offsetHours=0
customDayLengthMinutes=0
debugLogging=false
enabled
Enables or disables RealtimeSync without removing the mod.
forceDaylightCycleOff
Keeps the vanilla doDaylightCycle gamerule disabled so Minecraft does not fight against the mod's manual time control.
syncAllWorlds
Synchronizes time for all loaded worlds and dimensions. Set this to false if you only want to sync the Overworld.
updateInterval
Controls how often the mod updates world time, in server ticks. 20 ticks = 1 second.
offsetHours
Shifts real-time synchronization forward or backward by the given number of hours. Example: offsetHours=2 makes the in-game time 2 hours ahead of the server clock.
customDayLengthMinutes
Controls custom day duration. Use 0 to sync with the real server clock. Use a value greater than 0 to make a full Minecraft day last that many real-world minutes.
debugLogging
Enables detailed log messages for troubleshooting. Keep this disabled during normal gameplay.
Legacy config migration
Older versions used:
config/realtime.toml
Newer versions use:
config/realtime.properties
If realtime.properties does not exist yet, RealtimeSync will try to read the old realtime.toml file once and create the new config automatically.
Common issues
The game says the mod failed during entrypoint loading
This usually means the wrong jar was installed for the current loader, the wrong Minecraft version was used, or Fabric API is missing on Fabric/Quilt.
- Fabric requires the Fabric jar and Fabric API.
- Quilt uses the Fabric-compatible jar.
- Forge requires the Forge jar.
- NeoForge requires the NeoForge jar.
- Do not install multiple RealtimeSync jars for different loaders at the same time.
The time keeps changing back
Make sure forceDaylightCycleOff=true is enabled. RealtimeSync controls time manually, so the vanilla daylight cycle should stay disabled.
Config changes do not apply immediately
The config is checked automatically every few seconds. If a value still does not apply, restart the server and check the log for invalid config values.
Notes
- This mod is server-side only.
- Client installation is not required for players joining a server.
- The mod disables
doDaylightCycleby default. - Use
customDayLengthMinutes=0for real server clock synchronization. - Use
customDayLengthMinutes>0for a custom Minecraft day length.
License
RealtimeSync is licensed under CC0-1.0.

