Difference between revisions of "setGroupId"

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Fix Stringtable.csv link)
m (Text replacement - "Category:Scripting Commands ArmA2" to "Category:Scripting Commands Arma 2")
(6 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Command|= Comments
+
{{Command|Comments=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| ofp |= Game name
+
| ofp |Game name=
  
|1.00|= Game version
+
|1.00|Game version=
  
|arg= global |= Arguments in MP
+
|arg= global |Multiplayer Arguments=
  
|eff= local |= Effects in MP
+
|eff= local |Multiplayer Effects=
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| Sets a group's identity, how it will be displayed in chat, for example. While groups on the different [[Side|sides]] can have identical ids, the groups on the same [[side]] cannot. When given id exists already, the group which currently has it will simply swap it with the current id of the group for which this id is intended. For example:
+
| Sets the group radio callsign, how it will be displayed in radio chat. Two groups on the same side '''cannot''' have the same callsign (different side is possible). When trying to apply the same callsign to two groups of the same side, the callsigns will simply be swapped, e.g:
<code>group1 <nowiki>=</nowiki> [[createGroup]] [[west]];
+
<code>group1 [[setGroupId]] ["Active Group"];
group2 <nowiki>=</nowiki> [[createGroup]] [[west]];
 
 
 
group1 [[setGroupId]] ["Active Group"];
 
 
group2 [[setGroupId]] ["Inactive Group"];
 
group2 [[setGroupId]] ["Inactive Group"];
  
[[systemChat]] [[groupId]] group1; //"Active Group";
+
group2 [[setGroupId]] ["Active Group"]; {{cc|group1 is "Inactive Group" now}}</code>
[[systemChat]] [[groupId]] group2; //"Inactive Group";
 
  
group2 [[setGroupId]] ["Active Group"];
+
The identity setup can also consist of format keywords (marked with %) and param keywords taken from '''CfgWorlds''' config.
 +
Basically it is like [[format]] command but with some special group keywords (See Example 2).
  
[[systemChat]] [[groupId]] group1; //"Inactive Group";
+
{{Feature arma3 | Possible {{arma3}} values: <spoiler>
[[systemChat]] [[groupId]] group2; //"Active Group";</code>
+
'''%GroupSquad''':
 +
* "Squad1" → 1
 +
* "Squad2" → 2
 +
* "Squad3" → 3
 +
* "Squad4" → 4
  
The identity setup could also consist of format keywords (marked with %) and param keywords taken from CfgWorlds config. Basically it is like [[format]] command but with some special group keywords. For Arma 3 possible values are:
+
'''%GroupPlatoon''':
<br><br>
+
* "Platoon1" 1
%GroupSquad
+
* "Platoon2" 2
* "Squad1" -> 1
+
* "Platoon3" 3
* "Squad2" -> 2
+
* "Platoon4" 4
* "Squad3" -> 3
 
* "Squad4" -> 4
 
%GroupPlatoon
 
* "Platoon1" -> 1
 
* "Platoon2" -> 2
 
* "Platoon3" -> 3
 
* "Platoon4" -> 4
 
%GroupCompany
 
* "CompanyAlpha" -> Alpha
 
* "CompanyBravo" -> Bravo
 
* "CompanyCharlie" -> Charlie
 
* "CompanyDelta" -> Delta
 
* "CompanyEcho" -> Echo
 
* "CompanyFoxtrot" -> Foxtrot
 
* "CompanyGolf" -> Golf
 
* "CompanyHotel" -> Hotel
 
* "CompanyIndia" -> India
 
* "CompanyKilo" -> Kilo
 
* "CompanyLima" -> Lima
 
* "CompanyMike" -> Mike
 
* "CompanyNovember" -> November
 
* "CompanyOscar" -> Oscar
 
* "CompanyPapa" -> Papa
 
* "CompanyQuebec" -> Quebec
 
* "CompanyRomeo" -> Romeo
 
* "CompanySierra" -> Sierra
 
* "CompanyTango" -> Tango
 
* "CompanyUniform" -> Uniform
 
* "CompanyVictor" -> Victor
 
* "CompanyWhiskey" -> Whiskey
 
* "CompanyXray" -> X-Ray
 
* "CompanyYankee" -> Yankee
 
* "CompanyZulu" -> Zulu
 
%GroupNames
 
* "Alpha" -> Alpha
 
* "Bravo" -> Bravo
 
* "Charlie" -> Charlie
 
* "Delta" -> Delta
 
* "Echo" -> Echo
 
* "Foxtrot" -> Foxtrot
 
* "Golf" -> Golf
 
* "Hotel" -> Hotel
 
* "November" -> November
 
* "Kilo" -> Kilo
 
* "Yankee" -> Yankee
 
* "Zulu" -> Zulu
 
* "Two" -> Two
 
* "Three" -> Three
 
* "Buffalo" -> Buffalo
 
* "Guardian" -> Guardian
 
* "Convoy" -> Convoy
 
* "Fox" -> Fox
 
%GroupColors
 
* "GroupColor1" -> Black
 
* "GroupColor2" -> Red
 
* "GroupColor3" -> Green
 
* "GroupColor4" -> Blue
 
* "GroupColor5" -> Yellow
 
* "GroupColor6" -> Orange
 
* "GroupColor7" -> Pink
 
* "GroupColor0" ->
 
* "Six" -> Six
 
  
For global variant of this command use [[setGroupIdGlobal]].
+
'''%GroupCompany''':
|= Description
+
* "CompanyAlpha" → Alpha
____________________________________________________________________________________________
+
* "CompanyBravo" → Bravo
 +
* "CompanyCharlie" → Charlie
 +
* "CompanyDelta" → Delta
 +
* "CompanyEcho" → Echo
 +
* "CompanyFoxtrot" → Foxtrot
 +
* "CompanyGolf" → Golf
 +
* "CompanyHotel" → Hotel
 +
* "CompanyIndia" → India
 +
* "CompanyKilo" → Kilo
 +
* "CompanyLima" → Lima
 +
* "CompanyMike" → Mike
 +
* "CompanyNovember" → November
 +
* "CompanyOscar" → Oscar
 +
* "CompanyPapa" → Papa
 +
* "CompanyQuebec" → Quebec
 +
* "CompanyRomeo" → Romeo
 +
* "CompanySierra" → Sierra
 +
* "CompanyTango" → Tango
 +
* "CompanyUniform" → Uniform
 +
* "CompanyVictor" → Victor
 +
* "CompanyWhiskey" → Whiskey
 +
* "CompanyXray" → X-Ray
 +
* "CompanyYankee" → Yankee
 +
* "CompanyZulu" → Zulu
  
| group '''setGroupId''' [nameFormat, nameParam1, ..., nameParamN] |= Syntax
+
'''%GroupNames''':
 +
* "Alpha" → Alpha
 +
* "Bravo" → Bravo
 +
* "Charlie" → Charlie
 +
* "Delta" → Delta
 +
* "Echo" → Echo
 +
* "Foxtrot" → Foxtrot
 +
* "Golf" → Golf
 +
* "Hotel" → Hotel
 +
* "November" → November
 +
* "Kilo" → Kilo
 +
* "Yankee" → Yankee
 +
* "Zulu" → Zulu
 +
* "Two" → Two
 +
* "Three" → Three
 +
* "Buffalo" → Buffalo
 +
* "Guardian" → Guardian
 +
* "Convoy" → Convoy
 +
* "Fox" → Fox
  
|p1= group: [[Object]] or [[Group]] |= Parameter 1
+
'''%GroupColors''':
 +
* "GroupColor0" → (nothing)
 +
* "GroupColor1" → Black
 +
* "GroupColor2" → Red
 +
* "GroupColor3" → Green
 +
* "GroupColor4" → Blue
 +
* "GroupColor5" → Yellow
 +
* "GroupColor6" → Orange
 +
* "GroupColor7" → Pink
 +
* "Six" → Six
 +
</spoiler>}}
 +
{{Informative | From '''{{arma}}''', you can freely decide the callsign, e.g {{Inline code | [[group]] [[player]] [[setGroupId]] ["First Assault Recon Team"];}}.}}
 +
{{Informative | In '''{{ofp}}''', group ID cannot be freely decided and format must be of [letter, colour, picture] or [letter, colour]. Possible values: <spoiler>
 +
'''Letter:'''
 +
* "Alpha"
 +
* "Bravo"
 +
* "Charlie"
 +
* "Delta"
 +
* "Echo"
 +
* "Foxtrot"
 +
* "Golf"
 +
* "Hotel"
 +
* "Kilo"
 +
* "Yankee"
 +
* "Zulu"
 +
* "Buffalo"
 +
* "Convoy"
 +
* "Guardian"
 +
* "November"
 +
* "Two"
 +
* "Three"
 +
* "Fox"
  
|p2= [nameFormat, nameParam1, ..., nameParamN]: [[Array]] |= Parameter 2
+
'''Colour:'''
|p3= nameFormat: [[String]] - format template (%keyword1 - %keyword2...etc) |= Parameter 2
+
* "GroupColor0" → (nothing)
|p4= nameParam1: [[String]] - param keyword |= Parameter 2
+
* "GroupColor1" → Black
 +
* "GroupColor2" → Red
 +
* "GroupColor3" → Green
 +
* "GroupColor4" → Blue
 +
* "GroupColor5" → Yellow
 +
* "GroupColor6" → Orange
 +
* "GroupColor7" → Pink
 +
* "Six" → Six
 +
</spoiler>
 +
The radio callsign strings can be overwritten in a mission by writing [[Stringtable.csv|Stringtable]] entries of the same name. Some entry names: <spoiler>
 +
* STR_CFG_''GRPNAMES''_'''ALPHA'''
 +
* STR_CFG_''GRPNAMES''_'''FOX'''
 +
* STR_CFG_''GRPCOL''_'''BLACK'''
 +
* STR_CFG_''GRPNAMES''_'''SIX''' (unlike its name suggests, this is a "group colour")
 +
* STR_CFG_FIREFLYBASE
 +
* STR_CFG_PAPABEAR
 +
* STR_CFG_HQ_BASE</spoiler>}}
  
| [[Nothing]] |= Return value
+
For the global variant of this command see [[setGroupIdGlobal]]. |DESCRIPTION=
____________________________________________________________________________________________
 
|x1= '''Arma 3''':<code>[[group]] [[player]] [[setGroupId]] ["Some name for the group"];
 
[[hint]] [[groupId]] [[group]] [[player]]; //"Some name for the group"
 
[[player]] [[sideChat]] "lalala"; //Some name for the group (KK): "lalala"</code>|= Example1  
 
|x2= '''Arma 3''':<code>[[group]] [[player]] [[setGroupId]] ["%GroupNames :=: %GroupColors","Alpha","GroupColor2"];
 
[[hint]] [[groupId]] [[group]] [[player]]; //"Alpha :=: Red"
 
[[player]] [[sideChat]] "lalala"; //Alpha :=: Red (KK): "lalala"</code>|= Example 2
 
|x3= '''OFP''':<code>_group1 [[setGroupId]] ["Delta","GroupColor4"]</code> |= Example 3
 
|x4= '''ArmA / ArmA 2''':<code>_group1 [[setGroupId]] ["Assault Squad"]</code> |= Example 4
 
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| [[setGroupIdGlobal]], [[groupId]], [[group]] |= See also
+
| group [[setGroupId]] [nameFormat, nameParam1, ..., nameParamN] |SYNTAX=
  
}}
+
|p1= group: [[Object]] or [[Group]] |PARAMETER1=
  
<h3 style="display:none">Notes</h3>
+
|p2= [nameFormat, nameParam1, ..., nameParamN]: [[Array]] |PARAMETER2=
<dl class="command_description">
 
<!-- Note Section BEGIN -->
 
<dd class="notedate">
 
<dd class="note">In '''OFP''', group ID format must be [letter, color, picture] or [letter, color].
 
  
Letter is one of:  
+
|p3= nameFormat: [[String]] - format template (%keyword1 - %keyword2...etc) |PARAMETER3=
* '''"Alpha"'''
 
* '''"Bravo"'''
 
* '''"Charlie"'''
 
* '''"Delta"'''
 
* '''"Echo"'''
 
* '''"Foxtrot"'''
 
* '''"Golf"'''
 
* '''"Hotel"'''
 
* '''"Kilo"'''
 
* '''"Yankee"'''
 
  
* '''"Zulu"'''
+
|p4= nameParam1: [[String]] - param keyword |PARAMETER4=
* '''"Buffalo"'''
 
* '''"Convoy"'''
 
* '''"Guardian"'''
 
* '''"November"'''
 
* '''"Two"'''
 
* '''"Three"'''
 
* '''"Fox"'''
 
  
Colour may be one of the following:
+
| [[Nothing]] |RETURNVALUE=
* '''"GroupColor0"''' - (Nothing)
+
____________________________________________________________________________________________
* '''"GroupColor1"''' - Black
 
* '''"GroupColor2"''' - Red
 
* '''"GroupColor3"''' - Green
 
* '''"GroupColor4"''' - Blue
 
* '''"GroupColor5"''' - Yellow
 
* '''"GroupColor6"''' - Orange
 
* '''"GroupColor7"''' - Pink
 
* '''"Six"''' - Six
 
<dd class="notedate">Posted on August 4, 2006 - 11:01
 
<dt class="note">'''[[User:Hardrock|hardrock]]'''<dd class="note">''Notes from before the conversion:''
 
  
Note that this command does not name the group. To call a [[group]] "grp1", for example, write this in the init field of the [[group]] [[leader]]:
+
|x1= '''{{arma3}}''':<code>[[group]] [[player]] [[setGroupId]] ["Some name for the group"];
 +
[[hint]] [[groupId]] [[group]] [[player]]; {{cc|"Some name for the group"}}
 +
[[player]] [[sideChat]] "lalala"; {{cc|Some name for the group (KK): "lalala"}}</code> |EXAMPLE1=
  
grp1 <nowiki>=</nowiki> [[group]] this
+
|x2= '''{{arma3}}''':<code>[[group]] [[player]] [[setGroupId]] ["%GroupNames :{{=}}: %GroupColors", "Alpha", "GroupColor2"];
 +
[[hint]] [[groupId]] [[group]] [[player]]; {{cc|"Alpha :{{=}}: Red"}}
 +
[[player]] [[sideChat]] "lalala"; {{cc|Alpha :{{=}}: Red (KK): "lalala"}}</code> |EXAMPLE2=
  
 +
|x3= '''ArmA / {{arma2}} / {{arma3}}''': <code>_group1 [[setGroupId]] ["Assault Squad"];</code> |EXAMPLE3=
  
<dd class="notedate">Posted on December 9, 2006 - 12:20
+
|x4= '''OFP''': <code>_group1 [[setGroupId]] ["Delta", "GroupColor4"]</code> |EXAMPLE4=
<dt class="note">'''[[User:Mondkalb|Mondkalb]]'''<dd class="note">''Selfdefined Callsigns:''
+
____________________________________________________________________________________________
  
In [[Armed Assault]] you're able to define the callsignletter by yourself. This can be for example "Fireteam", or "Specialforces".
+
| [[setGroupIdGlobal]], [[groupId]], [[group]] |SEEALSO=
 +
}}
  
this setgroupId ["Attackteam"]
+
<h3 style="display:none">Notes</h3>
 +
<dl class="command_description">
 +
<!-- Note Section BEGIN -->
  
<dd class="notedate">
+
<dd class="notedate">Posted on April 21, 2015 - 23:21 (UTC)</dd>
<dt class="note">'''[[User:Ceeeb|Ceeeb]]'''
+
<dt class="note">[[User:Killzone Kid|Killzone Kid]]</dt>
 
<dd class="note">
 
<dd class="note">
In '''OFP v1.96''', the radio callsign strings for a mission can be redefined  by creating a [[Stringtable.csv]] in the mission folder. All string names except FOX can be found within the main stringtable.csv. Note "SIX" has a string suggesting it is a groupname, although the engine uses it as a colour. Some examples of the string names : STR_CFG_GRPNAMES_ALPHA, STR_CFG_GRPNAMES_FOX, STR_CFG_GRPCOL_BLACK, STR_CFG_GRPNAMES_SIX, STR_CFG_FIREFLYBASE, STR_CFG_PAPABEAR, STR_CFG_HQ_BASE, STR_CFG_HQ_BASE.
+
List of available keywords from config: <code>"[[if]] (([[configName]] _x) select [0, 5] == 'group') [[then]] {
 
