Difference between revisions of "setGroupId"

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "|= Comments" to "|Comments=")
m (Text replacement - " <h3 style="display:none">Notes</h3>" to "")
(20 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Command|Comments=
+
{{Command
____________________________________________________________________________________________
 
  
| ofp |= Game name
+
| ofp
  
|1.00|= Game version
+
|1.00
  
|arg= global |Multiplayer Arguments=
+
|gr1= Groups
  
|eff= local |Multiplayer Effects=
+
|arg= global
____________________________________________________________________________________________
 
  
| 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:
+
|eff= local
<code>group1 <nowiki>=</nowiki> [[createGroup]] [[west]];
 
group2 <nowiki>=</nowiki> [[createGroup]] [[west]];
 
  
group1 [[setGroupId]] ["Active Group"];
+
| 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 [[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]] |PARAMETER1=
+
'''%GroupColors''':
 +
* "GroupColor0" → (nothing)
 +
* "GroupColor1" → Black
 +
* "GroupColor2" → Red
 +
* "GroupColor3" → Green
 +
* "GroupColor4" → Blue
 +
* "GroupColor5" → Yellow
 +
* "GroupColor6" → Orange
 +
* "GroupColor7" → Pink
 +
* "Six" → Six
 +
</spoiler>}}
 +
{{Informative | From '''{{arma1}}''', 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]] |PARAMETER2=
+
'''Colour:'''
|p3= nameFormat: [[String]] - format template (%keyword1 - %keyword2...etc) |PARAMETER2=
+
* "GroupColor0" → (nothing)
|p4= nameParam1: [[String]] - param keyword |PARAMETER2=
+
* "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]] |RETURNVALUE=
+
For the global variant of this command see [[setGroupIdGlobal]].
____________________________________________________________________________________________
 
|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>|EXAMPLE2=
 
|x3= '''OFP''':<code>_group1 [[setGroupId]] ["Delta","GroupColor4"]</code> |EXAMPLE3=
 
|x4= '''ArmA / ArmA 2''':<code>_group1 [[setGroupId]] ["Assault Squad"]</code> |EXAMPLE4=
 
____________________________________________________________________________________________
 
  
| [[setGroupIdGlobal]], [[groupId]], [[group]] |SEEALSO=
+
| group [[setGroupId]] [nameFormat, nameParam1, ..., nameParamN]
  
}}
+
|p1= group: [[Object]] or [[Group]]
  
<h3 style="display:none">Notes</h3>
+
|p2= [nameFormat, nameParam1, ..., nameParamN]: [[Array]]
<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)
* '''"Alpha"'''
 
* '''"Bravo"'''
 
* '''"Charlie"'''
 
* '''"Delta"'''
 
* '''"Echo"'''
 
* '''"Foxtrot"'''
 
* '''"Golf"'''
 
* '''"Hotel"'''
 
* '''"Kilo"'''
 
* '''"Yankee"'''
 
  
* '''"Zulu"'''
+
|p4= nameParam1: [[String]] - param keyword
* '''"Buffalo"'''
 
* '''"Convoy"'''
 
* '''"Guardian"'''
 
* '''"November"'''
 
* '''"Two"'''
 
* '''"Three"'''
 
* '''"Fox"'''
 
  
Colour may be one of the following:
+
| [[Nothing]]
* '''"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>
  
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>
  
 +
|x3= '''ArmA / {{arma2}} / {{arma3}}''': <code>_group1 [[setGroupId]] ["Assault Squad"];</code>
  
<dd class="notedate">Posted on December 9, 2006 - 12:20
+
|x4= '''OFP''': <code>_group1 [[setGroupId]] ["Delta", "GroupColor4"]</code>
<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]]
 +
}}
  
this setgroupId ["Attackteam"]
+
<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 -->
 
</dl>
 
</dl>
  
<h3 style="display:none">Bottom Section</h3>
 
  
  
[[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]]
+
{{GameCategory|arma1|Scripting Commands}}
[[Category:Scripting Commands OFP 1.46|SETGROUPID]]
+
{{GameCategory|arma2|Scripting Commands}}
[[Category:Scripting Commands ArmA|SETGROUPID]]
+
{{GameCategory|arma3|Scripting Commands}}
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
+
{{GameCategory|tkoh|Scripting Commands}}
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
 
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]
 
[[Category:Command_Group:_Groups|{{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 13:38, 18 January 2021

Template:Command

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");