Larian Studios
This is an ongoing problem for me. I managed to fix it once before in another conversation (or the problem just went away) and now it is happening again in a different conversation.

The issue boils down to a node's keyword displaying in-game rather than what's entered into the 'Displayed Text' area.

[Linked Image]

You see here that the node 'Troll' should display in-game as "What do you know about the guard over there?" But it ain't. And it's making me sad because I don't know if I'm doing something wrong or if the Keyword Editor is just crapping the bed.

I've tried deleting the node and retyping the text into a new one with a different name. I've tried directly renaming the node. I've tried moving it up and down the list. I've tried calling the node "What do you know about the guard over there?" I've tried mashing on 'Fix UUIDs' a bunch of times. I'm making a point of closing and reloading the whole Editor (the 'sanity check' as I'm told it's called) upon editing. None of these fixed the issue.

As I mentioned earlier, I've had this exact same issue in a previous conversation and I *thought* I fixed that one by deleting the rogue node and re-entering it. But it didn't work with this one.

Anybody else had a similar experience or could offer some advice? I can stomach a lot of the Divinity Editor's frustrations and quirks because I operate under the assumption that I'm just not using the tools correctly. But in this case, my gut is telling me that I'm doing things correctly and the Editor itself is at fault. Which makes me want to walk away from the ordeal, as wrestling with a fickle-minded robot isn't my idea of time well spent.
I can't begin to guess at what might be causing this. I took it upon myself to delete the 'Troll' node entirely (after copying the dialog to a Notepad file), then reloaded the Editor, checked the conversation and, sure enough, that whole node was gone from the conversation. Good. Closed Editor, opened her back up and added a new node called Guard with the dialog I saved.

[Linked Image]