+
[[diag_log]] ('%' + [[configName]] _x);
 +
[[for]] '_i' [[from]] 0 [[to]] [[count]] [[_x]] - 1 [[do]] {
 +
[[diag_log]] ('* ""' + [[configName]] (_x [[select]] _i) + '"" → ' + [[getText]] (([[_x]] [[select]] _i) >> 'name'));
 +
};
 +
}; [[false]]" [[configClasses]] ([[configFile]] >> "CfgWorlds");</code>
 +
</dd>
  
 
<!-- Note Section END -->
 
<!-- Note Section END -->
Line 186: Line 186:
  
  
[[Category:Scripting Commands|SETGROUPID]]
+
[[Category:Scripting Commands|{{uc:{{PAGENAME}}}}]]
 +
[[Category:Scripting Commands OFP 1.46|{{uc:{{PAGENAME}}}}]]
 +
[[Category:Scripting Commands OFP 1.96|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting Commands OFP 1.99|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP 1.96|SETGROUPID]]
+
[[Category:Scripting Commands ArmA|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands OFP 1.46|SETGROUPID]]
+
[[Category:Scripting Commands Arma 2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands ArmA|SETGROUPID]]
 
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
 
 
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
 
[[Category:Command_Group:_Groups|{{uc:{{PAGENAME}}}}]]
 
