Sign in to follow this  
Kexikus

Conversation sometimes not starting

Recommended Posts

While testing the Xor encounter for my dark side Juhani quest, I noticed that sometimes the final dialog won't start after fighting Xor. I haven't changed that behaviour so I guess it's a vanilla bug but if possible I'd like to fix it. The problem is that I have no idea why it's failing. My testing was done on Manaan where it worked most of the time but also failed a few times.

 

The dialog is started from Xors (kas_xor1.utc) OnUserDefine script (k_kas_xor_user). Here's the decompiled version:

 

 

  Reveal hidden contents

 

 

My first guess was that the difference is whether his henchmen die before he goes under 20 HP or not but I tried killing them first multiple times and got both the desired dialog start and the bug. My only guess would be that ActionStartConversation somehow fails, but I don't really see why it would.

 

Anyone here with better ideas?

Share this post


Link to post
Share on other sites

I was always kind of a hack scripter, piecing together scripts from examples from existing tbreads. I don't know a lot. However, when faced with a similar problem, I would start each dialog firing script with, if I recall correctly, AClearallAction, ClearallCommands entry.

 

And/or i would put a delay of 2-3 seconds on the start dialog.

Share this post


Link to post
Share on other sites

Kexikus,

 

if you don't mind giving it a try, I would check whether the bug still occurs after commenting out the ClearAllActions() in the script.

Share this post


Link to post
Share on other sites
  On 4/14/2018 at 10:31 PM, newbiemodder said:

I was always kind of a hack scripter, piecing together scripts from examples from existing tbreads. I don't know a lot. However, when faced with a similar problem, I would start each dialog firing script with, if I recall correctly, AClearallAction, ClearallCommands entry.

 

And/or i would put a delay of 2-3 seconds on the start dialog.

 

ClearAllActions is already in, ClearAllCommands doesn't exist. And there is a delay already. Increasing that might work though.

 

  On 4/15/2018 at 4:11 AM, Salk said:

Kexikus,

 

if you don't mind giving it a try, I would check whether the bug still occurs after commenting out the ClearAllActions() in the script.

 

Didn't work but thanks for the suggestion.

 

I think I'm just going to leave this as it is. I've played that encounter around 15 times and the issue occured only 2 times or so which makes testing really annoying and also isn't that often, so I guess it doesn't really matter either. But if anyone has some more ideas, please let me know and I'll give them a shot.

  • Like 1

Share this post


Link to post
Share on other sites

Sorry it didn't help.

 

I was having similar issues with script modding in the Infinity Engine (Baldur's Gate) and ClearAllActions() inhibited sometimes other actions in the same script block. I must say I never experienced that bug myself. The only issue I addressed in the now defunct project of mine was when Xor would not appear if not using the rapid transit system.

Share this post


Link to post
Share on other sites
  On 4/15/2018 at 9:26 AM, Salk said:

The only issue I addressed in the now defunct project of mine was when Xor would not appear if using the rapid transit system.

 

That's an issue? Never encountered that myself. All I know is that the second Xor encounter doesn't work on Tatooine. Could you tell me more about that bug?

Share this post


Link to post
Share on other sites

Well, first of all. I had recreated the whole ambush on Tatooine in SW: KotOR Upgrade... There is an image of it here, in case you are interested. This and much more will never be released but such was its destiny, it seems... ;)

 

Many years ago Darth333 had figured that in some cases the second Xor encounter would not start unless the party was using the rapid transit system and came with a fix for it, making a few changes to k_sup_gohawk.ncs (source file is available).

Share this post


Link to post
Share on other sites

Are you sure the global is being properly set to 1? I've heard of that being a problem before. I'm assuming that's meant to happen when all the henchmen die and Xor's health is below a certain amount.

 

If it's not that, then I would guess the problem is in his heartbeat script rather than anything there, since the user defined script only ever fires from that. You could probably ignore the problem entirely and simply fire the dialogue from his heartbeat script, too.

Share this post


Link to post
Share on other sites
  On 4/15/2018 at 1:59 PM, Salk said:

Well, first of all. I had recreated the whole ambush on Tatooine in SW: KotOR Upgrade... There is an image of it here, in case you are interested. This and much more will never be released but such was its destiny, it seems... ;)

Now that alone would make a great stand-alone mod. A shame it got cancelled.

  • Like 1

Share this post


Link to post
Share on other sites
  On 4/15/2018 at 1:59 PM, Salk said:

Many years ago Darth333 had figured that in some cases the second Xor encounter would not start unless the party was using the rapid transit system and came with a fix for it, making a few changes to k_sup_gohawk.ncs (source file is available).

 

Do you have a link for that?

 

  On 4/15/2018 at 2:27 PM, JCarter426 said:

Are you sure the global is being properly set to 1? I've heard of that being a problem before. I'm assuming that's meant to happen when all the henchmen die and Xor's health is below a certain amount.

 

If it's not that, then I would guess the problem is in his heartbeat script rather than anything there, since the user defined script only ever fires from that. You could probably ignore the problem entirely and simply fire the dialogue from his heartbeat script, too.

 

Yeah, that global is set to 1 when the encounter starts. But I don't actually know when that case is actually used. Do you happen to know what each of the UserDefinedEvent numbers are?

 

I don't think the issue is in the heartbeat script though as that's just the default heartbeat script.

Share this post


Link to post
Share on other sites

Oh, my mistake. I assumed it was using an event fired from heartbeat but it's actually his perception event (1002) which... should not be failing. Unless you went into stealth or something. It might be something wrong with the general AI.

 

The other one being used here is the damage event (1006) which makes him surrender. But you said that's working.

 

Still, you could bypass the problem with heartbeat like I was saying before. If you copy the whole 1002 tree to 1001 and put in a condition that the henchmen are dead, then it should fire that when his heartbeat event fires in the event that the other one doesn't.

Share this post


Link to post
Share on other sites
  On 4/15/2018 at 2:40 PM, N-DReW25 said:

Now that alone would make a great stand-alone mod. A shame it got cancelled.

 

It was just one of the many good things I had worked on.

 

A shame indeed.

Share this post


Link to post
Share on other sites

I recall having the game randomly not triggering scripts it should for whatever reason. My assumption is that either the engine or computer hiccups at a critical point, thus skipping the trigger. Sometimes it appears to be using Force Jump that’s causing this, but sometimes it seems to be just... random. It would be cool to not need to suffer from it though.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this