Jump to content
Sign in to follow this  
atomickrypton

Best Way To Implement Conversations/Dialogue?

Recommended Posts

Hello all,

 

So I have just finished the voice script for a mission I have completed, and now looking for all of the ways I can implement the voices and subtitles.

 

Previously, I have used some like this for subtitles, and then calling the voice file (we'd record the entire conversation in one voice file) and the radio messages will follow the voice using sleep.  But I am heavily reconsidering it as it creates HUGE files with just these same lines of code:

unit sideChat "Depending on how long the conversation is, this can be a huge file!";

I feel, and know there is an easier way to implement such a thing along with voice scripts.  I have watched this video by Feuerex, and it seems like the best overall way to do it (he uses kbAddTopic, kbTell, etc.).  However, I have some conversations that will go on for upwards of 30 seconds or so.  My fear is creating a huge, and complex .bikb file and very long conversation.sqf, which could affect performance b/c the engine has a lot to do and handle already.

 

Is the best overall way to implement conversations and subtitles is through kbaddtopic and kbtell?  Is there a better option for better performance?

 

I have found this on the forums and will probably be checking it out, but I don't believe it accounts for actual voices (audio). 

 

Thanks guys for all the help.   

 

 

Share this post


Link to post
Share on other sites

I don't see why the .bikb size should affect the performance. My current campaign project's voiceover consists of over 320 .ogg files and all sentences are handeled in a merged .bikb file, all together adding up to more than 3100 lines of code. And I didn't notice any kbTell related performance drops.

Share this post


Link to post
Share on other sites

That's good news then!

 

I was just worried that I would put a lot of time into it and realize there was a better option, but this seems like the way to go!

 

 

Thanks again!

Share this post


Link to post
Share on other sites

Oh, and if you're still worrying about performance issues on runtime, consider making your project as proper addon and add the sentences to the config.cpp. That way, they are already binarised and read when the game is started.

Share this post


Link to post
Share on other sites

Oh, and if you're still worrying about performance issues on runtime, consider making your project as proper addon and add the sentences to the config.cpp. That way, they are already binarised and read when the game is started.

And how would one do that?  I'm pretty much learning this as I go..

 

How would I make the project a proper addon?  By project do you mean the mission or the conversation stuff?

 

How would I add the sentences to the config.cpp?  I haven't done anything relating to that yet.

 

I'm not quite sure what to search in google for this, thanks for the help!

Share this post


Link to post
Share on other sites

I meant the whole mission. However, this would require players to actually launch it as mod so I wouldn't really bother doing that for a single mission. In any case, it would work as pretty much as with all other mods. I believe there's plenty of tutorials showing how to set-up and build a simple mod. The only thing you'd need to extend would be the game's CfgSentences with your own, and you could play them from any place in the game. But, as I said, it doesn't really make sense for a single mission.

Share this post


Link to post
Share on other sites

I meant the whole mission. However, this would require players to actually launch it as mod so I wouldn't really bother doing that for a single mission. In any case, it would work as pretty much as with all other mods. I believe there's plenty of tutorials showing how to set-up and build a simple mod. The only thing you'd need to extend would be the game's CfgSentences with your own, and you could play them from any place in the game. But, as I said, it doesn't really make sense for a single mission.

Gotchya, makes sense.  Yeah, it's just one mission now, but will eventually become a large campaign, so I'll look into making it an addon once the time is right.

 

Pardon my ignorance, but I'm still a bit confused with the second part.  So I create a cfgSentences in my description.ext, and define it there, so all what I have to do is call it with a simple command?  I searched the wiki and I can't find anything related to cfgSentences.

Share this post


Link to post
Share on other sites

No, but when you make an addon, let's say a re-texture, because these are the most common mods, you essentially extend the native game's CfgVehicles and CfgWeapons with your modded units and uniforms (or whatever you're adding). CfgSentences ist just the config where BIS stores all sentences related to their official content. And these sentences can be played from anywhere in the game, using kbTell. From what I can see, it's just the addon way of realising a .bikb file. In your case, I'd just stick to the .bikbs and focus on getting it work at all.

Share this post


Link to post
Share on other sites

No, but when you make an addon, let's say a re-texture, because these are the most common mods, you essentially extend the native game's CfgVehicles and CfgWeapons with your modded units and uniforms (or whatever you're adding). CfgSentences ist just the config where BIS stores all sentences related to their official content. And these sentences can be played from anywhere in the game, using kbTell. From what I can see, it's just the addon way of realising a .bikb file. In your case, I'd just stick to the .bikbs and focus on getting it work at all.

Yeah, I'll stick to the kbTell and .bikbs.

 

Thanks!

Share this post


Link to post
Share on other sites

I have found this on the forums and will probably be checking it out, but I don't believe it accounts for actual voices (audio). 

 

Thanks guys for all the help. 

 

 

I'll see if I can implement an optional parameter for voice files etc. No promises ;)

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
Sign in to follow this  

×