I know something of course. I know that you use them when you write the B-dialogue for one NPC, and you want another NPC to initiate the banter. For example: (from jcompton's Gareth, sorry Jason, but it's a good example...)
CHAIN IF WEIGHT #33 ~InParty("FWGhareth") See("FWGhareth") !StateCheck("FWGhareth",STATE_SLEEPING) Global("FWAerieGhareth","LOCALS",0)~ THEN BAERIE ghar1 ~A~ DO ~SetGlobal("FWAerieGhareth","LOCALS",1)~ == BFWGHAR ~B~ [FWGHAR68] == BAERIE ~C~ etc. EXITHere Aerie initiates the dialogue (THEN BAERIE...), and the WEIGHT-variable is used. But when Gareth initiates the dialogues, it isn't used.
I understood from the WeiDU readme, that it has to do with sorting banters in the BioWare-NPC's .dlg's. If you don't add the WEIGHT, the banter'll be at the bottom of the BW-NPC's B***.dlg. This is used to place the current banter higher up in the B**.dlg. So far I'm with you (if that's correctly understood...).
What I wonder, though, is how to use them. I mean, I've seen negative values, positive, high, low, etc. How do you determine which value to choose?
I also wonder about this quote from the weidu-readme:
That's kind of the opposite of what I thought WEIGHTS are.IF WEIGHT #8 /* Triggers after states #: 11 12 24 25 26 36 58 even though they appear after this state */
Please explain to a poor modder, and I won't bother you with stupid questions again (I wouldn't bet my money on that, though... ).