This is something I have a suitable workaround for, but all the same, I’m wondering what is going on, and if people 1) know a quick solution or 2) can point me to how I would debug something like this in I6. Most of my I6 debugging has been capturing text that I don’t want to see, looking at *.i6t, and figuring what to do with the code. But I don’t know how to debug a hang!
"sandbox" by andrew schultz
objasking generically is an action applying to one visible thing. Understand "ask about [any thing]" or "talk about [any thing]" or "a [any thing]" as objasking generically.
understand "x" as blot when blot is touchable.
understand "x" as blog when blog is touchable.
definition: a thing (called q) is around:
if q is enclosed by location of player, yes;
no;
every turn:
say "[whether or not blot is in location of player]";
r1 is a room.
bo is a person in r1.
r2 is east of r1.
bob is a person in r2.
the blot is a thing in r1.
the blog is a thing in r2.
carry out objasking generically:
repeat through table of talk things:
if noun is noun-match entry, say "[text entry]" instead;
say "No matches for things.";
table of talk things
noun-match text
blot "blot..."
blog "blog..."
The text above causes a hang in the 6G IDE for windows, but it’s okay in 6L. That’s largely related to the “touchable” definition. When I define something as “around,” it works fine, and that’s more than good enough for my purposes. The main thing I need to do is to allow for synonyms, but I don’t want two similarly-named things clashing or to have to rely on “does the player mean” too much.
- Is there a known fix for this?
- If there’s not a known fix, would there be a way for me to check any source control for Inform core code changes between the 6G and 6L release?
- If not, how would I begin to debug the I6 code?
Again, I have a workaround of defining a similar property to “touchable,” (or finally upgrading,) so this is intellectual curiosity. But it’s something that had popped up before, and I was finally able to pin it down, and it’s something I wasn’t able to answer on my own. Thanks!