But…if that global int didn’t work, the conversation wouldn’t start at all, so I don’t get it.
But sure, I can test anyway
OK, so that is on the first node that does fire … I am working from memory.
I was just trying to get a picture of what is happening and when.
To be honest, the PC Speaker check (with a default node) is more of a double check than the global int check.
Not sure what you mean by that exactly
Adding a default node (with no condition check) to fire after all the party member checks. (I just downloaded again to show you.)
Tested wtith local int instead of global int. No difference.
Still don’t get it. Isn’t that what I’ve already done in the conversation?
No, you only have nodes that fire if one of those PCs is in the party by checking with the gc_is_in_party script.
I added one that does not have any condition (TEST DEFAULT) to see if the conv continues suggesting issue with condition checks.
OK, so the first node (with nankun) fires and the conv freezes and does not END correctly… is that it?
Yep. You can’t escape the conversation so to speak. It just freezes at the picture of the rakshasa shows above. He stands there moving his head and you can’t do anything.
OK, I understand the problem more specifically now.
How is the conversation setup?
Is this conversation attached to the fairy dragon and started by the PC clicking on them? (If so, I will simply add a creature to my campaign, attach the conv and test first node with a companion of my own.)
I just tested your conv with a comp of my own (had to bypass the global), but conv ended fine after this …
The conversation is attached to the fairy dragon who in this case is just saved in the module and not in the campaign this time around. Don’t know why I did it like that here, since almost all the other creatures are saved in the campaign folder.
The fairy dragon has a script that looks like this on his OnConversation node:
const float DEFAULT_DIST_DIALOG = 7.f;
void main()
{
object oFD = GetObjectByTag("faeriedragon2");
object oPC = GetFirstPC();
if(GetIsInCombat(oPC)) return;
object oWP = GetObjectByTag("fairydrwp");
object oFM = GetFirstFactionMember(oPC,FALSE);
if(GetDistanceToObject(oPC) < DEFAULT_DIST_DIALOG)
{
AssignCommand(oPC, ClearAllActions());
while(GetIsObjectValid(oFM))
{
AssignCommand(oFM, ClearAllActions());
AssignCommand(oFM, ActionJumpToObject(oWP));
oFM = GetNextFactionMember(oPC, FALSE);
}
DelayCommand(0.2,AssignCommand(oFD,ActionStartConversation(oPC,"c_ur_fairydr2",FALSE,FALSE,TRUE,FALSE)));
}
}
The conversation, like all conversations, is saved in the campaign folder.
Another interesting discovery: I tried with changing the DLGPartySwap to False in the Campaign Editor. After I did that, the game froze earlier, on/right after the “Oooh! Shiny!” node. Stuff is getting even weirder.
Did you see my test result of your conversation above?
It worked fine for me … the conversation node fired correctly (after ignoring the unset global) and the companion I set to use said their line (as screenshot), and the conv ended as normal after click to move forward.
Do you have the cliententer and heartbeat scripts on the area that I provided before?
I mean, there’s so much going on here that one would need to really do it like I do in my module.
Is your main PC turned to a chicken and in the waypoint on the map? Like I said, one needs to be pretty thorough…
No I don’t keep any test files. That could cause me big problems of my own.
I only tested that first node where you said it was not ending but freezing. That worked correctly.
If you would like me to do a more thorough check, I’d need your campaign files … OR … If you believe these other files are causing the issue, simply add a “return” at the top of the file to prevent them firing as you do a test. Yes?
I’ve already posted the required campaign files in the first post in this thread.
I have no idea what’s causing anything. It could be anything. That’s why I’m desperate and posted all this here.
I was referring to the fact that you were pursuing other campaign files affecting the conversation like the area script setups.
As you know, starting to test at this depth requires more external structure in which you have set your campaign… that can become quite involved and I don’t know where the testing will go.
All I can add, is that the conv works without hanging for me, but I have not gone to chicken to test. If I can do a simple test with what I have, I’ll try.
EXAMPLE: Scripts missing gc_checkforspell
(Should that have been s_ur_checkspell?)