All Mods Resource Packs Data Packs Shaders Modpacks Plugins
Custom Time Cycle

Custom Time Cycle

by eclipseisoffline • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

Custom Time Cycle

Modrinth Version Modrinth Game Versions Modrinth Downloads Github Badge GitHub License Available for Fabric Available for NeoForge

Custom Time Cycle is a mod that allows changing the duration of Minecraft days and nights using a simple command, without changing tick speed. It is available for both Fabric and NeoForge. It can be used on servers (without being required on player clients), and in singleplayer.

Since Minecraft 26.1, Custom Time Cycle allows changing the duration/rate of change between every time marker for a clock, which are data-driven. This allows very granular control over the rate at which time for a clock progresses.

The mod also applies a small fix to villager behaviour, so that they still properly spawn iron golems with longer day/night durations than vanilla.

License

This mod is licensed under GNU LGPLv3.

Donating

If you like this mod, consider donating.

Discord

For support and/or any questions you may have, feel free to join my discord.

Version support

Minecraft Version Status
26.3.x ✅ Current
26.2.x ✔️ Available
26.1.x ✔️ Available
1.21.11 ✔️ Available
1.21.9+10 ✔️ Available
1.21.6+7+8 ✔️ Available
1.21.5 ✔️ Available
1.21.4 ✔️ Available
1.21.2+3 ✔️ Available
1.21+1 ✔️ Available
1.20.5+6 ✔️ Available
1.20.4 ✔️ Available
1.20.1 ✔️ Available

I try to keep support up for the latest drop of Minecraft. Updates to newer Minecraft versions may be delayed from time to time, as I do not always have the time to immediately update my mods.

Unsupported versions are still available to download, but they won't receive new features or bugfixes.

NeoForge ports are available for Minecraft 1.21+1 and for Minecraft 1.21.9 onwards.

Usage

Mod builds can be found on the releases page, as well as on Modrinth.

On Fabric, the Fabric API is required. When installed server-side, the mod is not required on clients. Durations of time markers can be configured for each periodic world clock and are saved across server restarts / world saves.

For clients, the time cycle of a world can be configured upon creation, by selecting the "More" tab at the top, then clicking the "Time Cycle" button. You can also configure default time cycle durations for all new created worlds, in the mod's global configuration screen. This can be accessed on Fabric using the ModMenu mod, and on NeoForge using the built-in mod menu. Global configuration is stored in .minecraft/config/customtimecyle.json.

The mod also adds a simple command, /timecycle, which can be used to alter the time cycle on servers and existing singleplayer worlds. Its usage is as follows:

  • /timecycle status
    • Shows a simple status message displaying which time durations and rates are currently in use in the current dimension.
  • /timecycle set <dayduration> <nightduration>
    • Modifies the durations of the Minecraft day and night in the current dimension.
  • /timecycle set from <from> to <to> duration <duration>
    • Modifies the duration in ticks between 2 time markers in the current dimension.
  • /timecycle set from <from> to <to> rate <rate>
    • Modifies the rate at which time progresses between 2 time markers in the current dimension.
  • /timecycle reset
    • Resets the rates of all time markers in the current dimension.
  • /timecycle of <clock> ...
    • Allows running all of the above commands, but for that specific clock instead of the one of the current dimension.

The rate modifications the mod makes apply on top of the vanilla /time rate command.

Using the /timecycle command requires the timecycle.command permission or operator level 2.

Modpack developers can also include the following file in the config folder to preconfigure time cycle durations for worlds on servers or clients:

{
  "daytime": <day time ticks>,
  "nighttime": <night time ticks>
}

How it works (technical explanation)

Since Minecraft 26.1, the game now has a "clock" concept. In vanilla, there are only 2 clocks, and only 1 that matters here: the minecraft:overworld clock, for the overworld dimension.

Clocks in Minecraft control timelines, and can progress at a custom rate, though by default, they progress at the same rate as the server's tick rate: 20 ticks per second. In vanilla, this rate can be configured for the entire clock, using the /time rate command.

This mod simply allows configuring the rate at which a clock progresses on a time marker basis. Time markers mark a certain moment along the clock, such as minecraft:day for the start of the day, or minecraft:midnight for midnight. You'll have seen these in the /time set command too. The mod adds 2 custom time markers for the vanilla minecraft:overworld clock, customtimecycle:sunrise and customtimecycle:sunset. These are added primarily for legacy reasons, and are used for the /timecycle set <dayduration> <nightduration> command.

