BIS fnc spawnGroup: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (fixed typo in latest note)
No edit summary
Line 139: Line 139:
<code>Group_Name_Here = [getMarkerPos "MARK1", INDEPENDENT, ["I_G_Soldier_A_F", "I_G_Soldier_F", "I_G_Soldier_AR_F", "I_G_Soldier_LAT_F"]] call BIS_fnc_spawnGroup;</code>
<code>Group_Name_Here = [getMarkerPos "MARK1", INDEPENDENT, ["I_G_Soldier_A_F", "I_G_Soldier_F", "I_G_Soldier_AR_F", "I_G_Soldier_LAT_F"]] call BIS_fnc_spawnGroup;</code>
<br>I can not say that the correct would be to put the name "GUER" as in other factions, or is this an error for a correction future.
<br>I can not say that the correct would be to put the name "GUER" as in other factions, or is this an error for a correction future.
</dd>
</dl>
<!-- DISCONTINUE Notes -->
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on August 2, 2017 - 19:06 (UTC)</dd>
<dt class="note">[[User:Cheitan|Cheitan]]</dt>
<dd class="note">
When using this function for making a dynamic AI spawn, pay attention to the fact that none of the created groups will be marked for auto-deletion when the group become empty (all members dead). It means that it can be very easy to hit the 144 (288 for A3) max groups per side limitation, implying that no more AI or group can be created afterwards. To avoid this issue on ArmA 3, don't forget to use [[deleteGroupWhenEmpty]] command in your script.
</dd>
</dd>
</dl>
</dl>
<!-- DISCONTINUE Notes -->
<!-- DISCONTINUE Notes -->

Revision as of 20:07, 2 August 2017

Hover & click on the images for description

Description

Description:
Function which handles the spawning of a dynamic group of characters. The composition of the group can be passed to the function. Alternatively a number can be passed and the function will spawn that amount of characters with a random type. A side's Center must have been created before a group may be spawned. Either by using createCenter or an editor placed (0% Probability of Presence is fine) unit of the appropriate side.
Execution:
call
Groups:
Uncategorised

Syntax

Syntax:
[position, side, character details, relative positions, list of ranks, skill range, ammo count range, randomization controls, azimuth] call BIS_fnc_spawnGroup
Parameters:
position - group's starting position (Array)
side - group's Side (Side)
character details - Can be three different types: a list of character types (Array), an amount of characters to spawn (Number) or a CfgGroups entry (Config)
(optional) a list of relative positions (Array)
(optional) a list of ranks (Array)
(optional) skill range (Array)
(optional) ammunition count range (Array)
(optional) randomization controls (Array) 0: amount of mandatory units (Number) 1: spawn chance for remaining units (Number)
(optional) azimuth/Direction (Number)
Return Value:
(Group)

Examples

Example 1:
Spawn five random EAST units at aPos: [getPos aPos, EAST, 5] call BIS_fnc_spawnGroup
Example 2:
Spawn a Stryker MGS Platoon at marker "tankSpawn": [getMarkerPos "tankSpawn", side player, (configFile >> "CfgGroups" >> "West" >> "BIS_US" >> "Armored" >> "US_MGSPlatoon")] call BIS_fnc_spawnGroup
Example 3:
Spawn a TK Militia Medic and Soldier at aPos facing south: [getPos aPos, EAST, ["TK_INS_Bonesetter_EP1", "TK_INS_Soldier_2_EP1"],[],[],[],[],[],180] call BIS_fnc_spawnGroup

Additional Information

See also:
Arma 2 CfgVehicles

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note


Bottom Section

kylania 2011-8-15
Use the following for the Type string in the configFile entry: Infantry Air Mechanized Motorized Armored The randomization controls is an array: [2, .5] Would be 2 units spawned with a 50% chance the other units would be spawned. The chance is a number from 0 to 1. Also the last optional argument is azimuth, but doesn't display in the text above. :) There's an example for it though.

Killzone_Kid
Function header:
/*
	File: spawnGroup.sqf
	Author: Joris-Jan van 't Land, modified by Thomas Ryan

	Description:
	Function which handles the spawning of a dynamic group of characters.
	The composition of the group can be passed to the function.
	Alternatively a number can be passed and the function will spawn that
	amount of characters with a random type.

	Parameter(s):
	_this select 0: the group's starting position (Array)
	_this select 1: the group's side (Side)
	_this select 2: can be three different types:
		- list of character types (Array)
		- amount of characters (Number)
		- CfgGroups entry (Config)
	_this select 3: (optional) list of relative positions (Array)
	_this select 4: (optional) list of ranks (Array)
	_this select 5: (optional) skill range (Array)
	_this select 6: (optional) ammunition count range (Array)
	_this select 7: (optional) randomization controls (Array)
		0: amount of mandatory units (Number)
		1: spawn chance for the remaining units (Number)
	_this select 8: (optional) azimuth (Number)

	Returns:
	The group (Group)
*/
Posted on August 23, 2016 - 02:42 (UTC)
Snake Plissken
Factions are represented by the letters

WEST = BLUFOR
EAST = OPFOR
GUER = INDEPENDENT
CIV = CIVIL.

To spawn one BLUFOR group, the command be
"MARK1" is the name given to the marking placed on the map, where the group will appear. Group_Name_Here = [getMarkerPos "MARK1", WEST, ["B_G_Soldier_A_F", "B_G_Soldier_F", "B_G_Soldier_AR_F", "B_G_Soldier_LAT_F"]] call BIS_fnc_spawnGroup;
Or a random group OPFOR of seven units Group_Name_Here= [getMarkerPos "MARK1", EAST, 7 ] call BIS_fnc_spawnGroup;
But to spawn an independent group, is not using "GUER" but the name "INDEPENDENT" Group_Name_Here = [getMarkerPos "MARK1", INDEPENDENT, ["I_G_Soldier_A_F", "I_G_Soldier_F", "I_G_Soldier_AR_F", "I_G_Soldier_LAT_F"]] call BIS_fnc_spawnGroup;
I can not say that the correct would be to put the name "GUER" as in other factions, or is this an error for a correction future.
Posted on August 2, 2017 - 19:06 (UTC)
Cheitan
When using this function for making a dynamic AI spawn, pay attention to the fact that none of the created groups will be marked for auto-deletion when the group become empty (all members dead). It means that it can be very easy to hit the 144 (288 for A3) max groups per side limitation, implying that no more AI or group can be created afterwards. To avoid this issue on ArmA 3, don't forget to use deleteGroupWhenEmpty command in your script.