summaryrefslogtreecommitdiffstats
path: root/games/xspacewarp/XSpacewarp
blob: 15960e6a1e8bb3d423796094d5a25fb3e085e601 (plain)
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
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
! app-defaults for xspacewarp 1.2  (12/22/95)

! whether to use mouse pointer inside xspacewarp window
*nomouse: true

! number rows of 9x15 blocks in a sector of the universe
*rows: 26

! number columns of 9x15 blocks in a sector of the universe
*columns: 79

! The following resources refer to the number of bases, jovians,
! stars and blackholes in the universe. "min" values correspond
! to the lowest skill level of the game and "max" values
! correspond to the highest skill level. Values for the other
! skill levels are interpolated linearly between the "min" value
! and the "max" value.  Populations are chosen randomly in the
! range: (average) +/- (variation).

! Limits for the average population and the variation in
! population for bases.  The actual average and variation used
! is interpolated linearly from these limits as a function of
! the skill level.

*minAverageBasePop: 18
*maxAverageBasePop: 18
*minVariationBasePop: 3
*maxVariationBasePop: 3

! Limits for the average population and the variation in
! population for jovians.

*minAverageJovianPop: 10
*maxAverageJovianPop: 73
*minVariationJovianPop: 3
*maxVariationJovianPop: 3

! Limits for the average population and the variation in
! population for stars.

*minAverageStarPop: 75
*maxAverageStarPop: 75
*minVariationStarPop: 5
*maxVariationStarPop: 5

! Limits for the average population and the variation in
! population for blackholes.

*minAverageBlackholePop: 5
*maxAverageBlackholePop: 5
*minVariationBlackholePop: 4
*maxVariationBlackholePop: 4

! color for text and graphical borders
*foreground: white

! background color for everything
*background: black

! visual representation of the endever (icon must have exactly 3 characters)
*endeverColor: white
*endeverIcon: >-0

! visual representation of the jovians (icon must have exactly 3 characters)
*jovianColor: white
*jovianIcon: <*>

! visual representation of the bases (icon must have exactly 3 characters)
*baseColor: white
*baseIcon: +0+

! visual representation of the stars (icon must have exactly 1 character)
*starColor: white
*starIcon: .

! visual representation of the blackholes (icon must have exactly 1 character)
*blackholeColor: black
*blackholeIcon: \040

! faser color
*faserColor: white

! torpedo color
*torpedoColor: white

! Fasers are drawn as dashed lines. The dash list describes the
! dash pattern of the line. A list such as "3 2 4" (elements of
! the list are separated by \040, the octal code for a space
! character) will make a dash pattern that has the first 3
! pixels of the line lit, the next 2 pixels dark and the next 4
! pixels lit. This pattern is repeated through the dashed
! line. The dash offset is the pixel in the dash list at which
! to begin the pattern. Eg, offset=3 in the example above would
! mean starting the dashed line with 2 lit pixels followed by 4
! unlit pixels and then 3 lit pixels, etc.
*faserDashList: 4\0404
*faserDashOffset: 0

! Thickness of faser in pixels
*faserWidth: 9

! millisec time determines speed of ion thrusters
*endeverThrustSpeed: 100

! millisec interval for ship (base, jovian, endever) re-energizing
*shipEnergizeSpeed: 3000

! millisec interval between jovian actions
*jovianActionSpeed: 100

! millisec interval for faser movement
*faserSpeed: 15

! millisec interval for torpedo movement
*torpedoSpeed: 30

! dimensions of torpedo (in pixels)
*torpedoLength: 6
*torpedoWidth: 9

! millisec interval for rate of explosion growth
*explosionSpeed: 20

*explosionColor: white

! radius to use for most ship explosions
*explosionRadiusSmall: 35

! radius to use for endever self-destruct explosion
*explosionRadiusBig: 200

! endever self-destruct code
*selfDestructCode: 123

! endever default faser/torpedo angle (radians). type float.
*defaultFiringAngle: 0.0

! starting number of torpedoes for endever
*maxTorpedoes: 10

*maxJoviansPerSector: 3
*maxStarsPerSector: 5

! probability a sector is masked (percent)
*maskProbability: 5

! When the Endever leaps into a new sector, it gets placed at a
! random location inside that sector. The euclidean distance
! (in pixels) from this location to the jovians inside the
! sector is at least this value.

*minJovianDistance: 150

! min percent energy needed for endever fasers to work
*endeverMinFaserEnergy: 10

