Sleeping in a bed when DoDaylightCycle is false does not set the time to day
Partner Rank:
2. - Important
Partner Team Reporting:
Razzleberries
Verification builds:
1.17.0-1.17.11
Summary:
If daylight cycle is disabled (so that the sun and moon do not rotate, and a player sleeps in a bed during the night, the player will sleep in the bed, then be ejected from the bed as if they have slept, but the time would not be advanced to the next morning. In the past this is what would happen and existing maps either avoid giving players beds if they don't want them to do this, or rely on this mechanic to run.
Impact:
Affects existing content and my ability to update it to the latest versions of Minecraft. in "Beach Bonfire", time stops when the moon rises and waits for the player to sleep to finish their day on the island. Once they sleep and the bed sets the time to day, the code for the next day begins.
Repro Steps:
- Create a new Minecraft world
- Place down a bed
- Run the command /time set midnight
- Run the command /gamerule doDaylightCycle false
- Sleep in the bed in any gamemode
Observed Results:
The player is ejected from the bed and night is not skipped
Expected Results:
The player sleeps through the night and time is set to the next morning.
Screenshots/Videos attached: Yes/No
No
Regression Builds:
This affects the game "Beach Bonfire" which was last updated for a version where manifests didn't specify min_engine_number. Perhaps you can look at the date Beach Bonfire 1.3.0 was submitted and calculate the release version of Minecraft from there.
Notes:
I appreciate that players not being able to skip the night if daylight cycle is off makes more sense, but it hasn't been this way for many years and it wouldn't surprise me if other content is affected. An impact survey or perhaps a separate gamerule for bedskips might be worth looking into.