[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