En fait ton problème vient juste du fait que pour les personnages créés par le mod (et qui ne sont a fortiori pas dans le jeu de base), il faut mettre des guillemets "" autour du nom du personnage en question.
Ici ça donnera par exemple :
CHAIN
IF ~~ THEN ~#BAide~ presente
@15
==
"#BCapt
" IF ~InParty("#BCapt")~ THEN @16
== MinscJ IF ~InParty("Minsc")~ THEN @17
END IF ~~ THEN REPLY @18 GOTO peurderien
Ceci devrait régler ton problème.
Tu peux donc repasser le nom de la créature et des fichiers dialogues de cette créature en #BCapt.
Je vais rajouter une note à ce sujet dans le tutorial correspondant.
Concernant l'usage des APPEND et CHAIN, les deux peuvent convenir pour tous les dialogues à 3 personnages ou plus.
Classiquement, on utilisera l'APPEND quand seulement un personnage vient se greffer au dialogue (donc 3 personnages en tout) car ça devient compliqué d'utiliser l'APPEND quand il ya au moins 4 personnages même si ça reste possible.
Le CHAIN sera beaucoup plus pratique pour 4 personnages et plus car il passera d'une ligne à l'autre et sautera les lignes des personnages qui ne sont pas dans le groupe. Mais on peut aussi l'utiliser quand il n'y a que 3 personnages si l'échange est particulièrement long et barbant à faire en APPEND.
Petit exemple avec notre chère amie Bella Jansen :
Voici les lignes de texte suivantes dans le #TBella.tra :
@1 = ~<CHARNAME>, t'as déjà eu une petite amie ?~ // Bella
@1000 = ~Heu c'est un peu indiscret comme question...~ // Charname
@2 = ~Ca ne répond pas à la question...~ // Bella
@3 = ~Mais tu vas lui foutre la paix oui ?~ // Jaheira
@4 = ~Ho, Bouh me souffle que <CHARNAME> appréciait beaucoup Dynaheir à l'époque...~ // Minsc
@4000 = ~Non mais c'est bon, je n'ai pas envie d'en parler !~ //Charname
@5 = ~Ok, je me dois de tirer les conclusions qui s'imposent alors...~
Dans le #TBella.d ce dialogue sera codé comme suit :
BEGIN ~#TBella~ // en supposant que ce soit le début du .d bien sûr.
IF ~~ THEN BEGIN PetiteAmie
SAY @1
IF ~~ THEN REPLY @1000 GOTO Remarques
END
CHAIN
IF ~~ THEN ~#TBella~ Remarques
@2
== JaheiraJ IF ~InParty("Jaheira")~ THEN @3
== MinscJ IF ~InParty("Minsc")~ THEN @4
END IF ~~ THEN REPLY @4000 GOTO Conclusion
IF ~~ THEN BEGIN Conclusion
SAY @5 THEN EXIT
END
Si on analyse la CHAIN on constate que pour les lignes de Jaheira et de Minsc, on pose comme condition qu'ils soient dans le groupe.
En fait la CHAIN fait deux actions : pour chaque ligne il vérifie si la condition est vérifiée ou pas : si elle est vérifiée, elle balance la ligne et passe à la suite, si la condition est pas vérifiée, elle saute la ligne et passe à la ligne suivante de façon automatique.
C'est un gain de temps assez énorme par rapport à si on devait coder la même chose avec des APPEND.
Essayons justement
Voici ce que donnerait le #TBella.d avec des APPEND pour ce même dialogue :
BEGIN ~#TBella~
IF ~~ THEN BEGIN PetiteAmie
SAY @1
IF ~~ THEN REPLY @1000 GOTO Remarques
END
IF ~~ THEN BEGIN Remarques
SAY @2
IF ~InParty("Jaheira")~ THEN EXTERN ~JaheiraJ~ RemarqueJaheira1
IF ~InParty("Minsc")
!InParty("Jaheira")~ THEN EXTERN ~MinscJ~ RemarqueMinsc1
IF ~!InParty("Minsc")
!InParty("Jaheira")~ THEN REPLY @4000 GOTO Conclusion
END
IF ~~ THEN BEGIN Conclusion
SAY @5 THEN EXIT
END
APPEND ~JaheiraJ~
IF ~~ THEN BEGIN RemarqueJaheira1
SAY @3
IF ~InParty("Minsc")~ THEN EXTERN ~MinscJ~ RemarqueMinsc1
IF ~!InParty("Minsc")~ THEN EXTERN ~#TBella~ Conclusion
END
END
APPEND ~MinscJ~
IF ~~ THEN BEGIN RemarqueMinsc1
SAY @4
IF ~~ THEN EXTERN ~#TBella~ Conclusion
END
END
Voilà, c'est un peu long mais c'est pour illustrer mon propos : le CHAIN permet d'automatiser un système de vérification qui est très chiant à mettre en place avec un APPEND quand il y a plus de 4 personnages qui discutent.
Sinon ça me permet de répondre à ta question : les lignes de texte doivent se trouver dans le .tra associé au .d dans lequel sont codés les CHAIN ou les APPEND.