Deterministically calculates a whole timeline of future events from the moment the player changes the world state.
This allows the game to not spend compute every second to figure out what events should be playing at a given time.
Dialogue and interaction can be tied to this event system.