ADRIFT Forum


The place to discuss the ADRIFT Interactive Fiction toolkit

Lucasart style conversations?

This forum is the place to learn about and discuss ADRIFT 5. Feel free to mention any bugs you find here, but please also add these to the Bugs & Enhancements list.

Please also refer to the ADRIFT 5 Wiki for more information.

Lucasart style conversations?

Postby regularJim » Tue Mar 17, 2020 3:02 am

Hi, new user here. Playing around the tool, looking to created a small test adventure. One of the things I want to do is have a conversation system similar to the Lucasarts Graphic adventure style. Where I can 'Talk to %character%' to get a list of dialog options with various responses. (a more advanced goal, is to have this conversations eventually exhaust themselves and no longer be available on follow up conversations with a specific character)

I have figured out how to disable the default Ask/Say/Tell verbs, and create a 'Talk to' General task that will reference characters in a room. But I can't seem to trigger a conversation of any sort (only the 'You began speaking with %character%.' Message line I set up displays). Even if I set up various conversation tasks on the target character and set the Action of the Talk to command to 'Enter Conversation with Referenced Character'. Nothing seems to happen. What's the deal with that?

Any suggestions? This seems like the tool I want to build a text adventure in, but this is a hurtle I'd like to clear before getting too deep in to it. Thanks for any advice, help, or tutorial you could point my way.
regularJim
 
Posts: 5
Joined: Tue Mar 17, 2020 2:53 am

Re: Lucasart style conversations?

Postby Denk » Tue Mar 17, 2020 9:49 am

Since you want a TALK TO command followed by a list of options, you have no use for the conversation system at all.

In the attached demo you get a list of dialog options whenever you talk to John. This is a simplified example where you will always get the same options:
adrift Code: Select all
EXAMPLE 1:
1. How are you doing?
2. Can you lend me a screwdriver?
3. Goodbye


If you feel confident with this simple method, you might want to move on to a slightly more advanced system, where you have exhausted one or more options. Let's say that you have already borrowed the screwdriver. Then the options are now:
adrift Code: Select all
EXAMPLE 2:
1. How are you doing?
3. Goodbye


You might want the numbers to adjust to how many options there are available, like this (keep in mind that, to begin with, there were three options):
adrift Code: Select all
EXAMPLE 3:
1. How are you doing?
2. Goodbye


If you want the numbers to adjust like this, it can be quite complicated in the general case. For instance, if you have a total of 20 topics, of which 5 is available to begin with, others then become available whereas others are removed etc. you must implement some system to keep track of all this. It is doable but not easy.

The attached taf-file below shows the most simplified method (Example 1). If something is not clear, just ask. And if you feel you understand this taf-file and need help with the more advanced conversation methods, just ask again.
Attachments
TalkToWithOptions.taf
(15.65 KiB) Downloaded 31 times
----------------------------------------------------------------------
The Bash Saga:
1. The Dragon Diamond 2. The Way Home 3. Stone of Wisdom
----------------------------------------------------------------------
User avatar
Denk
 
Posts: 465
Joined: Mon Feb 22, 2016 6:21 pm
Location: Hjørring, Denmark
Points: 251

Re: Lucasart style conversations?

Postby regularJim » Tue Mar 17, 2020 4:09 pm

Thanks! This is all very helpful.

First question. When my player enters the wrong dialog command I want to display a message like 'Please Choose from the Options Below', then have the choices display again. I thought if I set the Default response to have an action that starts the Talk to John task it would do this. But it doesn't display the default text line like I want, it only displays the dialog choices. When I remove the action, the default dialog line displays instead. Is there a priority thing with task actions I don't understand?
regularJim
 
Posts: 5
Joined: Tue Mar 17, 2020 2:53 am

Re: Lucasart style conversations?

Postby Denk » Tue Mar 17, 2020 4:52 pm

I don't think I completely understand.

Do you want something like this:
adrift Code: Select all
Living room
John is here.    
 
> talk to john
Please Choose from the Options Below:
1. How are you doing?
2. Can you lend me a screwdriver?
3. Goodbye
 
