QUOTE
The weighted banters come before th unweighted ones, that is the way it should be. Per dialogue file, the blocks are processed from top to bottom. If you say you have the banters in a random order, could it be it wasn't the same NPC starting the dialogues?
Correct. It was a different character who started the dialogue.
QUOTE
If you want to have banters from different NPCs in a specific order, you will have to use variables to ensure it. (i.e. in the first banter by NPC 1, the variable XX-(your prefix)Banter1 is set to 1; in th second banter from NPC 2, the trigger block contains Global("XX_Banter1","GLOBAL",1).) Using variables to ensure the order is a good idea anyway, since weighting changes the top-to-bottom processing of a dialogue file.
Thanks. I had the variables in as "LOCALS" when I tried this before. Go figure.
QUOTE
For scripted dialogues, I recommend using the J.dlg. Scriptd banters are for a specific situation only (after a timer is run, if the party enters a specific area, after finishing a quest), so they are triggered by variables via the script file, and thus they cannot be called by Ctrl.+I.
Well, I have a banter that requires a certain area that I put in the J.dlg. It won't trigger on its own but CTRL + I will bring it up when I am in the correct area. So That means that the variables, etc are all checking out but the dialogue just won't run without help for some reason. But that's only if I accidentally use the banter script as I did below. When I correct BCXHALBO to be CXHALBOJ, nothing happens.
CODE
BEGIN CXHALBOJ
CHAIN
IF ~InParty("BioChar")
See("BioChar")
!StateCheck("BioChar",STATE_SLEEPING)
Global("BioCharHalbo1","GLOBAL",3)
OR(11)
AreaCheck("AR0021")
AreaCheck("AR0313")
AreaCheck("AR0406")
AreaCheck("AR0509")
AreaCheck("AR0513")
AreaCheck("AR0522")
AreaCheck("AR0704")
AreaCheck("AR0709")
AreaCheck("AR1105")
AreaCheck("AR1602")
AreaCheck("AR2010")~
THEN BCXHALBO HalboBioChar1.3
~blah blah blah~
DO ~SetGlobal("BioCharHalbo1","GLOBAL",4)~
== BioChar
~blah blah blah~
EXIT