the-infocom-files / starcross

Starcross
5 stars 3 forks source link

Opening a container with only one object inside can print misleading message #29

Open eriktorbjorn opened 5 years ago

eriktorbjorn commented 5 years ago

This is the same as https://github.com/the-infocom-files/deadline/issues/30

In this example, I'm using the nest (which can incorrectly be opened and closed) which contains the ray gun:

>OPEN NEST
The nest opens.
Mounted in a wall-rack is a genuine-looking ray gun, large and formidable, with
a long, ugly barrel. It's difficult to tell whether or not the gun is fully
charged.

It should probably only do that if the object inside hasn't been touched.

eriktorbjorn commented 4 years ago

This bug seems to be present in quite a lot of games. A quick look through the code suggests that the following games may be affected:

But don't take my word for it, because I didn't actually verify it. Some games have the code for it, but it's commented out. And some games, like Zork I-III, have the code but add a check for TOUCHBIT, just like I suggested earlier.

eriktorbjorn commented 4 years ago

Infidel is definitely affected.

eriktorbjorn commented 4 years ago

I don't think the bug can be triggered in Seastalker. There are very few objects that have an FDESC, and I don't think any of them can be put in an openable container. (The microphone at the start won't fit inside the magazine.)