Aller au contenu

Photo

Advanced Conversation Tutorials?


  • Veuillez vous connecter pour répondre
8 réponses à ce sujet

#1
Deddybear

Deddybear
  • Members
  • 7 messages
Me again, folks.  New modder, and I'm slowly getting the hang of things with plenty of help from the internet, but I've managed to get myself into another pickle when it comes to slightly more advanced conversations.  There are a number of things I want to do, but I can't seem to find a more advanced conversation tutorial.  Does anyone have any suggestions about this?

An example of what I'm trying to do would be:

When speaking to Peri (new recruitable character) you have the option to either shut him down rudely, or leave politely.  When coming back to speak to him, I've got two different dialogue scripts depending on whether or not he was insulted, and I'm trying to differentiate between the two of them, and I'm not sure which plot flags to use, and I can't find a resource to help me figure out what they mean.

#2
Firky

Firky
  • Members
  • 2 140 messages
On advanced conversation tutorials - I'd like to know how to make a line of dialogue kill you. :P

As to what you're saying...

Give more info.

Have you set a plot with two flags yet?
Have you assigned actions to the two endings for the first conversation?
Have you made a plot and flag to signal the fact that you have already met the NPC? Maybe within the same plot.
Have you made three seperate conversations within the same file, stacked according to red dialogue and tied to condition? (Hopefully that makes sense.)

(I love the way condition setting works within the conversation editor.)

#3
Sunjammer

Sunjammer
  • Members
  • 926 messages

Deddybear wrote...

An example of what I'm trying to do would be:

When speaking to Peri (new recruitable character) you have the option to either shut him down rudely, or leave politely.  When coming back to speak to him, I've got two different dialogue scripts depending on whether or not he was insulted, and I'm trying to differentiate between the two of them, and I'm not sure which plot flags to use, and I can't find a resource to help me figure out what they mean.

Basically the way you would approach this would be similar to the "Have you slain the monsters yet?" line in the Conversation Tutorial.

Let's assume that the conversation where the Player can be nice or nasty occurs during the first conversation of Peri's personal quest arc and the consequences are felt in the second conversation. So you would need a couple of MAIN plot flags to track the progress of Peri's story and another MAIN plot flag to track if the Player was nice or nasty.  They might look something like this:

- PERI_MAIN_1
- PERI_MAIN_1_PLAYER_WAS_MEAN
- PERI_MAIN_2

And your conversation might be structured something like this:

- [PERI_MAIN_1 is FALSE]: COMMENT: first step in Peri's story
- - [CONTINUE]
- - - Do you have a minute? I'd like to talk about something ... [set PERI_MAIN_1]
- - - - I'd love to
- - - - If I must you pathetic worm [set PERI_MAIN_1_PLAYER_WAS_MEAN]
- [PERI_MAIN_2 is FALSE] COMMENT: second step in Peri's story, was the player mean?
- - [CONTINUE]
- - - [PERI_MAIN_1_PLAYER_WAS_MEAN is TRUE] What is it  now Mr Meanie? [set PERI_MAIN_2]
- - - What can I do for you? [set PERI_MAIN_2]

Note a comment (or green) node isn't displayed in game but can still have conditions and actions attached. This makes them very helpful when structuring your conversations. You can create one by leaving the Dialogue text empty and putting your comment in the Scripting Comment box.

Modifié par Sunjammer, 22 février 2012 - 01:27 .


#4
Firky

Firky
  • Members
  • 2 140 messages
:) I think I'll just shut up now. (That was explained well.)

I always forget to use comments. So, useful here too. Thanks!

#5
Deddybear

Deddybear
  • Members
  • 7 messages
You guys are my new best friends. :) Thanks--I'll post progression and let you know if I need some more help.

Edit:  I'd also like to point out that I've looked through the conversation tutorial several times, but somehow a lot of this information slipped through the cracks.  It's a whole lot to take in at once, I suppose.

Modifié par Deddybear, 23 février 2012 - 04:12 .


#6
Deddybear

Deddybear
  • Members
  • 7 messages
 Okay, I'm still having some issues.

I have four branches for recruiting Peri. Two initial conversations:
one for recognizing the Dalish Background and one for anything else.
For this I used:



-Root
--[COMMENT] RECRUITMENT – DALISH [GEN_BACK_ELF_DALISH is True]
---[CONTINUE]
---Aneth ara, friend. I haven't seen you before. Are you from a different
clan? My name is Perpigulliam...you may call me Peri if that's too
difficult. [Visibility: Once per game]



And



-Root
--[COMMENT] RECRUITMENT – OTHER [GEN_BACK_ELF_DALISH is False]
---[CONTINUE]
---Ho there, stranger. My name is Perpigulliam...you may call me Peri if
that's too difficult. These parts of the forest are dangerous enough
for the Dalish, let alone an outsider. [ Visibility: Once per game]
----I noticed.
-----What brings you here? [Visibility: Normal]



This part appears to work but I haven't been able to test it with a Dalish
yet.



My real problem comes when I try to trigger the returning conversations
for offended and indifferent. I set it as follows:



-----What brings you here?
------The blight necessitates it. (Leads to GEN_HIRE_FOLLOWER which works.)
------That's between me and the Keeper. (Wouldn't set anything. Thought it would
leave him indifferent.)
------Mind your own business, would you? (gen00pet_app_peri APP_PERI_OFFENDED
is set)
-------There's no call for that. Speak civilly to me later. [END DIALOGUE]



So the conversation after that I thought would be based on whether or
not you were rude to him, though I'm thinking I need to set something
at the ends of the “indifferent” lines to trigger the unoffended
return conversation.



-Root
--[COMMENT] RECRUITMENT – RETURNING INDIFFERENT [APP_PERI_OFFENDED is False]
---[CONTINUE]
----Welcome back. Is there something I can help you with?



And



-Root
--[COMMENT] RECRUITMENT – RETURNING OFFENDED [APP_PERI_OFFENDED is True]
---[CONTINUE]
----I hope you've come to chat with me reasonably this time.
-----I'm sorry about before. [APP_PERI_OFFENEDED is cleared]



What am I doing wrong? I didn't think I could follow the example you
provided exactly. Is the conversation too complex?

It just seems like no one else on the entire internet has any trouble with the conversation editor. A lot of people cite experience with NWN, which I simply don't have.

Modifié par Deddybear, 23 février 2012 - 06:00 .


#7
Sunjammer

Sunjammer
  • Members
  • 926 messages
The conversation isn't too complex (if you want to see complex look at the Single Player campaign) but what you are missing is the top level flags. You are putting all the options from different stages at the same level.

What do I mean by that?

Well, the "Dalish" and "Not Dalish" nodes are part of the first conversation while "Returning Indifferent" and "Returning Offended" are part of a second (or later) conversation. If you look at my example each distinct conversation is controlled by the comment with the conditions and the variations within those conversations are sub-nodes within those ocnverations.

So to rewrite your conversation I would suggest adding a couple of plot flags, something like:
  • PERI_INTRODUCED
  • PERI_RECRUITED
These represent your two conversations (so name them as you see fit) and they allow us to rewrite your  conversation as follows:

Root
- [PERI_INTRODUCED is False] [COMMENT] Recruitment Take 1
- - [CONTINUE]
- - - [GEN_BACK_ELF_DALISH is True] Aneth ara, friend ...
- - - - [CONTINUE]
- - - - - [LINK TO] What brings you here?
- - - Ho there, stranger. My name is Perpigulliam ...
- - - - I noticed.
- - - - - What brings you here? [set PERI_INTRODUCED]
- - - - - - The blight necessitates it.
- - - - - - - (recruitment stuff) [at some point set PERI_RECRUITED]
- - - - - - That's between me and the Keeper. [END DIALOGUE]
- - - - - - Mind your own business, would you? [set APP_PERI_OFFENDED]
- - - - - - - There's no call for that. Speak civilly to me later.
- - - - - - - - [END DIALOGUE]
- [PERI_ RECRUITED is False] [COMMENT] Recruitment Take 2 (Peri may be offended or indifferent)
- - [CONTINUE]
- - - [APP_PERI_OFFENDED is True] I hope you've come to chat with me reasonably this time.
- - - - I'm sorry about before.
- - - - - [LINK TO] Is there something I can help you with?
- - - Welcome back.
- - - - [CONTINUE]
- - - - - Is there something I can help you with?
- - - - - - (recruitment stuff) [at some point set PERI_RECRUITED]

Modifié par Sunjammer, 23 février 2012 - 08:51 .


#8
Deddybear

Deddybear
  • Members
  • 7 messages
Actually, can you tell me where exactly to find the single player campaign conversations? I've been looking for them but can't find them, and I might be able to learn from example and stop asking so many questions if I have something to go from.

Your examples are a huge help, Sunjammer. :) Can't express enough how awesome you've been.

I've gotta go to work now, so I won't be able to test this out till later tonight. Will keep this thread updated with progress.

#9
Sunjammer

Sunjammer
  • Members
  • 926 messages
Save your module then go File > Manage Modules and select Single Player then click Okay. Then in the Conversation palette look in the _Followers folder.