View Full Version : different dialogue after recruiting a custom npc

10-28-2006, 03:57 PM
Hello all! I have just started modding & I just finished a recruitment mod. i need help with the dialogue though. I have the dialogue to recruit him all done and tested, but i need help on making different dialogue come up instead of the recruitment one. I added dialogue to it for his backstory, etc. but he won't speak it. he'll only say the recruit dialogue.

P.S. this is for kotor 1

10-28-2006, 04:08 PM
Put a HasSpokenTo() = False (or something like that???) script in the conditional box of your recruitment node, and then put nothing (or =True) in the main dialog node.

This is my no means how you would definately do it, this is just me being hypothetical.

10-28-2006, 04:10 PM
Okay, i'll give it a try thanks!

*EDIT* well, i looked for the conditional box and couldn't find one. i could not be seeing it or the tools im using don't have it.
i'm using DLGEditor ver. 2.3.0.

Tupac Amaru
10-28-2006, 05:45 PM
There should be two separate branches originating from the root node of your dialogue file : The first one for the recruitment conversation and the other for the backstory. Go to the starting node of the recruitment branch, write 'k_con_talkedto' in the 'script that determines availability' field and 'k_act_talktrue' in the 'script that fires when spoken' field. The first time you talk to the character the game will choose the recruitment branch. The next time it will skip the recruitment part and start with the backstory instead.

This should work if you have to recruit him during the first conversation. If there is an option to reject or delay the recruitment it gets a bit more complicated.

The script and field names are for K1 only. In TSL, they are named differently.

10-28-2006, 07:59 PM
I thank you with many thanks!

10-29-2006, 04:47 AM
I'll be straight with you, I could never work out which to use where, and was too stupid to ask;Tupac, you rule.

Tupac Amaru
10-29-2006, 06:26 AM
You can tell in which field the script should be placed by its name. A script beginning with k_con_ always checks for a condition while one starting with k_act_ is an active script that does something...which means I had misspelt one of the scripts. The correct name is k_act_talktrue, not k_con_talktrue.