1###############################################################################
2# This is an example mission text file.
3# Important rules:
4# - There are several blocks like "INFO" consisting of special attributes
5# - Assigments have the form "attribute = value" and are put in one line
6# - All attributes are optional if not described as "required"
7# - Everything is case-insensitive (iNfO=info=INFO)
8# - Quotes have to be used if a value consists of whitespace (tabs, spaces)
9# - Comments start with a '#' and end with a line feed (end of line)
10# - Syntax errors are currently displayed on stderr when initing the mission
11###############################################################################
12
13
14
15###############################################################################
16# INFO block:
17#   NAME: Mission name
18#   BRIEFING: Mission briefing
19#   PILOTnn: Allied pilot number nn, nn in [1...10]
20#   - Allied fighters get their pilots in the order defined here
21#   - Possible values (predefined in this order):
22#     PRIMETIME, HEPTARGON, LARA, SHARK, BOSS, DRDOOM, SHADOW, MATRIX,
23#     FIREBIRD, THUNDER
24#   FIGHTERn: Set fighter selection number n, n in [1...3]
25#   - Possible values: FALCON, HAWK, STORM, HAWK2, REDARROW, PHOENIX
26#   - Predefined: FIGHTER1=FALCON, FIGHTER2=HAWK, FIGHTER3=STORM
27#   WEAPONn: Set weapon pack selection number n, n in [1...3]
28#   - Possible values: AAMPACK, AGMPACK, DFPACK
29#   - Predefined: WEAPON1=AAMPACK, WEAPON2=AGMPACK, WEAPON3=DFPACK
30#   MAXTIME: Maximum time in seconds (float) to receive a score bonus
31#     Predefined: 120s
32###############################################################################
33
34INFO
35  name = "DEMO1"
36  briefing = "We place an enemy fighter near the player and a surface air cannon to flat ground. After 15 seconds dr doom will appear near the player and help."
37  PiLoT1 = DRDOOM
38  pilot2 = primetime
39  maxtime = 150
40
41
42
43###############################################################################
44# TERRAIN block:
45#   TYPE: Type of landscape to be randomly generated
46#     ALPINE (predefined), ALPINE_LOW, ALPINE_EROSION, ALPINE_SEA, SEA, MOON,
47#     CANYON, DESERT
48#   FILE: 32 bit TGA file, alpha channel=height values, RGB=landscape type
49#     The colors for landscape types depend on the landscape type
50#     Alpine: blue=water, dark green=woods, light green=grass, white=glacier,
51#             grey=gravel, dark grey=rocks
52#     Canyon: blue=water, white=sand, red=stone/rocks, brown=tree&sand
53#     Desert: blue=water, green=cactus, yellow=sand
54#   SCALEHEIGHT: Scaling factor for height values
55#   TREE[0-2]: tree borders for deciduous, coniferious, mixed, pine woods
56#   HEADING: Degree of northern direction, 0...360, 0 is predefined
57#   WEATHER: SUNNY, CLEAR, CLOUDY, DULL, THUNDERSTORM
58#   TIME: Time of the day (hours) in [0...24], determines day/night, sun level
59###############################################################################
60
61TERRAIN
62  type = alpine_erosion
63  heading =	90
64  weather = sunny
65  time = 8
66
67
68
69###############################################################################
70# OBJECT block: a block for each object, first object is the player!
71#   TYPE: Type of object (ignored for the player)
72#     FALCON, SWALLOW, HAWK, HAWK2, BUZZARD, CROW, PHOENIX, REDARROW,
73#     BLACKBIRD, STORM, TRANSPORT, WIESEL, PANTHER, SAM, SAC, PICKUP, TRUCK,
74#     TRUCK2, SAMTRUCK, DESTROYER, CRUISER, TENT, BIGTENT, CONTAINER, HALL,
75#     HALL2, OILRIG, COMPLEX, RADAR, MOONBASE, DEPOT, LASERBARRIER, ASTEROID
76#   PARTY: 1 for player ally, any other value for enemies
77#   LEVEL: Level of artificial intelligence in [0...10], 10 is highest
78#     Note that the difficulty settings influence the level additionally!
79#   X: Relative x coordinate on the map
80#   Y: Relative y coordinate on the map
81#   INITTIME: Time in seconds (float value) after that the fighter appeares
82#   CRITICAL: 1 for mission objective, 0 else
83#   - Enemies are critical at default, allies are not critical at default
84#   - If any allied critical object is destroyed, the mission is failed
85#   - If all critical enemy objects are destroyed, the mission is successful
86###############################################################################
87
88OBJECT		# Player
89  x = 0
90  y = 0
91  # always: type is taken from selection, party=1, inittime=0, critical=1
92
93OBJECT		# The first enemy
94  type = crow
95  party = 0
96  level = 2
97  x = 40
98  y = 40
99  # implicit: inittime=0, critical=1
100
101
102
103###############################################################################
104# RELCOORDS block: set origin of the coordinate system, (0,0) is predefined
105#   FIND: set origin to PLAYER, LASTOBJECT, FLATTERRAIN
106#     Use this feature to place enemies later on near to the player,
107#     or to place ground objects on flat terrain
108#   QUADRANT: Set map quadrant in [1...16] for searching flat terrain
109#   - Quadrants are 1...4 first row, 5...8 second row, etc.
110#   - Note that 4 and 1, or 16 and 1 are adjacent due to the cyclic map
111#   - Leave the quadrant to get the best flat terrain of the map
112###############################################################################
113
114RELCOORDS
115  find = flatterrain
116  quadrant = 1	# player is at the corner of the first quadrant
117			# so lets set (0,0) to flat terrain somewhere in quadrant 1
118
119
120OBJECT		# place a surface-air-cannon
121  type = sac
122  level = 0
123  party = 0
124  x = 0
125  y = 0		# (0,0) is now at the flat terrain, not the player!
126  critical = 1
127
128
129
130RELCOORDS
131  find = player	# set player as the origin of the coordinate system
132
133OBJECT		# get DrDoom (see INFO) as reinforcement after 15 seconds
134  type = falcon
135  party = 1
136  x = 0
137  y = 50
138  inittime = 15
139
140
141
142###############################################################################
143# TEXT block: print text to the screen
144#   MESSAGE: the message string, currently only one line
145#   STARTTIME: time in seconds (float value)
146#   DELAY: describes how long the text is displayed
147###############################################################################
148
149TEXT
150  message = "dr doom has arrived!"
151  starttime = 15
152  delay = 3.5
153