Jump to content
fortun

Radio Chat Module, how to make it work?

Recommended Posts

Seems like they added a module to do Radio chat now.

What i've done is to create a trigger, and then sync it to the Radio Chat, so it starts when im in the trigger area. Problem is that i want another player to "Text the message" rather than the one reaches the trigger first. Right now it says "Alpha 1-1 (My name): Hi, this is the text" but i want it for the mission to be something like "Commander: Hi, this is the name i want to be displayed instead".

Any ideas?

Share this post


Link to post
Share on other sites

I'd suggest creating a GameLogic and having it speak GlobalChat. For example:

myGameLogic GlobalChat "Commander: Hello"

Will simply display "Commander: Hello". It doesn't show any "Alpha 1-1" stuff, so you can type in whatever speaker name you like.

Sadly I think it works only with GlobalChat and not SideChat.

You may want to also read this related thread.

Share this post


Link to post
Share on other sites

I tried to use the radio chat module (F7+Event), but I dont understand how to use it. Any ideas?

Share this post


Link to post
Share on other sites

Place the module down.

Set Apply To to: Synchronized group (oops!)

Set Text to: Whatever text you want to be displayed.

Set Channel to: Whichever channel you want the text to be displayed on. Note vehicle only displays if you're inside a vehicle.

Place down a trigger with whatever activation and area you want.

Synchronize the trigger and module.

Activate the trigger and enjoy the text messages.

Edited by kylania

Share this post


Link to post
Share on other sites
Place the module down.

Set Apply To to: Objects in synchronized trigger

Set Text to: Whatever text you want to be displayed.

Set Channel to: Whichever channel you want the text to be displayed on. Note vehicle only displays if you're inside a vehicle.

Place down a trigger with whatever activation and area you want.

Synchronize the trigger and module.

Activate the trigger and enjoy the text messages.

Thx Kylania master, but, I already tested this way, is failing, the event don't start, or start and the module fail..... =(

Share this post


Link to post
Share on other sites

Works for me. Check your trigger condition is correct.

If you want to have two or more units having a radio conversation though, it would be far easier to use a script or even straight in a trigger activation like this:

0 = [] spawn {
               unit1 sidechat "Coolguy One , this is Coolguy Base. Any activity in the village?";
               sleep 5;
               unit2 sidechat "Coolguy Base, this is Coolguy One. Everything's cool in the village, over.";
};

In fact I don't really see the point of the module now. It's only useful if you don't know about the chat commands, unless there's some benefit I'm missing. You can sync more than one message to the trigger but you can't add a delay. If you could set a delay in the module itself then you could queue messages and have a timed exchange of text, but as it stands you would need to have multiple triggers, or the messages all show at once.

Also, using "Objects in synchronized trigger" makes the text appear once for every unit, meaning it gets spammed multiple times. So unless it's just one unit then better to use synched Group or Object instead.

Edited by 2nd Ranger
  • Like 1

Share this post


Link to post
Share on other sites

I was also wondering what the module does but from how it sounds, it's not really useful for more than "Hey, go there and kill everyone, out." I made up my own script for generating simple conversations (without voiceacting at this point).

radio.sqf:

_speaker = _this select 0; 
_sentence = _this select 1;
_wichChat = _this select 2; // 0 - SideChat, 1 - GroupChat, 2 - VehicleChat, 3 - titletext, 4 - commandChat, 5 - globalChat

_x = 0.1;
_len = count (toArray _sentence);

private ["_speaker", "_sentence"];
switch (_wichChat) do {
case 0: {_speaker sideChat _sentence};
case 1: {_speaker groupChat _sentence};
case 2: {_speaker vehicleChat _sentence};
case 3: {titletext [format ["%1", name _speaker] + ": """ + _sentence + """","PLAIN DOWN"]};
case 4: {_speaker commandChat _sentence};
case 5: {_speaker globalChat _sentence};
default {hint "nope"};
};

sleep (_len * _x);
true;

Then compile it somewhere in init.sqf:

IP_RADIO = compile (preprocessFileLineNumbers "scripts\radio.sqf");

And you can use it in your missions to create small conversations:

[gomez_g, "Templar to White King. We're at Point Acre, come in, over.", 0] call IP_RADIO;
[hackett, "Templar, this is White King. Understood, supply drop on standby, callsign 'Archangel', over.", 0] call IP_RADIO;
[gomez_g, "Archangel, come in. This is Templar, waiting at Point Acre, over.", 0] call IP_RADIO;
[iP_ARCHANGEL, "Templar, this is Archangel. Confirmed, entering your airspace now, standby, over.", 0] call IP_RADIO;

Use the last parameter to specifiy wich chat should be used, so sideChat, groupChat etc. Titletext works fine in cutscenes and the script automatically adds the name of the unit before the text, so e.g. "Guy: 'Hi there!'"

By changing the value of the _x you can set the factor used to calculate the delay. 0.1 is okay, but with extreme long or extreme short texts it's sometimes a bit to fast or to slow. ;)

  • Like 1

Share this post


Link to post
Share on other sites

Very Very thanks guys!!! I'm using your tips.

Best regards.

Share this post


Link to post
Share on other sites

IndeedPete, i used ur script, but i cant figure out how to get it work. What do i have to put in the 'On Act' line in my trigger?

Regards,

Penny

Share this post


Link to post
Share on other sites

I'd recommend to use scriptfiles if you want to display more than one sentence, like in small conversations.

Create a scriptfile in your mission folder, use notepad.

conversation1.sqf:

[guy1, "Templar to White King. We're at Point Acre, come in, over.", 0] call IP_RADIO;
[guy2, "Templar, this is White King. Understood, supply drop on standby, callsign 'Archangel', over.", 0] call IP_RADIO;

Then call this script somewhere, e.g. by trigger. On Act:

nul = [] execVM "conversation1.sqf"

  • Like 1

Share this post


Link to post
Share on other sites

You can also place a Headquarters Module and give it a variable name (in my case it's HQCHAT), name your custom callsign (in my case it's Flamingo) then use something like this in the exec box. Side, Global etc just change the part that says it, to change the chat used.

HQCHAT sideChat "Hello"

Will show as Flamingo "Hello"

Wish I could get rid of the quotations tho.

  • Like 1

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

×