Search the Community
Showing results for tags 'conversation'.
Found 6 results
-
Hi i have a question how is it currently working for you ? I have : class CfgSentences { class ConversationsAtBase { class Briefing { file = "brief.bikb"; #include "brief.bikb" }; }; class ConversationsAtOutpost { class Outpost { file = "taskone.bikb"; #include "taskone.bikb" }; }; }; and run via trigger : nul = execVM "chat1.sqf"; . and it throws me an error that the class ConversationAtBase cannot be found. I have chat1.sqf to run the dialog for briefing and chat2.sqf to run the trigger after the task is completed. Everything is put in the same folder where the mission is stored. brief.bikb : class Sentences { class Brief_Jenda_Line_1 { text = "Hello gentlemen, I have a mission for you. You scouts need to climb the hill north of here. It's somewhere between the road and the shithole town of Kundshalaka. There's an anti-aircraft detachment of those goatmen there, and the helicopters can't fly because of it." speech[] = { "\chat\t1.ogg" }; class Arguments {}; actor = "Jenda"; }; class Brief_Matous_Line_2 { text = "Understood, sir. I'll pack up my men and we'll go shoot them." speech[] = { "\chat\t2.ogg" }; class Arguments {}; actor = "Matous"; }; class Brief_Jenda_Line_3 { text = "That's not all Sarge . When you clear this you need to go down to the town between Shakalaka and some Yakavlanka's factory . The civilians are said to have some important information so ask them what they know." speech[] = { "\chat\t3.ogg" }; class Arguments {}; actor = "Jenda"; }; class Brief_Matous_Line_4 { text = "Yes, sir. I understand, sir. Chalpy let's go get 'em." speech[] = { "\chat\t4.ogg" }; class Arguments {}; actor = "Matous"; }; class Brief_Patrik_Line_5 { text = "Yes sir..... Let's unleash the carnage!!!!!" speech[] = { "\chat\t5.ogg" }; class Arguments {}; actor = "Patrick"; }; }; class Arguments {}; class Special {}; startWithVocal[] = {hour}; startWithConsonant[] = {europe, university}; . chat1.sqf : ["Briefing", "ConversationsAtBase"] call bis_fnc_kbtell; chat2.sqf : ["Outpost", "ConversationsAtOutpost"] call bis_fnc_kbtell; taskone : class Sentences { class Outpost_Matous_Line_1 { text = "Alpha 1-1 to Hotel 1-1. The anti-aircraft detachment has been successfully destroyed. Receiving." speech[] = { "\chat\o1.ogg" }; class Arguments {}; actor = "Matous"; }; class class class Outpost_Jenda_Line_2 { text = "Hotel 1-1 Roger. Alpha 1-1, move to the factory and ask the civilians what they need. The helicopter crew can get ready. You may need reception." speech[] = { "chat1.ogg" }; class Arguments {}; actor = "Jenda"; }; class Brief_Matous_Line_3 { text = "Roger. Let's move to the factory over." speech[] = { "\chat\o3.ogg" }; class Arguments {}; actor = "Matous"; }; class Brief_Ondra_Line_4 { text = "Roger. Let's get the helicopters ready. In case we need to support the boys. Over." speech[] = { "\chat\o5.ogg" } class Arguments {}; actor = "Ondra"; }; }; class Arguments {}; class Special {}; startWithVocal[] = {hour}; startWithConsonant[] = {europe, university};
-
How to use a dummy speaker for BIS_fnc_kbTell?
vladsz posted a topic in ARMA 3 - MISSION EDITING & SCRIPTING
Hello, I'm trying to get a conversation to work between the player and a dummy speaker. If instead of a dummy speaker (game logic) I use a real AI unit everything works fine, but if I call ["MissionBriefing", "OperationMalden", nil, true, nil, true] spawn BIS_fnc_kbTell; the conversation works partially, meaning that the speaker is called "Game Logic" instead of "Base", and his voice pitch is disturbingly low. The wiki mentions that the fifth argument (true) implies that it will create a dummy if the speaker unit doesn't exist: BIS_fnc_kbTell. The sentence is configured as follows: class Sentences { class Base_1_GoodEvening { text = "Good evening, gentlemen!"; speech[] = { "\Sounds\Briefing_1_Base_GoodEvening.ogg" }; actor = "baseCommander"; class Arguments {}; }; ... The speaker identity is configured as follows: class CfgIdentities { class baseCommander { name = "baseCommander"; // nameSound = "Givens"; // Arma 3 only! face = "whiteHead_06"; glasses = "None"; speaker = "Male05ENG"; pitch = 1.1; }; }; The wiki also specifies that BIS_fnc_kbCreateDummy will use the identity from CfgIdentities if an identity with the same name is defined: BIS_fnc_kbCreateDummy. Does anyone know how to fix this voice pitch and name issue? It seems to create a new generic Game Logic instead of using the identity defined in CfgIdentities.-
- kbtell
- conversation
-
(and 2 more)
Tagged with:
-
kbTell MP Problems (Only one actor will speak at a time)
rga_noris posted a topic in ARMA 3 - MISSION EDITING & SCRIPTING
Video of problem: https://youtu.be/sdLyEm3NNRM Hello! I've been using kbTell for some time now with solid success, however I recently noticed a bug. I'm actually not certain if this bug has always been present, or if I am just now noticing it. The reason for this post is to make sure it isn't my usage that's creating the issues. I am going to throw this into the feedback tracker as well. To sum up the video above, when kbTell is used on units that are not local to the person observing the conversation, only one person will speak at a time. So if player A is next to Bob and Bill, and Bob is supposed to talk at the same time Bill is, Bob will need to wait until Bill is done speaking, but Bob will lip sync on time. Now you might think this isn't a bug, in that they are having a conversation. The problem will be if Bob is miles away from Bill, talking about two different topics, Bill would still not say a darn thing until Bob is done, or vice versa. Now, if the units speaking are local to the observer, there is no issue. They will speak over each other if required. The video does a better job, showing both scenarios, so please take a gander if you have time. Here is the code used in the video: In game script: Ermy linkItem "ItemRadio"; Carl linkItem "ItemRadio"; Ermy kbAddTopic ["testTopic", "sentenceDB.bikb", "", ""]; Carl kbAddTopic ["testTopic", "sentenceDB.bikb", "", ""]; [] spawn {Carl kbTell [Carl, "testTopic", "Carl1B", ["",{},"",[""]], false]; sleep 0.5;Ermy kbTell [Ermy, "testTopic", "ErmyHelpPlane", ["",{},"",[""]], false];}; SentenceDB.bikb (located in the missions root) class Sentences { class ErmyHelpPlane { text = ""; speech[] = {"\BND\sound\Ermy\ErmyHelpPlane.ogg"}; variant = ""; variantText = ""; class Arguments {}; }; class Carl1B { text = ""; speech[] = {"\BND\sound\Missions\G01\Carl1B.ogg"}; variant = ""; variantText = ""; class Arguments {}; }; };-
- possible bug
- kbtell
-
(and 3 more)
Tagged with:
-
Hello, I'm trying to learn the way A3 does conversations, so I took one of their missions and started looking all... well I could get a lot of it but I got lost at some point, with the BIS_fnc_missionConversations and BIS_fnc_kbTell. Well, I know that to use BIS_fnc_missionConversations I need the missionConversations.sqf and to use BIS_fnc_kbTell I need class CfgSentences in Description.ext. but I've seen that in the mission I'm looking there is any trace of cfgSentences, I thought maybe through a .xml, but I didn't see any mentioning or any localize about this. Another example, the function Bis_playAllConversations defined in functions.sqf, directly uses sentences without any trace of a localize or stringtable.xml... I thought from the start that maybe the link with a maybe existing sentence in stringtable.xml (he he, I already have this but maybe misspelled something) is the "Showcase_Helicopter" string, because in BIS_fnc_kbTell, the second argument is: "_this select 1 (Optional): STRING - container name (default: current mission ID)" So, if this is the link with a container in a stringtable.xml how I can do the same thing? Here is my try: (for now it's almost a copy just for learning from the original) missionConversations.sqf: #define BASE Elca_AirBase #define PILOT Elca_player case "INTRO": { sleep 1; ["01_Intro","CTRG_Pilot",nil,"side"] call bis_fnc_kbTell; }; my stringtable container: And in some other place, "["INTRO"] spawn BIS_fnc_missionConversations;" but it gives me error: Class "CTRG_Pilot" not found in Cfgsentences. Don't mind about the texts nor the translations, it's not yet finished and it's only for testing :D
-
- conversation
- script
-
(and 1 more)
Tagged with:
-
Dialog/Sidechat disappears (weird problem)
Godis_1 posted a topic in ARMA 3 - MISSION EDITING & SCRIPTING
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! -
Function / Script cannot be re-executed after terminate
Godis_1 posted a topic in ARMA 3 - MISSION EDITING & SCRIPTING
Hi, I am using a function for conversations. It's defined in CfgFunctions and called via spawn command. Now I want to archive that conversation stops if the unit (conversation partner) gets killed. The units with the conversation action are civilians, spawned dynamically via Engima's Civilians script. I could do that with: // inside attached action to all civilian units: /* ...some code... */ handle = [params] spawn createConversation; // And this in unit's eventhandler: if (not isNil {handle} and {not scriptDone handle}) then { terminate handle}; The problem is, when I want to start another conversation now with a different unit, the conversation (or better saying: the createConversation function) doesn't execute anymore. How can I make sure that the function gets executed again? As I understand, the terminate command fires when the spawned script is processed the next time by the scheduler. In my case it immediately stops the conversation when the civilian gets killed, but it seems to also terminating the next started conversation, and so on. I also tried it without the "killed" eventhandler, and instead in units callback (like init field) did this: // No conversations with dead civs waitUntil { // exit when unit gets deleted if (isNull _unit) exitWith {true}; !alive _unit; }; sleep 1; _unit removeAction talk; if (not isNil {handle} and {not scriptDone handle}) then { terminate handle}; I couldn't find anything helpful... could someone help me, please? Thx in advance