6
|
1 /*--------------------------------------------------------------------------
|
|
2 NETREK II -- Paradise
|
|
3
|
|
4 Permission to use, copy, modify, and distribute this software and its
|
|
5 documentation, or any derivative works thereof, for any NON-COMMERCIAL
|
|
6 purpose and without fee is hereby granted, provided that this copyright
|
|
7 notice appear in all copies. No representations are made about the
|
|
8 suitability of this software for any purpose. This software is provided
|
|
9 "as is" without express or implied warranty.
|
|
10
|
|
11 Xtrek Copyright 1986 Chris Guthrie
|
|
12 Netrek (Xtrek II) Copyright 1989 Kevin P. Smith
|
|
13 Scott Silvey
|
|
14 Paradise II (Netrek II) Copyright 1993 Larry Denys
|
|
15 Kurt Olsen
|
|
16 Brandon Gillespie
|
|
17 --------------------------------------------------------------------------*/
|
|
18
|
|
19 #include "config.h"
|
|
20 #include <stdio.h>
|
|
21 #include <sys/types.h>
|
|
22 #include <sys/ipc.h>
|
|
23 #include <sys/shm.h>
|
|
24 #include <string.h>
|
|
25
|
|
26 #include "defs.h"
|
|
27 #include "struct.h"
|
|
28 #include "data.h"
|
|
29 #include "shmem.h"
|
|
30
|
|
31
|
|
32 /* This defines the core flags for a normal ship */
|
|
33 #define SFNCORE \
|
|
34 /*SFNCANDOCK|*/SFNCANORBIT | SFNARMYNEEDKILL|SFNCANWARP|SFNHASPHASERS|SFNARMYNEEDKILL
|
|
35
|
|
36
|
|
37
|
|
38
|
|
39
|
|
40
|
|
41 /*-------------------------------INTERNAL FUNCTONS------------------------*/
|
|
42
|
|
43 /*---------------------------------GETSHIPDEFAULTS------------------------*/
|
|
44 /*
|
|
45 * This function loads the shipvals array with the default values for the
|
|
46 * ships. They can later be changed with the sysdefaults.
|
|
47 */
|
|
48
|
|
49
|
|
50 void
|
|
51 getshipdefaults()
|
|
52 {
|
|
53 int i;
|
|
54
|
|
55 for (i = 0; i < NUM_TYPES; i++)
|
|
56 shipvals[i].s_type = i;
|
|
57
|
|
58 /* comprehensive definition of SCOUT */
|
|
59 shipvals[SCOUT].s_alttype = 0;
|
|
60 strcpy(shipvals[SCOUT].s_name, "Scout");
|
|
61 shipvals[SCOUT].s_turns = 570000;
|
|
62 shipvals[SCOUT].s_imp.acc = 200;
|
|
63 shipvals[SCOUT].s_imp.dec = 300; /* was: 270; (BG) */
|
|
64 shipvals[SCOUT].s_imp.cost = 2;
|
|
65 shipvals[SCOUT].s_imp.maxspeed = 12;
|
|
66 shipvals[SCOUT].s_imp.etemp = 1000;
|
|
67 shipvals[SCOUT].s_after.acc = 700;
|
|
68 shipvals[SCOUT].s_after.dec = 270;
|
|
69 shipvals[SCOUT].s_after.cost = 40;
|
|
70 shipvals[SCOUT].s_after.maxspeed = 14;
|
|
71 shipvals[SCOUT].s_after.etemp = 35000;
|
|
72 if (configvals->bronco_shipvals)
|
|
73 {
|
|
74 shipvals[SCOUT].s_warp.acc = 10000;
|
|
75 shipvals[SCOUT].s_warp.dec = 200;
|
|
76 shipvals[SCOUT].s_warp.cost = 14;
|
|
77 shipvals[SCOUT].s_warp.maxspeed = 19;
|
|
78 shipvals[SCOUT].s_warp.etemp = 9000;
|
|
79 shipvals[SCOUT].s_warpinitcost = 909;
|
|
80 shipvals[SCOUT].s_warpinittime = 30;
|
|
81 shipvals[SCOUT].s_warpprepspeed = 2;
|
|
82 }
|
|
83 else
|
|
84 {
|
|
85 shipvals[SCOUT].s_warp.acc = 10000;
|
|
86 shipvals[SCOUT].s_warp.dec = 200;
|
|
87 shipvals[SCOUT].s_warp.cost = 13; /* was: 14; (BG) */
|
|
88 shipvals[SCOUT].s_warp.maxspeed = 32; /* was: 27; (BG) */
|
|
89 shipvals[SCOUT].s_warp.etemp = 9000;
|
|
90 shipvals[SCOUT].s_warpinitcost = 909;
|
|
91 shipvals[SCOUT].s_warpinittime = 30;
|
|
92 shipvals[SCOUT].s_warpprepspeed = 3;
|
|
93 }
|
|
94 shipvals[SCOUT].s_mass = 1500;
|
|
95 shipvals[SCOUT].s_tractstr = 2000;
|
|
96 shipvals[SCOUT].s_tractrng = 0.7;
|
|
97 shipvals[SCOUT].s_tractcost = 3;
|
|
98 shipvals[SCOUT].s_tractetemp = 1000;
|
|
99 shipvals[SCOUT].s_torp.damage = 25;
|
|
100 shipvals[SCOUT].s_torp.speed = 16;
|
|
101 shipvals[SCOUT].s_torp.cost = 175;
|
|
102 #ifndef OLDSHIPVALS
|
|
103 shipvals[SCOUT].s_torp.fuse = 16;
|
|
104 #else
|
|
105 shipvals[SCOUT].s_torp.fuse = 15;
|
|
106 #endif
|
|
107 shipvals[SCOUT].s_torp.wtemp = 7;
|
|
108 shipvals[SCOUT].s_torp.wtemp_halfarc = 32;
|
|
109 shipvals[SCOUT].s_torp.wtemp_factor = 9;
|
|
110 shipvals[SCOUT].s_torp.aux = 0;
|
|
111 shipvals[SCOUT].s_phaser.damage = 75;
|
|
112 shipvals[SCOUT].s_phaser.speed = 4500;
|
|
113 shipvals[SCOUT].s_phaser.cost = 525;
|
|
114 shipvals[SCOUT].s_phaser.fuse = 10;
|
|
115 #ifndef OLDSHIPVALS
|
|
116 shipvals[SCOUT].s_phaser.wtemp = 52;
|
|
117 #else
|
|
118 shipvals[SCOUT].s_phaser.wtemp = 50;
|
|
119 #endif
|
|
120 shipvals[SCOUT].s_missile.damage = 0;
|
|
121 shipvals[SCOUT].s_missile.speed = 0;
|
|
122 shipvals[SCOUT].s_missile.cost = 0;
|
|
123 shipvals[SCOUT].s_missile.fuse = 0;
|
|
124 shipvals[SCOUT].s_missile.wtemp = 0;
|
|
125 shipvals[SCOUT].s_missile.count = 0;
|
|
126 shipvals[SCOUT].s_missile.aux = 0;
|
|
127 shipvals[SCOUT].s_missilestored = 0;
|
|
128 shipvals[SCOUT].s_plasma.damage = -1;
|
|
129 shipvals[SCOUT].s_plasma.speed = 0;
|
|
130 shipvals[SCOUT].s_plasma.cost = 0;
|
|
131 shipvals[SCOUT].s_plasma.fuse = 0;
|
|
132 shipvals[SCOUT].s_plasma.wtemp = 50;
|
|
133 shipvals[SCOUT].s_plasma.aux = 0;
|
|
134 shipvals[SCOUT].s_maxwpntemp = 1000;
|
|
135 shipvals[SCOUT].s_wpncoolrate = 3;
|
|
136 if (configvals->bronco_shipvals)
|
|
137 shipvals[SCOUT].s_maxegntemp = 1000;
|
|
138 else
|
|
139 shipvals[SCOUT].s_maxegntemp = 1500;
|
|
140 shipvals[SCOUT].s_egncoolrate = 8;
|
|
141 shipvals[SCOUT].s_maxfuel = 5000;
|
|
142 shipvals[SCOUT].s_recharge = 16;
|
|
143 shipvals[SCOUT].s_mingivefuel = 0;
|
|
144 shipvals[SCOUT].s_takeonfuel = 150;
|
|
145 if (configvals->fuel_explosions)
|
|
146 {
|
|
147 shipvals[SCOUT].s_expldam = 35; /* was: 40; (BG) */
|
|
148 shipvals[SCOUT].s_fueldam = 50; /* was: 45; (BG) */
|
|
149 }
|
|
150 else
|
|
151 {
|
|
152 shipvals[SCOUT].s_expldam = 75;
|
|
153 shipvals[SCOUT].s_fueldam = 0;
|
|
154 }
|
|
155 shipvals[SCOUT].s_armyperkill = 2;
|
|
156 shipvals[SCOUT].s_maxarmies = 2;
|
|
157 if (configvals->bronco_shipvals)
|
|
158 shipvals[SCOUT].s_bomb = 10;
|
|
159 else
|
|
160 shipvals[SCOUT].s_bomb = 0;
|
|
161 shipvals[SCOUT].s_repair = 80;
|
|
162 shipvals[SCOUT].s_maxdamage = 75;
|
|
163 shipvals[SCOUT].s_maxshield = 75;
|
|
164 shipvals[SCOUT].s_shieldcost = 2;
|
|
165 shipvals[SCOUT].s_detcost = 100;
|
|
166 shipvals[SCOUT].s_detdist = 1750;
|
|
167 if (configvals->bronco_shipvals)
|
|
168 {
|
|
169 shipvals[SCOUT].s_cloakcost = 85;
|
|
170 shipvals[SCOUT].s_scanrange = -1;
|
|
171 }
|
|
172 else
|
|
173 {
|
|
174 shipvals[SCOUT].s_cloakcost = 50;
|
|
175 #ifdef LONG_SCANRANGE
|
|
176 shipvals[SCOUT].s_scanrange = 8000;
|
|
177 #else
|
|
178 shipvals[SCOUT].s_scanrange = 5000;
|
|
179 #endif
|
|
180 }
|
|
181 shipvals[SCOUT].s_numports = 0;
|
|
182 shipvals[SCOUT].s_letter = 's';
|
|
183 shipvals[SCOUT].s_desig1 = 'S';
|
|
184 shipvals[SCOUT].s_desig2 = 'C';
|
|
185 shipvals[SCOUT].s_bitmap = 0;
|
|
186 shipvals[SCOUT].s_width = 20;
|
|
187 shipvals[SCOUT].s_height = 20;
|
|
188 shipvals[SCOUT].s_timer = 0;
|
|
189 shipvals[SCOUT].s_maxnum = 32;
|
|
190 shipvals[SCOUT].s_rank = 0;
|
|
191 shipvals[SCOUT].s_numdefn = 0;
|
|
192 shipvals[SCOUT].s_numplan = 0;
|
|
193 if (configvals->warpdrive)
|
|
194 shipvals[SCOUT].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS;
|
|
195 else
|
|
196 shipvals[SCOUT].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS;
|
|
197
|
|
198
|
|
199 /* comprehensive definition of DESTROYER */
|
|
200 shipvals[DESTROYER].s_alttype = 1;
|
|
201 strcpy(shipvals[DESTROYER].s_name, "Destroyer");
|
|
202 shipvals[DESTROYER].s_turns = 310000;
|
|
203 shipvals[DESTROYER].s_imp.acc = 200;
|
|
204 shipvals[DESTROYER].s_imp.dec = 300;
|
|
205 shipvals[DESTROYER].s_imp.cost = 3;
|
|
206 shipvals[DESTROYER].s_imp.maxspeed = 10;
|
|
207 shipvals[DESTROYER].s_imp.etemp = 1000;
|
|
208 shipvals[DESTROYER].s_after.acc = 700;
|
|
209 shipvals[DESTROYER].s_after.dec = 270;
|
|
210 shipvals[DESTROYER].s_after.cost = 100;
|
|
211 shipvals[DESTROYER].s_after.maxspeed = 12;
|
|
212 shipvals[DESTROYER].s_after.etemp = 40000;
|
|
213 if (configvals->bronco_shipvals)
|
|
214 {
|
|
215 shipvals[DESTROYER].s_warp.acc = 10000;
|
|
216 shipvals[DESTROYER].s_warp.dec = 300;
|
|
217 shipvals[DESTROYER].s_warp.cost = 22;
|
|
218 shipvals[DESTROYER].s_warp.maxspeed = 15;
|
|
219 shipvals[DESTROYER].s_warp.etemp = 8000;
|
|
220 shipvals[DESTROYER].s_warpinitcost = 1272;
|
|
221 shipvals[DESTROYER].s_warpinittime = 50;
|
|
222 shipvals[DESTROYER].s_warpprepspeed = 2;
|
|
223 }
|
|
224 else
|
|
225 {
|
|
226 shipvals[DESTROYER].s_warp.acc = 10000;
|
|
227 shipvals[DESTROYER].s_warp.dec = 300;
|
|
228 shipvals[DESTROYER].s_warp.cost = 21; /* was: 22; (BG) */
|
|
229 shipvals[DESTROYER].s_warp.maxspeed = 27; /* was: 22; (BG) */
|
|
230 shipvals[DESTROYER].s_warp.etemp = 8000;
|
|
231 shipvals[DESTROYER].s_warpinitcost = 1272;
|
|
232 shipvals[DESTROYER].s_warpinittime = 50;
|
|
233 shipvals[DESTROYER].s_warpprepspeed = 3;
|
|
234 }
|
|
235 shipvals[DESTROYER].s_mass = 1800;
|
|
236 shipvals[DESTROYER].s_tractstr = 2500;
|
|
237 shipvals[DESTROYER].s_tractrng = 0.9;
|
|
238 shipvals[DESTROYER].s_tractcost = 4;
|
|
239 shipvals[DESTROYER].s_tractetemp = 1000;
|
|
240 shipvals[DESTROYER].s_torp.damage = 30;
|
|
241 shipvals[DESTROYER].s_torp.speed = 14;
|
|
242 shipvals[DESTROYER].s_torp.cost = 210;
|
|
243 shipvals[DESTROYER].s_torp.fuse = 30;
|
|
244 shipvals[DESTROYER].s_torp.wtemp = 11;
|
|
245 shipvals[DESTROYER].s_torp.wtemp_halfarc = 32;
|
|
246 shipvals[DESTROYER].s_torp.wtemp_factor = 9;
|
|
247 shipvals[DESTROYER].s_torp.aux = 0;
|
|
248 shipvals[DESTROYER].s_phaser.damage = 85;
|
|
249 shipvals[DESTROYER].s_phaser.speed = 5100;
|
|
250 shipvals[DESTROYER].s_phaser.cost = 595;
|
|
251 shipvals[DESTROYER].s_phaser.fuse = 10;
|
|
252 shipvals[DESTROYER].s_phaser.wtemp = 59;
|
|
253 shipvals[DESTROYER].s_missile.damage = 20;
|
|
254 shipvals[DESTROYER].s_missile.speed = 8;
|
|
255 shipvals[DESTROYER].s_missile.cost = 900;
|
|
256 shipvals[DESTROYER].s_missile.fuse = 100;
|
|
257 shipvals[DESTROYER].s_missile.wtemp = 100;
|
|
258 shipvals[DESTROYER].s_missile.count = 2;
|
|
259 shipvals[DESTROYER].s_missile.aux = 2;
|
|
260 shipvals[DESTROYER].s_missilestored = 8;
|
|
261 shipvals[DESTROYER].s_plasma.damage = 75;
|
|
262 shipvals[DESTROYER].s_plasma.speed = 15;
|
|
263 shipvals[DESTROYER].s_plasma.cost = 2250;
|
|
264 shipvals[DESTROYER].s_plasma.fuse = 30;
|
|
265 shipvals[DESTROYER].s_plasma.wtemp = 217;
|
|
266 shipvals[DESTROYER].s_plasma.aux = 1;
|
|
267 shipvals[DESTROYER].s_maxwpntemp = 1000;
|
|
268 shipvals[DESTROYER].s_wpncoolrate = 2;
|
|
269 if (configvals->bronco_shipvals)
|
|
270 shipvals[DESTROYER].s_maxegntemp = 1000;
|
|
271 else
|
|
272 shipvals[DESTROYER].s_maxegntemp = 1500;
|
|
273 shipvals[DESTROYER].s_egncoolrate = 7;
|
|
274 shipvals[DESTROYER].s_maxfuel = 7000;
|
|
275 shipvals[DESTROYER].s_recharge = 22;
|
|
276 shipvals[DESTROYER].s_mingivefuel = 0;
|
|
277 shipvals[DESTROYER].s_takeonfuel = 150;
|
|
278 if (configvals->fuel_explosions)
|
|
279 {
|
|
280 shipvals[DESTROYER].s_expldam = 65; /* was: 50; (BG) */
|
|
281 shipvals[DESTROYER].s_fueldam = 45; /* was: 50; (BG) */
|
|
282 }
|
|
283 else
|
|
284 {
|
|
285 shipvals[DESTROYER].s_expldam = 100;
|
|
286 shipvals[DESTROYER].s_fueldam = 0;
|
|
287 }
|
|
288 shipvals[DESTROYER].s_armyperkill = 2;
|
|
289 #ifndef OLDSHIPVALS
|
|
290 shipvals[DESTROYER].s_maxarmies = 4;
|
|
291 #else
|
|
292 shipvals[DESTROYER].s_maxarmies = 5;
|
|
293 #endif
|
|
294 if (configvals->bronco_shipvals)
|
|
295 shipvals[DESTROYER].s_bomb = 10;
|
|
296 else
|
|
297 shipvals[DESTROYER].s_bomb = 5;
|
|
298 shipvals[DESTROYER].s_repair = 100;
|
|
299 shipvals[DESTROYER].s_maxdamage = 85;
|
|
300 shipvals[DESTROYER].s_maxshield = 85;
|
|
301 shipvals[DESTROYER].s_shieldcost = 3;
|
|
302 shipvals[DESTROYER].s_detcost = 100;
|
|
303 shipvals[DESTROYER].s_detdist = 1750;
|
|
304 if (configvals->bronco_shipvals)
|
|
305 {
|
|
306 shipvals[DESTROYER].s_cloakcost = 105;
|
|
307 shipvals[DESTROYER].s_scanrange = -1;
|
|
308 }
|
|
309 else
|
|
310 {
|
|
311 shipvals[DESTROYER].s_cloakcost = 75;
|
|
312 shipvals[DESTROYER].s_scanrange = 1000;
|
|
313 }
|
|
314 shipvals[DESTROYER].s_numports = 0;
|
|
315 shipvals[DESTROYER].s_letter = 'd';
|
|
316 shipvals[DESTROYER].s_desig1 = 'D';
|
|
317 shipvals[DESTROYER].s_desig2 = 'D';
|
|
318 shipvals[DESTROYER].s_bitmap = 1;
|
|
319 shipvals[DESTROYER].s_width = 20;
|
|
320 shipvals[DESTROYER].s_height = 20;
|
|
321 shipvals[DESTROYER].s_timer = 0;
|
|
322 shipvals[DESTROYER].s_maxnum = 32;
|
|
323 shipvals[DESTROYER].s_rank = 0;
|
|
324 shipvals[DESTROYER].s_numdefn = 0;
|
|
325 shipvals[DESTROYER].s_numplan = 0;
|
|
326 if (configvals->warpdrive)
|
|
327 shipvals[DESTROYER].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS;
|
|
328 else
|
|
329 shipvals[DESTROYER].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS;
|
|
330
|
|
331 /* comprehensive definition of CRUISER */
|
|
332 shipvals[CRUISER].s_alttype = 2;
|
|
333 strcpy(shipvals[CRUISER].s_name, "Cruiser");
|
|
334 shipvals[CRUISER].s_turns = 170000;
|
|
335 shipvals[CRUISER].s_imp.acc = 150;
|
|
336 shipvals[CRUISER].s_imp.dec = 200;
|
|
337 shipvals[CRUISER].s_imp.cost = 4;
|
|
338 shipvals[CRUISER].s_imp.maxspeed = 9;
|
|
339 shipvals[CRUISER].s_imp.etemp = 1000;
|
|
340 shipvals[CRUISER].s_after.acc = 550;
|
|
341 shipvals[CRUISER].s_after.dec = 270;
|
|
342 shipvals[CRUISER].s_after.cost = 200;
|
|
343 shipvals[CRUISER].s_after.maxspeed = 11;
|
|
344 shipvals[CRUISER].s_after.etemp = 50000;
|
|
345 if (configvals->bronco_shipvals)
|
|
346 {
|
|
347 shipvals[CRUISER].s_warp.acc = 10000;
|
|
348 shipvals[CRUISER].s_warp.dec = 500;
|
|
349 shipvals[CRUISER].s_warp.cost = 25;
|
|
350 shipvals[CRUISER].s_warp.maxspeed = 13;
|
|
351 shipvals[CRUISER].s_warp.etemp = 7000;
|
|
352 shipvals[CRUISER].s_warpinitcost = 1818;
|
|
353 shipvals[CRUISER].s_warpinittime = 60;
|
|
354 shipvals[CRUISER].s_warpprepspeed = 1;
|
|
355 }
|
|
356 else
|
|
357 {
|
|
358 shipvals[CRUISER].s_warp.acc = 10000;
|
|
359 shipvals[CRUISER].s_warp.dec = 500;
|
|
360 shipvals[CRUISER].s_warp.cost = 24; /* was: 25; (BG) */
|
|
361 shipvals[CRUISER].s_warp.maxspeed = 24; /* was: 19; (BG) */
|
|
362 shipvals[CRUISER].s_warp.etemp = 7000;
|
|
363 shipvals[CRUISER].s_warpinitcost = 1818;
|
|
364 shipvals[CRUISER].s_warpinittime = 60;
|
|
365 shipvals[CRUISER].s_warpprepspeed = 2;
|
|
366 }
|
|
367 shipvals[CRUISER].s_mass = 2000;
|
|
368 shipvals[CRUISER].s_tractstr = 3000;
|
|
369 shipvals[CRUISER].s_tractrng = 1.0;
|
|
370 shipvals[CRUISER].s_tractcost = 4;
|
|
371 shipvals[CRUISER].s_tractetemp = 1000;
|
|
372 shipvals[CRUISER].s_torp.damage = 40;
|
|
373 shipvals[CRUISER].s_torp.speed = 12;
|
|
374 shipvals[CRUISER].s_torp.cost = 280;
|
|
375 shipvals[CRUISER].s_torp.fuse = 40;
|
|
376 shipvals[CRUISER].s_torp.wtemp = 18;
|
|
377 shipvals[CRUISER].s_torp.wtemp_halfarc = 32;
|
|
378 shipvals[CRUISER].s_torp.wtemp_factor = 9;
|
|
379 shipvals[CRUISER].s_torp.aux = 0;
|
|
380 shipvals[CRUISER].s_phaser.damage = 100;
|
|
381 #ifndef OLDSHIPVALS
|
|
382 shipvals[CRUISER].s_phaser.speed = 6000;
|
|
383 #else
|
|
384 shipvals[CRUISER].s_phaser.speed = 5500;
|
|
385 #endif
|
|
386 shipvals[CRUISER].s_phaser.cost = 700;
|
|
387 shipvals[CRUISER].s_phaser.fuse = 10;
|
|
388 shipvals[CRUISER].s_phaser.wtemp = 70;
|
|
389 shipvals[CRUISER].s_missile.damage = 25;
|
|
390 shipvals[CRUISER].s_missile.speed = 7;
|
|
391 shipvals[CRUISER].s_missile.cost = 900;
|
|
392 shipvals[CRUISER].s_missile.fuse = 100;
|
|
393 shipvals[CRUISER].s_missile.wtemp = 105;
|
|
394 shipvals[CRUISER].s_missile.count = 3;
|
|
395 shipvals[CRUISER].s_missile.aux = 2;
|
|
396 shipvals[CRUISER].s_missilestored = 10;
|
|
397 shipvals[CRUISER].s_plasma.damage = 100;
|
|
398 shipvals[CRUISER].s_plasma.speed = 15;
|
|
399 shipvals[CRUISER].s_plasma.cost = 3000;
|
|
400 shipvals[CRUISER].s_plasma.fuse = 35;
|
|
401 shipvals[CRUISER].s_plasma.wtemp = 292;
|
|
402 shipvals[CRUISER].s_plasma.aux = 1;
|
|
403 shipvals[CRUISER].s_maxwpntemp = 1000;
|
|
404 shipvals[CRUISER].s_wpncoolrate = 2;
|
|
405 if (configvals->bronco_shipvals)
|
|
406 shipvals[CRUISER].s_maxegntemp = 1000;
|
|
407 else
|
|
408 shipvals[CRUISER].s_maxegntemp = 1500;
|
|
409 shipvals[CRUISER].s_egncoolrate = 6;
|
|
410 shipvals[CRUISER].s_maxfuel = 10000;
|
|
411 shipvals[CRUISER].s_recharge = 24;
|
|
412 shipvals[CRUISER].s_mingivefuel = 0;
|
|
413 shipvals[CRUISER].s_takeonfuel = 150;
|
|
414 if (configvals->fuel_explosions)
|
|
415 {
|
|
416 shipvals[CRUISER].s_expldam = 75; /* was: 50; (BG) */
|
|
417 shipvals[CRUISER].s_fueldam = 40; /* was: 65; (BG) */
|
|
418 }
|
|
419 else
|
|
420 {
|
|
421 shipvals[CRUISER].s_expldam = 100;
|
|
422 shipvals[CRUISER].s_fueldam = 0;
|
|
423 }
|
|
424 shipvals[CRUISER].s_armyperkill = 2;
|
|
425 #ifndef OLDSHIPVALS
|
|
426 shipvals[CRUISER].s_maxarmies = 6;
|
|
427 #else
|
|
428 shipvals[CRUISER].s_maxarmies = 10;
|
|
429 #endif
|
|
430 shipvals[CRUISER].s_bomb = 10;
|
|
431 shipvals[CRUISER].s_repair = 110;
|
|
432 shipvals[CRUISER].s_maxdamage = 100;
|
|
433 shipvals[CRUISER].s_maxshield = 100;
|
|
434 shipvals[CRUISER].s_shieldcost = 4;
|
|
435 shipvals[CRUISER].s_detcost = 100;
|
|
436 shipvals[CRUISER].s_detdist = 1750;
|
|
437 if (configvals->bronco_shipvals)
|
|
438 shipvals[CRUISER].s_cloakcost = 130;
|
|
439 else
|
|
440 shipvals[CRUISER].s_cloakcost = 100;
|
|
441 #ifdef LONG_SCANRANGE
|
|
442 shipvals[CRUISER].s_scanrange = 1000;
|
|
443 #else
|
|
444 shipvals[CRUISER].s_scanrange = -1;
|
|
445 #endif
|
|
446 shipvals[CRUISER].s_numports = 0;
|
|
447 shipvals[CRUISER].s_letter = 'c';
|
|
448 shipvals[CRUISER].s_desig1 = 'C';
|
|
449 shipvals[CRUISER].s_desig2 = 'A';
|
|
450 shipvals[CRUISER].s_bitmap = 2;
|
|
451 shipvals[CRUISER].s_width = 20;
|
|
452 shipvals[CRUISER].s_height = 20;
|
|
453 shipvals[CRUISER].s_timer = 0;
|
|
454 shipvals[CRUISER].s_maxnum = 32;
|
|
455 shipvals[CRUISER].s_rank = 0;
|
|
456 shipvals[CRUISER].s_numdefn = 0;
|
|
457 shipvals[CRUISER].s_numplan = 0;
|
|
458 if (configvals->warpdrive)
|
|
459 shipvals[CRUISER].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS;
|
|
460 else
|
|
461 shipvals[CRUISER].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS;
|
|
462
|
|
463 /* comprehensive definition of BATTLESHIP */
|
|
464 shipvals[BATTLESHIP].s_alttype = 3;
|
|
465 strcpy(shipvals[BATTLESHIP].s_name, "Battleship");
|
|
466 shipvals[BATTLESHIP].s_turns = 75000;
|
|
467 shipvals[BATTLESHIP].s_imp.acc = 80;
|
|
468 shipvals[BATTLESHIP].s_imp.dec = 180;
|
|
469 shipvals[BATTLESHIP].s_imp.cost = 6;
|
|
470 shipvals[BATTLESHIP].s_imp.maxspeed = 8;
|
|
471 shipvals[BATTLESHIP].s_imp.etemp = 1000;
|
|
472 shipvals[BATTLESHIP].s_after.acc = 500;
|
|
473 shipvals[BATTLESHIP].s_after.dec = 270;
|
|
474 shipvals[BATTLESHIP].s_after.cost = 100;
|
|
475 shipvals[BATTLESHIP].s_after.maxspeed = 10;
|
|
476 shipvals[BATTLESHIP].s_after.etemp = 50000;
|
|
477 if (configvals->bronco_shipvals)
|
|
478 {
|
|
479 shipvals[BATTLESHIP].s_warp.acc = 10000;
|
|
480 shipvals[BATTLESHIP].s_warp.dec = 500;
|
|
481 shipvals[BATTLESHIP].s_warp.cost = 37;
|
|
482 shipvals[BATTLESHIP].s_warp.maxspeed = 11;
|
|
483 shipvals[BATTLESHIP].s_warp.etemp = 7000;
|
|
484 shipvals[BATTLESHIP].s_warpinitcost = 2545;
|
|
485 shipvals[BATTLESHIP].s_warpinittime = 70;
|
|
486 shipvals[BATTLESHIP].s_warpprepspeed = 0;
|
|
487 }
|
|
488 else
|
|
489 {
|
|
490 shipvals[BATTLESHIP].s_warp.acc = 10000;
|
|
491 shipvals[BATTLESHIP].s_warp.dec = 500;
|
|
492 shipvals[BATTLESHIP].s_warp.cost = 35; /* was: 37; (BG) */
|
|
493 shipvals[BATTLESHIP].s_warp.maxspeed = 21; /* was: 16; (BG) */
|
|
494 shipvals[BATTLESHIP].s_warp.etemp = 7000;
|
|
495 shipvals[BATTLESHIP].s_warpinitcost = 2545;
|
|
496 shipvals[BATTLESHIP].s_warpinittime = 70;
|
|
497 shipvals[BATTLESHIP].s_warpprepspeed = 1;
|
|
498 }
|
|
499 shipvals[BATTLESHIP].s_mass = 2300;
|
|
500 shipvals[BATTLESHIP].s_tractstr = 3700;
|
|
501 shipvals[BATTLESHIP].s_tractrng = 1.2;
|
|
502 shipvals[BATTLESHIP].s_tractcost = 4;
|
|
503 shipvals[BATTLESHIP].s_tractetemp = 1000;
|
|
504 shipvals[BATTLESHIP].s_torp.damage = 40;
|
|
505 shipvals[BATTLESHIP].s_torp.speed = 12;
|
|
506 shipvals[BATTLESHIP].s_torp.cost = 300;
|
|
507 shipvals[BATTLESHIP].s_torp.fuse = 40;
|
|
508 shipvals[BATTLESHIP].s_torp.wtemp = 20;
|
|
509 shipvals[BATTLESHIP].s_torp.wtemp_halfarc = 32;
|
|
510 shipvals[BATTLESHIP].s_torp.wtemp_factor = 9;
|
|
511 shipvals[BATTLESHIP].s_torp.aux = 0;
|
|
512 shipvals[BATTLESHIP].s_phaser.damage = 105;
|
|
513 #ifndef OLDSHIPVALS
|
|
514 shipvals[BATTLESHIP].s_phaser.speed = 6300;
|
|
515 shipvals[BATTLESHIP].s_phaser.cost = 945;
|
|
516 #else
|
|
517 shipvals[BATTLESHIP].s_phaser.speed = 6000;
|
|
518 shipvals[BATTLESHIP].s_phaser.cost = 900;
|
|
519 #endif
|
|
520 shipvals[BATTLESHIP].s_phaser.fuse = 10;
|
|
521 shipvals[BATTLESHIP].s_phaser.wtemp = 94;
|
|
522 shipvals[BATTLESHIP].s_missile.damage = 30;
|
|
523 shipvals[BATTLESHIP].s_missile.speed = 5;
|
|
524 shipvals[BATTLESHIP].s_missile.cost = 900;
|
|
525 shipvals[BATTLESHIP].s_missile.fuse = 100;
|
|
526 shipvals[BATTLESHIP].s_missile.wtemp = 100;
|
|
527 shipvals[BATTLESHIP].s_missile.count = 4;
|
|
528 shipvals[BATTLESHIP].s_missile.aux = 3;
|
|
529 shipvals[BATTLESHIP].s_missilestored = 12;
|
|
530 shipvals[BATTLESHIP].s_plasma.damage = 130;
|
|
531 shipvals[BATTLESHIP].s_plasma.speed = 15;
|
|
532 shipvals[BATTLESHIP].s_plasma.cost = 3900;
|
|
533 shipvals[BATTLESHIP].s_plasma.fuse = 35;
|
|
534 shipvals[BATTLESHIP].s_plasma.wtemp = 382;
|
|
535 shipvals[BATTLESHIP].s_plasma.aux = 1;
|
|
536 shipvals[BATTLESHIP].s_maxwpntemp = 1000;
|
|
537 shipvals[BATTLESHIP].s_wpncoolrate = 3;
|
|
538 if (configvals->bronco_shipvals)
|
|
539 shipvals[BATTLESHIP].s_maxegntemp = 1000;
|
|
540 else
|
|
541 shipvals[BATTLESHIP].s_maxegntemp = 1500;
|
|
542 shipvals[BATTLESHIP].s_egncoolrate = 6;
|
|
543 shipvals[BATTLESHIP].s_maxfuel = 14000;
|
|
544 shipvals[BATTLESHIP].s_recharge = 28;
|
|
545 shipvals[BATTLESHIP].s_mingivefuel = 0;
|
|
546 shipvals[BATTLESHIP].s_takeonfuel = 150;
|
|
547 if (configvals->fuel_explosions)
|
|
548 {
|
|
549 shipvals[BATTLESHIP].s_expldam = 85; /* was: 50; (BG) */
|
|
550 shipvals[BATTLESHIP].s_fueldam = 35; /* was: 85; (BG) */
|
|
551 }
|
|
552 else
|
|
553 {
|
|
554 shipvals[BATTLESHIP].s_expldam = 10;
|
|
555 shipvals[BATTLESHIP].s_fueldam = 0;
|
|
556 }
|
|
557 shipvals[BATTLESHIP].s_armyperkill = 2;
|
|
558 shipvals[BATTLESHIP].s_maxarmies = 6;
|
|
559 shipvals[BATTLESHIP].s_bomb = 20;
|
|
560 shipvals[BATTLESHIP].s_repair = 125;
|
|
561 shipvals[BATTLESHIP].s_maxdamage = 130;
|
|
562 shipvals[BATTLESHIP].s_maxshield = 130;
|
|
563 shipvals[BATTLESHIP].s_shieldcost = 5;
|
|
564 shipvals[BATTLESHIP].s_detcost = 100;
|
|
565 shipvals[BATTLESHIP].s_detdist = 1750;
|
|
566 shipvals[BATTLESHIP].s_cloakcost = 150;
|
|
567 #ifdef LONG_SCANRANGE
|
|
568 shipvals[BATTLESHIP].s_scanrange = 1000;
|
|
569 #else
|
|
570 shipvals[BATTLESHIP].s_scanrange = -1;
|
|
571 #endif
|
|
572 shipvals[BATTLESHIP].s_numports = 0;
|
|
573 shipvals[BATTLESHIP].s_letter = 'b';
|
|
574 shipvals[BATTLESHIP].s_desig1 = 'B';
|
|
575 shipvals[BATTLESHIP].s_desig2 = 'B';
|
|
576 shipvals[BATTLESHIP].s_bitmap = 3;
|
|
577 shipvals[BATTLESHIP].s_width = 20;
|
|
578 shipvals[BATTLESHIP].s_height = 20;
|
|
579 shipvals[BATTLESHIP].s_timer = 0;
|
|
580 shipvals[BATTLESHIP].s_maxnum = 32;
|
|
581 shipvals[BATTLESHIP].s_rank = 0;
|
|
582 shipvals[BATTLESHIP].s_numdefn = 0;
|
|
583 shipvals[BATTLESHIP].s_numplan = 0;
|
|
584 shipvals[BATTLESHIP].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS;
|
|
585
|
|
586 /* comprehensive definition of ASSAULT */
|
|
587 shipvals[ASSAULT].s_alttype = 4;
|
|
588 strcpy(shipvals[ASSAULT].s_name, "Assault");
|
|
589 shipvals[ASSAULT].s_turns = 120000;
|
|
590 shipvals[ASSAULT].s_imp.acc = 100;
|
|
591 shipvals[ASSAULT].s_imp.dec = 200;
|
|
592 if (configvals->bronco_shipvals)
|
|
593 shipvals[ASSAULT].s_imp.cost = 3;
|
|
594 else
|
|
595 shipvals[ASSAULT].s_imp.cost = 4;
|
|
596 shipvals[ASSAULT].s_imp.maxspeed = 8;
|
|
597 shipvals[ASSAULT].s_imp.etemp = 1000;
|
|
598 shipvals[ASSAULT].s_after.acc = 550;
|
|
599 shipvals[ASSAULT].s_after.dec = 270;
|
|
600 shipvals[ASSAULT].s_after.cost = 25;
|
|
601 shipvals[ASSAULT].s_after.maxspeed = 10;
|
|
602 shipvals[ASSAULT].s_after.etemp = 50000;
|
|
603 if (configvals->bronco_shipvals)
|
|
604 {
|
|
605 shipvals[ASSAULT].s_warp.acc = 10000;
|
|
606 shipvals[ASSAULT].s_warp.dec = 5000;
|
|
607 shipvals[ASSAULT].s_warp.cost = 20;
|
|
608 shipvals[ASSAULT].s_warp.maxspeed = 12;
|
|
609 shipvals[ASSAULT].s_warp.etemp = 6500;
|
|
610 shipvals[ASSAULT].s_warpinitcost = 1000;
|
|
611 shipvals[ASSAULT].s_warpinittime = 80;
|
|
612 shipvals[ASSAULT].s_warpprepspeed = 0;
|
|
613 }
|
|
614 else
|
|
615 {
|
|
616 shipvals[ASSAULT].s_warp.acc = 10000;
|
|
617 shipvals[ASSAULT].s_warp.dec = 5000;
|
|
618 shipvals[ASSAULT].s_warp.cost = 20;
|
|
619 shipvals[ASSAULT].s_warp.maxspeed = 23; /* was: 18; (BG) */
|
|
620 shipvals[ASSAULT].s_warp.etemp = 6500;
|
|
621 shipvals[ASSAULT].s_warpinitcost = 1000;
|
|
622 shipvals[ASSAULT].s_warpinittime = 80;
|
|
623 shipvals[ASSAULT].s_warpprepspeed = 1;
|
|
624 }
|
|
625 shipvals[ASSAULT].s_mass = 2300;
|
|
626 shipvals[ASSAULT].s_tractstr = 2500;
|
|
627 shipvals[ASSAULT].s_tractrng = 0.7;
|
|
628 shipvals[ASSAULT].s_tractcost = 3;
|
|
629 shipvals[ASSAULT].s_tractetemp = 1000;
|
|
630 shipvals[ASSAULT].s_torp.damage = 30;
|
|
631 shipvals[ASSAULT].s_torp.speed = 16;
|
|
632 shipvals[ASSAULT].s_torp.cost = 270;
|
|
633 shipvals[ASSAULT].s_torp.fuse = 30;
|
|
634 shipvals[ASSAULT].s_torp.wtemp = 17;
|
|
635 shipvals[ASSAULT].s_torp.wtemp_halfarc = 32;
|
|
636 shipvals[ASSAULT].s_torp.wtemp_factor = 9;
|
|
637 shipvals[ASSAULT].s_torp.aux = 0;
|
|
638 shipvals[ASSAULT].s_phaser.damage = 80;
|
|
639 shipvals[ASSAULT].s_phaser.speed = 4800;
|
|
640 shipvals[ASSAULT].s_phaser.cost = 560;
|
|
641 shipvals[ASSAULT].s_phaser.fuse = 10;
|
|
642 shipvals[ASSAULT].s_phaser.wtemp = 56;
|
|
643 shipvals[ASSAULT].s_missile.damage = 0;
|
|
644 shipvals[ASSAULT].s_missile.speed = 0;
|
|
645 shipvals[ASSAULT].s_missile.cost = 0;
|
|
646 shipvals[ASSAULT].s_missile.fuse = 0;
|
|
647 shipvals[ASSAULT].s_missile.wtemp = 0;
|
|
648 shipvals[ASSAULT].s_missile.count = 0;
|
|
649 shipvals[ASSAULT].s_missile.aux = 0;
|
|
650 shipvals[ASSAULT].s_missilestored = 0;
|
|
651 shipvals[ASSAULT].s_plasma.damage = -1;
|
|
652 shipvals[ASSAULT].s_plasma.speed = 0;
|
|
653 shipvals[ASSAULT].s_plasma.cost = 0;
|
|
654 shipvals[ASSAULT].s_plasma.fuse = 0;
|
|
655 shipvals[ASSAULT].s_plasma.wtemp = 5;
|
|
656 shipvals[ASSAULT].s_plasma.aux = 0;
|
|
657 shipvals[ASSAULT].s_maxwpntemp = 1000;
|
|
658 shipvals[ASSAULT].s_wpncoolrate = 2;
|
|
659 if (configvals->bronco_shipvals)
|
|
660 shipvals[ASSAULT].s_maxegntemp = 1000;
|
|
661 else
|
|
662 shipvals[ASSAULT].s_maxegntemp = 1700;
|
|
663 shipvals[ASSAULT].s_egncoolrate = 6;
|
|
664 shipvals[ASSAULT].s_maxfuel = 6000;
|
|
665 if (configvals->bronco_shipvals)
|
|
666 shipvals[ASSAULT].s_recharge = 20;
|
|
667 else
|
|
668 shipvals[ASSAULT].s_recharge = 24;
|
|
669 shipvals[ASSAULT].s_mingivefuel = 0;
|
|
670 shipvals[ASSAULT].s_takeonfuel = 150;
|
|
671 if (configvals->fuel_explosions)
|
|
672 {
|
|
673 shipvals[ASSAULT].s_expldam = 70; /* was: 50; (BG) */
|
|
674 shipvals[ASSAULT].s_fueldam = 40; /* was: 45; (BG) */
|
|
675 }
|
|
676 else
|
|
677 {
|
|
678 shipvals[ASSAULT].s_expldam = 100;
|
|
679 shipvals[ASSAULT].s_fueldam = 0;
|
|
680 }
|
|
681 shipvals[ASSAULT].s_armyperkill = 3;
|
|
682 shipvals[ASSAULT].s_maxarmies = 20;
|
|
683 if (configvals->bronco_shipvals)
|
|
684 shipvals[ASSAULT].s_bomb = 25;
|
|
685 else
|
|
686 shipvals[ASSAULT].s_bomb = 50;
|
|
687 shipvals[ASSAULT].s_repair = 120;
|
|
688 shipvals[ASSAULT].s_maxdamage = 200;
|
|
689 shipvals[ASSAULT].s_maxshield = 80;
|
|
690 shipvals[ASSAULT].s_shieldcost = 3;
|
|
691 shipvals[ASSAULT].s_detcost = 100;
|
|
692 shipvals[ASSAULT].s_detdist = 1750;
|
|
693 if (configvals->bronco_shipvals)
|
|
694 shipvals[ASSAULT].s_cloakcost = 85;
|
|
695 else
|
|
696 shipvals[ASSAULT].s_cloakcost = 80;
|
|
697 #ifdef LONG_SCANRANGE
|
|
698 shipvals[ASSAULT].s_scanrange = 1000;
|
|
699 #else
|
|
700 shipvals[ASSAULT].s_scanrange = -1;
|
|
701 #endif
|
|
702 shipvals[ASSAULT].s_numports = 0;
|
|
703 shipvals[ASSAULT].s_letter = 'a';
|
|
704 shipvals[ASSAULT].s_desig1 = 'A';
|
|
705 shipvals[ASSAULT].s_desig2 = 'S';
|
|
706 shipvals[ASSAULT].s_bitmap = 4;
|
|
707 shipvals[ASSAULT].s_width = 20;
|
|
708 shipvals[ASSAULT].s_height = 20;
|
|
709 shipvals[ASSAULT].s_timer = 0;
|
|
710 shipvals[ASSAULT].s_maxnum = 32;
|
|
711 shipvals[ASSAULT].s_rank = 0;
|
|
712 shipvals[ASSAULT].s_numdefn = 0;
|
|
713 shipvals[ASSAULT].s_numplan = 0;
|
|
714 if (configvals->warpdrive)
|
|
715 shipvals[ASSAULT].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS;
|
|
716 else
|
|
717 shipvals[ASSAULT].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS;
|
|
718
|
|
719 /* comprehensive definition of STARBASE */
|
|
720 shipvals[STARBASE].s_alttype = 5;
|
|
721 strcpy(shipvals[STARBASE].s_name, "Starbase");
|
|
722 shipvals[STARBASE].s_turns = 50000;
|
|
723 shipvals[STARBASE].s_imp.acc = 100;
|
|
724 shipvals[STARBASE].s_imp.dec = 200;
|
|
725 if (configvals->bronco_shipvals)
|
|
726 shipvals[STARBASE].s_imp.cost = 10;
|
|
727 else
|
|
728 shipvals[STARBASE].s_imp.cost = 4;
|
|
729 #ifdef BEEFY_BASES
|
|
730 shipvals[STARBASE].s_imp.maxspeed = 3;
|
|
731 #else
|
|
732 shipvals[STARBASE].s_imp.maxspeed = 2;
|
|
733 #endif
|
|
734 shipvals[STARBASE].s_imp.etemp = 1000;
|
|
735 shipvals[STARBASE].s_after.acc = 100;
|
|
736 shipvals[STARBASE].s_after.dec = 100;
|
|
737 shipvals[STARBASE].s_after.cost = 40;
|
|
738 shipvals[STARBASE].s_after.maxspeed = 5;
|
|
739 shipvals[STARBASE].s_after.etemp = 30000;
|
|
740 if (configvals->bronco_shipvals)
|
|
741 {
|
|
742 shipvals[STARBASE].s_warp.acc = 100;
|
|
743 shipvals[STARBASE].s_warp.dec = 100;
|
|
744 shipvals[STARBASE].s_warp.cost = 20;
|
|
745 shipvals[STARBASE].s_warp.maxspeed = 4;
|
|
746 shipvals[STARBASE].s_warp.etemp = 1500;
|
|
747 shipvals[STARBASE].s_warpinitcost = 10909;
|
|
748 shipvals[STARBASE].s_warpinittime = 100;
|
|
749 shipvals[STARBASE].s_warpprepspeed = 1;
|
|
750 }
|
|
751 else
|
|
752 {
|
|
753 shipvals[STARBASE].s_warp.acc = 100;
|
|
754 shipvals[STARBASE].s_warp.dec = 100;
|
|
755 shipvals[STARBASE].s_warp.cost = 20;
|
|
756 shipvals[STARBASE].s_warp.maxspeed = 6;
|
|
757 shipvals[STARBASE].s_warp.etemp = 1500;
|
|
758 shipvals[STARBASE].s_warpinitcost = 10909;
|
|
759 shipvals[STARBASE].s_warpinittime = 100;
|
|
760 shipvals[STARBASE].s_warpprepspeed = 2;
|
|
761 }
|
|
762 shipvals[STARBASE].s_mass = 5000;
|
|
763 shipvals[STARBASE].s_tractstr = 8000;
|
|
764 shipvals[STARBASE].s_tractrng = 1.5;
|
|
765 shipvals[STARBASE].s_tractcost = 10;
|
|
766 shipvals[STARBASE].s_tractetemp = 3000;
|
|
767 shipvals[STARBASE].s_torp.damage = 30;
|
|
768 shipvals[STARBASE].s_torp.speed = 14;
|
|
769 shipvals[STARBASE].s_torp.cost = 300;
|
|
770 if (configvals->bronco_shipvals)
|
|
771 shipvals[STARBASE].s_torp.fuse = 30;
|
|
772 else
|
|
773 shipvals[STARBASE].s_torp.fuse = 45;
|
|
774 shipvals[STARBASE].s_torp.wtemp = 20;
|
|
775 shipvals[STARBASE].s_torp.wtemp_halfarc = 0;
|
|
776 shipvals[STARBASE].s_torp.wtemp_factor = 0;
|
|
777 shipvals[STARBASE].s_torp.aux = 0;
|
|
778 shipvals[STARBASE].s_phaser.damage = 120;
|
|
779 #ifndef OLDSHIPVALS
|
|
780 shipvals[STARBASE].s_phaser.speed = 7200;
|
|
781 shipvals[STARBASE].s_phaser.wtemp = 96;
|
|
782 #else
|
|
783 shipvals[STARBASE].s_phaser.speed = 6500;
|
|
784 shipvals[STARBASE].s_phaser.wtemp = 66;
|
|
785 #endif
|
|
786 shipvals[STARBASE].s_phaser.cost = 960;
|
|
787 shipvals[STARBASE].s_phaser.fuse = 4;
|
|
788 shipvals[STARBASE].s_missile.damage = 40;
|
|
789 shipvals[STARBASE].s_missile.speed = 14;
|
|
790 shipvals[STARBASE].s_missile.cost = 2000;
|
|
791 shipvals[STARBASE].s_missile.fuse = 100;
|
|
792 shipvals[STARBASE].s_missile.wtemp = 120;
|
|
793 shipvals[STARBASE].s_missile.count = 4;
|
|
794 shipvals[STARBASE].s_missile.aux = 2;
|
|
795 shipvals[STARBASE].s_missilestored = -1;
|
|
796 shipvals[STARBASE].s_plasma.damage = 150;
|
|
797 shipvals[STARBASE].s_plasma.speed = 15;
|
|
798 shipvals[STARBASE].s_plasma.cost = 3750;
|
|
799 if (configvals->bronco_shipvals)
|
|
800 shipvals[STARBASE].s_plasma.fuse = 25;
|
|
801 else
|
|
802 shipvals[STARBASE].s_plasma.fuse = 40;
|
|
803 shipvals[STARBASE].s_plasma.wtemp = 367;
|
|
804 shipvals[STARBASE].s_plasma.aux = 1;
|
|
805 shipvals[STARBASE].s_maxwpntemp = 1300;
|
|
806 #ifdef BEEFY_BASES
|
|
807 shipvals[STARBASE].s_wpncoolrate = 7;
|
|
808 #else
|
|
809 shipvals[STARBASE].s_wpncoolrate = 4;
|
|
810 #endif
|
|
811 if (configvals->bronco_shipvals)
|
|
812 shipvals[STARBASE].s_maxegntemp = 1000;
|
|
813 else
|
|
814 shipvals[STARBASE].s_maxegntemp = 1300;
|
|
815 shipvals[STARBASE].s_egncoolrate = 10;
|
|
816 shipvals[STARBASE].s_maxfuel = 60000;
|
|
817 #ifdef BEEFY_BASES
|
|
818 shipvals[STARBASE].s_recharge = 90;
|
|
819 #else
|
|
820 shipvals[STARBASE].s_recharge = 70;
|
|
821 #endif
|
|
822 shipvals[STARBASE].s_mingivefuel = 10000;
|
|
823 shipvals[STARBASE].s_takeonfuel = 150;
|
|
824 if (configvals->fuel_explosions)
|
|
825 {
|
|
826 shipvals[STARBASE].s_expldam = 150; /* was: 100; (BG) */
|
|
827 shipvals[STARBASE].s_fueldam = 100;
|
|
828 }
|
|
829 else
|
|
830 {
|
|
831 shipvals[STARBASE].s_expldam = 200;
|
|
832 shipvals[STARBASE].s_fueldam = 0;
|
|
833 }
|
|
834 shipvals[STARBASE].s_armyperkill = 5;
|
|
835 shipvals[STARBASE].s_maxarmies = 25;
|
|
836 shipvals[STARBASE].s_bomb = 50;
|
|
837 shipvals[STARBASE].s_repair = 170; /* was: 140; (BG) */
|
|
838 shipvals[STARBASE].s_maxdamage = 600;
|
|
839 shipvals[STARBASE].s_maxshield = 500;
|
|
840 shipvals[STARBASE].s_shieldcost = 10;
|
|
841 shipvals[STARBASE].s_detcost = 100;
|
|
842 shipvals[STARBASE].s_detdist = 1800;
|
|
843 if (configvals->bronco_shipvals)
|
|
844 {
|
|
845 shipvals[STARBASE].s_cloakcost = 375;
|
|
846 shipvals[STARBASE].s_scanrange = -1;
|
|
847 shipvals[STARBASE].s_numports = 4;
|
|
848 }
|
|
849 else
|
|
850 {
|
|
851 shipvals[STARBASE].s_cloakcost = 750;
|
|
852 #ifdef LONG_SCANRANGE
|
|
853 shipvals[STARBASE].s_scanrange = 10000;
|
|
854 #else
|
|
855 shipvals[STARBASE].s_scanrange = 5000;
|
|
856 #endif
|
|
857 shipvals[STARBASE].s_numports = 6;
|
|
858 }
|
|
859 shipvals[STARBASE].s_letter = 'o';
|
|
860 shipvals[STARBASE].s_desig1 = 'S';
|
|
861 shipvals[STARBASE].s_desig2 = 'B';
|
|
862 shipvals[STARBASE].s_bitmap = 5;
|
|
863 shipvals[STARBASE].s_width = 20;
|
|
864 shipvals[STARBASE].s_height = 20;
|
|
865 shipvals[STARBASE].s_timer = 30;
|
|
866 shipvals[STARBASE].s_maxnum = 1;
|
|
867 shipvals[STARBASE].s_rank = 4;
|
|
868 shipvals[STARBASE].s_numdefn = 4;
|
|
869 if (configvals->bronco_shipvals)
|
|
870 shipvals[STARBASE].s_numplan = 5;
|
|
871 else
|
|
872 shipvals[STARBASE].s_numplan = 7;
|
|
873 if (configvals->warpdrive)
|
|
874 shipvals[STARBASE].s_nflags = SFNCANWARP | SFNCANFUEL | SFNCANREPAIR | SFNCANREFIT | SFNHASPHASERS | SFNPLASMASTYLE | SFNPLASMAARMED | SFNHASMISSILE;
|
|
875 else
|
|
876 shipvals[STARBASE].s_nflags = SFNCANFUEL | SFNCANREPAIR | SFNCANREFIT | SFNHASPHASERS | SFNPLASMASTYLE | SFNPLASMAARMED | SFNHASMISSILE;
|
|
877 /* comprehensive definition of ATT */
|
|
878 shipvals[ATT].s_alttype = 6;
|
|
879 strcpy(shipvals[ATT].s_name, "AT&T");
|
|
880 shipvals[ATT].s_turns = 1000000;
|
|
881 shipvals[ATT].s_imp.acc = 10000;
|
|
882 shipvals[ATT].s_imp.dec = 9000;
|
|
883 shipvals[ATT].s_imp.cost = 1;
|
|
884 shipvals[ATT].s_imp.maxspeed = 90;
|
|
885 shipvals[ATT].s_imp.etemp = 0;
|
|
886 shipvals[ATT].s_after.acc = 550;
|
|
887 shipvals[ATT].s_after.dec = 270;
|
|
888 shipvals[ATT].s_after.cost = 1;
|
|
889 shipvals[ATT].s_after.maxspeed = 99;
|
|
890 shipvals[ATT].s_after.etemp = 5;
|
|
891 shipvals[ATT].s_warp.acc = 32000;
|
|
892 shipvals[ATT].s_warp.dec = 32000;
|
|
893 shipvals[ATT].s_warp.cost = 1;
|
|
894 shipvals[ATT].s_warp.maxspeed = 99;
|
|
895 shipvals[ATT].s_warp.etemp = 1;
|
|
896 shipvals[ATT].s_warpinitcost = 1;
|
|
897 shipvals[ATT].s_warpinittime = 1;
|
|
898 shipvals[ATT].s_warpprepspeed = 0;
|
|
899 shipvals[ATT].s_mass = 6000;
|
|
900 shipvals[ATT].s_tractstr = 32000;
|
|
901 shipvals[ATT].s_tractrng = 3;
|
|
902 shipvals[ATT].s_tractcost = 1;
|
|
903 shipvals[ATT].s_tractetemp = 3;
|
|
904 shipvals[ATT].s_torp.damage = 40;
|
|
905 shipvals[ATT].s_torp.speed = 20;
|
|
906 shipvals[ATT].s_torp.cost = 1;
|
|
907 shipvals[ATT].s_torp.fuse = 20;
|
|
908 shipvals[ATT].s_torp.wtemp = 1;
|
|
909 shipvals[ATT].s_torp.wtemp_halfarc = 0;
|
|
910 shipvals[ATT].s_torp.wtemp_factor = 0;
|
|
911 shipvals[ATT].s_torp.aux = 1;
|
|
912 shipvals[ATT].s_phaser.damage = 110;
|
|
913 shipvals[ATT].s_phaser.speed = 32000;
|
|
914 shipvals[ATT].s_phaser.cost = 1;
|
|
915 shipvals[ATT].s_phaser.fuse = 5;
|
|
916 shipvals[ATT].s_phaser.wtemp = 5;
|
|
917 shipvals[ATT].s_missile.damage = 0;
|
|
918 shipvals[ATT].s_missile.speed = 0;
|
|
919 shipvals[ATT].s_missile.cost = 0;
|
|
920 shipvals[ATT].s_missile.fuse = 0;
|
|
921 shipvals[ATT].s_missile.wtemp = 0;
|
|
922 shipvals[ATT].s_missile.count = 0;
|
|
923 shipvals[ATT].s_missile.aux = 0;
|
|
924 shipvals[ATT].s_missilestored = 0;
|
|
925 shipvals[ATT].s_plasma.damage = 150;
|
|
926 shipvals[ATT].s_plasma.speed = 15;
|
|
927 shipvals[ATT].s_plasma.cost = 1;
|
|
928 shipvals[ATT].s_plasma.fuse = 20;
|
|
929 shipvals[ATT].s_plasma.wtemp = 5;
|
|
930 shipvals[ATT].s_plasma.aux = 2;
|
|
931 shipvals[ATT].s_maxwpntemp = 10000;
|
|
932 shipvals[ATT].s_wpncoolrate = 100;
|
|
933 shipvals[ATT].s_maxegntemp = 10000;
|
|
934 shipvals[ATT].s_egncoolrate = 100;
|
|
935 shipvals[ATT].s_maxfuel = 60000;
|
|
936 shipvals[ATT].s_recharge = 1000;
|
|
937 shipvals[ATT].s_mingivefuel = 0;
|
|
938 shipvals[ATT].s_takeonfuel = 150;
|
|
939 shipvals[ATT].s_expldam = 500;
|
|
940 shipvals[ATT].s_fueldam = 500;
|
|
941 shipvals[ATT].s_armyperkill = 1.5;
|
|
942 shipvals[ATT].s_maxarmies = 1000;
|
|
943 shipvals[ATT].s_bomb = -2100;
|
|
944 shipvals[ATT].s_repair = 30000;
|
|
945 shipvals[ATT].s_maxdamage = 30000;
|
|
946 shipvals[ATT].s_maxshield = 30000;
|
|
947 shipvals[ATT].s_shieldcost = 1;
|
|
948 shipvals[ATT].s_detcost = 1;
|
|
949 shipvals[ATT].s_detdist = 3000;
|
|
950 shipvals[ATT].s_cloakcost = 1;
|
|
951 shipvals[ATT].s_scanrange = 10000;
|
|
952 shipvals[ATT].s_numports = 0;
|
|
953 shipvals[ATT].s_letter = '.';
|
|
954 shipvals[ATT].s_desig1 = 'A';
|
|
955 shipvals[ATT].s_desig2 = 'T';
|
|
956 shipvals[ATT].s_bitmap = 6;
|
|
957 shipvals[ATT].s_width = 28;
|
|
958 shipvals[ATT].s_height = 28;
|
|
959 shipvals[ATT].s_timer = 5;
|
|
960 shipvals[ATT].s_maxnum = 32;
|
|
961 shipvals[ATT].s_rank = 0;
|
|
962 shipvals[ATT].s_numdefn = 0;
|
|
963 shipvals[ATT].s_numplan = 0;
|
|
964 shipvals[ATT].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS | SFNPLASMASTYLE | SFNPLASMAARMED;
|
|
965
|
|
966 /* comprehensive definition of JUMPSHIP */
|
|
967 shipvals[JUMPSHIP].s_alttype = 5;
|
|
968 strcpy(shipvals[JUMPSHIP].s_name, "Jumpship");
|
|
969 shipvals[JUMPSHIP].s_turns = 700000;
|
|
970 if (configvals->bronco_shipvals)
|
|
971 {
|
|
972 shipvals[JUMPSHIP].s_imp.acc = 1000;
|
|
973 shipvals[JUMPSHIP].s_imp.dec = 500;
|
|
974 }
|
|
975 else
|
|
976 {
|
|
977 shipvals[JUMPSHIP].s_imp.acc = 2000;
|
|
978 shipvals[JUMPSHIP].s_imp.dec = 1000;
|
|
979 }
|
|
980 shipvals[JUMPSHIP].s_imp.cost = 1;
|
|
981 shipvals[JUMPSHIP].s_imp.maxspeed = 20;
|
|
982 shipvals[JUMPSHIP].s_imp.etemp = 1000;
|
|
983 shipvals[JUMPSHIP].s_after.acc = 2000;
|
|
984 shipvals[JUMPSHIP].s_after.dec = 2000;
|
|
985 #ifndef OLDSHIPVALS
|
|
986 shipvals[JUMPSHIP].s_after.maxspeed = 30;
|
|
987 shipvals[JUMPSHIP].s_after.etemp = 200000;
|
|
988 shipvals[JUMPSHIP].s_after.cost = 1000;
|
|
989 shipvals[JUMPSHIP].s_warp.cost = 200;
|
|
990 #else
|
|
991 shipvals[JUMPSHIP].s_after.maxspeed = 60;
|
|
992 shipvals[JUMPSHIP].s_after.etemp = 90000;
|
|
993 shipvals[JUMPSHIP].s_after.cost = 15;
|
|
994 shipvals[JUMPSHIP].s_warp.cost = 2;
|
|
995 #endif
|
|
996 shipvals[JUMPSHIP].s_warp.acc = 2000;
|
|
997 shipvals[JUMPSHIP].s_warp.dec = 3000;
|
|
998 if (configvals->bronco_shipvals)
|
|
999 shipvals[JUMPSHIP].s_warp.maxspeed = 32;
|
|
1000 else
|
|
1001 shipvals[JUMPSHIP].s_warp.maxspeed = 45;
|
|
1002 shipvals[JUMPSHIP].s_warp.etemp = 500;
|
|
1003 shipvals[JUMPSHIP].s_warpinitcost = 1;
|
|
1004 shipvals[JUMPSHIP].s_warpinittime = 7;
|
|
1005 shipvals[JUMPSHIP].s_warpprepspeed = 2;
|
|
1006 shipvals[JUMPSHIP].s_mass = 10000;
|
|
1007 shipvals[JUMPSHIP].s_tractstr = 5000;
|
|
1008 shipvals[JUMPSHIP].s_tractrng = 1.5;
|
|
1009 #ifndef OLDSHIPVALS
|
|
1010 shipvals[JUMPSHIP].s_tractcost = 8;
|
|
1011 #else
|
|
1012 shipvals[JUMPSHIP].s_tractcost = 3;
|
|
1013 #endif
|
|
1014 shipvals[JUMPSHIP].s_tractetemp = 5000;
|
|
1015 shipvals[JUMPSHIP].s_torp.damage = 5;
|
|
1016 shipvals[JUMPSHIP].s_torp.speed = 18;
|
|
1017 shipvals[JUMPSHIP].s_torp.cost = 1000;
|
|
1018 shipvals[JUMPSHIP].s_torp.fuse = 10;
|
|
1019 shipvals[JUMPSHIP].s_torp.wtemp = 99;
|
|
1020 shipvals[JUMPSHIP].s_torp.wtemp_halfarc = 32;
|
|
1021 shipvals[JUMPSHIP].s_torp.wtemp_factor = 9;
|
|
1022 shipvals[JUMPSHIP].s_torp.aux = 0;
|
|
1023 shipvals[JUMPSHIP].s_phaser.damage = 25;
|
|
1024 shipvals[JUMPSHIP].s_phaser.speed = 3000;
|
|
1025 shipvals[JUMPSHIP].s_phaser.cost = 500;
|
|
1026 shipvals[JUMPSHIP].s_phaser.fuse = 4;
|
|
1027 shipvals[JUMPSHIP].s_phaser.wtemp = 5;
|
|
1028 shipvals[JUMPSHIP].s_missile.damage = 0;
|
|
1029 shipvals[JUMPSHIP].s_missile.speed = 0;
|
|
1030 shipvals[JUMPSHIP].s_missile.cost = 0;
|
|
1031 shipvals[JUMPSHIP].s_missile.fuse = 0;
|
|
1032 shipvals[JUMPSHIP].s_missile.wtemp = 0;
|
|
1033 shipvals[JUMPSHIP].s_missile.count = 0;
|
|
1034 shipvals[JUMPSHIP].s_missile.aux = 0;
|
|
1035 shipvals[JUMPSHIP].s_missilestored = 0;
|
|
1036 shipvals[JUMPSHIP].s_plasma.damage = -1;
|
|
1037 shipvals[JUMPSHIP].s_plasma.speed = 15;
|
|
1038 shipvals[JUMPSHIP].s_plasma.cost = 0;
|
|
1039 shipvals[JUMPSHIP].s_plasma.fuse = 25;
|
|
1040 shipvals[JUMPSHIP].s_plasma.wtemp = 5;
|
|
1041 shipvals[JUMPSHIP].s_plasma.aux = 1;
|
|
1042 shipvals[JUMPSHIP].s_maxwpntemp = 1300;
|
|
1043 shipvals[JUMPSHIP].s_wpncoolrate = 4;
|
|
1044 shipvals[JUMPSHIP].s_maxegntemp = 5000;
|
|
1045 shipvals[JUMPSHIP].s_egncoolrate = 34;
|
|
1046 shipvals[JUMPSHIP].s_maxfuel = 50000;
|
|
1047 shipvals[JUMPSHIP].s_recharge = 200;
|
|
1048 shipvals[JUMPSHIP].s_mingivefuel = 10000;
|
|
1049 shipvals[JUMPSHIP].s_takeonfuel = 150;
|
|
1050 if (configvals->fuel_explosions)
|
|
1051 {
|
|
1052 shipvals[JUMPSHIP].s_expldam = 25; /* was: 30; */
|
|
1053 shipvals[JUMPSHIP].s_fueldam = 175; /* was: 160; */
|
|
1054 }
|
|
1055 else
|
|
1056 {
|
|
1057 shipvals[JUMPSHIP].s_expldam = 150;
|
|
1058 shipvals[JUMPSHIP].s_fueldam = 0;
|
|
1059 }
|
|
1060 shipvals[JUMPSHIP].s_armyperkill = 0;
|
|
1061 shipvals[JUMPSHIP].s_maxarmies = 0;
|
|
1062 shipvals[JUMPSHIP].s_bomb = 30;
|
|
1063 shipvals[JUMPSHIP].s_repair = 200;
|
|
1064 shipvals[JUMPSHIP].s_maxdamage = 60;
|
|
1065 shipvals[JUMPSHIP].s_maxshield = 5;
|
|
1066 shipvals[JUMPSHIP].s_shieldcost = 5;
|
|
1067 shipvals[JUMPSHIP].s_detcost = 100;
|
|
1068 shipvals[JUMPSHIP].s_detdist = 1750;
|
|
1069 shipvals[JUMPSHIP].s_cloakcost = 1000;
|
|
1070 shipvals[JUMPSHIP].s_scanrange = -1;
|
|
1071 shipvals[JUMPSHIP].s_numports = 4;
|
|
1072 shipvals[JUMPSHIP].s_letter = 'j';
|
|
1073 shipvals[JUMPSHIP].s_desig1 = 'J';
|
|
1074 shipvals[JUMPSHIP].s_desig2 = 'S';
|
|
1075 shipvals[JUMPSHIP].s_bitmap = 7;
|
|
1076 shipvals[JUMPSHIP].s_width = 20;
|
|
1077 shipvals[JUMPSHIP].s_height = 20;
|
|
1078 shipvals[JUMPSHIP].s_timer = 5;
|
|
1079 shipvals[JUMPSHIP].s_maxnum = 1;
|
|
1080 shipvals[JUMPSHIP].s_rank = 3;
|
|
1081 shipvals[JUMPSHIP].s_numdefn = 3;
|
|
1082 shipvals[JUMPSHIP].s_numplan = 0;
|
|
1083 /* UFL says jumpships shouldn't refit. */
|
|
1084 if (configvals->warpdrive)
|
|
1085 shipvals[JUMPSHIP].s_nflags = SFNCANWARP | SFNCANFUEL | SFNHASPHASERS | SFNCANREFIT;
|
|
1086 else
|
|
1087 shipvals[JUMPSHIP].s_nflags = SFNCANFUEL | SFNHASPHASERS | SFNCANREFIT;
|
|
1088
|
|
1089 /* comprehensive definition of FRIGATE */
|
|
1090 shipvals[FRIGATE].s_alttype = 4;
|
|
1091 strcpy(shipvals[FRIGATE].s_name, "Frigate");
|
|
1092 shipvals[FRIGATE].s_turns = 122500;
|
|
1093 shipvals[FRIGATE].s_imp.acc = 115;
|
|
1094 shipvals[FRIGATE].s_imp.dec = 190;
|
|
1095 shipvals[FRIGATE].s_imp.cost = 5;
|
|
1096 shipvals[FRIGATE].s_imp.maxspeed = 9;
|
|
1097 shipvals[FRIGATE].s_imp.etemp = 1000;
|
|
1098 shipvals[FRIGATE].s_after.acc = 525;
|
|
1099 shipvals[FRIGATE].s_after.dec = 270;
|
|
1100 shipvals[FRIGATE].s_after.cost = 150;
|
|
1101 shipvals[FRIGATE].s_after.maxspeed = 10;
|
|
1102 shipvals[FRIGATE].s_after.etemp = 50000;
|
|
1103 shipvals[FRIGATE].s_warp.acc = 10000;
|
|
1104 shipvals[FRIGATE].s_warp.dec = 500;
|
|
1105 shipvals[FRIGATE].s_warp.cost = 30;
|
|
1106 if (configvals->bronco_shipvals)
|
|
1107 shipvals[FRIGATE].s_warp.maxspeed = 12;
|
|
1108 else
|
|
1109 shipvals[FRIGATE].s_warp.maxspeed = 23;
|
|
1110 shipvals[FRIGATE].s_warp.etemp = 7000;
|
|
1111 shipvals[FRIGATE].s_warpinitcost = 2272;
|
|
1112 shipvals[FRIGATE].s_warpinittime = 65;
|
|
1113 if (configvals->bronco_shipvals)
|
|
1114 shipvals[FRIGATE].s_warpprepspeed = 1;
|
|
1115 else
|
|
1116 shipvals[FRIGATE].s_warpprepspeed = 2;
|
|
1117 shipvals[FRIGATE].s_mass = 2150;
|
|
1118 shipvals[FRIGATE].s_tractstr = 3400;
|
|
1119 shipvals[FRIGATE].s_tractrng = 1.1;
|
|
1120 shipvals[FRIGATE].s_tractcost = 4;
|
|
1121 shipvals[FRIGATE].s_tractetemp = 1000;
|
|
1122 shipvals[FRIGATE].s_torp.damage = 40;
|
|
1123 shipvals[FRIGATE].s_torp.speed = 12;
|
|
1124 shipvals[FRIGATE].s_torp.cost = 290;
|
|
1125 shipvals[FRIGATE].s_torp.fuse = 40;
|
|
1126 shipvals[FRIGATE].s_torp.wtemp = 19;
|
|
1127 shipvals[FRIGATE].s_torp.wtemp_halfarc = 32;
|
|
1128 shipvals[FRIGATE].s_torp.wtemp_factor = 9;
|
|
1129 shipvals[FRIGATE].s_torp.aux = 0;
|
|
1130 #ifndef OLDSHIPVALS
|
|
1131 shipvals[FRIGATE].s_phaser.damage = 102;
|
|
1132 shipvals[FRIGATE].s_phaser.speed = 6150;
|
|
1133 shipvals[FRIGATE].s_phaser.cost = 816;
|
|
1134 #else
|
|
1135 shipvals[FRIGATE].s_phaser.damage = 100;
|
|
1136 shipvals[FRIGATE].s_phaser.speed = 5750;
|
|
1137 shipvals[FRIGATE].s_phaser.cost = 800;
|
|
1138 #endif
|
|
1139 shipvals[FRIGATE].s_phaser.fuse = 10;
|
|
1140 shipvals[FRIGATE].s_phaser.wtemp = 80;
|
|
1141 shipvals[FRIGATE].s_missile.damage = 23;
|
|
1142 shipvals[FRIGATE].s_missile.speed = 6;
|
|
1143 shipvals[FRIGATE].s_missile.cost = 850;
|
|
1144 shipvals[FRIGATE].s_missile.fuse = 100;
|
|
1145 shipvals[FRIGATE].s_missile.wtemp = 100;
|
|
1146 shipvals[FRIGATE].s_missile.count = 3;
|
|
1147 shipvals[FRIGATE].s_missile.aux = 2;
|
|
1148 shipvals[FRIGATE].s_missilestored = 11;
|
|
1149 shipvals[FRIGATE].s_plasma.damage = 115;
|
|
1150 shipvals[FRIGATE].s_plasma.speed = 15;
|
|
1151 shipvals[FRIGATE].s_plasma.cost = 3450;
|
|
1152 shipvals[FRIGATE].s_plasma.fuse = 35;
|
|
1153 shipvals[FRIGATE].s_plasma.wtemp = 337;
|
|
1154 shipvals[FRIGATE].s_plasma.aux = 1;
|
|
1155 shipvals[FRIGATE].s_maxwpntemp = 1000;
|
|
1156 shipvals[FRIGATE].s_wpncoolrate = 3;
|
|
1157 shipvals[FRIGATE].s_maxegntemp = 1500;
|
|
1158 shipvals[FRIGATE].s_egncoolrate = 6;
|
|
1159 shipvals[FRIGATE].s_maxfuel = 12500;
|
|
1160 shipvals[FRIGATE].s_recharge = 26;
|
|
1161 shipvals[FRIGATE].s_mingivefuel = 0;
|
|
1162 shipvals[FRIGATE].s_takeonfuel = 150;
|
|
1163 if (configvals->fuel_explosions)
|
|
1164 {
|
|
1165 shipvals[FRIGATE].s_expldam = 77; /* was: 50; (BG) */
|
|
1166 shipvals[FRIGATE].s_fueldam = 40; /* was: 72; (BG) */
|
|
1167 }
|
|
1168 else
|
|
1169 {
|
|
1170 shipvals[FRIGATE].s_expldam = 100;
|
|
1171 shipvals[FRIGATE].s_fueldam = 0;
|
|
1172 }
|
|
1173 shipvals[FRIGATE].s_armyperkill = 2;
|
|
1174 #ifndef OLDSHIPVALS
|
|
1175 shipvals[FRIGATE].s_maxarmies = 6;
|
|
1176 #else
|
|
1177 shipvals[FRIGATE].s_maxarmies = 8;
|
|
1178 #endif
|
|
1179 shipvals[FRIGATE].s_bomb = 15;
|
|
1180 shipvals[FRIGATE].s_repair = 118;
|
|
1181 shipvals[FRIGATE].s_maxdamage = 115;
|
|
1182 shipvals[FRIGATE].s_maxshield = 115;
|
|
1183 shipvals[FRIGATE].s_shieldcost = 5;
|
|
1184 shipvals[FRIGATE].s_detcost = 100;
|
|
1185 shipvals[FRIGATE].s_detdist = 1750;
|
|
1186 if (configvals->bronco_shipvals)
|
|
1187 shipvals[FRIGATE].s_cloakcost = 140;
|
|
1188 else
|
|
1189 shipvals[FRIGATE].s_cloakcost = 125;
|
|
1190 #ifdef LONG_SCANRANGE
|
|
1191 shipvals[FRIGATE].s_scanrange = 1000;
|
|
1192 #else
|
|
1193 shipvals[FRIGATE].s_scanrange = -1;
|
|
1194 #endif
|
|
1195 shipvals[FRIGATE].s_numports = 0;
|
|
1196 shipvals[FRIGATE].s_letter = 'f';
|
|
1197 shipvals[FRIGATE].s_desig1 = 'F';
|
|
1198 shipvals[FRIGATE].s_desig2 = 'R';
|
|
1199 shipvals[FRIGATE].s_bitmap = 8;
|
|
1200 shipvals[FRIGATE].s_width = 20;
|
|
1201 shipvals[FRIGATE].s_height = 20;
|
|
1202 shipvals[FRIGATE].s_timer = 0;
|
|
1203 shipvals[FRIGATE].s_maxnum = 32;
|
|
1204 shipvals[FRIGATE].s_rank = 0;
|
|
1205 shipvals[FRIGATE].s_numdefn = 0;
|
|
1206 shipvals[FRIGATE].s_numplan = 0;
|
|
1207 if (configvals->warpdrive)
|
|
1208 shipvals[FRIGATE].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS;
|
|
1209 else
|
|
1210 shipvals[FRIGATE].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS;
|
|
1211
|
|
1212 /* comprehensive definition of WARBASE */
|
|
1213 shipvals[WARBASE].s_alttype = 5;
|
|
1214 strcpy(shipvals[WARBASE].s_name, "Warbase");
|
|
1215 shipvals[WARBASE].s_turns = 90000;
|
|
1216 shipvals[WARBASE].s_imp.acc = 100;
|
|
1217 shipvals[WARBASE].s_imp.dec = 200;
|
|
1218 shipvals[WARBASE].s_imp.cost = 4;
|
|
1219 #ifdef BEEFY_BASES
|
|
1220 shipvals[WARBASE].s_imp.maxspeed = 3;
|
|
1221 #else
|
|
1222 shipvals[WARBASE].s_imp.maxspeed = 2;
|
|
1223 #endif
|
|
1224 shipvals[WARBASE].s_imp.etemp = 1000;
|
|
1225 shipvals[WARBASE].s_after.acc = 250;
|
|
1226 shipvals[WARBASE].s_after.dec = 100;
|
|
1227 shipvals[WARBASE].s_after.cost = 40;
|
|
1228 shipvals[WARBASE].s_after.maxspeed = 5;
|
|
1229 shipvals[WARBASE].s_after.etemp = 30000;
|
|
1230 shipvals[WARBASE].s_warp.acc = 80;
|
|
1231 shipvals[WARBASE].s_warp.dec = 80;
|
|
1232 shipvals[WARBASE].s_warp.cost = 6;
|
|
1233 if (configvals->bronco_shipvals)
|
|
1234 {
|
|
1235 shipvals[WARBASE].s_warp.maxspeed = 4;
|
|
1236 shipvals[WARBASE].s_warpprepspeed = 1;
|
|
1237 }
|
|
1238 else
|
|
1239 {
|
|
1240 shipvals[WARBASE].s_warp.maxspeed = 6;
|
|
1241 shipvals[WARBASE].s_warpprepspeed = 2;
|
|
1242 }
|
|
1243 shipvals[WARBASE].s_warp.etemp = 1500;
|
|
1244 shipvals[WARBASE].s_warpinitcost = 9090;
|
|
1245 shipvals[WARBASE].s_warpinittime = 100;
|
|
1246 shipvals[WARBASE].s_mass = 4000;
|
|
1247 shipvals[WARBASE].s_tractstr = 8000;
|
|
1248 shipvals[WARBASE].s_tractrng = 1.5;
|
|
1249 shipvals[WARBASE].s_tractcost = 10;
|
|
1250 shipvals[WARBASE].s_tractetemp = 3000;
|
|
1251 shipvals[WARBASE].s_torp.damage = 45;
|
|
1252 shipvals[WARBASE].s_torp.speed = 15;
|
|
1253 shipvals[WARBASE].s_torp.cost = 450;
|
|
1254 #ifndef OLDSHIPVALS
|
|
1255 shipvals[WARBASE].s_torp.fuse = 20;
|
|
1256 #else
|
|
1257 shipvals[WARBASE].s_torp.fuse = 18;
|
|
1258 #endif
|
|
1259 shipvals[WARBASE].s_torp.wtemp = 35;
|
|
1260 shipvals[WARBASE].s_torp.wtemp_halfarc = 32;
|
|
1261 shipvals[WARBASE].s_torp.wtemp_factor = 9;
|
|
1262 shipvals[WARBASE].s_torp.aux = 0;
|
|
1263 #ifndef OLDSHIPVALS
|
|
1264 shipvals[WARBASE].s_phaser.damage = 125;
|
|
1265 shipvals[WARBASE].s_phaser.speed = 7500;
|
|
1266 shipvals[WARBASE].s_phaser.cost = 1000;
|
|
1267 #else
|
|
1268 shipvals[WARBASE].s_phaser.damage = 135;
|
|
1269 shipvals[WARBASE].s_phaser.speed = 6000;
|
|
1270 shipvals[WARBASE].s_phaser.cost = 1150;
|
|
1271 #endif
|
|
1272 shipvals[WARBASE].s_phaser.fuse = 5;
|
|
1273 shipvals[WARBASE].s_phaser.wtemp = 90;
|
|
1274 shipvals[WARBASE].s_missile.damage = 40;
|
|
1275 shipvals[WARBASE].s_missile.speed = 14;
|
|
1276 shipvals[WARBASE].s_missile.cost = 2000;
|
|
1277 shipvals[WARBASE].s_missile.fuse = 100;
|
|
1278 shipvals[WARBASE].s_missile.wtemp = 120;
|
|
1279 shipvals[WARBASE].s_missile.count = 3;
|
|
1280 shipvals[WARBASE].s_missile.aux = 2;
|
|
1281 shipvals[WARBASE].s_missilestored = -1;
|
|
1282 shipvals[WARBASE].s_plasma.damage = 150;
|
|
1283 shipvals[WARBASE].s_plasma.speed = 15;
|
|
1284 shipvals[WARBASE].s_plasma.cost = 3750;
|
|
1285 shipvals[WARBASE].s_plasma.fuse = 40;
|
|
1286 shipvals[WARBASE].s_plasma.wtemp = 360;
|
|
1287 shipvals[WARBASE].s_plasma.aux = 1;
|
|
1288 shipvals[WARBASE].s_maxwpntemp = 1500;
|
|
1289 shipvals[WARBASE].s_wpncoolrate = 5;
|
|
1290 shipvals[WARBASE].s_maxegntemp = 1000;
|
|
1291 shipvals[WARBASE].s_egncoolrate = 10;
|
|
1292 shipvals[WARBASE].s_maxfuel = 50000;
|
|
1293 if (configvals->bronco_shipvals)
|
|
1294 shipvals[WARBASE].s_recharge = 70;
|
|
1295 else
|
|
1296 shipvals[WARBASE].s_recharge = 80;
|
|
1297 shipvals[WARBASE].s_mingivefuel = 10000;
|
|
1298 shipvals[WARBASE].s_takeonfuel = 150;
|
|
1299 shipvals[WARBASE].s_expldam = 100;
|
|
1300 shipvals[WARBASE].s_fueldam = 100;
|
|
1301 shipvals[WARBASE].s_armyperkill = 0;
|
|
1302 shipvals[WARBASE].s_maxarmies = 0;
|
|
1303 shipvals[WARBASE].s_bomb = 90;
|
|
1304 shipvals[WARBASE].s_repair = 170; /* was: 150; (BG) */
|
|
1305 shipvals[WARBASE].s_maxdamage = 500;
|
|
1306 shipvals[WARBASE].s_maxshield = 250;
|
|
1307 shipvals[WARBASE].s_shieldcost = 10;
|
|
1308 shipvals[WARBASE].s_detcost = 100;
|
|
1309 shipvals[WARBASE].s_detdist = 1800;
|
|
1310 shipvals[WARBASE].s_cloakcost = 1000;
|
|
1311 shipvals[WARBASE].s_scanrange = 5000;
|
|
1312 shipvals[WARBASE].s_numports = 2;
|
|
1313 shipvals[WARBASE].s_letter = 'w';
|
|
1314 shipvals[WARBASE].s_desig1 = 'W';
|
|
1315 shipvals[WARBASE].s_desig2 = 'B';
|
|
1316 shipvals[WARBASE].s_bitmap = 9;
|
|
1317 shipvals[WARBASE].s_width = 20;
|
|
1318 shipvals[WARBASE].s_height = 20;
|
|
1319 shipvals[WARBASE].s_timer = 15;
|
|
1320 shipvals[WARBASE].s_maxnum = 1;
|
|
1321 shipvals[WARBASE].s_rank = 3;
|
|
1322 shipvals[WARBASE].s_numdefn = 3;
|
|
1323 shipvals[WARBASE].s_numplan = 3;
|
|
1324 if (configvals->warpdrive)
|
|
1325 shipvals[WARBASE].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNCANFUEL | SFNCANREPAIR | SFNHASPHASERS | SFNPLASMASTYLE | SFNPLASMAARMED | SFNHASMISSILE;
|
|
1326 else
|
|
1327 shipvals[WARBASE].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANFUEL | SFNCANREPAIR | SFNHASPHASERS | SFNPLASMASTYLE | SFNPLASMAARMED | SFNHASMISSILE;
|
|
1328
|
|
1329 /* comprehensive definition of LIGHTCRUISER */
|
|
1330 shipvals[LIGHTCRUISER].s_alttype = 2;
|
|
1331 strcpy(shipvals[LIGHTCRUISER].s_name, "Light");
|
|
1332 shipvals[LIGHTCRUISER].s_turns = 220000; /* was 225000 */
|
|
1333 shipvals[LIGHTCRUISER].s_imp.acc = 190;
|
|
1334 shipvals[LIGHTCRUISER].s_imp.dec = 250;
|
|
1335 shipvals[LIGHTCRUISER].s_imp.cost = 3;
|
|
1336 shipvals[LIGHTCRUISER].s_imp.maxspeed = 10;
|
|
1337 shipvals[LIGHTCRUISER].s_imp.etemp = 1000;
|
|
1338 shipvals[LIGHTCRUISER].s_after.acc = 720;
|
|
1339 shipvals[LIGHTCRUISER].s_after.dec = 280;
|
|
1340 shipvals[LIGHTCRUISER].s_after.cost = 80;
|
|
1341 shipvals[LIGHTCRUISER].s_after.maxspeed = 12;
|
|
1342 shipvals[LIGHTCRUISER].s_after.etemp = 35000;
|
|
1343 shipvals[LIGHTCRUISER].s_warp.acc = 10000;
|
|
1344 shipvals[LIGHTCRUISER].s_warp.dec = 400;
|
|
1345 shipvals[LIGHTCRUISER].s_warp.cost = 24;
|
|
1346 if (configvals->bronco_shipvals)
|
|
1347 {
|
|
1348 shipvals[LIGHTCRUISER].s_warp.maxspeed = 16;
|
|
1349 shipvals[LIGHTCRUISER].s_warpprepspeed = 1;
|
|
1350 }
|
|
1351 else
|
|
1352 {
|
|
1353 shipvals[LIGHTCRUISER].s_warp.maxspeed = 27; /* was: 24; (BG) */
|
|
1354 shipvals[LIGHTCRUISER].s_warpprepspeed = 2;
|
|
1355 }
|
|
1356 shipvals[LIGHTCRUISER].s_warp.etemp = 7000;
|
|
1357 shipvals[LIGHTCRUISER].s_warpinitcost = 1550;
|
|
1358 shipvals[LIGHTCRUISER].s_warpinittime = 45;
|
|
1359 shipvals[LIGHTCRUISER].s_mass = 1900;
|
|
1360 shipvals[LIGHTCRUISER].s_tractstr = 2700;
|
|
1361 shipvals[LIGHTCRUISER].s_tractrng = 0.9;
|
|
1362 shipvals[LIGHTCRUISER].s_tractcost = 3;
|
|
1363 shipvals[LIGHTCRUISER].s_tractetemp = 1000;
|
|
1364 shipvals[LIGHTCRUISER].s_torp.damage = 35;
|
|
1365 shipvals[LIGHTCRUISER].s_torp.speed = 13;
|
|
1366 #ifndef OLDSHIPVALS
|
|
1367 shipvals[LIGHTCRUISER].s_torp.cost = 245;
|
|
1368 #else
|
|
1369 shipvals[LIGHTCRUISER].s_torp.cost = 240;
|
|
1370 #endif
|
|
1371 shipvals[LIGHTCRUISER].s_torp.fuse = 35;
|
|
1372 shipvals[LIGHTCRUISER].s_torp.wtemp = 16;
|
|
1373 shipvals[LIGHTCRUISER].s_torp.wtemp_halfarc = 32;
|
|
1374 shipvals[LIGHTCRUISER].s_torp.wtemp_factor = 9;
|
|
1375 shipvals[LIGHTCRUISER].s_torp.aux = 0;
|
|
1376 shipvals[LIGHTCRUISER].s_phaser.damage = 90;
|
|
1377 #ifndef OLDSHIPVALS
|
|
1378 shipvals[LIGHTCRUISER].s_phaser.speed = 5400;
|
|
1379 shipvals[LIGHTCRUISER].s_phaser.cost = 630;
|
|
1380 #else
|
|
1381 shipvals[LIGHTCRUISER].s_phaser.speed = 5000;
|
|
1382 shipvals[LIGHTCRUISER].s_phaser.cost = 600;
|
|
1383 #endif
|
|
1384 shipvals[LIGHTCRUISER].s_phaser.fuse = 10;
|
|
1385 shipvals[LIGHTCRUISER].s_phaser.wtemp = 60;
|
|
1386 shipvals[LIGHTCRUISER].s_missile.damage = 22;
|
|
1387 shipvals[LIGHTCRUISER].s_missile.speed = 7;
|
|
1388 shipvals[LIGHTCRUISER].s_missile.cost = 800;
|
|
1389 shipvals[LIGHTCRUISER].s_missile.fuse = 100;
|
|
1390 shipvals[LIGHTCRUISER].s_missile.wtemp = 100;
|
|
1391 shipvals[LIGHTCRUISER].s_missile.count = 3;
|
|
1392 shipvals[LIGHTCRUISER].s_missile.aux = 2;
|
|
1393 shipvals[LIGHTCRUISER].s_missilestored = 9;
|
|
1394 shipvals[LIGHTCRUISER].s_plasma.damage = 90;
|
|
1395 shipvals[LIGHTCRUISER].s_plasma.speed = 15;
|
|
1396 shipvals[LIGHTCRUISER].s_plasma.cost = 2500;
|
|
1397 shipvals[LIGHTCRUISER].s_plasma.fuse = 30;
|
|
1398 shipvals[LIGHTCRUISER].s_plasma.wtemp = 242;
|
|
1399 shipvals[LIGHTCRUISER].s_plasma.aux = 1;
|
|
1400 shipvals[LIGHTCRUISER].s_maxwpntemp = 1000;
|
|
1401 shipvals[LIGHTCRUISER].s_wpncoolrate = 3;
|
|
1402 shipvals[LIGHTCRUISER].s_maxegntemp = 1500;
|
|
1403 shipvals[LIGHTCRUISER].s_egncoolrate = 6;
|
|
1404 shipvals[LIGHTCRUISER].s_maxfuel = 8500;
|
|
1405 shipvals[LIGHTCRUISER].s_recharge = 23;
|
|
1406 shipvals[LIGHTCRUISER].s_mingivefuel = 0;
|
|
1407 shipvals[LIGHTCRUISER].s_takeonfuel = 150;
|
|
1408 if (configvals->fuel_explosions)
|
|
1409 {
|
|
1410 shipvals[LIGHTCRUISER].s_expldam = 67; /* was: 50; (BG) */
|
|
1411 shipvals[LIGHTCRUISER].s_fueldam = 45; /* was: 58; (BG) */
|
|
1412 }
|
|
1413 else
|
|
1414 {
|
|
1415 shipvals[LIGHTCRUISER].s_expldam = 100;
|
|
1416 shipvals[LIGHTCRUISER].s_fueldam = 0;
|
|
1417 }
|
|
1418 shipvals[LIGHTCRUISER].s_armyperkill = 2;
|
|
1419 shipvals[LIGHTCRUISER].s_maxarmies = 3; /* was 4 */
|
|
1420 shipvals[LIGHTCRUISER].s_bomb = 6;
|
|
1421 shipvals[LIGHTCRUISER].s_repair = 80; /* was 90 */
|
|
1422 shipvals[LIGHTCRUISER].s_maxdamage = 90;
|
|
1423 shipvals[LIGHTCRUISER].s_maxshield = 95;
|
|
1424 shipvals[LIGHTCRUISER].s_shieldcost = 4;
|
|
1425 shipvals[LIGHTCRUISER].s_detcost = 100;
|
|
1426 shipvals[LIGHTCRUISER].s_detdist = 1750;
|
|
1427 if (configvals->bronco_shipvals)
|
|
1428 shipvals[LIGHTCRUISER].s_cloakcost = 115;
|
|
1429 else
|
|
1430 shipvals[LIGHTCRUISER].s_cloakcost = 75;
|
|
1431 #ifdef LONG_SCANRANGE
|
|
1432 shipvals[LIGHTCRUISER].s_scanrange = 1000;
|
|
1433 #else
|
|
1434 shipvals[LIGHTCRUISER].s_scanrange = 500;
|
|
1435 #endif
|
|
1436 shipvals[LIGHTCRUISER].s_numports = 0;
|
|
1437 shipvals[LIGHTCRUISER].s_letter = 'l';
|
|
1438 shipvals[LIGHTCRUISER].s_desig1 = 'C';
|
|
1439 shipvals[LIGHTCRUISER].s_desig2 = 'L';
|
|
1440 shipvals[LIGHTCRUISER].s_bitmap = 10;
|
|
1441 shipvals[LIGHTCRUISER].s_width = 20;
|
|
1442 shipvals[LIGHTCRUISER].s_height = 20;
|
|
1443 shipvals[LIGHTCRUISER].s_timer = 0;
|
|
1444 shipvals[LIGHTCRUISER].s_maxnum = 32;
|
|
1445 shipvals[LIGHTCRUISER].s_rank = 0;
|
|
1446 shipvals[LIGHTCRUISER].s_numdefn = 0;
|
|
1447 shipvals[LIGHTCRUISER].s_numplan = 0;
|
|
1448 if (configvals->warpdrive)
|
|
1449 shipvals[LIGHTCRUISER].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNCANWARP | SFNHASPHASERS;
|
|
1450 else
|
|
1451 shipvals[LIGHTCRUISER].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS;
|
|
1452
|
|
1453 /* comprehensive definition of CARRIER */
|
|
1454 shipvals[CARRIER].s_alttype = 3;
|
|
1455 strcpy(shipvals[CARRIER].s_name, "Carrier");
|
|
1456 shipvals[CARRIER].s_turns = 60000;
|
|
1457 shipvals[CARRIER].s_imp.acc = 100;
|
|
1458 shipvals[CARRIER].s_imp.dec = 200;
|
|
1459 shipvals[CARRIER].s_imp.cost = 4;
|
|
1460 shipvals[CARRIER].s_imp.maxspeed = 9;
|
|
1461 shipvals[CARRIER].s_imp.etemp = 1000;
|
|
1462 shipvals[CARRIER].s_after.acc = 500;
|
|
1463 shipvals[CARRIER].s_after.dec = 250;
|
|
1464 shipvals[CARRIER].s_after.cost = 100;
|
|
1465 shipvals[CARRIER].s_after.maxspeed = 11;
|
|
1466 shipvals[CARRIER].s_after.etemp = 50000;
|
|
1467 shipvals[CARRIER].s_warp.acc = 10000;
|
|
1468 shipvals[CARRIER].s_warp.dec = 300;
|
|
1469 shipvals[CARRIER].s_warp.cost = 28;
|
|
1470 if (configvals->bronco_shipvals)
|
|
1471 {
|
|
1472 shipvals[CARRIER].s_warp.maxspeed = 14;
|
|
1473 shipvals[CARRIER].s_warpprepspeed = 0;
|
|
1474 }
|
|
1475 else
|
|
1476 {
|
|
1477 shipvals[CARRIER].s_warp.maxspeed = 25; /* was: 20; (BG) */
|
|
1478 shipvals[CARRIER].s_warpprepspeed = 1;
|
|
1479 }
|
|
1480 shipvals[CARRIER].s_warp.etemp = 7000;
|
|
1481 shipvals[CARRIER].s_warpinitcost = 2800;
|
|
1482 shipvals[CARRIER].s_warpinittime = 75;
|
|
1483 shipvals[CARRIER].s_mass = 2500;
|
|
1484 shipvals[CARRIER].s_tractstr = 4000; /* was 3200 (MDM) */
|
|
1485 shipvals[CARRIER].s_tractrng = 1.3; /* was 1.1 (MDM) */
|
|
1486 shipvals[CARRIER].s_tractcost = 5;
|
|
1487 shipvals[CARRIER].s_tractetemp = 1000;
|
|
1488 shipvals[CARRIER].s_torp.damage = 30; /* these are the CVs own torps */
|
|
1489 shipvals[CARRIER].s_torp.speed = 13; /* fighter-torps are now constant */
|
|
1490 shipvals[CARRIER].s_torp.cost = 210; /* still used when fighters fire! */
|
|
1491 shipvals[CARRIER].s_torp.fuse = 35;
|
|
1492 shipvals[CARRIER].s_torp.wtemp = 20; /* still used when fighters fire! */
|
|
1493 shipvals[CARRIER].s_torp.wtemp_halfarc = 32;
|
|
1494 shipvals[CARRIER].s_torp.wtemp_factor = 9;
|
|
1495 shipvals[CARRIER].s_torp.aux = 0;
|
|
1496 shipvals[CARRIER].s_phaser.damage = 95;
|
|
1497 shipvals[CARRIER].s_phaser.speed = 6500;
|
|
1498 shipvals[CARRIER].s_phaser.cost = 570;
|
|
1499 shipvals[CARRIER].s_phaser.fuse = 6;
|
|
1500 shipvals[CARRIER].s_phaser.wtemp = 45;
|
|
1501 shipvals[CARRIER].s_missile.damage = 20;
|
|
1502 shipvals[CARRIER].s_missile.speed = 14;
|
|
1503 shipvals[CARRIER].s_missile.cost = 380; /* no longer includes
|
|
1504 * torpcost */
|
|
1505 shipvals[CARRIER].s_missile.fuse = 300;
|
|
1506 shipvals[CARRIER].s_missile.wtemp = 35; /* no longer includes torp
|
|
1507 * wtemp */
|
|
1508 shipvals[CARRIER].s_missile.count = 8;
|
|
1509 shipvals[CARRIER].s_missile.aux = 3;
|
|
1510 shipvals[CARRIER].s_missilestored = 0;
|
|
1511 shipvals[CARRIER].s_plasma.damage = 80;
|
|
1512 shipvals[CARRIER].s_plasma.speed = 15;
|
|
1513 shipvals[CARRIER].s_plasma.cost = 3000;
|
|
1514 shipvals[CARRIER].s_plasma.fuse = 35;
|
|
1515 shipvals[CARRIER].s_plasma.wtemp = 270;
|
|
1516 shipvals[CARRIER].s_plasma.aux = 2;
|
|
1517 shipvals[CARRIER].s_maxwpntemp = 1000;
|
|
1518 shipvals[CARRIER].s_wpncoolrate = 2;
|
|
1519 shipvals[CARRIER].s_maxegntemp = 1500;
|
|
1520 shipvals[CARRIER].s_egncoolrate = 5;
|
|
1521 shipvals[CARRIER].s_maxfuel = 15000;
|
|
1522 shipvals[CARRIER].s_recharge = 25;
|
|
1523 shipvals[CARRIER].s_mingivefuel = 0;
|
|
1524 shipvals[CARRIER].s_takeonfuel = 150;
|
|
1525 if (configvals->fuel_explosions)
|
|
1526 {
|
|
1527 shipvals[CARRIER].s_expldam = 80; /* was: 55; (BG) */
|
|
1528 shipvals[CARRIER].s_fueldam = 70; /* was: 80; (BG) */
|
|
1529 }
|
|
1530 else
|
|
1531 {
|
|
1532 shipvals[CARRIER].s_expldam = 100;
|
|
1533 shipvals[CARRIER].s_fueldam = 0;
|
|
1534 }
|
|
1535 shipvals[CARRIER].s_armyperkill = 25;
|
|
1536 shipvals[CARRIER].s_maxarmies = 3;
|
|
1537 shipvals[CARRIER].s_bomb = 20;
|
|
1538 shipvals[CARRIER].s_repair = 105;
|
|
1539 shipvals[CARRIER].s_maxdamage = 150;
|
|
1540 shipvals[CARRIER].s_maxshield = 120;
|
|
1541 shipvals[CARRIER].s_shieldcost = 5;
|
|
1542 shipvals[CARRIER].s_detcost = 50;
|
|
1543 shipvals[CARRIER].s_detdist = 1900;
|
|
1544 if (configvals->bronco_shipvals)
|
|
1545 shipvals[CARRIER].s_cloakcost = 135;
|
|
1546 else
|
|
1547 shipvals[CARRIER].s_cloakcost = 100;
|
|
1548 #ifdef LONG_SCANRANGE
|
|
1549 shipvals[CARRIER].s_scanrange = 1000;
|
|
1550 #else
|
|
1551 shipvals[CARRIER].s_scanrange = -1;
|
|
1552 #endif
|
|
1553 shipvals[CARRIER].s_numports = 0;
|
|
1554 shipvals[CARRIER].s_letter = 'v';
|
|
1555 shipvals[CARRIER].s_desig1 = 'C';
|
|
1556 shipvals[CARRIER].s_desig2 = 'V';
|
|
1557 shipvals[CARRIER].s_bitmap = 11;
|
|
1558 shipvals[CARRIER].s_width = 20;
|
|
1559 shipvals[CARRIER].s_height = 20;
|
|
1560 shipvals[CARRIER].s_timer = 12;
|
|
1561 shipvals[CARRIER].s_maxnum = 1;
|
|
1562 shipvals[CARRIER].s_rank = 3;
|
|
1563 shipvals[CARRIER].s_numdefn = 5;
|
|
1564 shipvals[CARRIER].s_numplan = 3;
|
|
1565 if (configvals->warpdrive)
|
|
1566 shipvals[CARRIER].s_nflags = SFNCANWARP | SFNHASPHASERS | SFNHASMISSILE | SFNHASFIGHTERS;
|
|
1567 else
|
|
1568 shipvals[CARRIER].s_nflags = SFNHASPHASERS | SFNHASMISSILE | SFNHASFIGHTERS;
|
|
1569
|
|
1570 /* comprehensive definition of UTILITY */
|
|
1571 shipvals[UTILITY].s_alttype = 4;
|
|
1572 strcpy(shipvals[UTILITY].s_name, "Utility");
|
|
1573 shipvals[UTILITY].s_turns = 80000;
|
|
1574 shipvals[UTILITY].s_imp.acc = 100;
|
|
1575 shipvals[UTILITY].s_imp.dec = 200;
|
|
1576 shipvals[UTILITY].s_imp.cost = 4;
|
|
1577 shipvals[UTILITY].s_imp.maxspeed = 7;
|
|
1578 shipvals[UTILITY].s_imp.etemp = 1000;
|
|
1579 shipvals[UTILITY].s_after.acc = 500;
|
|
1580 shipvals[UTILITY].s_after.dec = 250;
|
|
1581 shipvals[UTILITY].s_after.cost = 40;
|
|
1582 shipvals[UTILITY].s_after.maxspeed = 8;
|
|
1583 shipvals[UTILITY].s_after.etemp = 40000;
|
|
1584 shipvals[UTILITY].s_warp.acc = 10000;
|
|
1585 shipvals[UTILITY].s_warp.dec = 5000;
|
|
1586 shipvals[UTILITY].s_warp.cost = 20;
|
|
1587 if (configvals->bronco_shipvals)
|
|
1588 {
|
|
1589 shipvals[UTILITY].s_warp.maxspeed = 10;
|
|
1590 shipvals[UTILITY].s_warpprepspeed = 0;
|
|
1591 }
|
|
1592 else
|
|
1593 {
|
|
1594 shipvals[UTILITY].s_warp.maxspeed = 20; /* was: 15; (BG) */
|
|
1595 shipvals[UTILITY].s_warpprepspeed = 1;
|
|
1596 }
|
|
1597 shipvals[UTILITY].s_warp.etemp = 5500;
|
|
1598 shipvals[UTILITY].s_warpinitcost = 1200;
|
|
1599 shipvals[UTILITY].s_warpinittime = 50;
|
|
1600 shipvals[UTILITY].s_mass = 2400;
|
|
1601 shipvals[UTILITY].s_tractstr = 3500;
|
|
1602 shipvals[UTILITY].s_tractrng = 1.1;
|
|
1603 shipvals[UTILITY].s_tractcost = 4;
|
|
1604 shipvals[UTILITY].s_tractetemp = 1000;
|
|
1605 shipvals[UTILITY].s_torp.damage = 20;
|
|
1606 shipvals[UTILITY].s_torp.speed = 15;
|
|
1607 shipvals[UTILITY].s_torp.cost = 250;
|
|
1608 shipvals[UTILITY].s_torp.fuse = 25;
|
|
1609 shipvals[UTILITY].s_torp.wtemp = 18;
|
|
1610 shipvals[UTILITY].s_torp.wtemp_halfarc = 16;
|
|
1611 shipvals[UTILITY].s_torp.wtemp_factor = 4;
|
|
1612 shipvals[UTILITY].s_torp.aux = 0;
|
|
1613 shipvals[UTILITY].s_phaser.damage = 80;
|
|
1614 shipvals[UTILITY].s_phaser.speed = 5600;
|
|
1615 shipvals[UTILITY].s_phaser.cost = 640;
|
|
1616 shipvals[UTILITY].s_phaser.fuse = 8;
|
|
1617 shipvals[UTILITY].s_phaser.wtemp = 85;
|
|
1618 shipvals[UTILITY].s_missile.damage = 30;
|
|
1619 shipvals[UTILITY].s_missile.speed = 8;
|
|
1620 shipvals[UTILITY].s_missile.cost = 800;
|
|
1621 shipvals[UTILITY].s_missile.fuse = 80;
|
|
1622 shipvals[UTILITY].s_missile.wtemp = 60;
|
|
1623 shipvals[UTILITY].s_missile.count = 3;
|
|
1624 shipvals[UTILITY].s_missile.aux = 2;
|
|
1625 shipvals[UTILITY].s_missilestored = 18;
|
|
1626 shipvals[UTILITY].s_plasma.damage = -1;
|
|
1627 shipvals[UTILITY].s_plasma.speed = 0;
|
|
1628 shipvals[UTILITY].s_plasma.cost = 0;
|
|
1629 shipvals[UTILITY].s_plasma.fuse = 0;
|
|
1630 shipvals[UTILITY].s_plasma.wtemp = 0;
|
|
1631 shipvals[UTILITY].s_plasma.aux = 0;
|
|
1632 shipvals[UTILITY].s_maxwpntemp = 1000;
|
|
1633 shipvals[UTILITY].s_wpncoolrate = 2;
|
|
1634 shipvals[UTILITY].s_maxegntemp = 1800;
|
|
1635 shipvals[UTILITY].s_egncoolrate = 5;
|
|
1636 shipvals[UTILITY].s_maxfuel = 16000;
|
|
1637 shipvals[UTILITY].s_recharge = 38;
|
|
1638 shipvals[UTILITY].s_mingivefuel = 4000;
|
|
1639 shipvals[UTILITY].s_takeonfuel = 150;
|
|
1640 if (configvals->fuel_explosions)
|
|
1641 {
|
|
1642 shipvals[UTILITY].s_expldam = 60;
|
|
1643 shipvals[UTILITY].s_fueldam = 80;
|
|
1644 }
|
|
1645 else
|
|
1646 {
|
|
1647 shipvals[UTILITY].s_expldam = 100;
|
|
1648 shipvals[UTILITY].s_fueldam = 0;
|
|
1649 }
|
|
1650 shipvals[UTILITY].s_armyperkill = 12;
|
|
1651 shipvals[UTILITY].s_maxarmies = 12;
|
|
1652 shipvals[UTILITY].s_bomb = 0;
|
|
1653 shipvals[UTILITY].s_repair = 120;
|
|
1654 shipvals[UTILITY].s_maxdamage = 220;
|
|
1655 shipvals[UTILITY].s_maxshield = 120;
|
|
1656 shipvals[UTILITY].s_shieldcost = 4;
|
|
1657 shipvals[UTILITY].s_detcost = 50;
|
|
1658 shipvals[UTILITY].s_detdist = 1900;
|
|
1659 if (configvals->bronco_shipvals)
|
|
1660 shipvals[UTILITY].s_cloakcost = 180;
|
|
1661 else
|
|
1662 shipvals[UTILITY].s_cloakcost = 130; /* was 90 (MDM) */
|
|
1663 shipvals[UTILITY].s_scanrange = 2000;
|
|
1664 shipvals[UTILITY].s_numports = 2;
|
|
1665 shipvals[UTILITY].s_letter = 'u';
|
|
1666 shipvals[UTILITY].s_desig1 = 'U';
|
|
1667 shipvals[UTILITY].s_desig2 = 'T';
|
|
1668 shipvals[UTILITY].s_bitmap = 12;
|
|
1669 shipvals[UTILITY].s_width = 20;
|
|
1670 shipvals[UTILITY].s_height = 20;
|
|
1671 shipvals[UTILITY].s_timer = 7;
|
|
1672 shipvals[UTILITY].s_maxnum = 1;
|
|
1673 shipvals[UTILITY].s_rank = 2;
|
|
1674 shipvals[UTILITY].s_numdefn = 2;
|
|
1675 shipvals[UTILITY].s_numplan = 1;
|
|
1676 if (configvals->warpdrive)
|
|
1677 shipvals[UTILITY].s_nflags = SFNCANWARP | SFNHASPHASERS | SFNCANREPAIR | SFNCANFUEL;
|
|
1678 else
|
|
1679 shipvals[UTILITY].s_nflags = SFNHASPHASERS | SFNCANREPAIR | SFNCANFUEL;
|
|
1680
|
|
1681 /* Comprehensive definition of Gunboat */
|
|
1682 shipvals[PATROL].s_alttype = 0;
|
|
1683 strcpy(shipvals[PATROL].s_name, "Patrol Ship");
|
|
1684 shipvals[PATROL].s_turns = 1500000;
|
|
1685 shipvals[PATROL].s_imp.acc = 350;
|
|
1686 shipvals[PATROL].s_imp.dec = 400;
|
|
1687 shipvals[PATROL].s_imp.cost = 1;
|
|
1688 shipvals[PATROL].s_imp.maxspeed = 13;
|
|
1689 shipvals[PATROL].s_imp.etemp = 1000;
|
|
1690 shipvals[PATROL].s_after.acc = 800;
|
|
1691 shipvals[PATROL].s_after.dec = 350;
|
|
1692 shipvals[PATROL].s_after.cost = 18;
|
|
1693 shipvals[PATROL].s_after.maxspeed = 15;
|
|
1694 shipvals[PATROL].s_after.etemp = 30000;
|
|
1695 shipvals[PATROL].s_warp.acc = 10000;
|
|
1696 shipvals[PATROL].s_warp.dec = 500;
|
|
1697 if (configvals->bronco_shipvals)
|
|
1698 {
|
|
1699 shipvals[PATROL].s_warp.maxspeed = 21;
|
|
1700 shipvals[PATROL].s_warpprepspeed = 2;
|
|
1701 }
|
|
1702 else
|
|
1703 {
|
|
1704 shipvals[PATROL].s_warp.maxspeed = 35; /* was: 30; (BG) */
|
|
1705 shipvals[PATROL].s_warpprepspeed = 3;
|
|
1706 }
|
|
1707 shipvals[PATROL].s_warp.cost = 22;
|
|
1708 shipvals[PATROL].s_warp.etemp = 35000;
|
|
1709 shipvals[PATROL].s_warpinitcost = 800;
|
|
1710 shipvals[PATROL].s_warpinittime = 20;
|
|
1711 shipvals[PATROL].s_mass = 1000;
|
|
1712 shipvals[PATROL].s_tractstr = 1500;
|
|
1713 shipvals[PATROL].s_tractrng = 0.75;
|
|
1714 shipvals[PATROL].s_tractcost = 2;
|
|
1715 shipvals[PATROL].s_tractetemp = 1000;
|
|
1716 shipvals[PATROL].s_torp.damage = 30;
|
|
1717 shipvals[PATROL].s_torp.speed = 15;
|
|
1718 shipvals[PATROL].s_torp.cost = 180;
|
|
1719 shipvals[PATROL].s_torp.fuse = 18;
|
|
1720 shipvals[PATROL].s_torp.wtemp = 10;
|
|
1721 shipvals[PATROL].s_torp.wtemp_halfarc = 32;
|
|
1722 shipvals[PATROL].s_torp.wtemp_factor = 9;
|
|
1723 shipvals[PATROL].s_torp.aux = 0;
|
|
1724 shipvals[PATROL].s_phaser.damage = 50;
|
|
1725 shipvals[PATROL].s_phaser.speed = 5000;
|
|
1726 shipvals[PATROL].s_phaser.cost = 300;
|
|
1727 shipvals[PATROL].s_phaser.fuse = 8;
|
|
1728 shipvals[PATROL].s_phaser.wtemp = 45;
|
|
1729 shipvals[PATROL].s_missile.damage = 50;
|
|
1730 shipvals[PATROL].s_missile.speed = 17;
|
|
1731 shipvals[PATROL].s_missile.cost = 450;
|
|
1732 shipvals[PATROL].s_missile.fuse = 50;
|
|
1733 shipvals[PATROL].s_missile.wtemp = 50;
|
|
1734 shipvals[PATROL].s_missile.count = 6;
|
|
1735 shipvals[PATROL].s_missile.aux = 1;
|
|
1736 shipvals[PATROL].s_missilestored = 6;
|
|
1737 shipvals[PATROL].s_plasma.damage = -1;
|
|
1738 shipvals[PATROL].s_plasma.speed = 0;
|
|
1739 shipvals[PATROL].s_plasma.cost = 0;
|
|
1740 shipvals[PATROL].s_plasma.fuse = 0;
|
|
1741 shipvals[PATROL].s_plasma.wtemp = 0;
|
|
1742 shipvals[PATROL].s_plasma.aux = 0;
|
|
1743 shipvals[PATROL].s_maxwpntemp = 1000;
|
|
1744 shipvals[PATROL].s_wpncoolrate = 3;
|
|
1745 shipvals[PATROL].s_maxegntemp = 1500;
|
|
1746 shipvals[PATROL].s_egncoolrate = 8;
|
|
1747 shipvals[PATROL].s_maxfuel = 4000;
|
|
1748 shipvals[PATROL].s_recharge = 10;
|
|
1749 shipvals[PATROL].s_mingivefuel = 0;
|
|
1750 shipvals[PATROL].s_takeonfuel = 120;
|
|
1751 if (configvals->fuel_explosions)
|
|
1752 {
|
|
1753 shipvals[PATROL].s_expldam = 35;
|
|
1754 shipvals[PATROL].s_fueldam = 30;
|
|
1755 }
|
|
1756 else
|
|
1757 {
|
|
1758 shipvals[PATROL].s_expldam = 60;
|
|
1759 shipvals[PATROL].s_fueldam = 0;
|
|
1760 }
|
|
1761 shipvals[PATROL].s_armyperkill = 1;
|
|
1762 shipvals[PATROL].s_maxarmies = 1;
|
|
1763 shipvals[PATROL].s_bomb = 0;
|
|
1764 shipvals[PATROL].s_repair = 50;
|
|
1765 shipvals[PATROL].s_maxdamage = 40;
|
|
1766 shipvals[PATROL].s_maxshield = 50;
|
|
1767 shipvals[PATROL].s_shieldcost = 2;
|
|
1768 shipvals[PATROL].s_detcost = 100;
|
|
1769 shipvals[PATROL].s_detdist = 1750;
|
|
1770 if (configvals->bronco_shipvals)
|
|
1771 shipvals[PATROL].s_cloakcost = 40;
|
|
1772 else
|
|
1773 shipvals[PATROL].s_cloakcost = 30;
|
|
1774 shipvals[PATROL].s_scanrange = -1;
|
|
1775 shipvals[PATROL].s_numports = 0;
|
|
1776 shipvals[PATROL].s_letter = 'p';
|
|
1777 shipvals[PATROL].s_desig1 = 'P';
|
|
1778 shipvals[PATROL].s_desig2 = 'T';
|
|
1779 shipvals[PATROL].s_bitmap = 13;
|
|
1780 shipvals[PATROL].s_width = 20;
|
|
1781 shipvals[PATROL].s_height = 20;
|
|
1782 shipvals[PATROL].s_timer = 0;
|
|
1783 shipvals[PATROL].s_maxnum = 32;
|
|
1784 shipvals[PATROL].s_rank = 0;
|
|
1785 shipvals[PATROL].s_numdefn = 0;
|
|
1786 shipvals[PATROL].s_numplan = 0; /* 1; was 1 but everybody bitched
|
|
1787 * (BG) */
|
|
1788 if (configvals->warpdrive)
|
|
1789 shipvals[PATROL].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS | SFNHASMISSILE | SFNMASSPRODUCED | SFNCANWARP;
|
|
1790 else
|
|
1791 shipvals[PATROL].s_nflags = SFNCANORBIT | SFNARMYNEEDKILL | SFNHASPHASERS | SFNHASMISSILE | SFNMASSPRODUCED;
|
|
1792 }
|
|
1793
|
|
1794 /*----------END OF FILE-----*/
|