> test
Please Choose from the Options Below:
1. How are you doing?
2. Can you lend me a screwdriver?
3. Goodbye
 
> 1
You ask John how he is doing.
 
John says "I'm doing fine, hope you are too."
 
Please Choose from the Options Below:
1. How are you doing?
2. Can you lend me a screwdriver?
3. Goodbye
 
>


If not, perhaps you could write a transcript of what you want, similar to what I did above, and attach your taf-file so it is easier to see what you are doing wrong.

I attach a taf-file corresponding to the above transcript:
Attachments
TalkToWithOptionsV2.taf
(15.64 KiB) Downloaded 34 times
----------------------------------------------------------------------
The Bash Saga:
1. The Dragon Diamond 2. The Way Home 3. Stone of Wisdom
----------------------------------------------------------------------
User avatar
Denk
 
Posts: 465
Joined: Mon Feb 22, 2016 6:21 pm
Location: Hjørring, Denmark
Points: 251

Re: Lucasart style conversations?

Postby regularJim » Tue Mar 17, 2020 5:18 pm

What I'd like to add is the noted part below (under the 'test' portion). A text line (ex: "John does not understand that.") specific to not typing a correct choice. But is not present if a correct choice is chosen.

adrift Code: Select all
 
Living room
John is here.    
 
> talk to john
Please Choose from the Options Below:
1. How are you doing?
2. Can you lend me a screwdriver?
3. Goodbye
 
> test
--John does not understand that.--
 
Please Choose from the Options Below:
1. How are you doing?
2. Can you lend me a screwdriver?
3. Goodbye
 
> 1
You ask John how he is doing.
 
John says "I'm doing fine, hope you are too."
 
Please Choose from the Options Below:
1. How are you doing?
2. Can you lend me a screwdriver?
3. Goodbye
 
>
 
regularJim
 
Posts: 5
Joined: Tue Mar 17, 2020 2:53 am

Re: Lucasart style conversations?

Postby Denk » Tue Mar 17, 2020 5:45 pm

In TalkToWithOptionsV2.taf the message field in the task "Talk to John Default Response" was empty, so all I had to do was add the message "--John does not understand that.--" in that field. Now the transcript of TalkToWithOptionsV3.taf below is identical to the transcript you have given above.
Attachments
TalkToWithOptionsV3.taf
(15.66 KiB) Downloaded 38 times
----------------------------------------------------------------------
The Bash Saga:
1. The Dragon Diamond 2. The Way Home 3. Stone of Wisdom
----------------------------------------------------------------------
User avatar
Denk
 
Posts: 465
Joined: Mon Feb 22, 2016 6:21 pm
Location: Hjørring, Denmark
Points: 251

Re: Lucasart style conversations?

Postby regularJim » Tue Mar 17, 2020 8:06 pm

Denk wrote:In TalkToWithOptionsV2.taf the message field in the task "Talk to John Default Response" was empty, so all I had to do was add the message "--John does not understand that.--" in that field. Now the transcript of TalkToWithOptionsV3.taf below is identical to the transcript you have given above.


I'm 99% sure I have things set up the same way, but I'm getting a unexplained syntax errors . Maybe if you look at and run my test game, you can find where I've made a mistake.
Attachments
City of Lies.taf
(15.68 KiB) Downloaded 37 times
regularJim
 
Posts: 5
Joined: Tue Mar 17, 2020 2:53 am

Re: Lucasart style conversations?

Postby Denk » Tue Mar 17, 2020 11:43 pm

regularJim wrote:I'm 99% sure I have things set up the same way, but I'm getting a unexplained syntax errors . Maybe if you look at and run my test game, you can find where I've made a mistake.

I don't think that ADRIFT ever gives a "syntax error" - perhaps you mean ADRIFT error, i.e. a window pops up saying ADRIFT error? However, when I tried to run your game, I didn't encounter any ADRIFT errors. All I did was talk to the robot. If you get ADRIFT errors, please take a screenshot and tell us which command causes the ADRIFT error.

There were some differences compared to my files. Before I explain, here is a transcript with comments when trying your test game:
adrift Code: Select all
 Alley
