How to change the implicit opening a door default phrase?

Hi everyone,

I’m new to the world of IF, so please be patient with me :smiley:
How can I change the “(first opening [the noun])” default phrase in IF7? I’d like to translate it in my own language.

Thanks for your help!

There are a few ways.

You could replace this rule:

Check an actor going (this is the can't go through closed doors rule): if the door gone through is not nothing and the door gone through is closed: issue library message going action number 28 for the door gone through; silently try the actor opening the door gone through; if the door gone through is open, continue the action; stop the action.

Or you could use one of the various levels of library-message-replacement extensions that are available now. The simplest one is probably Default Messages by Ron Newcomb. You’d use it like this:

Table of custom library messages (continued) library-action library-message-id library-message-text the going action 28 "(recklessly slamming the door open before you proceed)"

If you have a specific door that should behave differently from the others, you might use a Before or Instead rule:

Before going through the closed blue door: say "You push cautiously against the door... [run paragraph on]"; silently try opening the blue door; if the blue door is open, say "it opens!"; otherwise stop the action.

First of all, many thanks for your answers.

I think I’ve understood how the second method works (while the first remains a mistery for now :blush: ); unfortunately I’m already using the Italian extension by Massimo Stella, which seems to be incompatible with Default Messages by Ron Newcomb (that’s because Italian is based on Custom Library Messages by David Fisher).

I’ve no idea about how to modify a default message there.

Italian extension uses this syntax:

Table of library messages (continued) Message Id Message Text LibMsg <report implicit take> "(prima prendi [the % dobj])"

How do I know which is the message id I want to modify?

Hope I’ve explained myself well, thanks for your patience :slight_smile:

It looks to me like David Fisher’s CLM doesn’t have a message for implicitly opening a door. If I were you I would talk to Massimo Stella about an update…

To explain the rule-replacement I referred to before: What I posted was copied and pasted from the Standard Rules. To change it, you’d need to write something like this:

[code]Check an actor going (this is the Italian can’t go through closed doors rule):
if the door gone through is not nothing and the door gone through is closed:
say “(Prima di aprire [the door gone through])”;
silently try the actor opening the door gone through;
if the door gone through is open, continue the action;
stop the action.

The Italian can’t go through closed doors rule is listed instead of the can’t go through closed doors rule in the check going rulebook.
[/code]
Please forgive my use of Google Translate! I don’t know if that is the correct phrase.

Yes, I think there were a couple of library messages added to Inform after David Fisher stopped maintaining the extension. (At least the stand up before going rule in the check going rulebook will produce a message that is nor captured by Fisher’s CLM).

[code]Check an actor going when the actor is on a supporter (called the chaise) (this is the Italian stand up before going rule):
say “(<Italian for ‘first getting off [the chaise]’>) [paragraph break]”;
silently try the actor exiting.

The Italian stand up before going rule is listed instead of the stand up before going rule in the check going rulebook.[/code]

(I suppose there should be a paragraph break there – shouldn’t it?)

Or you could simply unlist the can’t go through closed doors rule and stand up before going rule, so player’s will have to get off supporters and open doors explicitly.

The can't go through closed doors rule is not listed in any rulebook.

However:
I note that all translation extensions (German, Spanish, Italian) except French – which does not depend on Custom Library Messages or Default Library Messages by David Fisher - are gone from the I7 extension site.
Maybe there has been a request from the Inform developers of a general update of these or something …

Table of library messages (continued) Message Id Message Text LibMsg <report implicit take> "(prima prendi [the % dobj])"

Try (amended) like so in your game. It should override the Italian extension. (Wasn’t that a movie? har-har)

Table of library messages (amended) Message Id Message Text LibMsg <report implicit take> "(prima prendi [the % dobj])"

I’ll try to contact him and see if he’s interested in such an update.

I learned far more things about Inform 7 from these explanations than from the reading of the manual, thanks a lot to everyone!

Not exactly, but I appreciate your efforts :smiley: :smiley: