This repository has been archived by the owner on Oct 10, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
/
description.ext
181 lines (173 loc) · 6.23 KB
/
description.ext
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
class Header {
gameType = Coop;
minPlayers = 1;
maxPlayers = 64;
};
respawn = 3;
respawnDialog = 0;
respawnDelay = 10;
disabledAI = 1;
saving = 0;
enableDebugConsole = 1;
corpseManagerMode = 0;
wreckManagerMode = 0;
class CfgFunctions {
class cnto_cq {
class persistence {
class initPersistence { preInit = 1; };
class loadFromProfile;
class saveToProfile;
class saveToProfileLoop;
class loadPlayer;
class savePlayer;
class respawnPlayer;
class getDefaultGear;
};
class ai {
class initAI { preInit = 1; };
class createEnemyForces;
class createEnemyGroup;
class createFriendlyGroup;
class getFriendlyForces;
class purchaseFriendlyGroup;
class refreshAI;
};
class location {
class getLocations;
class initLocations;
};
class customAi {
class defaultCreateIf;
class defaultDestroyIf;
};
class armory {
class purchaseUnits;
};
};
class cnto_ui {
class ui {
file = "functions\ui";
class initBuilder;
class hasCombo;
class withArgument;
class onSuccess;
class onCancel;
class showDialog;
};
};
};
class CNTOConquest {
class AIGroup {
position[] = {}; // last unit position
attachedToMarker = ""; // which location unit is attached to (marker name)
createIf = "_this call cnto_cq_fnc_defaultCreateIf"; // defines create (spawn) conditional action, _this = [unit]
destroyIf = "_this call cnto_cq_fnc_defaultDestroyIf"; // defines destroy conditional action, _this = [unit]
};
class Enemy {
// Base class for all Enemy classes, contains default values. Inherit from this class to enable future expansions.
class Insurgent : AIGroup {
scope = 0; // 0 - can't be used, 1 - can
displayName = ""; // name of the unit displayed on the screen
cfgGroupsPath = ""; // path to CfgGroups
threatLevel = 1; // higher threatLevel for more difficult objectives
init = ""; // callback that can be executed on unit spawn for special behavior
};
class InsurgentSquad : Insurgent {
scope = 1;
displayName = "Insurgent Squad";
cfgGroupsPath = "configfile >> 'CfgGroups' >> 'East' >> 'OPF_F' >> 'Infantry' >> 'OIA_InfSquad'";
threatLevel = 2;
};
class InsurgentFireTeam : Insurgent {
scope = 1;
displayName = "Insurgent Fire Team";
cfgGroupsPath = "configfile >> 'CfgGroups' >> 'East' >> 'OPF_F' >> 'Infantry' >> 'OIA_InfTeam'";
};
class InsurgentMotorizedPatrol : Insurgent {
scope = 1;
displayName = "Insurgent Motorized Patrol";
cfgGroupsPath = "configfile >> 'CfgGroups' >> 'East' >> 'OPF_F' >> 'Motorized_MTP' >> 'OIA_MotInf_MGTeam'";
threatLevel = 3;
};
};
class Friendly {
// Base class for all Friendly classes, contains default values. Inherit from this class to enable future expansions.
class Tna : AIGroup {
scope = 0; // 0 - not spawned ever, 1 - spawned
displayName = ""; // name displayed on the screen
cfgGroupsPath = ""; // path to CfgGroups
supplyCost = 10; // cost in supply
renownTier = 1; // renown tier in which unit is available for purchase
init = ""; // callback that can be executed on unit spawn for special behavior
};
class TnaFireTeam : Tna {
scope = 1;
displayName = "TNA Fire Team";
cfgGroupsPath = "configfile >> 'CfgGroups' >> 'West' >> 'BLU_F' >> 'Infantry' >> 'BUS_InfTeam'";
};
class TnaSquad : Tna {
scope = 1;
displayName = "TNA Squad";
cfgGroupsPath = "configfile >> 'CfgGroups' >> 'West' >> 'BLU_F' >> 'Infantry' >> 'BUS_InfSquad'";
supplyCost = 15;
renownTier = 2;
};
};
class Locations {
class TownDefault {
scope = 0; // 0 - can't be used in mission, 1 - can be used in mission
marker = ""; // marker with that name must exist in the mission, it represents the town itself
displayName = ""; // Location display name, used in communications
owner = 0; // 0 - enemy, 1 - friendly
threatLevel = 1; // threatLevel of Enemy force
minUnits = 1; // minimum amount of spawned unit groups
maxUnits = 3; // maximum amount of spawned unit groups
size = 100; // area radius in which units are spawned. Expressed in meters.
onCapture = ""; // callback that gets executed on capture, if you want some special behavior
};
class Anizay : TownDefault {
scope = 1;
marker = "marker_anizay";
displayName = "Anizay";
threatLevel = 3;
minUnits = 5;
maxUnits = 10;
size = 500;
onCapture = "'EveryoneWon' call BIS_fnc_endMissionServer";
};
class SmallTown : TownDefault {
scope = 1;
marker = "marker_smalltown";
displayName = "Small town";
threatLevel = 1;
minUnits = 1;
maxUnits = 2;
size = 100;
onCapture = "";
};
class FriendlyTown: TownDefault {
scope = 1;
marker = "marker_friendly";
displayName = "Friendly town";
owner = 1;
threatLevel = 1;
minUnits = 1;
maxUnits = 2;
size = 200;
};
};
};
// TODO: see https://community.bistudio.com/wiki/Arma_3:_Communication_Menu
//class CfgCommunicationMenu {
//};
// TODO ? .. https://community.bistudio.com/wiki/Description.ext#CfgMusic
//class CfgMusic {
//};
class Params {
class SaveInterval {
title = "How often to autosave (minutes)";
values[] = { 5, 10, 30, 60, 240, 10000000 };
texts[] = { "5", "10", "30", "60", "240", "never" };
default = 10;
};
};