Jump to content
Sign in to follow this  
Duggedank

Changing radio protocol?

Recommended Posts

I have downloaded some middle eastern units that I would like to speak Takistani on the radio. I have a little knowledge about .cpps but not much, I've been searching like crazy but I can't figure out where the heck it says what language they will speak.

The units are on the independent side and based on the "SoldierEB" class, but they speak english on the radio...

I've tried changing the "languages" settings for them but that appears to affect only what language they speak when talking to civilians through the actions menu.

Share this post


Link to post
Share on other sites

try to add

languages[] = {"TK"};

or just try inherit

class TK_GUE_Soldier_Base_EP1: SoldierGB{};

then

class _you_custom_unit: TK_GUE_Soldier_Base_EP1{......

Share this post


Link to post
Share on other sites

Thanks for the suggestion, unfortunately neither helps. The language seems to affect only language in conversations.

I'm starting to think it's connected to the identity or head of the units... but I don't understand how.

Share this post


Link to post
Share on other sites

Try to add talkTopics:

class TalkTopics: TalkTopics
{
   core_cz="Core_Full";
 core_ru="Core_Full";
};
languages[]={"CZ","RU"};

But it's easier if you inherit your units from default A2 base classes as nikita suggested.

Share this post


Link to post
Share on other sites

No it doesn't help :(

When I change "TalkTopics" and "Languages[]" the only thing that happens is that I change what language the unit can speak when speaking to other units on the battlefield through the action menu. Speaking with civilians for example.

The radio commands are still given in english, no matter what TalkTopics or Languages I set to the units. Or what classes they inherit.

That leads me to think that there is something else that determines what Radio Protocol the unit uses...

And on top of it all I just realised that a mod that uses it's own radio protocol (OHPLA) doesn't seem to work with OA/CO. They do work if I run ArmA II on it's own, but my units doesn't change their Radio Protocol no matter if I run ArmA II or OA/CO...

Edit:

I just managed to give them Russian radiovoices! But I'm not sure what else I cahnged. What I did was to change their identyTypes to russian: identityTypes[] = {"Head_RU"};

Now I need to figure out what else that changes, and why the russian radio is on the russian identities only.

Edit2:

So "Head_RU" seems to be an "original" ArmAII identity. The strange thing is that it is not declared anywhere, instead it seems that all parts of the identity are added in the corresponding configs. So the voice config adds voices the identity "Head_RU", the face config adds faces to the identity "Head_RU", and so on. Then you add which units are using the identity in the vehicle config.

At least that's how it looks like now, both when looking at the original files and when looking at the new radio protocol from OHPLA.

Edited by Duggedank
Found something!

Share this post


Link to post
Share on other sites

@Duggeddank Did clear up how exacly identityTypes are related with the RadioProtocol?

So far I had no trouble changing the RadioProtocol for any unit but the Special characters like the Miles/Cooper/etc from Razor Team or Reynolds/etc from PMC and the like will not be affected. Perhaps the ones you mention are defined the same way?

Their identityTypes are defined somehow differently in a way that bypasses the usual way:

(...)

They also each have their own identity types and unique identities, though you'll probably not need to concern yourself with these (AFAIK, they're only used to make sure the characters have the correct voices). Here they are anyways... (as they appear in characters2 config, for ease! :D )

  identityTypes[] = {"Miles"};
 class EventHandlers: EventHandlers
 {
  init = "(_this select 0) setidentity ""Miles""";
  HandleIdentity = "true";
 };

 identityTypes[] = {"Cooper"};  class EventHandlers: EventHandlers
 {
  init = "(_this select 0) setidentity ""Cooper""";
  HandleIdentity = "true";
 };

 identityTypes[] = {"Sykes"};
 class EventHandlers: EventHandlers
 {
  init = "(_this select 0) setidentity ""Sykes""";
  HandleIdentity = "true";
 };

 identityTypes[] = {"Ohara"};
 class EventHandlers: EventHandlers
 {
  init = "(_this select 0) setidentity ""Ohara""";
  HandleIdentity = "true";
 };

 identityTypes[] = {"Rodriguez"};
 class EventHandlers: EventHandlers
 {
  init = "(_this select 0) setidentity ""Rodriguez""";
  HandleIdentity = "true";
 };

Does this enlighten your issue? If you solved it another way... what was it?

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  

×