There is a Robot here.    
 
> talk to robot
(PLEASE CHOOSE AN OPTION)
1. Who are you?
2. Goodbye.
 
> talk to robot
(PLEASE CHOOSE AN OPTION)
1. Who are you?
2. Goodbye.
@ comment 1 (not part of the real transcript): "talk to character" has too high a priority.
 
> test
(PLEASE CHOOSE AN OPTION)
1. Who are you?
2. Goodbye.  Robot doesn't understand
@ comment 2: Notice the last line: "2. Goodbye. Robot doesn't understand".   This means that your default message "Robot doesn't understand" occurs AFTER executing actions instead of BEFORE.
 
> 1
I'm a robot genius.
@ Comment 3: wouldn't you like the options to be printed again?
 
> 2
Alley
There is a Robot here.    So long fleshbag.
@ Comment 4: When typing "2", it is again clear that you have the setting "Display completion message AFTER executing actions". It should be changed to BEFORE.
 


Regarding comment 1:
In my first file, I gave the task "Talk to character" too high a priority. I see you set it to 1. Better set it to 1000 or something, so that typing "talk to robot" after the options have been given triggers the default response.

Regarding comment 2:
In all your talk-tasks you have chosen "Display completion message AFTER executing actions". You should set them to BEFORE instead of AFTER. You have probably just used the default setting. You can change the default setting under SETTINGS: "Default task messages to output" can be changed from "After actions" to "before actions". This will only affect new tasks, not the tasks you have already created with the "After actions" settings.

Regarding comment 3:
You can print the options again by running the "talk to robot"-task under Actions in your response task. You have probably chosen NOT to, because you were getting the options before the answer to the questions. As explained above, this is because you have the setting "Display completion message AFTER executing actions".

Regarding comment 4: Once again, the setting "Display completion message AFTER executing actions" causes problems. Should be changed to BEFORE.

Hope this makes sense. If you are still getting ADRIFT errors(?) let us know exactly when and attach a screenshot, then we can hopefully help you.
----------------------------------------------------------------------
The Bash Saga:
1. The Dragon Diamond 2. The Way Home 3. Stone of Wisdom
----------------------------------------------------------------------
User avatar
Denk
 
Posts: 465
Joined: Mon Feb 22, 2016 6:21 pm
Location: Hjørring, Denmark
Points: 251

Re: Lucasart style conversations?

Postby regularJim » Wed Mar 18, 2020 1:10 am

When I said, Syntax error, I guess I mean formatting error. As in, not a compiling error but just the text appearing in the wrong place in the game window when the menu options are chosen.

I have now just realized I have been in Simple Mode this entire time, and the priority options were all hidden from me. This appears to be what's been tripping me up. Thank you for your advice.
regularJim
 
Posts: 5
Joined: Tue Mar 17, 2020 2:53 am

Re: Lucasart style conversations?

Postby Lazzah » Wed Mar 18, 2020 6:41 am

I have been using exactly the same conversation method in my WIP "Return to Castle Coris"!

As I started this a few weeks ago, I wish go on record as having thought of it first and that I am not plagarizing regularJim's idea! :haha:
The Axe of Kolt, The Spectre of Castle Coris, The Fortress of Fear, Die Feuerfaust, The Lost Children, Run, Bronwynn, Run, The Call of the Shaman, The Lost Labyrinth of Lazaitch, Magnetic Moon, Starship Quest, Revenge of the Space Pirates
User avatar
Lazzah
Moderator
 
Posts: 2362
Joined: Thu Mar 31, 2011 4:54 am
Location: Clacton-on-Sea, Essex
Points: 65

Re: Lucasart style conversations?

Postby Denk » Wed Mar 18, 2020 8:07 am

Lazzah wrote:I have been using exactly the same conversation method in my WIP "Return to Castle Coris"!

As I started this a few weeks ago, I wish go on record as having thought of it first and that I am not plagarizing regularJim's idea! :haha:

Hehe - believe it or not, I am using the same system in Revealia.

