i7 / counterfeit-monkey

Counterfeit Monkey by Emily Short
http://ifdb.tads.org/viewgame?id=aearuuxv83plclpl
Other
168 stars 30 forks source link

Examining word or wordage can cause run-time problem P10 #227

Closed Roachbones closed 11 months ago

Roachbones commented 11 months ago

If you examine the word while also having the clock, you sometimes get an error like this:

>l word At the moment, the word is "alarm", floating about in handsome Garamond lettering.

*** Run-time problem P10: Since the word is not allowed the property "current time", it is against the rules to try to use it.

It's trying to evaluate the substituted form of "It appears to be one of those archetypal alarm clocks that crows at sunrise and generally makes a nuisance of itself. It shows the time to be about [the current time to the nearest five minutes in words].". Since the current time is a property of the clock but not the word, the word can't evaluate it.

The wordage has the same issue:

>l wordage A big lump of text that appears as though it's going to mean something, as long as you don't look too hard. The beginning reads, "One a second you with white dots and a a small sophisticated electronics it looks an infinitely reel coffee on well the yacht one on it numerous ..."

*** Run-time problem P10: Since the wordage is not allowed the property "counter-state", it is against the rules to try to use it.

angstsmurf commented 11 months ago

Thanks for finding this!

It was quite tricky to fix, especially since it is so random, but now I don't seem to be able to reproduce the error anymore.

The wordage description has been completely broken for a long time, at least since release 7, but I think I fixed it.

Hopefully there is no more code hiding in there that tries to generate random text in this way.