Conversation Using Eric's Extension(s)

This is probably a messy situation. I’m including Eric Eve’s Conversation Framework, Conversational Defaults, and Conversation responses. This lets me write rules in the form:

Response of Gorlick when asked about the hurdy-gurdy:

This works perfectly. I have also written a fallback rule (with some random alternative answers) for “Response of Gorlick when asked about something:” This also works – but it works ONLY if the thing being asked about is defined as known (i.e., seen or familiar) by Eric’s Epistemology extension. If the thing being asked about is not known, I get “Gorlick does not respond,” even though I’ve written a default fallback response rule that ought to be used.

Trying to grasp the code in these extensions is, frankly, baffling. It would be so much easier if written as functions or methods in ordinary procedural code rather than as a mass of disconnected rules – but that’s a rant for another time, and old news besides. I’m sure there are people hanging around this forum who can breeze through those extensions and figure out exactly what’s going on, but I’m not one of them.

I did try using the RULES command, but that was not enlightening. Here’s the output:

>ask gorlick about the duchess
[Rule "declare everything initially unmentioned rule" applies.]
[Rule "announce items from multiple object lists rule" applies.]
[Rule "set pronouns from items from multiple object lists rule" applies.]
[Rule "before stage rule" applies.]
[Rule "instead stage rule" applies.]
[Rule "investigate player's awareness before action rule" applies.]
[Rule "player aware of his own actions rule" applies.]
[Rule "check stage rule" applies.]
[Rule "carry out stage rule" applies.]
[Rule "after stage rule" applies.]
[Rule "investigate player's awareness after action rule" applies.]
[Rule "report stage rule" applies.]
[Rule "standard response rule" applies.]
[Rule "default asking rule" applies.]
[Rule "try default ask-tell response rule" applies.]
[Rule "try default response rule" applies.]
[Rule "unresponsive rule" applies.]
Gorlick does not respond.
[Rule "last specific action-processing rule" applies.]

Can anyone suggest how to write a rule for a default response to an asked-about that will fire no matter what the topic or thing asked about is?

I’m not familiar with these extensions, but by looking at the example “Sisko’s Briefing” in Conversational Defaults, it seems it should be enough to write a rule like

default ask-tell response for Gorlick:
	say "'Let's talk about that some other time,' he suggests."

(or just default ask response for Gorlick, if you don’t want it to be triggered by TELL GORLICK ABOUT …)

The RULES output shows that the only rule that triggers any output is the “unresponsive rule”. The source for this is:

The last default response rule (this is the unresponsive rule): 
 say "[The current interlocutor] [do not] respond." (A).

If you just want to replace the text of this general response for all people, you could write something like:

The unresponsive rule response (A) is  "[The current interlocutor] [do] respond."
1 Like

Thanks – that works. I don’t know why it wasn’t visible to me in the descriptions of any of the Extensions. Could have been age-related too-fast skimming of text, or something else entirely.