1
//Generic VLO file template for start/expand levels
9
NextLev LEVEL "CAM_1END" //points to next level
11
/* Define Players/Enemies */
12
numEnemies int 1 //MAX 2. Must define same as number of enemy players given next
15
alliancePlayer int 0 //ally player with self (could be a different player number
16
allianceEnemy[0] int 1 //ally enemy with self (could be a different player number
17
allianceFlag BOOL FALSE //TRUE if want enemies to use each others targets, otherwise mark FALSE
18
entryX[0] int 1 //define transport entry exit for each enemy!
19
entryY[0] int 1 //unnecessary if no enemy transports (defaults 0)
20
exitX [0] int 1 //leave as 0 if don't want a transport adding for this enemy
23
/* Starting Enemy Power */
24
power[0] int 5000 //starting power values for each enemy listed above
27
/* Structure Limits */
28
numStrucStats int 6 //MAX 5. Must be same as number of limits given next
29
strucStat[0] STRUCTURESTAT "A0PowerGenerator"
31
strucStat[1] STRUCTURESTAT "A0ResourceExtractor"
33
strucStat[2] STRUCTURESTAT "A0ResearchFacility"
35
strucStat[3] STRUCTURESTAT "A0LightFactory"
37
strucStat[4] STRUCTURESTAT "A0CommandCentre"
39
strucStat[5] STRUCTURESTAT "A0ComDroidControl"
43
centreX int 704 //starting view centre (in world units)
45
scrollX1 int 0 //scroll limits (in tile units)
49
zoomLevel int 0 //starting radar: 0=zoomed out, 2=zoomed in
51
numLZ int 2 //MAX 8. Number of Landing zones/areas can't build on (0 = LZ)
52
LZX[0] int 5 //coords of LZs in tile units
54
LZX[1] int 58 //coords of NP LZ
57
//special, last LZ is for next map!! (don't count in numLZ)
58
LZX[2] int 11 //coords of Campaign Map LZ in tile units
61
/* Transport exit and entry */
62
transX[0] int 1 //entry
64
transX[1] int 6 //exit
67
ReinforceTime INT 1200 // (1 minute) number of seconds*10 for transport, -1 for no reinforcements
69
/* starting technology for enemy */
70
//NOTE: need to set first number in array for enemy player
71
//second number needs to correspond to numTechs[enemy]
72
//MAX 2 enemies, 10 technologies
74
startTech [0] [0] RESEARCHSTAT "R-Defense-WallUpgrade03"
75
startTech [0] [1] RESEARCHSTAT "R-Struc-Materials03"
76
startTech [0] [2] RESEARCHSTAT "R-Struc-Factory-Upgrade03"
77
startTech [0] [3] RESEARCHSTAT "R-Struc-Factory-Cyborg-Upgrade03"
78
startTech [0] [4] RESEARCHSTAT "R-Vehicle-Engine03"
79
startTech [0] [5] RESEARCHSTAT "R-Vehicle-Metals03"
80
startTech [0] [6] RESEARCHSTAT "R-Cyborg-Metals03"
81
startTech [0] [7] RESEARCHSTAT "R-Wpn-Cannon-Accuracy01"
82
startTech [0] [8] RESEARCHSTAT "R-Wpn-Cannon-Damage03"
83
startTech [0] [9] RESEARCHSTAT "R-Wpn-Flamer-Damage03"
84
startTech [0] [10] RESEARCHSTAT "R-Wpn-Flamer-ROF01"
85
startTech [0] [11] RESEARCHSTAT "R-Wpn-MG-Damage04"
86
startTech [0] [12] RESEARCHSTAT "R-Wpn-MG-ROF01"
87
startTech [0] [13] RESEARCHSTAT "R-Wpn-Mortar-Acc01"
88
startTech [0] [14] RESEARCHSTAT "R-Wpn-Mortar-Damage03"
89
startTech [0] [15] RESEARCHSTAT "R-Wpn-Rocket-Accuracy01"
90
startTech [0] [16] RESEARCHSTAT "R-Wpn-Rocket-Damage03"
91
startTech [0] [17] RESEARCHSTAT "R-Wpn-Rocket-ROF03"
92
startTech [0] [18] RESEARCHSTAT "R-Wpn-RocketSlow-Accuracy03"
93
startTech [0] [19] RESEARCHSTAT "R-Wpn-RocketSlow-Damage03"
94
startTech [0] [20] RESEARCHSTAT "R-Struc-RprFac-Upgrade03"
98
numBriefs int 1 //MAX 2. Needs to be same as the number of briefings given next
99
brief[0] INTMESSAGE "MB1D_MSG2"
100
briefVal[0] int 2 //0 remove after playing, 1 keep, 2 don't play immediately
101
endMsg INTMESSAGE "END"
104
numObjectives int 1 //MAX 3. Needs to be the same as the number of objective blips given next
105
objective[0] INTMESSAGE "C1D_OBJ1"
106
objectiveX[0] int 8512 //doesn't use index to array, use world coords
107
objectiveY[0] int 2112
109
/* Victory Conditions */
110
//NOTE: always assumes victory condition of: number of artifacts collected = victoryArt
111
numVictory int 1 //number of victory conditions to be met (not including artifacts)
112
//DOESN'T need to be same as number given next (these are set TRUE/FALSE)
113
//if victory condition required. Can have 2 set to TRUE and numVictory = 1
114
//This will then let player win if EITHER condition is true!
115
//Use numVictory of 0 if just want player to get artifacts
117
//these now done as integers NOT bools!! Use -1 for False, # for True (often an index to check!)
118
//for this reason must specify ALL victory[]!
119
victory[0] int -1 //all enemy vehicles and structures need to be killed
120
victory[1] int -1 //all players vehicles at REGION index # (eg LZ REGION)
121
victory[2] int -1 //number of objectives to get to (uses objective[0] to objective[#])
122
victory[3] int 3 //kill all three bases! (number of bases to destroy (uses base[0] to base[#]))
124
/* might use these later if necessary
125
victory[4] int -1 //kill all UNITS belonging to enemy # index
126
victory[5] int -1 //kill all STRUCTURES belonging to enemy # index
127
victory[6] int -1 //REGION index to check for defences built
128
victory[7] int -1 //# of EXTRA defences to build in REGION
131
/* Failure Conditions */
132
//Extra conditions above ALL player units and structures dead, or TIME LIMIT expired
133
//numFail int 0 //number required to be met (usually one if used!)
134
//only one of these has to be met
135
//Use -1 for False, # for True (often an index to check!)
137
fail [0] int -1 //0 //group # index all got to REGION
138
fail [1] int -1 //2 //REGION index for above (these count as one condition!)
140
/* might use these later if necessary
141
fail [2] int -1 //only Player UNITS need to be killed to lose
142
fail [3] int -1 //only Player STRUCTURES need to be killed to lose
143
fail [4] int -1 //Structure index # to be destroyed to lose????
148
victoryArt int 3 //number of artifacts required for victory (must be <= numArt)
149
numArt int 3 //MAX 6. Number of artifacts in total (even if not in game, but added as extra research!)
151
//new improved way of doing artifacts
152
//artType: 0 = artifact starts on map, 1 = get from STRUCTURE, 2 = get from FEATURE, 3 = get from DROID, 4 = at end of level
153
//artVal: index to relevant type, ie FEATURE(crate), FEATURE, STRUCTURE, DROID
154
//artX, artY: artifact coords (this is updated for DROIDS moving by script, but still needs an array to store them in!)
155
artType [0] int 0 //starts on map
159
artComp [0] RESEARCHSTAT "R-Vehicle-Prop-Hover"
162
artType [1] int 3 //from mortar droid
166
artComp [1] RESEARCHSTAT "R-Vehicle-Body04" //Leopard = 02!!!??!!
169
artType [1] int 1 //from 1st Factory
173
artComp [1] RESEARCHSTAT "R-Vehicle-Metals03"
175
artType [2] int 1 //from last factory
179
artComp [2] RESEARCHSTAT "R-Vehicle-Body12"
181
/* ******************************************** */
182
/* lists of stuff referred to by index number */
183
/* ******************************************** */
185
/* ******************************************** */
186
/* FEATURES (inc crates, by ID number) MAX = 10 */
187
features [0] FEATURE 555 //crate artifact (SE hill, hover)
188
//features [1] FEATURE 661 //crate artifact (2nd by huts) (CHANGED TO BUNKER)
190
/* ******************************************** */
191
/* STRUCTURES (by ID number) MAX = 10 */
192
structures [0] STRUCTURE 670 //Heavy Factory Mid W
193
structures [1] STRUCTURE 671 //Heavy Factory Mid E
194
structures [2] STRUCTURE 663 //Heavy Factory NE
195
structures [3] STRUCTURE 324 //Cyborg Factory NE
196
structures [4] STRUCTURE 413 //Cyborg Factory Mid W
197
structures [5] STRUCTURE 414 //Cyborg Factory Mid E
199
/* ******************************************** */
200
/* DROIDS (by ID number) MAX = 10 */
201
droids [0] DROID 681 //sensor in scout1 (linked to IDF#1?)
202
droids [1] DROID 688 //sensor in scout2 (linked to IDF#2?)
203
//droids [2] DROID 692 //mortar in IDF2 (gives artifact)
205
/* ******************************************** */
206
/* list of templates (by name) MAX = 20 */
207
/* ******************************************** */
208
//NP Vehicle Templates
209
templates[0] TEMPLATE "NP-M-CON-Track" //"ConstructionDroidNP"
210
templates[1] TEMPLATE "NP-L-Sensor-Wheels"
211
templates[2] TEMPLATE "NP-L-RocketPod-Wheels"
212
templates[3] TEMPLATE "NP-L-MRLS-Halftrack"
213
templates[4] TEMPLATE "NP-L-HMG-Halftrack"
214
templates[5] TEMPLATE "NP-L-LtAT-Halftrack"
215
templates[6] TEMPLATE "NP-M-MdCannon-Tracks"
216
templates[7] TEMPLATE "NP-M-LtMortar-Halftrack"
217
templates[8] TEMPLATE "NP-M-MdCannon-Halftrack"
218
templates[9] TEMPLATE "NP-H-MdCannon-Tracks"
219
templates[10] TEMPLATE "NP-M-BB-Halftrack"
220
templates[11] TEMPLATE "NP-H-HvyCannon-Tracks"
221
templates[12] TEMPLATE "NP-M-Sensor-Wheels"
222
templates[13] TEMPLATE "NP-M-HvyMortar-Halftrack"
224
//NP Cyborg Templates
225
templates[14] TEMPLATE "Cyb-Chain-GROUND"
226
templates[15] TEMPLATE "Cyb-Flamer-GROUND"
227
templates[16] TEMPLATE "Cyb-Cannon-GROUND"
229
templates[17] TEMPLATE "NP-M-MG3-Hover"
230
templates[18] TEMPLATE "NP-M-LtAT-Hover"
231
templates[19] TEMPLATE "NP-H-HvyCannon-Hover"
233
/* ******************************************** */
234
//coordinates (world coords) MAX = 10
235
/* ******************************************** */
236
coordsX [0] int 4544 //factory 0 Assembly (and general retreat point!)
238
coordsX [1] int 8512 //Cyborg factory 2 Assembly
241
//target coords for attack groups
242
coordsX [2] int 704 //Player's LZ
243
coordsY [2] int 15552
244
coordsX [3] int 576 //a little N of LZ
245
coordsY [3] int 14528
246
coordsX [4] int 1856 //N coast of LZ
247
coordsY [4] int 14144
249
coordsX [5] int 320 //hover defence waypoint 1
251
coordsX [6] int 9664 //hover defence waypoint 2
252
coordsY [6] int 10560
253
coordsX [7] int 6080 //hover defence waypoint 3
255
coordsX [8] int 2752 //hover defence waypoint 4
259
/* ******************************************** */
260
//regions (world coords) MAX = 20
261
/* ******************************************** */
262
regionsX1 [0] int 3520 //enemy base1 blip
263
regionsY1 [0] int 12864
264
regionsX2 [0] int 6336
265
regionsY2 [0] int 15936
266
regionsX1 [1] int 3392 //enemy base2 blip
267
regionsY1 [1] int 1984
268
regionsX2 [1] int 6080
269
regionsY2 [1] int 5184
270
regionsX1 [2] int 7488 //enemy base3 blip
271
regionsY1 [2] int 1216
272
regionsX2 [2] int 10048
273
regionsY2 [2] int 3904
276
regionsX1 [3] int 4032 //IDF#1 group
277
regionsY1 [3] int 15168
278
regionsX2 [3] int 4416
279
regionsY2 [3] int 15552
280
regionsX1 [4] int 4672 //IDF#2 group
281
regionsY1 [4] int 12864
282
regionsX2 [4] int 5440
283
regionsY2 [4] int 13376
285
regionsX1 [5] int 3136 //sensor#1 group
286
regionsY1 [5] int 15168
287
regionsX2 [5] int 3520
288
regionsY2 [5] int 15552
289
regionsX1 [6] int 3136 //sensor#2 group
290
regionsY1 [6] int 13632
291
regionsX2 [6] int 3520
292
regionsY2 [6] int 14016
294
regionsX1 [7] int 4288 //MRLS group
295
regionsY1 [7] int 8000
296
regionsX2 [7] int 5056
297
regionsY2 [7] int 8640
299
regionsX1 [8] int 5184 //cyborg#1 group
300
regionsY1 [8] int 7232
301
regionsX2 [8] int 5696
302
regionsY2 [8] int 7744
303
regionsX1 [9] int 4928 //cyborg#2 group
304
regionsY1 [9] int 6592
305
regionsX2 [9] int 5440
306
regionsY2 [9] int 7104
308
regionsX1 [10] int 832 //Hover#1 group (Aggressive)
309
regionsY1 [10] int 1216
310
regionsX2 [10] int 1344
311
regionsY2 [10] int 1728
312
regionsX1 [11] int 3776 //Hover#2 group (defensive)
313
regionsY1 [11] int 2112
314
regionsX2 [11] int 4160
315
regionsY2 [11] int 2624
318
regionsX1 [12] int 4928 //1st Tank Traps breached
319
regionsY1 [12] int 12608
320
regionsX2 [12] int 5952
321
regionsY2 [12] int 16064
322
regionsX1 [13] int 5696 //Middle of death causeway
323
regionsY1 [13] int 10432
324
regionsX2 [13] int 6976
325
regionsY2 [13] int 11072
327
regionsX1 [14] int 192 //Player's LZ region for victory
328
regionsY1 [14] int 14016
329
regionsX2 [14] int 2496
330
regionsY2 [14] int 15936
332
regionsX1 [15] int 7104 //enemy's LZ region for blip
333
regionsY1 [15] int 5568
334
regionsX2 [15] int 7872
335
regionsY2 [15] int 6464
338
/* ******************************************** */
340
/* ******************************************** */
342
//sectors to attack (covers 1A-C expansion area, in order of priority to attack)
345
sectorsX1 [0] int 10432
346
sectorsY1 [0] int 12736
347
sectorsX2 [0] int 14272
348
sectorsY2 [0] int 15552
350
sectorsX1 [1] int 8896
351
sectorsY1 [1] int 13760
352
sectorsX2 [1] int 10304
353
sectorsY2 [1] int 15040
355
sectorsX1 [2] int 6336
356
sectorsY1 [2] int 13760
357
sectorsX2 [2] int 8768
358
sectorsY2 [2] int 14144
359
//ravine entrance to 1B
361
sectorsX1 [3] int 2112
362
sectorsY1 [3] int 12736
363
sectorsX2 [3] int 6336
364
sectorsY2 [3] int 14784
366
sectorsX1 [4] int 1600
367
sectorsY1 [4] int 10176
368
sectorsX2 [4] int 5952
369
sectorsY2 [4] int 12608
371
sectorsX1 [5] int 4672
372
sectorsY1 [5] int 8640
373
sectorsX2 [5] int 5696
374
sectorsY2 [5] int 10048
376
sectorsX1 [6] int 4160
377
sectorsY1 [6] int 6464
378
sectorsX2 [6] int 5056
379
sectorsY2 [6] int 8512
381
sectorsX1 [7] int 832
382
sectorsY1 [7] int 6336
383
sectorsX2 [7] int 3392
384
sectorsY2 [7] int 7104
386
sectorsX1 [8] int 4800
387
sectorsY1 [8] int 5056
388
sectorsX2 [8] int 6208
389
sectorsY2 [8] int 6208
391
sectorsX1 [9] int 3392
392
sectorsY1 [9] int 4672
393
sectorsX2 [9] int 4160
394
sectorsY2 [9] int 5440
396
sectorsX1 [10] int 5056
397
sectorsY1 [10] int 4160
398
sectorsX2 [10] int 5312
399
sectorsY2 [10] int 4928
401
sectorsX1 [11] int 4032
402
sectorsY1 [11] int 1216
403
sectorsX2 [11] int 6208
404
sectorsY2 [11] int 3264
406
sectorsX1 [12] int 3392
407
sectorsY1 [12] int 832
408
sectorsX2 [12] int 3776
409
sectorsY2 [12] int 1472
411
sectorsX1 [13] int 2624
412
sectorsY1 [13] int 1600
413
sectorsX2 [13] int 3392
414
sectorsY2 [13] int 1856
416
sectorsX1 [14] int 832
417
sectorsY1 [14] int 1344
418
sectorsX2 [14] int 2496
419
sectorsY2 [14] int 3392
421
sectorsX1 [15] int 1600
422
sectorsY1 [15] int 3520
423
sectorsX2 [15] int 2496
424
sectorsY2 [15] int 4544
426
sectorsX1 [16] int 832
427
sectorsY1 [16] int 1344
428
sectorsX2 [16] int 1728
429
sectorsY2 [16] int 2880
432
/* ******************************************** */
433
/* Enemy Base Blips */
434
/* ******************************************** */
435
numBases int 4 //MAX = 5. Must be same as number of bases listed next
436
basePlayer [0] int 0 //enemy index number who owns base
437
baseMsg [0] INTMESSAGE "C1D_BASE1" //enemy base blip message (prox.txt)
438
baseRegion [0] int 0 //index to regions
439
baseWav1 [0] int 0 //index to baseSnd enemy detected
440
baseWav2 [0] int 3 //index to baseSnd Eradicated
442
basePlayer [1] int 0 //enemy index number who owns base
443
baseMsg [1] INTMESSAGE "C1D_BASE2"
445
baseWav1 [1] int 0 //index to baseSnd enemy detected
446
baseWav2 [1] int 3 //index to baseSnd Eradicated
448
basePlayer [2] int 0 //enemy index number who owns base
449
baseMsg [2] INTMESSAGE "C1D_BASE3"
451
baseWav1 [2] int 0 //index to baseSnd enemy detected
452
baseWav2 [2] int 3 //index to baseSnd Eradicated
454
basePlayer [3] int 0 //do enmy LZ as a base
455
baseMsg [3] INTMESSAGE "C1D_LZ2"
456
baseRegion [3] int 15
457
baseWav1 [3] int 4 //index to baseSnd Enemy LZ detected
458
baseWav2 [3] int -1 //-1 = no sound
460
/* ******************************************** */
462
/* ******************************************** */
463
numGroups int 10 //group MAX = 10
466
grpType [0] int -1 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
467
grpPlayer [0] int 0 //index to enemy number (NP)
468
grpRegion [0] int 3 //index in regions array
469
grpTimeGo [0] int 0 //never triggered (stay!)
470
grpRegionGo [0] int -1 //index in regions array as trigger
471
grpWhoGo [0] int 0 //player number to cross trigger region (may not need?)
472
grpMorale [0] int -1 //-1 don't set morale/leadership/retreat
473
grpLeadership [0] int 0 //leadership value
474
grpRetreatXY [0] int 0 //retreat to base 0 assembly
475
grpPosStart [0] int -1 //No waypoints
476
grpPosMin [0] int -1 //Minimum index in coords array
477
grpPosMax [0] int -1 //Maximum index in coords array
478
grpPosStep [0] int 1 //Step increase for next 'waypoint'
479
grpPosType [0] int 0 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
480
grpFactory [0] int -1 //index factory to reinforce group. -1 = any factory.
481
grpIdealSize [0] int 0 //ideal size. If less than this factory will reinforce
483
grpType [1] int -1 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
484
grpPlayer [1] int 0 //index to enemy number (NP)
485
grpRegion [1] int 4 //index in regions array
486
grpTimeGo [1] int -1 //20s time trigger (always make >= 0 for defence forces)
487
grpRegionGo [1] int 10 //tank trap breach
488
grpWhoGo [1] int 0 //player number to cross trigger region (may not need?)
489
grpMorale [1] int -1 //no morale
490
grpLeadership [1] int 0 //leadership value
491
grpRetreatXY [1] int 0 //retreat (index in coords array) base1 assembly
492
grpPosStart [1] int 0 //run back to HQ
493
grpPosMin [1] int 0 //Minimum index in coords array
494
grpPosMax [1] int 0 //Maximum index in coords array
495
grpPosStep [1] int 1 //Step increase for next 'waypoint'
496
grpPosType [1] int 0 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
497
grpFactory [1] int -1 //index structure to reinforce group. -1 = any factory.
498
grpIdealSize [1] int 0 //ideal size. If less than this factory will reinforce
500
grpType [2] int 0 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
501
grpPlayer [2] int 0 //index to enemy number (NP)
502
grpRegion [2] int 5 //index in regions array
503
grpTimeGo [2] int 3 //30s time trigger (always make >= 0 for defence forces)
504
grpRegionGo [2] int -1 //no region. index in regions array as trigger
505
grpWhoGo [2] int 0 //player number to cross trigger region (may not need?)
506
grpMorale [2] int 90 //morale = 25%
507
grpLeadership [2] int 50 //leadership value = 75%
508
grpRetreatXY [2] int 0 //retreat (index in coords array) base0 assembly
509
grpPosStart [2] int 4 //index in coords array (depends on grpType)
510
grpPosMin [2] int 3 //Minimum index in coords array
511
grpPosMax [2] int 4 //Maximum index in coords array
512
grpPosStep [2] int 1 //Step increase for next 'waypoint'
513
grpPosType [2] int 1 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
514
grpFactory [2] int 2 //index factory to reinforce group. -1 = any factory.
515
grpIdealSize [2] int 10 //ideal size. If less than this factory will reinforce
517
grpType [3] int 0 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
518
grpPlayer [3] int 0 //index to enemy number (NP)
519
grpRegion [3] int 6 //index in regions array
520
grpTimeGo [3] int 6 //10s time trigger (always make >= 0 for defence forces)
521
grpRegionGo [3] int -1 //no region. index in regions array as trigger
522
grpWhoGo [3] int 0 //player number to cross trigger region (may not need?)
523
grpMorale [3] int 90 //pretty timid! morale = 25%
524
grpLeadership [3] int 50 //leadership value = 0%
525
grpRetreatXY [3] int 0 //retreat (index in coords array) base 2 assembly
526
grpPosStart [3] int 4 //index in coords array (depends on grpType)
527
grpPosMin [3] int 2 //Minimum index in coords array
528
grpPosMax [3] int 4 //Maximum index in coords array
529
grpPosStep [3] int 1 //Step increase for next 'waypoint'
530
grpPosType [3] int 1 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
531
grpFactory [3] int 1 //index factory to reinforce group. -1 = any factory.
532
grpIdealSize [3] int 8 //ideal size. If less than this factory will reinforce
534
grpType [4] int 0 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
535
grpPlayer [4] int 0 //index to enemy number (NP)
536
grpRegion [4] int 7 //index in regions array
537
grpTimeGo [4] int 120 //20mins time trigger (always make >= 0 for defence forces)
538
grpRegionGo [4] int 12 //tanktrap breach
539
grpWhoGo [4] int 0 //player number to cross trigger region (may not need?)
540
grpMorale [4] int 50 //morale = 50%
541
grpLeadership [4] int 50 //leadership value = 75%
542
grpRetreatXY [4] int 1 //retreat (index in coords array) base2 assembly
543
grpPosStart [4] int 3 //index in coords array (depends on grpType)
544
grpPosMin [4] int 2 //Minimum index in coords array
545
grpPosMax [4] int 4 //Maximum index in coords array
546
grpPosStep [4] int 1 //Step increase for next 'waypoint'
547
grpPosType [4] int 1 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
548
grpFactory [4] int 0 //index factory to reinforce group. -1 = any factory.
549
grpIdealSize [4] int 6 //ideal size. If less than this factory will reinforce
551
grpType [5] int 0 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
552
grpPlayer [5] int 0 //index to enemy number (NP)
553
grpRegion [5] int 8 //index in regions array
554
grpTimeGo [5] int 180 //30mins time trigger (always make >= 0 for defence forces)
555
grpRegionGo [5] int 13 //index in regions array as protect region
556
grpWhoGo [5] int 0 //player on causeway
557
grpMorale [5] int 50 //morale = 50%
558
grpLeadership [5] int 50 //leadership value = 75%
559
grpRetreatXY [5] int 1 //retreat (index in coords array) cyborg factory2 assembly
560
grpPosStart [5] int 4 //-1 = no waypoints. index in coords array (depends on grpType)
561
grpPosMin [5] int 2 //Minimum index in coords array
562
grpPosMax [5] int 4 //Maximum index in coords array
563
grpPosStep [5] int 1 //Step increase for next 'waypoint'
564
grpPosType [5] int 2 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
565
grpFactory [5] int 3 //index factory to reinforce group. -1 = any factory.
566
grpIdealSize [5] int 10 //ideal size. If less than this factory will reinforce
568
grpType [6] int 0 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
569
grpPlayer [6] int 0 //index to enemy number (NP)
570
grpRegion [6] int 9 //index in regions array (same as base region)
571
grpTimeGo [6] int 180 //30mins time trigger (always make >= 0 for defence forces)
572
grpRegionGo [6] int 13 //death causeway
573
grpWhoGo [6] int 0 //player on causeway
574
grpMorale [6] int 50 //morale = 50%
575
grpLeadership [6] int 50 //leadership value = 75%
576
grpRetreatXY [6] int 1 //retreat last cyborg factory assembly
577
grpPosStart [6] int 2 //index in coords array (depends on grpType)
578
grpPosMin [6] int 2 //Minimum index in coords array
579
grpPosMax [6] int 4 //Maximum index in coords array
580
grpPosStep [6] int 1 //Step increase for next 'waypoint'
581
grpPosType [6] int 3 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
582
grpFactory [6] int 5 //index factory to reinforce group. -1 = any factory.
583
grpIdealSize [6] int 10 //ideal size. If less than this factory will reinforce
585
//phantom group (transport)
586
grpType [7] int 0 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
587
grpPlayer [7] int 0 //index to enemy number (NP)
588
grpRegion [7] int -1 //no region (empty at start)
589
grpTimeGo [7] int 2 //20s time trigger (always make >= 0 for defence forces)
590
grpRegionGo [7] int -1 //death causeway
591
grpWhoGo [7] int 0 //player on causeway
592
grpMorale [7] int 50 //morale = 50%
593
grpLeadership [7] int 50 //leadership value = 75%
594
grpRetreatXY [7] int 1 //retreat last cyborg factory assembly
595
grpPosStart [7] int 2 //index in coords array (depends on grpType)
596
grpPosMin [7] int 2 //Minimum index in coords array
597
grpPosMax [7] int 4 //Maximum index in coords array
598
grpPosStep [7] int 1 //Step increase for next 'waypoint'
599
grpPosType [7] int 3 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
600
grpFactory [7] int 6 //index factory to reinforce group. -1 = any factory.
601
grpIdealSize [7] int 10 //ideal size. If less than this factory will reinforce
604
grpType [8] int 0 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
605
grpPlayer [8] int 0 //index to enemy number (NP)
606
grpRegion [8] int 10 //index in regions array (same as base region)
607
grpTimeGo [8] int 6 //1min time trigger (always make >= 0 for defence forces)
608
grpRegionGo [8] int 13 //death causeway
609
grpWhoGo [8] int 0 //player on causeway
610
grpMorale [8] int 90 //morale = 10%
611
grpLeadership [8] int 50 //leadership value = 50%
612
grpRetreatXY [8] int 1 //retreat last cyborg factory assembly
613
grpPosStart [8] int 4 //index in coords array (depends on grpType)
614
grpPosMin [8] int 2 //Minimum index in coords array
615
grpPosMax [8] int 4 //Maximum index in coords array
616
grpPosStep [8] int 1 //Step increase for next 'waypoint'
617
grpPosType [8] int 3 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
618
grpFactory [8] int 0 //index factory to reinforce group. -1 = any factory.
619
grpIdealSize [8] int 6 //ideal size. If less than this factory will reinforce
621
//Hovers#2 (defensive)
622
grpType [9] int 1 //0 = Ambush/Patrol, 1 = Defence, 2 = Scout, 3 = Attack...
623
grpPlayer [9] int 0 //index to enemy number (NP)
624
grpRegion [9] int 11 //index in regions array (same as base region)
625
grpTimeGo [9] int 6 //1min time trigger (always make >= 0 for defence forces)
626
grpRegionGo [9] int 1 //protect base 1 region
627
grpWhoGo [9] int 0 //player on causeway
628
grpMorale [9] int 90 //morale = 10%
629
grpLeadership [9] int 50 //leadership value = 50%
630
grpRetreatXY [9] int 1 //retreat last cyborg factory assembly
631
grpPosStart [9] int 5 //index in coords array (depends on grpType)
632
grpPosMin [9] int 5 //Minimum index in coords array
633
grpPosMax [9] int 8 //Maximum index in coords array
634
grpPosStep [9] int 1 //Step increase for next 'waypoint'
635
grpPosType [9] int 1 //0 = stop, 1 = loop, 2 = pingpong, 3 = random thru waypoints
636
grpFactory [9] int 0 //index factory to reinforce group. -1 = any factory.
637
grpIdealSize [9] int 6 //ideal size. If less than this factory will reinforce
641
numFactories int 7 //6 //MAX = 10
644
factID [0] int 0 //index to structures
645
factAssXY [0] int 0 //index to assembly point. -1 for don't set
646
factTimeGo [0] int 0 //delay before starting production in 10s
647
factRegionGo [0] int -1 //-1 = no region for trigger (assume WhoGo = 0)
648
factTempMin [0] int 17 //index to starting template
649
factTempMax [0] int 19 //index to maximum template
650
factEvery [0] int 5 //50s .Time in 10s for factory to produce
652
factID [1] int 1 //index to structures
653
factAssXY [1] int -1 //index to assembly point. -1 for don't set
654
factTimeGo [1] int 120 //20 mins
655
factRegionGo [1] int 12 //tank trap breach
656
factTempMin [1] int 7 //index to starting template
657
factTempMax [1] int 13 //index to maximum template
658
factEvery [1] int 5 //50s .Time in 10s for factory to produce
660
factID [2] int 2 //index to structures
661
factAssXY [2] int -1 //index to assembly point. -1 for don't set
662
factTimeGo [2] int 240 //40 mins
663
factRegionGo [2] int 13 //on causeway
664
factTempMin [2] int 10 //index to starting template
665
factTempMax [2] int 13 //index to maximum template
666
factEvery [2] int 5 //50s .Time in 10s for factory to produce
669
factID [3] int 3 //index to structures
670
factAssXY [3] int -1 //index to assembly point. -1 for don't set
671
factTimeGo [3] int 0 //delay before starting production in 10s
672
factRegionGo [3] int -1 //-1 = no region for trigger (assume WhoGo = 0)
673
factTempMin [3] int 14 //index to starting template
674
factTempMax [3] int 16 //index to maximum template
675
factEvery [3] int 4 //40s .Time in 10s for factory to produce
677
factID [4] int 4 //index to structures
678
factAssXY [4] int -1 //index to assembly point. -1 for don't set
679
factTimeGo [4] int 120 //20 mins delay before starting production in 10s
680
factRegionGo [4] int 12 //tanktrap breach
681
factTempMin [4] int 14 //index to starting template
682
factTempMax [4] int 16 //index to maximum template
683
factEvery [4] int 4 //40s .Time in 10s for factory to produce
685
factID [5] int 5 //index to structures
686
factAssXY [5] int 1 //index to assembly point. -1 for don't set
687
factTimeGo [5] int 240 //40 mins delay before starting production in 10s
688
factRegionGo [5] int 13 //on causeway
689
factTempMin [5] int 14 //index to starting template
690
factTempMax [5] int 16 //index to maximum template
691
factEvery [5] int 4 //40s .Time in 10s for factory to produce
694
factID [6] int -2 //Phantom Factory (for droids coming in off edge of map)
695
factAssXY [6] int 1 //index to LZ.MUST BE SET FOR ENEMY TRANSPORTS
696
factTimeGo [6] int 180 //30mins delay before starting production in 10s
697
factRegionGo [6] int 13 //middle of causeway
698
factTempMin [6] int 9 //index to starting template
699
factTempMax [6] int 12 //index to maximum template
700
factEvery [6] int 60 //10mins .Time in 10s for factory to produce
703
//These should be same in each file, but may need slight alterations
704
player int 0 //player's player number
705
crate FEATURESTAT "Crate"
706
oilRes FEATURESTAT "OilResource"
707
artRange int 200 //171 //range to artifact about 1.5 tiles
708
objectiveRange int 640 //range to objective 5 Tiles
709
wayRange int 300 //range to waypoint 2ish tiles
710
targetRange int 768 //range for target spotting
711
targetMax int 4 //maximum number of targets to store for each enemy
712
lostSnd SOUND "pcv470.ogg" //mission failed
713
attackSnd1 SOUND "pcv337.ogg" //Base Under Attack
714
artSnd1 SOUND "pcv351.ogg" //artifact sounds
715
artSnd2 SOUND "pcv352.ogg"
716
transporter TEMPLATE "Transporter" //for enemy transports
717
transSnd SOUND "pcv381.ogg" //enemy transport landing
718
LZComp SOUND "pcv445.ogg"
719
LZClear SOUND "lz-clear.ogg"
722
baseSnd[0] SOUND "pcv379.ogg" //Enemy Base Detected
723
baseSnd[1] SOUND "pcv379.ogg" //Enemy Base Detected
724
baseSnd[2] SOUND "pcv379.ogg" //Enemy Base Detected
725
baseSnd[3] SOUND "pcv394.ogg" //Enemy base eradicated
726
baseSnd[4] SOUND "pcv382.ogg" //Enemy LZ detected
728
/* NEW STUFF FOR THREAT ASSESSMENT */
729
//this only works on groups with Morale Values
730
//if not declared just won't do anything!!
731
threatLight int 2 //value for light vehicles
732
threatMedium int 4 //value for medium vehicles
733
threatHeavy int 8 //value for large vehicles
734
threatRange int 750 //range to check for enemy and player threats
735
/* end of NEW STUFF */