Can't define a new action for "reach inside/into/in [something]"

This one has me very confused.

I’m trying to define a new action (Reaching), as follows:

Reaching is an action applying to one thing. Understand "reach inside/into/in [something]" as reaching.

When I compile it, I’m getting the following error:

Problem. You wrote ‘Rule for deciding whether all includes things enclosed by the person reaching while taking or taking off (this is the exclude indirect possessions from take all rule)’: but that would involve comparing things which don’t mean anything to me, so I’m lost.

If I click the orange arrow to go to the offending line of code, it takes me inside the Standard Rules:

Rule for deciding whether all includes things enclosed by the person reaching
	while taking or taking off (this is the exclude indirect possessions from
	take all rule): it does not.

This is the first time I’ve ever gotten an error inside the standard rules and I’m not sure what’s causing it.

I checked and double-checked to make sure that there isn’t a form of reach that’s already defined and I even broke it up into individual Understand statements (instead of using “reach inside/into/in”, but I still get the same error.

Can anything shed any light on this for me? Much thanks, in advance, for your assistance!

1 Like

“Reaching” is used by Inform for purposes relating to managing scope - this is above my pay grade, but some of it might be baked into the Inform 6 layer rather than being exposed in the standard rules. So yeah, not a good idea to try to redefine it!

I’d just call the action something else (player-reaching, maybe) - you can use the same understand statements so it’s all the same to the player. I haven’t tested it, but pretty sure that will fix things!

3 Likes

Just to add that adding “it” – as in “Reaching it is an action…” does not avoid this clash.

Note that I had a similar issue once when trying to use “persuasion” as a new value. I just got around it by calling it “persuading.”

This works:

Retrieving is an action applying to one thing. Understand "reach inside/into/in [something]" as retrieving.

As a side note

Summary

This:

Retrieving it is an action applying to one thing. Understand "reach inside/into/in [something]" as retrieving. [note the extra "it" at the beginning]

Causes one of those “This should never happen errors,” which I will report.

2 Likes

Are you ever allowed to append “it” to an action name without also adding a preposition? Not to excuse the compiler error, of course.

1 Like

I don’t believe so - before I understood how “it” works I got similar compiler errors from doing something similar.

(The docs could really stand to explain how Inform uses “it” in action definition a bit better - there’s one sort of gesture at it that makes sense if you already know how it works but it’s a real blink-and-you-missed-it thing).

(I also feel like that “this should never happen” compiler error happens like all the time so could use some updating!)

1 Like