The group function has to be called on every ai group that is to be controlled by the HC and to be enabled
with the ai enhancement. It should be called on the group leading unit but does not have to be.
Example, [this, ["pat", (getPos this), 200, "Move_Out", "YELLOW", "COLUMN", "LIMITED"], [true, 70, 800, 60]] call ETR_fnc_group;
The function has 3 different parts, [_unit, [_task], [_behaviour]] call ETR_fnc_group;
_unit the leader of the group, usually this.
_task the task array ( eg. "pat" for patrol),
_behaviour optional ETR AI behaviour.
The possible options are visible below,
"pat" - Have the unit patrol around a position or object.
1. position or object where to patrol around.
2. range to patrol.
3. OPTIONAL - condition when to move can be any code when it is valid.
4. OPTIONAL - the combatmode the unit will move in, default is "YELLOW".
5. OPTIONAL - the formation the group will move in, default is "STAG COLUMN".
6. OPTIONAL - the speedmode the units will move in, default is "FULL".
7. OPTIONAL - the behaviour the units will move in, default is none.
Example, [this, ["pat", (getPos this), 200, "Move_Out", "YELLOW", "COLUMN", "LIMITED", "SAFE"], [true, 70, 800, 60]] call ETR_fnc_group;
"def" - Have the unit move inside a building.
1. range to look for a building.
2. position or object to move to, and defend around that.
3. use CBA defend function? (True/False , default is False).
Example, [this, ["def", 200, "defend_here", true], [true, 70, 800, 60]] call ETR_fnc_group;
"mov" - Have the unit move to a position or object when conditions are met.
1. position(s) or object(s) to move to, can be an array.
array example, ["mark1","mark2","mark3","mark1"], this will make them patrol. Because the first and last marker are the same.
2. condition when to move can be any code when it is valid.
3. OPTIONAL - the combatmode the unit will move in, default is "YELLOW".
4. OPTIONAL - the formation the group will move in, default is "STAG COLUMN".
5. OPTIONAL - the speedmode the units will move in, default is "FULL".
6. OPTIONAL - the behaviour the units will move in, default is none.
Example,
[this, ["mov", ["mark1","mark2","mark3"], "move_out", "YELLOW", "STAG COLUMN", "FULL", "SAFE"], [true, 70, 800, 60]] call ETR_fnc_group;
Make Sure you un-group vehicles and squads/fire teams from each other using drop commands!
!!!DROP FUNCTIONS NOT WORKING AT THE TIME!!!
"drop" Have a vehicle that is the "Dropper" from a unit that needs to be dropped.
1. unit that it needs to drop. No quotes.
2. position or object where to drop. (can be an array, examples below).
3. OPTIONAL - condition when to move can be any code when it is valid.
4. OPTIONAL - delete vehicle when it's back on his spawn point. (True/False , default is False). NO QUOTES.
5. OPTIONAL - paradrop? is it a paradrop? (True/False , default is False). NO QUOTES.
6. OPTIONAL - flying height for paradrop default is 30. NO QUOTES.
Examples,
[this, ["drop", grp_01, "drop_here", "move_out", false, false, 120], [false, 0, 0, 0]] call ETR_fnc_group;
This is the easiest one, one marker, just drop them here.
[this, ["drop", grp_01, ["wp1","wp2","drop_here"], "move_out", false, false, 120], [false, 0, 0, 0]] call ETR_fnc_group;
This is still easy, take this path, drop here, move back to base.
[this, ["drop", grp_01, [["wp1","wp2"],["drop_here"]], "move_out", false, false, 120], [false, 0, 0, 0]] call ETR_fnc_group;
Little advanced, Move like this, drop here, then take the path back the same way how you got here.
[this, ["drop", grp_01, [["wp1","wp2"],["drop_here"],["wp3","wp4"]], "move_out", false, false, 120], [false, 0, 0, 0]] call ETR_fnc_group;
Advanced, Take path in like this, drop them here, take path out like this.
"ddef" The units that needs to be dropped with the "dropper"
1. the "dropper's" name, vehicle they need to get into. No quotes.
2. range to look for a building.
3. position or object to move to, and defend around that.
4. use CBA defend function? (True/False , default is False).
Example,
[this, ["ddef", veh_05, 200, "defend_here", false], [true, 70, 800, 60]] call ETR_fnc_group;
"dmov" The units that needs to be dropped with the "dropper"
1. the "dropper's" name, vehicle they need to get into. No quotes.
2. position(s) or object(s) to move to after being dropped, can be an array.
3. OPTIONAL - condition when to move can be any code when it is valid.
4. OPTIONAL - the combatmode the unit will move inu, default is "YELLOW".
5. OPTIONAL - the formation the group will move in, default is "STAG COLUMN".
6. OPTIONAL - the speedmode the units will move in, default is "FULL".
7. OPTIONAL - the behaviour the units will move in, default is none.
Example,
[this, ["dmov", veh_05, "move_here", "move_out", "YELLOW", "STAG COLUMN", "FULL", "STEALTH"], [true, 70, 800, 60]] call ETR_fnc_group;
"dpat" The units that needs to be dropped with the "dropper"
1. the "dropper's" name, vehicle they need to get into. No quotes.
2. position or object to patrol around after being dropped.
3. range they need to patrol around the marker.
4. OPTIONAL - condition when to move can be any code when it is valid.
5. OPTIONAL - the combatmode the unit will move in, default is "YELLOW".
6. OPTIONAL - the formation the group will move in, default is "STAG COLUMN".
7. OPTIONAL - the speedmode the units will move in, default is "FULL".
Example, [this, ["dpat", veh_02, "move_here", 300, "move_out", "YELLOW", "STAG COLUMN", "FULL"], [true, 70, 800, 60]] call ETR_fnc_group;
1. true/false if the group can call for reinforcements.
2. 0-100 how high is the chance if the group answers a call 0=never 100=always.
3. 0-# how far should the group answer a call in meters.
4. 0-# seconds after the group is back to the original task to wait for new reinforcement calls.