! min percent energy for endever warpdrive to work
*endeverMinWarpEnergy: 20

! min percent energy for endever ion thrusters to work
*endeverMinThrustEnergy: 10

! min percent energy needed for jovian fasers to work
*jovianMinFaserEnergy: 10

! min percent energy for jovian warpdrive to work
*jovianMinWarpEnergy: 20

! min percent energy for ion thrusters to work
*jovianMinThrustEnergy: 10


! Now some "artificial intelligence" parameters for controlling 
! jovian behavior. 

! If the percent energy levels (ie, percent of maximum energy)
! of the thrusters, warpdrive, fasers and shields of a jovian
! drop to levels less than the respective "retreat" energies
! given below, then the jovian will exit the battle scene with
! probability (given as a percent)
! jovianRetreatProbability. jovianRetreatSpeed (type float) is
! the average rate (movements/sec) at which the jovian retreats
! toward the sector edge. Thus if jovianRetreatSpeed is 1.4,
! then a fleeing jovian will make a movement toward the edge of
! the sector, on average, once every 1.4 seconds. And if the
! jovian happens to already be on the edge of the sector, then
! the jovian will leap to a different sector (if its warpdrive
! energy is adequate) after a pause of 1.4 seconds on average.

*jovianThrustRetreatEnergy: 30
*jovianWarpRetreatEnergy: 40
*jovianFaserRetreatEnergy: 30
*jovianShieldRetreatEnergy: 40
*jovianRetreatProbability: 50
*jovianRetreatSpeed: 1.0


! If the endever or a base being raided is in the same sector as
! a jovian, then the jovian moves or shoots (on average) every
! jovianMaxFightFrequency seconds in the highest skill level of
! the game and every jovianMinFightFrequency seconds in lowest
! skill level. Fight frequencies for the other skill levels are
! interpolated linearly between jovianMinFightFrequency and
! jovianMaxFightFrequency.  These resources are type "float".

*jovianMaxFightFrequency: 1.5
*jovianMinFightFrequency: 3.5

! When a sector contains a base and a jovian, but not the
! endever, then there is a possibility of an attack or "raid" on
! the base. These resources are the average time in seconds
! before some jovian somewhere in the universe launches a raid
! on a base. jovianMaxRaidFrequency is for the highest skill
! level, jovianMinRaidFrequency is for the lowest skill
! level. Values for other skill levels are interpolated linearly
! between these extremes.  These resources are type "float".

*jovianMaxRaidFrequency: 40.0
*jovianMinRaidFrequency: 400.0

! If a jovian is in a sector containing neither a base nor the
! endever, then there is a possibility of the jovian leaping to
! a different sector. These resources are the average number of
! seconds until some jovian somewhere in the universe leaps to a
! sector containing a base or the
! endever. jovianMaxLeapFrequency is for the highest skill level
! and jovianMinLeapFrequency is for the lowest skill
! level. Values for the other skill levels are interpolated in
! between these extremes.  These resources are type "float".

*jovianMaxLeapFrequency: 40.0
*jovianMinLeapFrequency: 400.0

! key bindings for the endever

*widget.translations: #replace \n\
		      <Expose>: expose() \n\
		      <Key>KP_Up: move(up) \n\
		      <Key>KP_Down: move(down) \n\
		      <Key>KP_Left: move(left) \n\
		      <Key>KP_Right: move(right) \n\
		      <Key>Up: move(up) \n\
		      <Key>Down: move(down) \n\
		      <Key>Left: move(left) \n\
		      <Key>Right: move(right) \n\
		      <Key>space: mission(start) sector() \n\
		      <Key>1: input() scanner() \n\
		      <Key>2: input() summary() \n\
		      <Key>3: input() leap() \n\
		      <Key>4: input() shields() \n\
		      <Key>5: input() fasers() \n\
		      <Key>6: input() torpedoes() \n\
		      <Key>7: input() selfdestruct() \n\
		      <Key>8: input() \n\
		      <Key>9: input() \n\
		      <Key>0: input() \n\
		      <Key>-: input() \n\
		      <Key>Return: endinput() \n\
		      <Key>BackSpace: backspace() \n\
		      <Key>n: orientation(next) replay(no) \n\
		      <Key>o: mission(orient) \n\
		      <Key>p: orientation(prev) pause() \n\
		      <Key>q: orientation(quit) \n\
		      <Key>y: replay(yes)

! end app-defaults