Dont know about doors or positions issues with savegame.
About time functions, as any other, you may use them if needed, for example, to check the current time, or time elapsed, etc.
For example, the following code will do something for the following two minutes, and it should be resistant to savegames/loadgame
// current time in seconds,
_timeini = dayTime * 3600;
while {dayTime * 3600 < (_timeini + 120)} do
{
};