As was said before, this mod can work on any clock, as long as it is a periodic one, like minecraft:overworld. This makes it work well with custom dimensions added by datapacks/mods that use their own clock.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
26.3
Fabric
24d ago 1
26.3
Neoforge
24d ago 1
26.2
Neoforge
4mo ago 1
26.2
Fabric
4mo ago 1
26.2
Fabric
4mo ago 1
26.2
Neoforge
4mo ago 1
26.1.x
Fabric
7mo ago 1
26.1.x
Neoforge
7mo ago 1
26.1
Fabric
7mo ago 1
26.1
Neoforge
7mo ago 1
1.21.x
Neoforge
11mo ago 1
1.21.x
Fabric
11mo ago 1
1.21.11
Neoforge
11mo ago 1
1.21.11
Fabric
11mo ago 1
1.21.x
Fabric
last yr. 1
1.21.x
Neoforge
last yr. 1
1.21.x
Fabric
last yr. 1
1.21.x
Neoforge
last yr. 1
1.21.9
Fabric
last yr. 1
1.21.x
Fabric
last yr. 1
1.21.x
Fabric
last yr. 1
1.21.6
Fabric
last yr. 1
1.21.5
Fabric
last yr. 1
25w03a
Fabric
last yr. 1
25w02a
Fabric
last yr. 1
1.20.1
Fabric
last yr. 1
1.21.4
Fabric
last yr. 1
1.21.x
Fabric
last yr. 1
1.21.2
Fabric
last yr. 1
1.21.x
Fabric
last yr. 1
1.21.2-pre1
Fabric
last yr. 1
24w39a
Fabric
last yr. 1
1.21.x
Fabric
last yr. 1
1.21
Fabric
last yr. 1
1.21
Fabric
last yr. 1
1.20.x
Fabric
last yr. 1
1.20.4
Fabric
last yr. 1
  • Update to 26.3.

  • Update to 26.3.

  • Fixed compatibility issues on NeoForge.

  • Fixed compatibility issues on NeoForge.

  • Update to 26.2.

  • Update to 26.2.

  • Mark 26.1.1 as supported.

  • Mark 26.1.1 as supported.

  • Updated to 26.1.
  • The mod now allows changing the rate at which time progresses for each time marker available in the game.
  • This can be done using the following commands:
  • /timecycle set from <from> to <to> duration <duration>, and
  • /timecycle set from <from> to <to> rate <rate>
  • The old /timecycle set <dayduration> <nightduration> command still functions and sets the time between the following time markers:
  • customtimecycle:sunrise and customtimecycle:sunset for dayduration
  • customtimecycle:sunset and customtimecycle:sunrise for nightduration
  • These time markers are automatically added for the minecraft:overworld clock.
  • This change results in a major change on how clock rate is saved in Minecraft worlds:
  • Time cycle data for the overworld dimension is automatically migrated.
  • Time cycle data for other, custom dimensions is lost. Make sure to take backups!**

  • Please make sure to properly back up your world when updating! Minecraft 26.1 changes the structure of Minecraft worlds a lot, and while this mod has adjusted for that, I cannot guarantee that no data loss will happen!**

I apologise to those losing time cycle data for custom dimensions, hopefully this will not be too much for you to deal with.
I did my best to migrate all data, but unfortunately it was nearly impossible to properly handle these cases, due to the way
the game is coded. Thank you for your understanding.

  • Updated to 26.1.
  • The mod now allows changing the rate at which time progresses for each time marker available in the game.
  • This can be done using the following commands:
  • /timecycle set from <from> to <to> duration <duration>, and
  • /timecycle set from <from> to <to> rate <rate>
  • The old /timecycle set <dayduration> <nightduration> command still functions and sets the time between the following time markers:
  • customtimecycle:sunrise and customtimecycle:sunset for dayduration
  • customtimecycle:sunset and customtimecycle:sunrise for nightduration
  • These time markers are automatically added for the minecraft:overworld clock.
  • This change results in a major change on how clock rate is saved in Minecraft worlds:
  • Time cycle data for the overworld dimension is automatically migrated.
  • Time cycle data for other, custom dimensions is lost. Make sure to take backups!**

  • Please make sure to properly back up your world when updating! Minecraft 26.1 changes the structure of Minecraft worlds a lot, and while this mod has adjusted for that, I cannot guarantee that no data loss will happen!**

I apologise to those losing time cycle data for custom dimensions, hopefully this will not be too much for you to deal with.
I did my best to migrate all data, but unfortunately it was nearly impossible to properly handle these cases, due to the way
the game is coded. Thank you for your understanding.

  • Fixed custom time cycle settings in a world not saving properly.

  • Fixed custom time cycle settings in a world not saving properly.

  • Updated to 1.21.11.

  • Updated to 1.21.11.

  • Added a world configuration screen that allows setting the time cycle of a singleplayer world upon creating it.
  • Added a similar configuration screen that allows setting the time cycle of all new created singleplayer worlds.
  • Accessible through Fabric's ModMenu mod or NeoForge's built-in mod menu.
  • Added a configuration file for modpacks to set a default time cycle.
  • Ported mod to NeoForge.
  • Marked support for 1.21.10.

  • Added a world configuration screen that allows setting the time cycle of a singleplayer world upon creating it.
  • Added a similar configuration screen that allows setting the time cycle of all new created singleplayer worlds.
  • Accessible through Fabric's ModMenu mod or NeoForge's built-in mod menu.
  • Added a configuration file for modpacks to set a default time cycle.
  • Ported mod to NeoForge.
  • Marked support for 1.21.10.

  • Added a world configuration screen that allows setting the time cycle of a singleplayer world upon creating it.
  • Added a similar configuration screen that allows setting the time cycle of all new created singleplayer worlds.
  • Accessible through Fabric's ModMenu mod or NeoForge's built-in mod menu.
  • Added a configuration file for modpacks to set a default time cycle.
  • Ported mod to NeoForge.
  • Marked support for 1.21.10.

  • Added a world configuration screen that allows setting the time cycle of a singleplayer world upon creating it.
  • Added a similar configuration screen that allows setting the time cycle of all new created singleplayer worlds.
  • Accessible through Fabric's ModMenu mod or NeoForge's built-in mod menu.
  • Added a configuration file for modpacks to set a default time cycle.
  • Ported mod to NeoForge.
  • Marked support for 1.21.10.

  • Update to 1.21.9.
  • Update to 1.21.8.
  • Update to 1.21.7.
  • Update to 1.21.6.
  • Update to 1.21.5.
  • Update to 25w03a.
  • Update to 25w02a.
  • Port to 1.20.1.
  • Update to 1.21.4.
  • Update to 1.21.3.
  • Update to 1.21.2
  • Fix day time counter stuck at 0 (verarr)


  • Fix day time counter stuck at 0 (verarr)
Custom Time Cycle Icon
Download Custom Time Cycle
Select game version
Select platform