(URGENT) Can I automatically teleport the player at a certain time?

This is kinda urgent because the game jam ends on the 12th

I’m making a game for a game jam involving a time loop, and said time loop resets at a certain time (9:00 PM). I need to teleport the player back to the start location (Bedroom) at that time, but I can’t figure out how to do it without it being a command or an actual teleporter object.

I also need this teleport to happen when the player dies, and when they try to leave through a certain door without having shut down the time loop, but those should be easier to create.

1 Like

Inform 7 doesn’t do any real-time checking out of the box. It’s essentially turn-based.

Inform keeps track of the time of day automatically: play ordinarily begins at 9 AM and each turn takes one minute .

…excluding out-of-world actions like save/load/undo - unless you change that amount per turn via normal rules or an extension (like Variable Time Control.)

You can change game start time like
When play begins: now the time of day is 3:13 PM.

So you can check the time with an Every Turn rule and run whatever reset rules you need.

Another way is you can set a future event:

When play begins: [assuming beginning at 9 am]
     the loop resets in 30 minutes from now.

At the time when the loop resets:
    now the player is in Starting Room;
    now the treasure is in the Magical Grotto;
    now the time of day is 9:00 AM;
    the loop resets in 30 minutes from now;
    say "Hum...you feel like you've done this before..."

IT WORKED! Thank you so much- I was having such a hard time getting it to reset like it should.

I used the future event solution.

1 Like