mojira.dev
MC-196580

The game doesn’t detect daytime using a predicate

The game doesn’t always detect a specific value (or a range of values) that a predicate uses to detect daytime in a datapack. When checking if the daytime is, let’s say, between 100 and 12100, and it’s a day, the predicate doesn’t work. But, if the time is set manually through a command (/time set 100) than everything works fine.

Comments 3

How exactly are you checking the time? Without /time set, a world will only ever experience a single period where the tick time would be at what you are describing - it doesn't reset to 0 after one full day, the number keeps running.

I use a simple predicate in a datapack. It checks if the time is between 12100 and 23300 (which is around night time).

{
"condition": "minecraft:time_check",
"value": {
"min": 12100,
"max": 23300
}
}

When I run a command to test for the predicate and the daytime value is between 12100 and 23300 (ex. 16969), the game doesn't register that.
/execute if predicate light:night run say 1

But once I manually run a command /time set 16969, the game instantly registers the daytime and outputs the result.

You need to include a period of 24000

PopLopChop

(Unassigned)

Unconfirmed

(Unassigned)

1.16.1

Retrieved