curiousdannii-testing / inform7-imported-bugs

0 stars 0 forks source link

[I7-2059] [Mantis 2096] "Zodiac" example shows library isn't interpreting instead rule correctly #25

Closed curiousdannii-testing closed 2 years ago

curiousdannii-testing commented 2 years ago

Reported by : seancwall

Description :

When running the second "Zodiac" example in the documentation, the compiler produces a story file that doesn't allow the "look" action, even though the instead rule doesn't prevent it.

Steps to reproduce :

"Zodiac"

The Secluded Alley is a room. The Capricorn Killer is a man in the Secluded Alley.

The player carries a can of mace and a roll of duct tape.

Instead of doing something other than examining something in the presence of the Capricorn Killer:
    say "You dare not attempt it!"

Test me with "x me / x killer / touch killer / smell mace".

Additional information :

When you run this example, the initial room description is not displayed, and using "LOOK" doesn't display it either. Instead, you get the "You dare not attempt it!" message. It's like the clause "other than examining something" is not being considered.

imported from: [Mantis 2096] "Zodiac" example shows library isn't interpreting instead rule correctly
  • status: Closed
  • resolution: Resolved
  • resolved: 2022-04-10T04:32:24+10:00
  • imported: 2022/01/10
curiousdannii-testing commented 2 years ago

557058:4c095ffd-6d6f-47ce-9e73-77c613347b86:

Comment by mattweiner :
Yes, this looks like a bug in the example/documentation, or more specifically a failure to update it to the latest version. If you say "instead of doing something other than examining with something in the presence of the Capricorn Killer" then the behavior is as described in the docs. (Note the "with.")

A recent version-I forget exactly which-added the distinction between "doing something other than examining foo" ("examining foo" is the only action not included) and "doing something other than examining with foo" ("examining foo" and any actions not involving foo are not included). It looks to me like this particular example wasn't updated for it.

curiousdannii-testing commented 2 years ago

557058:4c095ffd-6d6f-47ce-9e73-77c613347b86:

Comment by seancwall :
Actually, I just realized this may be more of a documentation issue. The docs say "But notice that because we specified 'examining something', actions that take no object (like sing) are still not affected." 'Look' falls into this category, as does 'sing', but both are affected by this rule, as does actions like 'jump'. The rule may be working as expected, but the docs are confusing on this.

curiousdannii-testing commented 2 years ago

61eedb62875fc10070240916:

Fixed via this commit: https://github.com/ganelson/inform/commit/5a8ad1d7aa84553dae186cc85dc8a6e7ca47dac4

Comment by Graham Nelson:
As the comments helpfully worked out, this was a documentation issue, and the example has been reworded.