[I7] Library messages

Graham Nelson graham at gnelson.demon.co.uk
Mon Jan 21 18:17:59 CST 2008


On 21 Jan 2008, at 06:34, David Fisher wrote:
> I can't think of a way that doesn't involve a heap of parameters  
> with details about what needs to be described.

I threw in the towel, and provided Go message numbers
8 to 26 instead:

		8:	"[The actor] goes up";
		9:	"[The actor] goes down";
		10:	"[The actor] goes [noun]";
		11:	"[The actor] arrives from above";
		12:	"[The actor] arrives from below";
		13:	"[The actor] arrives from the [back way]";
		14:	"[The actor] arrives";
		15:	"[The actor] arrives at [the room gone to] from above";
		16:	"[The actor] arrives at [the room gone to] from below";
		17:	"[The actor] arrives at [the room gone to] from the [back way]";
		18:	"[The actor] goes through [the noun]";
		19:	"[The actor] arrives from [the noun]";
		20:	"on [the vehicle gone by]";
		21:	"in [the vehicle gone by]";
		22:	", pushing [the thing gone with] in front, and you along too";
		23:	", pushing [the thing gone with] in front";
		24:	", pushing [the thing gone with] away";
		25:	", pushing [the thing gone with] in";
		26:	", taking you along";

The report always begins with exactly one of 8 to 19,
then optionally includes either 20 or 21, then optionally
includes one of 22 to 25, then optionally includes 26.
So it's still a composite, but I think it will be possible
to render that in most languages.

I have also moved some text in the template layer
into English.h:

Miscellany 58: print (The) actor, " ", (IsOrAre) actor, " unable to do  
that.^";
59: "You must supply a noun.";
60: "You may not supply a noun.";
61: "You must name an object."
62: "You may not name an object."
63: "You must name a second object.";
64: "You may not name a second object.";
65: "You must supply a second noun.";
66: "You may not supply a second noun.";
67: "You must name something more substantial.";
68: print "(", (The) actor, " first taking ", (the) x1, ")^";
69: print "(first taking ", (the) x1, ")^";

Score 3: print ", earning you the rank of ";

and also made use of the "and" in the list
constants. I think this means that in principle
everything can now be translated by the language
definition file alone, as in I6 days, except the
output of testing commands and run-time
problem messages (which I don't mind leaving
in English for now).

That completes my stage (1).

> I know I'm dreaming, but an alternative (involving a large amount of  
> work!) would be to head in the direction of natural language  
> generation, where you provide a syntax tree and rules to assemble it  
> into a printable sentence --  as described by Daryl McCullough in  
> March 1997:
>
> http://groups.google.com/group/rec.arts.int-fiction/msg/554d51bb54d4fa78


The nurse will be along to wake you up in a minute...
Well, no, it would actually make a really interesting
extension for someone to write, but it looks very
demanding for the Z-machine (and I'm trying to
keep the core material in Inform working on even
the smallest platform).

   Graham

--
Graham Nelson





More information about the Inform7-porters mailing list