Dynamic Groups – Arma 3
Lou Montana (talk | contribs) m (Text replacement - "{{GVI|A3|" to "{{GVI|arma3|") |
Lou Montana (talk | contribs) m (Some wiki formatting) |
||
Line 1: | Line 1: | ||
{{TOC|side}} | {{TOC|side}} | ||
{{GVI|arma3|1.42}} | {{GVI|arma3|1.42}} | ||
=<div class="center | = <div class="center">DYNAMIC GROUPS</div> = | ||
[[File:-Arma 3- DynamicGroups.jpg|thumb|center|alt=Dynamic Groups|Dynamic Groups]] | [[File:-Arma 3- DynamicGroups.jpg|thumb|center|alt=Dynamic Groups|Dynamic Groups]] | ||
== Installation == | == Installation == | ||
To add Dynamic Groups functionality to your mission do the following steps: | To add the Dynamic Groups functionality to your mission do the following steps: | ||
==== InitServer.sqf ==== | ==== InitServer.sqf ==== | ||
Create a file in your mission root folder and name it | Create a file in your mission root folder and name it [[Event Scripts#initServer.sqf|initServer.sqf]] (if you don't have it there already). This file is executed only on the server, when the mission starts. | ||
Onto this file, copy & paste the following line, which will make the server initialize the Dynamic Groups framework. | Onto this file, copy & paste the following line, which will make the server initialize the Dynamic Groups framework. | ||
Option 1 | Option 1 | ||
< | <sqf>["Initialize"] call BIS_fnc_dynamicGroups; // Initializes the Dynamic Groups framework</sqf> | ||
["Initialize"] call BIS_fnc_dynamicGroups; // Initializes the Dynamic Groups framework | |||
</ | |||
Option 2 | Option 2 | ||
< | <sqf>["Initialize", [true]] call BIS_fnc_dynamicGroups; // Initializes the Dynamic Groups framework and groups led by a player at mission start will be registered</sqf> | ||
["Initialize", [true]] call BIS_fnc_dynamicGroups; // Initializes the Dynamic Groups framework and groups led by a player at mission start will be registered | Note that this function has no effect if called on a machine which is not the server. | ||
</ | |||
Note that | |||
==== InitPlayerLocal.sqf ==== | ==== InitPlayerLocal.sqf ==== | ||
Create another file in your mission root folder and name it | Create another file in your mission root folder and name it [[Event Scripts#initPlayerLocal.sqf|initPlayerLocal.sqf]] (if you don't have it there already). | ||
This file is executed only by machines which have a human player when the mission starts, which means everyone but a dedicated server, will actually execute this file. | |||
Onto this file, copy & paste the following line, which will make a client/player initialize the Dynamic Groups framework. | Onto this file, copy & paste the following line, which will make a client/player initialize the Dynamic Groups framework. | ||
Option 1: | Option 1: | ||
< | <sqf>["InitializePlayer", [player]] call BIS_fnc_dynamicGroups; // Initializes the player/client side Dynamic Groups framework</sqf> | ||
["InitializePlayer", [player]] call BIS_fnc_dynamicGroups; // Initializes the player/client side Dynamic Groups framework | |||
</ | |||
Option 2: | Option 2: | ||
< | <sqf>["InitializePlayer", [player, true]] call BIS_fnc_dynamicGroups; // Initializes the player/client side Dynamic Groups framework and registers the player group</sqf> | ||
["InitializePlayer", [player, true]] call BIS_fnc_dynamicGroups; // Initializes the player/client side Dynamic Groups framework and registers the player group | |||
</ | |||
== Accessing the Dynamic Groups interface == | == Accessing the Dynamic Groups interface == | ||
The Dynamic Groups interface is tied to the '''TeamSwitch''' action, and it is default keybind is {{Controls|U}}. | |||
Line 51: | Line 39: | ||
If you would like to register a group manually (same as a player clicking '''CREATE''' button in the UI) use '''RegisterGroup'''. Please note that the leader you pass, must be the actual leader of the given group, for example: | If you would like to register a group manually (same as a player clicking '''CREATE''' button in the UI) use '''RegisterGroup'''. Please note that the leader you pass, must be the actual leader of the given group, for example: | ||
< | <sqf> | ||
if (isServer) then | if (isServer) then | ||
{ | { | ||
private _group = group player; | |||
private _leader = leader _group; | |||
private _data = [nil, "Awesome Group", false]; // [<Insignia>, <Group Name>, <Private>] | |||
["RegisterGroup", [_group, _leader, _data]] call BIS_fnc_dynamicGroups; | |||
}; | }; | ||
</ | </sqf> | ||
See [[BIS_fnc_dynamicGroups]] in the Functions Viewer for more sub-functions and their parameters. | |||
{{GameCategory|arma3|Editing}} | {{GameCategory|arma3|Editing}} | ||
[[Category:Introduced with Arma 3 version 1.42]] | [[Category:Introduced with Arma 3 version 1.42]] |
Revision as of 23:21, 30 January 2023
DYNAMIC GROUPS
Installation
To add the Dynamic Groups functionality to your mission do the following steps:
InitServer.sqf
Create a file in your mission root folder and name it initServer.sqf (if you don't have it there already). This file is executed only on the server, when the mission starts. Onto this file, copy & paste the following line, which will make the server initialize the Dynamic Groups framework.
Option 1
Option 2
Note that this function has no effect if called on a machine which is not the server.
InitPlayerLocal.sqf
Create another file in your mission root folder and name it initPlayerLocal.sqf (if you don't have it there already). This file is executed only by machines which have a human player when the mission starts, which means everyone but a dedicated server, will actually execute this file. Onto this file, copy & paste the following line, which will make a client/player initialize the Dynamic Groups framework.
Option 1:
Option 2:
Accessing the Dynamic Groups interface
The Dynamic Groups interface is tied to the TeamSwitch action, and it is default keybind is U.
Additional Functionality
If you would like to register a group manually (same as a player clicking CREATE button in the UI) use RegisterGroup. Please note that the leader you pass, must be the actual leader of the given group, for example:
See BIS_fnc_dynamicGroups in the Functions Viewer for more sub-functions and their parameters.