the-infocom-files / amfv

A Mind Forever Voyaging
5 stars 2 forks source link

You can't ever "EXAMINE NIGHT" in simulation mode #70

Open eriktorbjorn opened 4 years ago

eriktorbjorn commented 4 years ago

I wouldn't even have reported this, if it hadn't worked in DAY-F:

>EXAMINE DAY
[You can't see any day here.]

You begin to see the faint glow of dawn from the east.

>EXAMINE DAY
Totally ordinary looking day.

This is how DAY-F implements it:

<ROUTINE DAY-F ()
     <COND (<VERB? WAIT-FOR>
        <PERFORM ,V?WAIT-FOR ,DAWN>
        <RTRUE>)
           (<AND ,SIMULATING
             <EQUAL? ,LIGHT-LEVEL 0>
             <NOT <MOBY-VERB?>>>
        <CANT-SEE ,DAY>)>>

At first glance, it seems that NIGHT-F works the same way:

<ROUTINE NIGHT-F ()
     <COND (<VERB? WAIT-FOR>
        <PERFORM ,V?WAIT-FOR ,DUSK>
        <RTRUE>)
           (<AND ,SIMULATING
             <NOT <EQUAL? ,LIGHT-LEVEL 0>>
             <NOT <MOBY-VERB?>>>
        <CANT-SEE ,NIGHT>)
           (<AND <NOT <EQUAL? ,HERE ,ROOFTOP>>
             <NOT <MOBY-VERB?>>>
        <CANT-SEE ,NIGHT>)>>

But it doesn't:

>EXAMINE NIGHT
[You can't see any night here.]

It is night.

>EXAMINE NIGHT
[You can't see any night here.]

I think that's because while the second condition is no longer fulfilled (because the light level is 0), the third one is because you're not on the rooftop. So maybe it's enough to add <NOT ,SIMULATING> to the third condition? (Though it's odd that you can examine the night on the rooftop, even during the day...)