Jump to content
Godis_1

Dialog/Sidechat disappears (weird problem)

Recommended Posts

Hey guys,

 

I have a real strange problem. I'm not sure how to describe it exactly, and what is causing it, so I don't post a script snippet yet, until you tell me what you need to see. I hope someone can point me into the right direction.

I wrote a few scripts which are simply "simulating" a conversation between the player and the civilian unit. It's executed by an "addaction" command added to all civilians. Finally the conversation leads whether to some intel, like an HVT, a weapons cache or hostages, which is being marked on the map after the conversation has been ended. It works very well so far. Also these side missions are working fine. The only and very strange thing is: After finishing such a mission (i.e. destroyed a weapons cache which intel was given by a civilian via conversation), everything is fine - EXCEPT when talking to a civilian then, there's no dialog visible anymore. Lips are moving (setrandomlip true;), sometimes intel is gathered (depends on players reputation and random selection), so to say: Everything is still working - except there's no chat (between player and civilian) visible anymore! And there's NO error in the log, "show script errors" startup commandline doesn't show anything, nothing can be found inside the RPT files, just nothing! I have to mention that the dialogs are visible as long as I don't finish any of the mission from collected intel.

In example: When I talk to civilian, luckily get some intel about sth (i.e. hostages somewhere), then I can talk to any civilian and the dialogs (siechat) are visible AS LONG AS I don't rescue the hostages, But as soon as the hostages are rescued, dialogs will not be shown anymore when talking to civilians.  I'm really at the end of knowledge..... no error messages, no possibitlity to debug this... What could be the rason for this behavior?

 

Thank you very much in advance!

Share this post


Link to post
Share on other sites

If the civilian's group belongs to a different side than the player's group, the sideChat text will not show

Share this post


Link to post
Share on other sites
9 minutes ago, hallyg said:

If the civilian's group belongs to a different side than the player's group, the sideChat text will not show

Thanks for answering that fast!

If that's the reason, whythe chat is shown all the time before I finish a mission? It will show up all the time, as long as I don't finish one of these missions. Before I thought is was caused by busy execVM, because I had many scripts executions via VM, from one script to the next, and so on, until it reaches my randomtask.sqf script, which defines the mission location, places a marker, mission objects and enemy units. I thought there was a script which wasn't terminated, and execVM might be too busy due to these many script executions via VM. So I made sure that any scope is really exited on given conditions, and each script will be terminated when the next one is being executed. I stored many scripts into functions and call them instead executing them via VM, but the problem remains...

Now I don't understand your argument. No matter what group the civilians are belonging to, the chat is working - and stops working when finishing one of these missions which are generated by a script, executed during the conversation chat.

 

Or I just don't get you right? I'm sorry, maybe you could explain it a little more detailed? Thx

Share this post


Link to post
Share on other sites

EDIT: I should have said, that there's not the sidechat command used, but globalchat and so on... now I understand you :) Nope, that's not the reason

Share this post


Link to post
Share on other sites

in the script, where the conversation post-rescue is defined, are the units in question definitely passed to it as arguments? And are they deleted at all?

Share this post


Link to post
Share on other sites
13 minutes ago, hallyg said:

in the script, where the conversation post-rescue is defined, are the units in question definitely passed to it as arguments? And are they deleted at all?

They're definitely passed, yes. But deleted? Do you mean the units or the conversations? If you're refering to the units, they're spawned dynamically via Engima's Civilians scripts, so they're getting deleted when player comes out of a defined range - or when they die. They spawn when players comes back into the range. But each spawned civilian is a new one, and my scripts and actions are attached to them via its "On-Callback" line (comparable to editor's unit init field). So each unit gets the conversation ability via "addaction", and in case a unit dies, all actions will be removed from it.

 

Edit: I could show you the scripts, BUT they are about 15 scripts at all, but maybre it doesn't really help as absolutely no error is given anywhere.

 

EDIT2: Oh, do you mean I should pass the units to the randomtask script (the one which generates the tasks dependent on the given intel) as arguments, even when the script deosn't need them? Actually in the post-task conversation script, the randomtask script is called and waits for it to be finished ( waitUntil (scriptdone _handle); ...), and then finishes and terminates itself.

Share this post


Link to post
Share on other sites

No idea anyone? I just don't find the reason.. it's just..strange! It's Arma! :D

 

Edit: Well, I think I got a solution, maybe. I change the whole conversation texts to midscreen titles..

Share this post


Link to post
Share on other sites

Is there a way to immediately stop conversations (sidechat, glbalchat, titletext, etc...) when the unit (speaker) gets killed? I couldn't find anything useful yet..

Share this post


Link to post
Share on other sites

Well, I got it solved! The solution was to spawn the conversation via a seperate function to create conversations. So it gets into a new scheduled environment and isn't affected by the other scripts.

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×