Create a value somewhere & call it playtime - maybe on your playable character. Also create a called by other action block type, rename to something like "update_playtime" & add something along the lines of this inside of it...
- pause for 1000ms
- value "playtime" + 1
- jump to action part #1
Now inside of each scene create an at begin of scene action (if you don't already have one) & call the called by other action block you created earlier. Next create an at end of scene action block for each scene (again if you don't already have any created) & quit the called by other action block you created earlier.
The idea behind this is that the value will increment by 1 every second that passes whilever a scene is shown. If you don't call the action block in menu type scenes then the time won't increase.
Anyway, ages ago I wrote some functions for converting seconds into dd:hh:mm:ss, etc format. You can find them
here.
Using what I've just said, you should be able to query the amount of time passed in the game & use it to update conditions &/or values as needed to determine what should happen in the game. As long as you combine it with conditions, values, & if queries you should be able to control the narrative of the game - though to be honest (I looked up "the last express" to get a better understanding of what you were wanting to achieve) & all I can say is good luck. Non-linear storytelling is quite complicated & requires a lot of work. Having said that, I do really enjoy non-linear story games.