Section - Querying (to replace consulting)
Querying it about is an action applying to one thing and one visible thing and requiring light.
[We need to specify that the player can also query about rooms.]
Understand "look up [any room] in [something]" as querying it about (with nouns reversed).
Understand "look [any room] up in [something]" as querying it about (with nouns reversed).
Understand "consult [something] about [any room]" as querying it about.
Understand "read about [any room] in [something]" as querying it about (with nouns reversed).
Understand "read [something] about [any room]" as querying it about.
Understand "look at [something] about [any room]" as querying it about.
Understand "look up [any thing] in [something]" as querying it about (with nouns reversed).
Understand "look [any thing] up in [something]" as querying it about (with nouns reversed).
Understand "consult [something] about [any thing]" as querying it about.
Understand "read about [any thing] in [something]" as querying it about (with nouns reversed).
Understand "read [something] about [any thing]" as querying it about.
Understand "look at [something] about [any thing]" as querying it about.
[NB: the order of these lines matters: a choice of room vs. thing is decided by which understand line is matched first, not by "does the player mean" rules. If problems arise, reconsider removing the [any room] lines and giving each room a dummy object instead. See chat log 22/8/13 for more info.]
[Understand "look up [text] in [text]" or "look [text] up in [text]" or "read about [text] in [text]" as a mistake ("You can't see any such thing.").] [doesn't work, either because I7 is ordering the understand lines non-optimally or because it's got two text tokens in it, I dunno]
Understand "look up [any thing] in [text]" or "look [any thing] up in [text]" or "read about [any thing] in [text]" as a mistake ("You can't see any such thing.").
Querying vaguely about is an action applying to one visible thing and requiring light.
Understand "look up [any room]" as querying vaguely about.
Understand "look [any room] up" as querying vaguely about.
Understand "read about [any room]" as querying vaguely about.
Understand "look up [any thing]" as querying vaguely about.
Understand "look [any thing] up" as querying vaguely about.
Understand "read about [any thing]" as querying vaguely about.
Instead of querying vaguely about:
say "(in [Casey's notes])[command clarification break]";
try querying Casey's notes about the noun.
Understand "look [text] up in [something]" as consulting it about (with nouns reversed).
Understand "read [something] about [text]" as consulting it about.
Understand "look at [something] about [text]" as consulting it about.
Consulting vaguely about is an action applying to one topic.
Understand "look up [text]" as consulting vaguely about.
Understand "look [text] up" as consulting vaguely about.
Understand "read about [text]" as consulting vaguely about.
Instead of consulting vaguely about:
say "(looking up '[the topic understood]' in [Casey's notes])[command clarification break]";
try consulting Casey's notes about the topic understood.
A thing has some text called the note.
A room has some text called the note.
A thing can be noted.
A room can be noted.
A thing can be generically-noted or specially-noted. A thing is usually generically-noted.
A room can be generically-noted or specially-noted. A room is usually generically-noted.
Does the player mean querying the notes about:
it is very likely.
Does the player mean querying about the location:
it is likely.
Does the player mean querying the notes about the location:
it is likely.
Does the player mean querying vaguely about the location:
it is likely.
Does the player mean querying about a thing (called possibility) enclosed by the location:
if the possibility is a photo:
it is very unlikely;
otherwise:
it is likely.
Does the player mean querying vaguely about a thing (called possibility) enclosed by the location:
if the possibility is a photo:
it is very unlikely;
otherwise:
it is likely.
Does the player mean querying about an unknown thing:
it is very unlikely.
Does the player mean querying vaguely about an unknown thing:
it is very unlikely.
Does the player mean querying about an unvisited room:
it is very unlikely.
Does the player mean querying vaguely about an unvisited room:
it is very unlikely.
[First does the player mean querying about a photo:
it is very unlikely.]
Check querying it about (this is the can only consult the notes rule):
if the noun is not Casey's notes:
say "You probably won't learn much that way." instead.
[Hm, I'm not sure about that response. You can change it if you have any better ideas.]
[We'll probably have to add some "Instead of querying" rules for any things like books that might conceivably be consultable.]
[Have CONSULT PERSON ABOUT THING remap to ASK PERSON ABOUT THING.]
Instead of consulting someone about:
try asking the noun about the topic understood.
Instead of querying someone about something:
try quizzing the noun about the second noun.
[If the player tries to look up something the parser doesn't understand in the notes, the consulting action takes care of it and this rule kicks in.]
Instead of consulting Casey's notes about:
say "You riffle through the notes, but you can't find anything that seems relevant."
[This response has to be vaguer than the one below, because we can't really tell what the player was trying to find out about.]
Check querying Casey's notes about (this is the can't find note to consult rule):
if the note of the second noun is empty:
say "You riffle through the notes, but it looks like Casey didn't have anything to say about [the second noun]." instead.
[We could use the vague response here as well, but I think it's helpful for the player to know that the game understood what s/he was trying to do, it just couldn't do it.]
Carry out querying Casey's notes about (this is the print the appropriate note rule):
now the second noun is noted;
if the second noun is generically-noted:
say "[first time][bracket]This action may cause some slight lag in the browser version of this game. We sincerely regret any inconvenience.[close bracket][paragraph break][only]You flick through the notes and read Casey's scrawly handwriting: [run paragraph on]";
say the note of the second noun;
say line break.
[If we want something else to happen when Robin reads a note - e.g. we want to record that she now knows a specific piece of info - we can add a "Carry out querying Casey's notes about the whatever" rule to handle that. As I am just about to do for the Black Light Make-Out Room.]
[Fix for problems parsing abbreviated version of LOOK WHATEVER [UP]
thanks to severedhand and zarf for their help http://www.intfiction.org/forum/viewtopic.php?f=7&t=8995]
Not-really-looking is an action applying to one visible thing.
Report not-really-looking:
say "You can't see any such thing."
Understand "look [any known thing]" as not-really-looking.
Understand "look at [any known thing]" as not-really-looking.
Understand "read [any known thing]" as not-really-looking.
Understand "look [any thing]" as not-really-looking.
Understand "look at [any thing]" as not-really-looking.
Understand "read [any thing]" as not-really-looking.
Does the player mean not-really-looking a faux thing:
it is very likely.
Rule for printing a parser error when the latest parser error is the noun did not make sense in that context error:
let the pc be indexed text;
let the pc be the player's command;
if the pc matches the regular expression "^(look|l) up":
say "I only understood you as far as wanting to look up.";
otherwise if the pc matches the regular expression "^(look|l) at":
say "You can't see any such thing.";
otherwise if the pc matches the regular expression "^(look|l) (in|into|inside|through|under)":
say "You can't see any such thing.";
otherwise if the pc matches the regular expression "^(look|l) ":
say "I only understood you as far as wanting to look.";
otherwise if the pc matches the regular expression "^read about":
say "I only understood you as far as wanting to read about.";
otherwise if the pc matches the regular expression "^read ":
say "I only understood you as far as wanting to read.";
otherwise:
say "You aren't aware of any such thing."
Note
[1]. DEL