I was silly enough to renumber the options whenever a topic has been exhausted (example 3 in the second post of this thread). As a consequence, I have to remind myself how my conversation system is working, whenever I return to work on it :?

If anyone knows a simple way of renumbering the options after a topic on the options-list has been exhausted, I will be very interested.
----------------------------------------------------------------------
The Bash Saga:
1. The Dragon Diamond 2. The Way Home 3. Stone of Wisdom
----------------------------------------------------------------------
User avatar
Denk
 
Posts: 465
Joined: Mon Feb 22, 2016 6:21 pm
Location: Hjørring, Denmark
Points: 251

Re: Lucasart style conversations?

Postby Lazzah » Wed Mar 18, 2020 8:51 am

You know what they say : Great Minds Think Alike! :thanks:

I am using "TALK TO character" as a trigger for the options to appear. Each time the player chooses one of the 3 options (in any order) a variable is incremented by one and a system task checks to see if the variable is equal to 3. If it is then another system task is called that sets another variable and increments the score. The player can then do anything appropriate but to continue the conversation the player has to type "TALK TO character" again.

So far it seens to be working well, but I expect that when my playtesters (including certain Drifters whose names will not be revealed to protect the innocent!) get their grubby mitts on the game they will rip it to shreds! :haha:
The Axe of Kolt, The Spectre of Castle Coris, The Fortress of Fear, Die Feuerfaust, The Lost Children, Run, Bronwynn, Run, The Call of the Shaman, The Lost Labyrinth of Lazaitch, Magnetic Moon, Starship Quest, Revenge of the Space Pirates
User avatar
Lazzah
Moderator
 
Posts: 2362
Joined: Thu Mar 31, 2011 4:54 am
Location: Clacton-on-Sea, Essex
Points: 65

Re: Lucasart style conversations?

Postby Denk » Fri Mar 20, 2020 10:13 am

Lazzah wrote:I am using "TALK TO character" as a trigger for the options to appear. Each time the player chooses one of the 3 options (in any order) a variable is incremented by one and a system task checks to see if the variable is equal to 3. If it is then another system task is called that sets another variable and increments the score. The player can then do anything appropriate but to continue the conversation the player has to type "TALK TO character" again.

Ok, so does that mean that the player must go through all three topics before he/she can leave the conversation? (I don't see a problem with that, just curious)
----------------------------------------------------------------------
The Bash Saga:
1. The Dragon Diamond 2. The Way Home 3. Stone of Wisdom
----------------------------------------------------------------------
User avatar
Denk
 
Posts: 465
Joined: Mon Feb 22, 2016 6:21 pm
Location: Hjørring, Denmark
Points: 251

Re: Lucasart style conversations?

Postby Lazzah » Fri Mar 20, 2020 11:34 am

Denk wrote:
Lazzah wrote:I am using "TALK TO character" as a trigger for the options to appear. Each time the player chooses one of the 3 options (in any order) a variable is incremented by one and a system task checks to see if the variable is equal to 3. If it is then another system task is called that sets another variable and increments the score. The player can then do anything appropriate but to continue the conversation the player has to type "TALK TO character" again.

Ok, so does that mean that the player must go through all three topics before he/she can leave the conversation? (I don't see a problem with that, just curious)

No, the player can do other things. I suppose the player could even walk away from the location if they wanted to but I think I will stop them doing that, i.e. "It's rude to walk away while you are in the middle of a conversation." I also have imposed a limited number of moves in which to have the conversations, it would be unrealistic to allow the player to stand there and type "z" or "l" 'ad infinitum' in between asking the questions.
The Axe of Kolt, The Spectre of Castle Coris, The Fortress of Fear, Die Feuerfaust, The Lost Children, Run, Bronwynn, Run, The Call of the Shaman, The Lost Labyrinth of Lazaitch, Magnetic Moon, Starship Quest, Revenge of the Space Pirates
User avatar
Lazzah
Moderator
 
Posts: 2362
Joined: Thu Mar 31, 2011 4:54 am
Location: Clacton-on-Sea, Essex
Points: 65


Return to ADRIFT 5.0

Who is online

Users browsing this forum: No registered users and 11 guests

cron