Need help regarding altering and adding existing dialogue
elminster
Member, Developer Posts: 16,317
See my most recent post.
Post edited by elminster on
1
Comments
To determine the state value, decompile the dialog with WeiDU. The state value is the one stated after the BEGIN n preceeding the SAY to which you want to add a reply.
See example in the WeiDU readme, 7.3 COPY_TRANS.
Clearly I can't just uncompile the DLG file, make the necessary edits to (in this case DLYSANPR.D) and then compile it again. The main reason being that it will just presumably get erased if someone elses mod (or my own mod) uses that file and it would erase anyone elses work on that file.
EXTEND_BOTTOM would presumably work (assuming I knew where to put what, where, which I really don't) if I just wanted to add replies. But as I've been working on this mod I've come to the conclusion that I have to also block off existing replies if my character talking is a particular kit.
The problem however is that I want to do more than one thing it seems and I don't know whether I should be putting some things in the Tp2 files, other things in a D file, etc.
If anyone can help me here I'd appreciate it.
I've bolded and italicized some of the things I want to change in the DLYSANPR.D file. To give some context this file deals with the conversation you have with Lysan in the cavern in the Vale of Shadows when you are sent by Kresselack to kill her.
IF ~~ THEN BEGIN 12 // from: 11.0
SAY #1551 /* ~Oh? Who dares to speak of Auril? I would know who this person is!~ */
IF ~~ THEN REPLY #1552 /* ~Kresselack, the spirit of the tomb here. He is worried about your intentions toward his resting place.~ */ GOTO 13
IF ~~ THEN REPLY #1553 /* ~That is of no consequence. What matters is that you sound like the threat he says you are. Prepare to die!~ */ DO ~Enemy()
AddJournalEntry(1349,QUEST)
~ EXIT
IF ~Kit(LastTalkedToBy, k9Auril)~ THEN REPLY @222 /* ~Icepriest of Auril dialogue~ */ GOTO 13
IF ~~ THEN REPLY #1554 /* ~Never mind, we will speak of this at another time. Farewell.~ */ GOTO 21
END
IF ~~ THEN BEGIN 13 // from: 23.1 12.0 11.1 10.1 9.3
SAY #1555 /* ~Hmm. I know nothing of any spirit, but I am familiar with the tomb you speak of. It is an abomination in the eyes of the goddess. I intend to make it more... pleasing to Her tastes.~ */
IF ~!Kit(LastTalkedToBy, k9Auril)~ THEN REPLY #1556 /* ~There is a spirit bound to that tomb. He does not wish to spend eternity in the cold and dark.~ */ GOTO 14
IF ~Kit(LastTalkedToBy, k9Auril)~ THEN REPLY @223 /* ~Icepriest of Auril dialogue~ */ GOTO 14
IF ~~ THEN REPLY #1557 /* ~And what of Kuldahar? How do you view it?~ */ GOTO 18
IF ~~ THEN REPLY #1558 /* ~Enough of this, I am leaving. Farewell.~ */ GOTO 22
END
In the top case I'm adding in the one line. In the bottom case I'm restricting my kit from saying REPLY 1556 and adding in another line. I'm still not sure what I should be writing in in either the TP2 file or what else I should be doing.
To edit .dlg files with WeiDU, COPY_EXISTING them and use DECOMPILE_AND_PATCH BEGIN
patch list
END to change the stuff you want with REPLACE_TEXTUALLY etc... I recommend taking the .dlg as .d from the game so you know what you're editing, to do this just call WeiDU from the Windows command prompt (I assume you're on windows) with the filename.dlg, WeiDU'll decompile it.
Edit: seems like there IS an EXTEND_BOTTOM on .d files... Derp, I wasn't aware of that one, lol (my .d skills are pretty bad).
For instance, have a look at ADD_TRANS_TRIGGER if you want to disable existing replied and EXTEND_BOTTOM for adding a new one. What you want to do looks exactly like what is described in the ADD_TRANS_TRIGGER documentation.