[[Category:Command_Group:_Groups|{{uc:{{PAGENAME}}}}]]
 
[[Category:Command_Group:_Object_Manipulation|{{uc:{{PAGENAME}}}}]]
 
[[Category:Command_Group:_Object_Manipulation|{{uc:{{PAGENAME}}}}]]
 
<!-- CONTINUE Notes -->
 
<dl class="command_description">
 
<dd class="notedate">Posted on April 21, 2015 - 23:21 (UTC)</dd>
 
<dt class="note">[[User:Killzone Kid|Killzone Kid]]</dt>
 
<dd class="note">
 
List of available keywords from config:<code>"if ((configName _x) select [0, 5] <nowiki>==</nowiki> 'group') then {
 
diag_log ('%' + configName _x);
 
for '_i' from 0 to count _x - 1 do {
 
diag_log ('* ""' + configName (_x select _i) + '"" -> ' + getText ((_x select _i) >> 'name'));
 
};
 
}; false" configClasses (configFile >> "CfgWorlds");</code>
 
</dd>
 
</dl>
 
<!-- DISCONTINUE Notes -->
 

Revision as of 15:55, 10 January 2020

Template:Command

Notes

Posted on April 21, 2015 - 23:21 (UTC)
Killzone Kid
List of available keywords from config: "if ((configName _x) select [0, 5] == 'group') then { diag_log ('%' + configName _x); for '_i' from 0 to count _x - 1 do { diag_log ('* ""' + configName (_x select _i) + '"" → ' + getText ((_x select _i) >> 'name')); }; }; false" configClasses (configFile >> "CfgWorlds");

Bottom Section