Hello, Hyao! I somehow noticed a little glitch about the removal of "tired" and "exhausted".
It seems "Sleep at night" and "Sleep until morning" are implemented in two steps—from sleeping time to 2 a.m. tomorrow as step 1, and from 2 a.m. to 6 a.m. as step 2—so that midnight events can happen.
That caused a little problem, since the time argument ultimately passed to update_sleep_time is total time minus 240.
Thus if there is no midnight event at all, moving time in 2 steps is fine while passing the time argument representing only step 1 is not.
Some other methods that used this incomplete time argument in move_time_rest are affected too i think.
(Sorry for the unpacking, i really meant no disrespect ... It's just the temptation of doing a little modding, and for private use only. i hope it's not one of the deadly sins :-p To be honest, all the hard work over the years, that many branches and possibilities of this story in form of huge amount of code, it shocked me really. i merely know i could never be the man capable of creating this wonder ...)