Aagh!
This could very well explain the "1. You" dialog options in the main campaign. I take it naming the node "What do you know about the guard over there?" didn't work?
It did not, no. At least, I was trying all sorts of checks and fixes coupled with the sanity checks of saving and closing (since all too often certain changes don't take effect unless you restart the Editor). In the middle of my frantic solutioneering, I guess it's possible I may have missed checks on some of my attempts.
I've had this problem as well, Noa. My text said Quest. Annoying.
If you look at your dialog.lsx file for that character, for the Troll/Guard option do you see something similiar to the following?


The actual keywordContentMapKey's and handles will be different, but the keywordContentMapValue and keywordDisplayText should be the same.
Code
<node id="keywordContentMap">
                    <attribute id="keywordContentMapKey" value="8d3441bf-eeba-4a1b-8f3e-04003d771ba3" type="22" />
                    <attribute id="keywordContentMapValue" value="What do you know about the guard over there?" handle="h52514e3bg6d0cg43b8g930bgf6ee21340dd8" type="28" />
                </node>


and later on in the file-
Code
 <attribute id="keywordDisplayedText" value="8d3441bf-eeba-4a1b-8f3e-04003d771ba3" type="22" />
                    <attribute id="keywordId" value="Guard" type="22" />


Note that the keywordDisplayedText value is the same as the keywordContentMapKey defined earlier in the file.
I only just realised I can look at this stuff in NotePad++.... ouch


Let's take a butcher's shall we?

Code
<node id="keywordContentMap">
                    <attribute id="keywordContentMapKey" value="9c8806ec-2bbc-4452-bab7-970617aeb212" type="22" />
                    <attribute id="keywordContentMapValue" value="What do you know about the guard over there?" handle="hf075c899gd8f8g42a0g8610gb5c238fa4a50" type="28" />
                </node>

~~~~~~~
///////
~~~~~~~

<node id="keywordNode">
                    <attribute id="keywordActions" value="" type="23" />
                    <attribute id="keywordConditions" value='CONDITION IsFlag(&quot;RatKidIntro&quot;,1)&#x0D;&#x0A;CHECK c' type="23" />
                    <attribute id="keywordDisplayedText" value="9c8806ec-2bbc-4452-bab7-970617aeb212" type="22" />
                    <attribute id="keywordId" value="Guard" type="22" />
                    <attribute id="keywordLast" value="0" type="19" />
                    <attribute id="keywordOwner" value="-1" type="4" />
                    <attribute id="keywordShow" value="1" type="19" />
                    <attribute id="keywordSource" value="0" type="5" />


And, for comparison with a dialog node (Keyword: "Key") which works:

Code
<node id="keywordContentMap">
                    <attribute id="keywordContentMapKey" value="badcb95c-78d6-4ab8-a41c-0934ff2c3798" type="22" />
                    <attribute id="keywordContentMapValue" value="Any idea where the key for this cell is kept?" handle="ls::TranslatedStringRepository::s_HandleUnknown" type="28" />
                </node>

~~~~~~~
///////
~~~~~~~

<node id="keywordNode">
                    <attribute id="keywordActions" value="" type="23" />
                    <attribute id="keywordConditions" value='CONDITION IsFlag(&quot;RatKidIntro&quot;,1)&#x0D;&#x0A;CHECK c' type="23" />
                    <attribute id="keywordDisplayedText" value="badcb95c-78d6-4ab8-a41c-0934ff2c3798" type="22" />
                    <attribute id="keywordId" value="Key" type="22" />
                    <attribute id="keywordLast" value="0" type="19" />
                    <attribute id="keywordOwner" value="-1" type="4" />
                    <attribute id="keywordShow" value="1" type="19" />
                    <attribute id="keywordSource" value="0" type="5" />
Okay, so in the two chunks of code (apoloigies for the eyesore), I note that there's a difference in the keywordContentMapKey part (the first, smaller, section).

The node which works has a long string of text/numbers, handle="ls::TranslatedStringRepository::s_HandleUnknown", whereas the broken node, in the same place, reads handle="hf075c899gd8f8g42a0g8610gb5c238fa4a50".

Looking through the rest of the file, all of the (working) nodes -- except for one -- display the 'HandleUnknown' readout. The only other node with a specified handle aside from the broken one is the Displayed Text from the 'Greeting' node. And, obviously, the Displayed Text in the Greeting node is never seen.
Only one thing to do then, right?

I deleted the handle="hf075c899gd8f8g42a0g8610gb5c238fa4a50" from the Guard-node in the .lsx and replaced it with the handle="ls::TranslatedStringRepository::s_HandleUnknown" which all the other working nodes had, saved, loaded up the editor and...

[Linked Image]

Ladies, gentlemen, we have a fix!


What a weird bug/feature...


Many, many thanks for the push in the right direction Rhidian. smile
So what happens if you replace that handle in your Guard dialog file with "ls::TranslatedStringRepository::s_HandleUnknown"?

Edit:
Nice to see that it worked.
Waaaay ahead o' ya. :P
I'm just wondering, would this qualify as something to report in the Bugs section of the forum? Or can we reasonably expect Larian to know about it (or even that the Editor is functioning as normal and there's some user error involved somewhere)?
I am having the same problem with my dialogs. But looks like you are a few steps ahead of me. I am still working on a level art and scripting quests. But anyway thanks for solving that mystery.
I don't know jack about jack. But could it be possible you're having these issues because you have "Auto-Import Global Nodes" checked?? Having the issues with the names 'Guard' and 'Troll' probably wouldn't be surprising because I can imagine the main game using those two names as important nodes somewhere...anyway, it may be worth a shot.
That would make a lot of sense actually! Note to self: in future, append all nodes with _fsdasdf. :p
Did that work?
I ran into the same problem with a node named "You" and I think it happened with one named "Leave" as well. I think Lemenhead is right that we imported global nodes that messed up the dialogue behavior, as those are definitely nodes they used in the main module. The "Troll" global node probably came from the girl in Silverglen. I also remember seeing a "You" somewhere in Silverglen or Hunter's Edge.

Looking at the code, I would guess (with no real basis whatsoever)
handle="ls::TranslatedStringRepository::s_HandleUnknown

seems to to be saying: "this node hasn't been used anywhere else," while

handle="hf075c899gd8f8g42a0g8610gb5c238fa4a50

is basically an ID for the global node.

So basically avoid importing global nodes except for the greeting node which I think you are supposed to import to get the dialogue to initiate correctly (but maybe not.)
Thanks, guys this a big help.
© Larian Studios forums