Anything to be done about "(first taking yourself)"?

#1

I just recently started using Inform 7 and I’m wondering if anyone has suggestions for improving this behavior:

>unlock door
What do you want to unlock the door with?
 
>me
(first taking yourself)
You are always self-possessed.

To me this seems like a bad response [edit to clarify: bad in the sense that we don’t expect to be told whether we can “take me,” we expect to be told whether we can unlock a door with our bare hands] — and the response actually says why it’s bad: since you’re always self-possessed, shouldn’t the program always treat you as “carried”?

I wish it did! I’d much rather it provide “For better or worse, you’re stuck with it” responses for (exceedingly bizarre) attempts to drop oneself, than provide “You’re not holding that” type responses for (fairly reasonable) attempts to use oneself or one’s body parts as tools.

Anyway, I know that I could define the actions as “applying to two things” rather than “applying to one thing and one carried thing,” but that’s undesirable because I like the automatic taking provided by the carrying requirements rule. So far I’ve made some invisible body part objects that are permanently in the inventory (but never listed), but that still doesn’t help me with attempts to use the player itself.

Do I need to rewrite the carrying requirements rule in I6 to make some kind of exception for the player, or is there a cleaner way? (Is there an extension that already deals with this?)

Thanks!

1 Like
(Hanon Ondricek) #2

Simplest answer:

Instead of taking yourself: say "You've heard of bootstraps and all that, but picking yourself up is a logical impossibility."

That “You are always self-possessed” message will only fire there when the player is carrying nothing and the parser tries to implicitly help them out. (Or the typed command is TAKE ME.) It will always decide on a carried thing if it can due to the “carried thing” requirement in the action.

(And welcome to the forum! :slight_smile: )

2 Likes
#3

Thank you!

I didn’t mean that just the phrase “You are always self-possessed” was a bad response; I meant the handling was undesirable. (I think the confusion stems from my using the word “response” in a more general, non-Inform sense! Sorry!) I would like a behavior like:

>unlock door
What do you want to unlock the door with?

>blue key
(first taking the blue key)
That doesn't seem to fit the lock.

>unlock door
What do you want to unlock the door with?

>myself
That doesn't seem to fit the lock.

In other words I want an action to allow use of the player as the second noun and also offer the automatic-taking that I get from requiring a “carried thing.”

1 Like
#4

I always saw that as a humorous response to a silly player request. Personally, I kind of like it. But I realize not everyone would see it that way.

Edit to add: I base that on the dictionary definition:

adjective: calm, confident, and in control of one’s feelings; composed.

1 Like
(Hanon Ondricek) #5

I’m not incredibly familiar with it, but my impulse is you might do something with the “setting action variables” rulebook to forbid “yourself” as a second noun for certain actions.

http://inform7.com/learn/man/WI_12_10.html

1 Like
(matt w) #6

From the section of Writing with Inform on implicit taking (§18.34):

No matter what rules are written for this activity, it is impossible to use it to allow the action to go ahead even without the item. The activity allows us to change how, or if, an implicit take will happen, but not to change the consequences of failure. (To do that, we would need to say that “The ignore the carrying requirements rule [sic] does nothing”, but this kind of unstitching of the action machinery needs to be done with caution.)

So I incautiously tried this–“ignore the” seems to be a typo in there, probably left over from the bad old days of procedural rules:

The carrying requirements rule does nothing when the second noun is the player. 
	
Office is a room. The safe is a closed locked container in the office. The player carries a paperclip and a jimmy.

And it does seem to work–you can try unlocking the safe with yourself without being self-possessed. But, I would be cautious about actually trying to use this.

2 Likes
#7

I can see lots of reasons this should be used with caution as you suggest. For one, what if the player’s name is Jimmy? But more seriously, rules will propagate throughout the game if it is less specific to the situation. The KISS principle has bit me more than once when something looks safe at the time, but are a confusing problem when I try to pull some trick later that conflicts.

1 Like
(matt w) #8

Well, you can restrict things a little more, like restricting that to “unlocking something with the player” or something like that. But the whole idea of turning off the carrying requirements rule, even in limited situations, makes me nervous, and it doesn’t help that the documentation hangs a flashing warning sign on it.

1 Like
#9

Exactly. Simple is better if available. Changing a rule should be last resort, and usually if that is the case, there is an extension to fill in the blanks so at least you have a known change you can complain about. :wink:

#10

Thanks so much! This works exactly as I wanted! The possibility of completely shutting off the rule never occurred to me - I thought it was necessary for processing the action at all.

I respect all the warnings to beware of unintended consequences, but for now I’m going to risk it. I’ll just do as you say and keep the conditions for shutting off the rule as finely restrictive as possible, and stay alert for surprises.

1 Like
#11

Enjoy! And welcome to the community. Look forward to learning from you.

Every question is a learning experience… I learn so much from just seeing a conversation and learning from those that know much more than me.

But I try to help if I can.

1 Like