1
//Generic VLO file template for start/expand levels
9
NextLev LEVEL "SUB_2_1S" //points to next level in GameDesc.lev
10
lastLev BOOL TRUE //don't try to load next one
12
/* Define Players/Enemies */
13
numEnemies int 2 //MAX 2. Must define same as number of enemy players given next
14
enemy[0] int 1 //player number, eg 1 for New Paradigm, 2 for Collective, 3 for Nexus, 7 for scavengers
15
enemy[1] int 7 //scavenger player number
16
alliancePlayer int 0 //ally player with this player number, currently self.
17
allianceEnemy[0] int 7 //ally enemy with this player number, currently scavenger
18
allianceEnemy[1] int 0 //ally scavengers with the player (useful for civilians)
19
allianceFlag BOOL FALSE //TRUE if want enemies to use each others targets, otherwise mark FALSE
21
/* Starting Enemy Power */
22
power[0] int 300 //starting power for enemy[0] (New Paradigm in this case)
23
power[1] int 1000 //starting power for enemy[1] (Scavengers in this case)
25
/* Structure Limits */
26
//Leave these as are, for Player only!
27
numStrucStats int 5 //MAX 5. Must be same as number of limits given next
28
strucStat[0] STRUCTURESTAT "A0PowerGenerator"
30
strucStat[1] STRUCTURESTAT "A0ResourceExtractor"
32
strucStat[2] STRUCTURESTAT "A0ResearchFacility"
34
strucStat[3] STRUCTURESTAT "A0LightFactory"
36
strucStat[4] STRUCTURESTAT "A0CommandCentre"
40
centreX int 11200 //starting view centre (in world units)
41
centreY int 12864 //needs to be set correctly
42
scrollX1 int 64 //scroll limits (in tile units)
43
scrollY1 int 64 //needs to be set correctly
46
zoomLevel int 0 //starting radar: 0=zoomed out, 2=zoomed in
48
numLZ int 2 //MAX 8. Number of Landing zones/areas can't build on (LZX[0], LZY[0] = player's LZ)
49
LZX[0] int 0 //coords of player's LZ in tile units
51
LZX[1] int 0 //coords of other LZ's
54
reinfOff BOOL TRUE //don't set reinforcements (done in another script)
55
ReinforceTime INT -1 //-1 for no reinforcements, otherwise time in 10ths of seconds (only for Submaps)
57
/* Transport exit and entry */
58
//need setting for submaps only
59
transX[0] int 1 //player transport entry coord in tile units
61
transX[1] int 1 //player transport exit coord in tile units
64
//for each enemy that requires enemy transports landing (handled as a phantom factory)
65
entryX[0] int 0 //define transport entry exit for each enemy!
66
entryY[0] int 0 //unnecessary if no enemy transports (defaults 0)
67
exitX [0] int 0 //leave as 0 if don't want a transport adding for this enemy
70
/* starting technology for enemy */
71
//NOTE: need to set first number in array for enemy player
72
//second number needs to correspond to numTechs[enemy]
73
//MAX 2 enemies, 10 technologies
74
numTechs[0] int 2 //number of technologies to follow for enemy[0]
75
startTech[0][0] RESEARCHSTAT "R-Wpn-MG-Damage03"
76
startTech[0][1] RESEARCHSTAT "R-Wpn-Rocket-Damage02"
78
numTechs[1] int 3 //number of technologies to follow for enemy[1]
79
startTech[1][0] RESEARCHSTAT "R-Vehicle-Body01"
80
startTech[1][1] RESEARCHSTAT "R-Sys-Spade1Mk1"
81
startTech[1][2] RESEARCHSTAT "R-Vehicle-Prop-Wheels"
85
//Pete Johnson handles these so please leave setup as he has them!
86
numBriefs int 1 //MAX 2. Needs to be same as the number of briefings given next
87
brief[0] INTMESSAGE "MB2A_MSG"
88
briefVal[0] int 2 //0 remove after playing, 1 keep, 2 don't play immediately
91
//any blips placed at the start of a mission are done here
92
numObjectives int 1 //MAX 3. Needs to be the same as the number of objective blips given next
93
objective[0] INTMESSAGE "DELETE_ME" //in prox<name>.txt files (need updating)
94
objectiveX[0] int 6848 //world coords where player's droids need to get close to to remove the blip
95
objectiveY[0] int 7104
97
/* Victory Conditions */
98
//NOTE: always assumes victory condition of: number of artifacts collected = victoryArt
99
numVictory int 4 //number of victory conditions to be met (not including artifacts)
100
//DOESN'T need to be same as number given next (these are set TRUE/FALSE)
101
//if victory condition required. Can have 2 set to TRUE and numVictory = 1
102
//This will then let player win if EITHER condition is true!
103
//Use numVictory of 0 if just want player to get artifacts
105
//these now done as integers NOT bools!! Use -1 for False, # for True (often an index to check!)
106
//for this reason must specify ALL victory[]!
107
victory[0] int 1 //all enemy vehicles and structures need to be killed
108
victory[1] int 10 //all players vehicles at REGION index # (eg LZ REGION)
109
victory[2] int 1 //number of objectives to get to (uses objective[0] to objective[#])
110
victory[3] int 2 //number of bases to destroy (uses base[0] to base[#])
112
/* might use these later if necessary
113
victory[4] int -1 //kill all UNITS belonging to enemy # index
114
victory[5] int -1 //kill all STRUCTURES belonging to enemy # index
115
victory[6] int -1 //REGION index to check for defences built
116
victory[7] int -1 //# of EXTRA defences to build in REGION
118
//use this to communicate extra victory conditions in another script run beside the generic one
119
linkVictory BOOL TRUE
121
/* Failure Conditions */
122
//Extra conditions above ALL player units and structures dead, or TIME LIMIT expired
123
//numFail int 0 //number required to be met (usually one if used!)
124
//only one of these has to be met
125
//Use -1 for False, # for True (often an index to check!)
127
fail [0] int 0 //DROID # index all got to REGION (no longer a group #)
128
fail [1] int 10 //REGION index for above (these count as one condition!)
129
failSnd SOUND "pcv632.ogg" //"Enemy Escaping" played for failure
131
/* might use these later if necessary
132
fail [2] int -1 //only Player UNITS need to be killed to lose
133
fail [3] int -1 //only Player STRUCTURES need to be killed to lose
134
fail [4] int -1 //Structure index # to be destroyed to lose????
136
//use this to communicate extra fail conditions in another script run beside the generic one
138
//use this to prevent generic script failing when time is up!
139
noTimeLimit BOOL TRUE //don't use time limit as a fail in GenExp
142
victoryArt int 0 //number of artifacts required for victory (must be <= numArt)
143
numArt int 0 //MAX 6. Number of artifacts in total (even if not in game, but added as extra research!)
145
//new improved way of doing artifacts
146
//artType: 0 = artifact starts on map, 1 = get from STRUCTURE, 2 = get from FEATURE, 3 = get from DROID, 4 = at end of level
147
//artVal: index to relevant type, ie FEATURE(crate), FEATURE, STRUCTURE, DROID
148
//artX, artY: artifact coords (this is updated for DROIDS moving by script, but still needs an array to store them in!)
149
artType [0] int 0 //already on map
150
artVal [0] int 0 //index into features
151
artX [0] int 576 //coords of artifact
153
artComp [0] RESEARCHSTAT "R-Wpn-Flamer01Mk1" //research topic given when artifact collected
155
artType [1] int 1 //get from structure
156
artVal [1] int 0 //index into structures when structure destroyed
157
artX [1] int 3136 //coords to place artifact
159
artComp [1] RESEARCHSTAT "R-Defense-Tower01" //research topic given when artifact collected
161
artType [2] int 2 //get from feature
162
artVal [2] int 1 //index into features
163
artX [2] int 4416 //coords to place artifact when feature destroyed
165
artComp [2] RESEARCHSTAT "R-Sys-Sensor-Turret01" //research topic given when artifact collected
167
artType [3] int 3 //get from droid
168
artVal [3] int 0 //index into droids
171
artComp [3] RESEARCHSTAT "R-Vehicle-Prop-Halftracks" //research topic given when artifact collected
173
artType [4] int 4 //given on completing mission (don't include when counting for victoryArt!)
174
artVal [4] int 0 //not used for this type, leav as 0
175
artX [4] int 0 //not used for this type, leav as 0
176
artY [4] int 0 //not used for this type, leav as 0
177
artComp [4] RESEARCHSTAT "R-Wpn-Mortar01Lt" //research topic given when artifact collected
180
/* ******************************************** */
181
/* lists of stuff referred to by index number */
182
/* ******************************************** */
184
/* ******************************************** */
185
/* FEATURES (inc crates, by ID number) MAX = 10 */
186
features [0] FEATURE 649 //crate artifact ID number(already on map)
187
features [1] FEATURE 661 //feature to get next artifact, eg warehouse
189
/* ******************************************** */
190
/* STRUCTURES (by ID number) MAX = 10 */
191
structures [0] STRUCTURE 223 //factory 0, gives artifact
192
structures [1] STRUCTURE 650 //some other structure, eg gives an artifact
193
structures [2] STRUCTURE 481 //factory 1
194
structures [3] STRUCTURE 623 //factory 2
197
/* ******************************************** */
198
/* DROIDS (by ID number) MAX = 10 */
199
droids [0] DROID 3279 //gives up artifact when dead at its coords
200
droids [1] DROID 1234 //this is a sensor droid that acts as sesnor for group 1 IDF (indexes match!)
202
/* ******************************************** */
203
/* list of templates (by name) MAX = 20 */
204
/* ******************************************** */
205
//keep each enemies templates together
206
templates [0] TEMPLATE "BaBaPeople" //scavenger templates
207
templates [1] TEMPLATE "BarbarianTrike"
208
templates [2] TEMPLATE "BarbarianBuggy"
209
templates [3] TEMPLATE "BabaJeep"
210
templates [4] TEMPLATE "BabaRKJeep"
211
templates [5] TEMPLATE "BarbarianRKBuggy"
212
templates [6] TEMPLATE "BabaBusCan"
213
templates [7] TEMPLATE "BabaFireCan"
215
templates[8] TEMPLATE "NP-M-MdCannon-Halftrack" //New Paradigm templates
216
templates[9] TEMPLATE "NP-H-MdCannon-Tracks"
217
templates[10] TEMPLATE "NP-M-BB-Halftrack"
218
templates[11] TEMPLATE "NP-H-HvyCannon-Tracks"
219
templates[12] TEMPLATE "NP-M-Sensor-Wheels"
220
templates[13] TEMPLATE "NP-M-HvyMortar-Halftrack"
222
templates[14] TEMPLATE "CyborgChain01Ground" //NP Cyborg Templates
223
templates[15] TEMPLATE "CyborgFlamer01Grd"
224
templates[16] TEMPLATE "CyborgCannon01Grd"
228
/* ******************************************** */
229
//coordinates (world coords) MAX = 10
230
/* ******************************************** */
231
coordsX [0] int 3136 //factory 0 Assembly
233
coordsX [1] int 5824 //factory 1 Assembly (and valley group retreat!)
235
coordsX [2] int 5184 //factory 2 Assembly
238
coordsX [3] int 832 //1st waypoint for group 0
241
coordsX [4] int 1856 //2nd waypoint for group 0
244
coordsX [5] int 2624 //group 2 waypoint1
246
coordsX [6] int 2752 //group 2 waypoint2
248
coordsX [7] int 2496 //group 2 waypoint3
250
coordsX [8] int 1728 //group 2 waypoint4
254
/* ******************************************** */
255
//regions (world coords) MAX = 20
256
/* ******************************************** */
257
regionsX1 [0] int 2624 //enemy base0 blip
258
regionsY1 [0] int 448
259
regionsX2 [0] int 3648
260
regionsY2 [0] int 1344
261
regionsX1 [1] int 4800 //enemy base1 blip
262
regionsY1 [1] int 1472
263
regionsX2 [1] int 6464
264
regionsY2 [1] int 2880
265
regionsX1 [2] int 4288 //enemy base2 blip
266
regionsY1 [2] int 5952
267
regionsX2 [2] int 6208
268
regionsY2 [2] int 7488
270
regionsX1 [3] int 320 //base 0 Factory trigger region
271
regionsY1 [3] int 4160
272
regionsX2 [3] int 2368
273
regionsY2 [3] int 5184
274
regionsX1 [4] int 1984 //group 0 trigger region
275
regionsY1 [4] int 832
276
regionsX2 [4] int 3008
277
regionsY2 [4] int 2368
278
regionsX1 [5] int 3904 //group 3 trigger region
279
regionsY1 [5] int 2496
280
regionsX2 [5] int 5312
281
regionsY2 [5] int 4288
283
regionsX1 [6] int 3136 //group 0 defining region
284
regionsY1 [6] int 13632
285
regionsX2 [6] int 3520
286
regionsY2 [6] int 14016
287
regionsX1 [7] int 4288 //group 1 defining region
288
regionsY1 [7] int 8000
289
regionsX2 [7] int 5056
290
regionsY2 [7] int 8640
291
regionsX1 [8] int 5184 //group 2 defining region
292
regionsY1 [8] int 7232
293
regionsX2 [8] int 5696
294
regionsY2 [8] int 7744
295
regionsX1 [9] int 4928 //group 3 defining region
296
regionsY1 [9] int 6592
297
regionsX2 [9] int 5440
298
regionsY2 [9] int 7104
300
regionsX1 [10] int 2624 //LZ region for victory
301
regionsY1 [10] int 448
302
regionsX2 [10] int 3648
303
regionsY2 [10] int 1344
305
/* ******************************************** */
307
/* ******************************************** */
308
//sectors to attack (for scout and attack groups only)
309
//split map into regions, groups can then go to random positions in each region
310
//as their waypoints, looking for player targets.
313
sectorsX1 [0] int 10432
314
sectorsY1 [0] int 12736
315
sectorsX2 [0] int 14272
316
sectorsY2 [0] int 15552
318
sectorsX1 [1] int 8896
319
sectorsY1 [1] int 13760
320
sectorsX2 [1] int 10304
321
sectorsY2 [1] int 15040
323
sectorsX1 [2] int 6336
324
sectorsY1 [2] int 13760
325
sectorsX2 [2] int 8768
326
sectorsY2 [2] int 14144
328
sectorsX1 [3] int 2112
329
sectorsY1 [3] int 12736
330
sectorsX2 [3] int 6336
331
sectorsY2 [3] int 14784
333
sectorsX1 [4] int 1600
334
sectorsY1 [4] int 10176
335
sectorsX2 [4] int 5952
336
sectorsY2 [4] int 12608
338
sectorsX1 [5] int 4672
339
sectorsY1 [5] int 8640
340
sectorsX2 [5] int 5696
341
sectorsY2 [5] int 10048
343
/* ******************************************** */
344
/* Enemy Base Blips */
345
/* ******************************************** */
346
numBases int 0 //MAX = 5. Must be same as number of bases listed next
347
basePlayer [0] int 0 //enemy player number who owns base, ie enemy[0]
348
baseMsg [0] INTMESSAGE "FAST_BASE1" //enemy base blip message (prox.txt)
349
baseRegion [0] int 0 //index to regions that defines base boundaries (blip appears when player sees any structure in these boundaries), also area to destroy walls when base is dead.
350
baseWav1 [0] int 2 //sound to play when first seen (index to baseSnd) Superior Weapons
351
baseWav2 [0] int 3 //sound to play when base dead (index to baseSnd) Eradicated
353
basePlayer [1] int 1 //enemy player who owns base, ie enemy[1]
354
baseMsg [1] INTMESSAGE "FAST_BASE2"
355
baseRegion [1] int 1 //index to regions
356
baseWav1 [1] int 0 //index to baseSnd enemy detected
357
baseWav2 [1] int 3 //index to baseSnd Eradicated
359
/* ******************************************** */
361
/* ******************************************** */
362
numGroups int 6 //group MAX = 10
364
//group 0 (Ambush group) Use this type to get units moving in set patterns once triggered
365
grpType [0] int 0 //0 = Ambush/Patrol
366
grpPlayer [0] int 0 //player index, ie enemy[0]
367
grpRegion [0] int 6 //index in regions array to define group
368
grpTimeGo [0] int -1 //-1 = no time trigger
369
grpRegionGo [0] int 4 //index in regions to use as trigger
370
grpWhoGo [0] int 0 //player number (0-7) that needs to enter trigger region to trigger group
371
grpMorale [0] int -1 //-1 = don't set morale/leadership/retreat
372
grpLeadership [0] int 0 //leave zero if morale not set
373
grpRetreatXY [0] int 0 //leave zero if morale not set
374
grpPosStart [0] int 3 //starting waypoint (goes here when triggered)
375
grpPosMin [0] int 3 //Minimum index in coords array for waypoints
376
grpPosMax [0] int 4 //Maximum index in coords array for waypoints
377
grpPosStep [0] int 1 //Step increase for next 'waypoint'
378
grpPosType [0] int 0 //0 = stop when get to last waypoint
379
grpFactory [0] int -1 //-1 = any factory can reinforce this group
380
grpIdealSize [0] int 0 //0 = don't reinforce (ideal size. If less than this factory will reinforce)
382
//group 1 (IDF group) Use this group to link to a sensor of same index (not quite finished in SLO, but shouldn't crash)
383
grpType [1] int -1 //-1 = Indirect Fire (IDF). There must be a corresponding sensor droid with same index
384
// in this case 1, ie droids[1] must be a sensor droid. Don't use this type if too confusing!
385
grpPlayer [1] int 0 //player index, ie enemy[0]
386
grpRegion [1] int 7 //index in regions array to define group
387
grpTimeGo [1] int -1 //-1 = don't use time trigger (sensor will move this IDF group)
389
grpRegionGo [1] int -1 //-1 = don't use a region to trigger (sensor will move this IDF group)
390
grpWhoGo [1] int 0 //leave zero if region trigger not used
391
grpMorale [1] int 90 //pretty timid! morale check when group size is 90% of original
392
grpLeadership [1] int 25 //25% chance of not running away when morale checked
393
grpRetreatXY [1] int 0 //retreat coords(index in coords array), points to factory 0's assembly point
394
grpPosStart [1] int -1 //don't use waypoints
395
grpPosMin [1] int 0 //leave 0 if waypoints not used
396
grpPosMax [1] int 0 //leave 0 if waypoints not used
397
grpPosStep [1] int 0 //leave 0 if waypoints not used
398
grpPosType [1] int 0 //leave 0 if waypoints not used
399
grpFactory [1] int 0 //reinforce from factory 0
400
grpIdealSize [1] int 6 //ideal size. If less than this factory will reinforce
402
//group 2 (defence group) Use this group to defend a base (or whole map if desired). Can be on a patrol route using waypoints, will only deviate from this if a structure in grpRegionGo is attacked, then when attacker destroyed, continues on patrol route
403
grpType [2] int 1 //1 = Defence
404
grpPlayer [2] int 1 //player index, ie enemy[1]
405
grpRegion [2] int 8 //index in regions array to define group
406
grpTimeGo [2] int 2 //2 = 20s before starts to move (always make >= 0 for defence forces)
407
grpRegionGo [2] int 0 //index into regions to protect (usually a base blip region)
408
grpWhoGo [2] int 0 //player number (0-7) that needs to attack structures in trigger region to make this group break off patrol and defend
409
grpMorale [2] int 55 //pretty solid! morale check when group size is 55% of original
410
grpLeadership [2] int 75 //75% chance of not running away when morale checked
411
grpRetreatXY [2] int 1 //retreat (index in coords array) factory 1 assembly point
412
grpPosStart [2] int 7 //index in coords array (depends on grpType)
413
grpPosMin [2] int 5 //Minimum index in coords array
414
grpPosMax [2] int 8 //Maximum index in coords array
415
grpPosStep [2] int -1 //Step increase for next 'waypoint'
416
grpPosType [2] int 1 //1 = loop
417
grpFactory [2] int 0 //index factory to reinforce group. -1 = any factory.
418
grpIdealSize [2] int 2 //ideal size. If less than this factory will reinforce
420
//group 3 (scout group). This uses SECTORS, and will flag targets for use by attack groups. will run away if sees more targets than units in its own group even if morale not set.
421
grpType [3] int 2 //2 = Scout, 3 = Attack...
422
grpPlayer [3] int 1 //player index, ie enemy[1]
423
grpRegion [3] int 9 //index in regions array to define group
424
grpTimeGo [3] int 4 //40s time trigger
425
grpRegionGo [3] int 5 //index in regions to use as trigger (can use time AND region triggers)
426
grpWhoGo [3] int 0 //player number (0-7) that needs to enter trigger region to trigger group
427
grpMorale [3] int -1 //no morale checks
428
grpLeadership [3] int 0 //leave zero if morale not set
429
grpRetreatXY [3] int 0 //leave zero if morale not set
430
grpPosStart [3] int 3 //index in SECTORS array (scout groups use sectors)
431
grpPosMin [3] int 0 //Minimum index in coords array
432
grpPosMax [3] int 4 //Maximum index in coords array
433
grpPosStep [3] int 1 //Step increase for next 'waypoint'
434
grpPosType [3] int 2 //2 = pingpong
435
grpFactory [3] int -1 //index factory to reinforce group. -1 = any factory.
436
grpIdealSize [3] int 4 //ideal size. If less than this factory will reinforce
438
//group 4 (attack group). Again uses SECTORS. Will patrol sectors until targets found, by scout or attack groups, then goes to target coords. This group doesn't exist at start, but is reinforced by factory 1 which is a phantom factory (used for units coming in off edge of map)
439
grpType [4] int 0 //3 = Attack...
440
grpPlayer [4] int 0 //player index, ie enemy[0]
441
grpRegion [4] int -1 //doesn't exist at start, made up from factories
442
grpTimeGo [4] int 5 //20s time trigger (always make >= 0 for defence forces)
443
grpRegionGo [4] int -1 //no region. index in regions array as trigger
444
grpWhoGo [4] int 0 //leave zero if region trigger not used
445
grpMorale [4] int 90 //morale = 90%
446
grpLeadership [4] int 45 //leadership value = 45%
447
grpRetreatXY [4] int 1 //retreat (index in coords array) factory 1 assembly
448
grpPosStart [4] int 4 //index in SECTORS array (attack groups use sectors)
449
grpPosMin [4] int 0 //Minimum index in SECTORS array
450
grpPosMax [4] int 4 //Maximum index in SECTORS array
451
grpPosStep [4] int -1 //Step increase for next 'waypoint'
452
grpPosType [4] int 3 //3 = random thru waypoints
453
grpFactory [4] int 1 //index factory to reinforce group. -1 = any factory.
454
grpIdealSize [4] int 6 //ideal size. If less than this factory will reinforce
456
//group 5. Transport example group (can be any type). Main point is that it is reinforced by factory 2, which is a transport type phantom factory.
457
grpType [5] int 0 //0 = Ambush/Patrol
458
grpPlayer [5] int 0 //player index, ie enemy[0]
459
grpRegion [5] int -1 //doesn't exist at start, made up from factories
460
grpTimeGo [5] int 0 //go immediately
461
grpRegionGo [5] int -1 //no region. index in regions array as trigger
462
grpWhoGo [5] int 0 //player number to cross trigger region (may not need?)
463
grpMorale [5] int 25 //morale = 50%
464
grpLeadership [5] int 50 //leadership value = 75%
465
grpRetreatXY [5] int 1 //retreat (index in coords array) base2 assembly
466
grpPosStart [5] int 7 //index in coords array (depends on grpType)
467
grpPosMin [5] int 5 //Minimum index in coords array
468
grpPosMax [5] int 8 //Maximum index in coords array
469
grpPosStep [5] int 1 //Step increase for next 'waypoint'
470
grpPosType [5] int 1 //1 = loop
471
grpFactory [5] int 2 //index factory to reinforce group. This points to 'transport' factory
472
grpIdealSize [5] int 10 //ideal size. If less than this factory will reinforce
476
numFactories int 3 //MAX = 10
479
factID [0] int 0 //index to structures
480
factAssXY [0] int 0 //index to assembly point. -1 for don't set
481
factTimeGo [0] int -1 //delay before starting production in 10s
482
factRegionGo [0] int 3 //region index (assume WhoGo = 0, ie player has to enter this region)
483
factTempMin [0] int 0 //index to starting template
484
factTempMax [0] int 2 //index to maximum template
485
factEvery [0] int 5 //50s .Time in 10s for factory to try to produce again
487
//special case phantom factory
488
factID [1] int -1 //phantom factory, places units on map (usually edge)
489
factAssXY [1] int 1 //index to coords to place generated units
490
factTimeGo [1] int 6 //60s delay before starting production (multiples of 10s)
491
factRegionGo [1] int -1 //-1 = no region for trigger (assume WhoGo = 0)
492
factTempMin [1] int 0 //index to starting template
493
factTempMax [1] int 3 //index to maximum template
494
factEvery [1] int 30 //5 mins .Time in 10s for factory to try to produce again
496
//transport type phantom factory
497
factID [2] int -2 //phantom factory, uses transport
498
factAssXY [2] int 1 //index to LZs (point to correct one for enemy number, eg 2 for player 2 Collective)
499
factTimeGo [2] int -1 //delay before starting production in 10s
500
factRegionGo [2] int 5 //region to trigger transport
501
factTempMin [2] int 1 //index to starting template
502
factTempMax [2] int 4 //index to maximum template
503
factEvery [2] int 36 //6 mins .Time in 10s for factory to produce again
506
//These should be same in each file, but may need slight alterations
507
player int 0 //player's player number
508
crate FEATURESTAT "Crate"
509
artRange int 200 //171 //range to artifact about 1.5 tiles
510
objectiveRange int 640 //range to objective 5 Tiles
511
wayRange int 300 //range to waypoint 2ish tiles
512
targetRange int 768 //range for target spotting
513
targetMax int 4 //maximum number of targets to store for each enemy
514
lostSnd SOUND "pcv470.ogg" //mission failed
515
attackSnd1 SOUND "pcv337.ogg" //Base Under Attack
516
artSnd1 SOUND "pcv351.ogg" //artifact sounds
517
artSnd2 SOUND "pcv352.ogg"
518
transporter TEMPLATE "Transporter" //for enemy transports
519
endMsg INTMESSAGE "END"
522
baseSnd[0] SOUND "pcv379.ogg" //Enemy Base Detected
523
baseSnd[1] SOUND "pcv379.ogg" //Enemy Base Detected
524
baseSnd[2] SOUND "pcv379.ogg" //Enemy Base Detected
525
baseSnd[3] SOUND "pcv394.ogg" //Enemy base eradicated
527
/* NEW STUFF for trucks */
528
//trucksOn BOOL TRUE //switch for using trucks (won't work without it!)
529
/* Defence Type Structures for any enemy to build */
530
numDefences int 2 //MAX = 5
531
defences[0] STRUCTURESTAT "PillBox2"
532
defences[1] STRUCTURESTAT "PillBox3"
533
maxDefence int 3 //ideal number of defences to build
534
/* structures to defend */
535
numToDefend int 2 //MAX = 5
536
toDefend[0] STRUCTURESTAT "A0ResourceExtractor"
537
toDefend[1] STRUCTURESTAT "A0CommandCentreCO" //"A0PowerGenerator"
539
oilRes FEATURESTAT "OilResource"
540
truckRange int 1024 //range for truck to check for defendable structures
541
defRange int 512 //range for defences to be for defendable structures
542
/* end of NEW STUFF */
544
/* NEW STUFF FOR THREAT ASSESSMENT */
545
//this only works on groups with Morale Values
546
//if not declared just won't do anything!!
547
threatLight int 2 //value for light vehicles
548
threatMedium int 4 //value for medium vehicles
549
threatHeavy int 8 //value for large vehicles
550
threatRange int 750 //range to check for enemy and player threats
551
/* end of NEW STUFF */
553
/* NEW STUFF fro RETURN TO LZ type victory condition blip and audio */
554
retLZFlag BOOL TRUE //must be set true to activate
555
retLZSnd SOUND "pcv427.ogg" //for victory condition of get all player stuff to region
556
retLZBlip INTMESSAGE "C22_LZ" //Blip for LZ
557
/* end of NEW STUFF */