Hi. I started (for the first time) implementing my NPC mod and encountered a few problems for which I can't decide upon a best approach. They are both about CHAIN (and its friends) vs APPEND + EXTERN.
1. What do you think is best practice for coding other
NPCs interjections on your
Example (let NPC's name be Joe):
Protagonist initiates dialog (initial dialog file, Joe.d)
Joe: "How are you doing?"
Rachel (if present)L: "Oh, this guy is handsome."
Then follows protagonist replies.
As I understand you can do it on "low-level" with APPEND and EXTERN transition or you can do it with CHAIN or INTERJECTION, which do the same thing, but save you some time. So I'd like to know what, in your experience, is more convenient. It's just CHAIN doesn't look obviously superior to me yet, because, firstly, EXTERN transition is more explicit, secondly, with EXTERN you can do more than with CHAIN, but that's my second question.
2. Primary question: is there way to elegantly code following dialog using CHAIN or similar command:
MYNPC "My npc sentence"
NPC1 interjection (if present): "npc1 comment on my npc sentence" -> then replies
NPC2 interjection (if present): "npc2 comment on my npc sentence which replaces one of the protagonist replies, so if NPC2 has said something, replies are skipped and we go to REPLY2 transition state" -> then goto special state
NPC3 interjection (if present): "npc3 comment on my npc sentence" -> then replies
REPLY 1: "protagonist reply 1 on my npc sentence" -> goto some state
REPLY 2: "protagonist reply 2 on my npc sentence" -> goto special state
REPLY 3: "protagonist reply 3 on my npc sentence" -> goto some state
REPLY 4: "protagonist reply 4 on my npc sentence" -> goto some state
You see, I like consistency in coding style, so I don't wish to jump between CHAIN and (APPEND+EXTERN)s. Right now I can't decide, should I stick with CHAIN (because possibly I don't realize its full potential) or should go for APPEND+EXTERNS as situations where I will have to use them are unavoidable.