Ask/Tell commands

OurJud
02 Dec 2014, 03:59When using the ask/tell tab, is there any way to avoid forcing the player to type 'ask [name] about [whatever]', and instead just allow them to say 'ask about [whatever]' ?
I know it's necessary to define the person to whom you want to ask the question if there's more than one NPC there, but if it's a one-on-one, it seems silly to force them to use the NPC's name when asking each subsequent question.
I know it's necessary to define the person to whom you want to ask the question if there's more than one NPC there, but if it's a one-on-one, it seems silly to force them to use the NPC's name when asking each subsequent question.
HegemonKhan
02 Dec 2014, 06:55umm... for the built-in Commands~Verbs... 'Talk', though you got to script~craft it, of course. 'Ask' is specifically set up as a 'yes~no' questioning scheme, which eliminates its usage as~for general questioning schemes, obviously. Yes, the use of 'ask' as its name is quite a bit misleading, as one doesn't usually associate 'ask' with it being a limited 'yes~no' questioning scheme.
though, if you don't want to specify (aka limit) 'talk' for just this aspect that you want, then just create~write your own~custom Command~Verb for this action~event~scripting that you want.
though, if you don't want to specify (aka limit) 'talk' for just this aspect that you want, then just create~write your own~custom Command~Verb for this action~event~scripting that you want.

OurJud
02 Dec 2014, 07:03HegemonKhan wrote:Ask' is specifically set up as a 'yes~no' questioning scheme, which eliminates its usage as~for general questioning schemes, obviously. Yes, the use of 'ask' as its name is quite a bit misleading, as one doesn't usually associate 'ask' with it being a limited 'yes~no' questioning scheme.
No, as I explain in the other thread, you're thinking about something else. I should really have called this thread 'Ask/Tell Tab Options', instead of 'commands'.
The Ask/Tell tab allows the player to ask an NPC about anything you like. It's not simply a yes/no function. You set the subject (the words(s) to follow 'ask') and then run a simple print script with the NPC's reply.
So for instance, if you wanted to ask an NPC about a character (i.e John Upton), you would put 'john upton' as the 'label', and the 'script' as "John Upton? Yeah, I know John. He comes in here quite often."
So that when the player types:
>Ask woman about john upton
They get the response you've set in the script.
The Pixie
02 Dec 2014, 08:51Create a new command for the room the woman is in, call it ask_woman or something, set the pattern to Regular expression, and give it this:
For the script, paste in this:
Obviously you will change that first line for other people. The second line invokes the same ask/tell system as usual, so you do not need to set up the topics a second time.
This assumes only one person in a room, and people never go to other rooms. If the person can leave the room or die, you should add a check that the person is present.
Also, you should add a general command (i.e., not for a room) to handle the player typing ASK ABOUT when no one is around (use the same pattern set up, and just print a message for the script should work).
^ask about (?<text>.*)$
For the script, paste in this:
object = woman
DoAskTell (object, text, "ask", "askdefault", "DefaultAsk")
Obviously you will change that first line for other people. The second line invokes the same ask/tell system as usual, so you do not need to set up the topics a second time.
This assumes only one person in a room, and people never go to other rooms. If the person can leave the room or die, you should add a check that the person is present.
Also, you should add a general command (i.e., not for a room) to handle the player typing ASK ABOUT when no one is around (use the same pattern set up, and just print a message for the script should work).

OurJud
02 Dec 2014, 08:59Thanks, TP, I think I can follow this 
Just so I'm clear, in your last paragraph, do you mean have a response something like, "There's no one around here to answer you." ?

Just so I'm clear, in your last paragraph, do you mean have a response something like, "There's no one around here to answer you." ?
HegemonKhan
02 Dec 2014, 09:27my bad OurJud, I assumed that the 'ask-tell' Tab's 'ask' was the same as the 'ask' Function, which is a limited 'yes~no" questioning scheme. My fault for not working much with the GUI~Editor and all of the built-in stuff that exists in quest, so my apologies for my incorrect information and any confusion due to it.

OurJud
02 Dec 2014, 11:19HegemonKhan wrote:my bad OurJud, I assumed that the 'ask-tell' Tab's 'ask' was the same as the 'ask' Function, which is a limited 'yes~no" questioning scheme. My fault for not working much with the GUI~Editor and all of the built-in stuff that exists in quest, so my apologies for my incorrect information and any confusion due to it.
Don't be sorry. I'm just grateful for answers.
The Pixie
02 Dec 2014, 13:16OurJud wrote:Thanks, TP, I think I can follow this
Just so I'm clear, in your last paragraph, do you mean have a response something like, "There's no one around here to answer you." ?
Yes.