Implement alphameric Y coordinates.
[super-star-trek.git] / doc / sst-doc.xml
1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE book PUBLIC 
3     "-//OASIS//DTD DocBook XML V4.1.2//EN" 
4     "docbook/docbookxx.dtd"[
5 <!ENTITY sst-site      "http://catb.org/~esr/super-star-trek/">
6 <!ENTITY retro         "http://catb.org/~esr/retro/">
7 ]>
8 <book>
9 <bookinfo>
10 <title>Super Star Trek</title>
11
12 <authorgroup>
13 <author>
14   <firstname>David</firstname>
15   <surname>Matuzsek</surname>
16 </author>
17 <author>
18   <firstname>Paul</firstname>
19   <surname>Reynolds</surname>
20 </author>
21 <author>
22   <firstname>Tom</firstname>
23   <surname>Almy</surname>
24 </author>
25 <author>
26   <firstname>Stas</firstname>
27   <surname>Sergeev</surname>
28 </author>
29 <author>
30   <firstname>Eric</firstname>
31   <othername>Steven</othername>
32   <surname>Raymond</surname>
33 </author>
34 </authorgroup>
35
36 <legalnotice>
37 <para>Super Star Trek 2K is issued under the BSD license.  Nothing in
38 this license grants or purports to grant any rights with respect to
39 the trademarks, copyrights or other property of the originators of
40 Star Trek or their successors in interest.  We recognize and support
41 their right under the Berne Convention to recover damages for any uses
42 of this program which compromise their legitimate interest in
43 protecting their copyrights and trademarks or unjustly enrich
44 others.</para>
45 </legalnotice>
46 </bookinfo>
47
48
49 <dedication>
50 <literallayout format='linespecific' class='monospaced'>
51                 SSSSS   U   U   PPPPP   EEEEE   RRRRR
52                 S       U   U   P   P   E       R   R
53                 SSSSS   U   U   PPPPP   EEEE    RRRRR
54                     S   U   U   P       E       R  R
55                 SSSSS   UUUUU   P       EEEEE   R   R
56
57
58                  SSSSSSS  TTTTTTTT     A     RRRRRRR
59                 SSSSSSSS  TTTTTTTT    AAA    RRRRRRRR
60                SS            TT       AAA    RR     RR
61                SSSSSSS       TT      AA AA   RR     RR
62                 SSSSSSS      TT      AA AA   RRRRRRRR
63                       SS     TT     AAAAAAA  RRRRRRR
64                       SS     TT     AAAAAAA  RR   RR
65                SSSSSSSS      TT    AA     AA RR    RR
66                SSSSSSS       TT    AA     AA RR     RR
67     
68     
69     
70                 TTTTTTTT RRRRRRR   EEEEEEEEE KK     KK
71                 TTTTTTTT RRRRRRRR  EEEEEEEEE KK    KK
72                    TT    RR     RR EE        KK   KK
73                    TT    RR     RR EEEEEE    KKKKKK
74                    TT    RRRRRRRR  EEEEEE    KKKKK
75                    TT    RRRRRRR   EE        KK  KK
76                    TT    RR   RR   EE        KK   KK
77                    TT    RR    RR  EEEEEEEEE KK    KK
78                    TT    RR     RR EEEEEEEEE KK     KK
79
80
81                      Produced For Your Enjoyment
82
83                                  By
84
85                             David Matuszek
86                                  and
87                             Paul Reynolds
88
89                         With Modifications By
90                               Don Smith
91
92                             Resurrected By
93                                Tom Almy
94
95                           Curses Interface By
96                               Stas Sergeev 
97
98                 SST2K polishing and historical research by
99                              Eric S. Raymond
100 </literallayout>
101 </dedication>
102
103 <chapter><title>Introduction</title>
104 <para>The Organian Peace Treaty has collapsed, and the Federation is at war
105 with the Klingon Empire.  Joining the Klingons against the Federation
106 are the members of the <quote>Romulan Star Empire.</quote>  As commander of the
107 Starship U.S.S. Enterprise, your job is to wipe out the Klingon
108 invasion fleet and make the galaxy safe for democracy.</para>
109
110 <para>Your battleground is the entire galaxy, which for convenience is
111 divided up into eight rows of eight quadrants each, like a
112 checkerboard.  Rows are numbered from top to bottom, and columns are
113 numbered left to right, so quadrant 1 - 8 would be in the upper right
114 hand corner of the galaxy.</para>
115
116 <para>During battle you will be concerned only with those enemies that
117 occupy the same quadrant as yourself.  Quadrants are divided up into
118 sectors: ten rows of ten sectors each. Sectors are numbered in the
119 same way as quadrants, so the sector in the upper right corner is
120 sector 1 - 10.  You have a short-range scanner which allows you to
121 look at the entire quadrant in a single display.</para>
122
123 <para>Enemies recharge during your absence.  If you leave a quadrant
124 containing a weakened enemy, when you return to that quadrant he will
125 be strong again.  Also, each time you enter a quadrant, the positions
126 of everthing in the quadrant (except your ship) are randomized, to
127 save you the trouble of trying to remember where everything in the
128 quadrant is.  Notice that this refers only to the positions of things
129 in the quadrant&mdash;the numbers of each kind of thing are not changed
130 (except for black holes and the Super-commander, which move around
131 the galaxy).  If you kill something, it stays dead.</para>
132
133 <para>The Romulans are not as serious a threat to the Federation as the
134 Klingons.  For one thing, there are not as many of them.  For
135 another, the Romulans are not as treacherous.  However, Romulans are
136 not to be trifled with, especially when you are in violation of the
137 Romulan Neutral Zone.</para>
138
139 <para>There are two kinds of Klingons: Ordinary Klingons, which are
140 bad enough, and Klingon Commanders, which are even worse.  Commanders
141 are about three times stronger than ordinary Klingons.  Commanders are
142 more resistant to your weapons.  Commanders can move about during
143 battle while Ordinary Klingons stay put.  And finally, Commanders have
144 a thing called a <quote>long-range tractor beam</quote> which they can
145 use, at random intervals, to yank you away from what you are doing
146 into their quadrant, to do battle with them.  There is also a special
147 commander, called the <quote>Super-commander.</quote> This character
148 is so bad he is reserved for the Good, Expert, and Emeritus games.
149 Fortunately, there is just one Super-commander in a game.  In addition
150 to the undesirable traits of Commanders, he can move from quadrant to
151 quadrant at will, seeking out and destroying your starbases and any
152 helpful planets he runs across.  He also has a spy planted aboard your
153 ship, giving him valuable information about your condition.  Using
154 this information, he can do dastardly things like tractor beam your
155 ship when you are in bad shape.  And once you've been tractor beamed
156 by the Super-commander &mdash;</para>
157
158 <para>But the advantages are not all on the side of the enemy.  Your ship
159 is more powerful, and has better weapons.  Besides, in the this
160 galaxy there are from two to five starbases, at which you can stop to
161 refuel and lick your wounds, safe from phaser attack or tractor
162 beams.  But you had best not dally there too long, since time is not
163 on your side.  The Klingons are not just after you; they are
164 attacking the entire Federation.  There is always a finite <quote>time
165 left,</quote> which is how much longer the Federation can hold out if you
166 just sit on your fat behind and do nothing.  As you wipe out
167 Klingons, you reduce the rate at which the invasion fleet weakens the
168 Federation, and so the time left until the Federation collapses may
169 actually increase.  Since Klingons are the main threat to the
170 Federation, the Romulans do not figure into the <quote>time left.</quote>  In
171 fact, you need not kill all the Romulans to win.  If you can get all
172 the Klingons, the Federation will abide forever, and you have won the
173 game.</para>
174
175 <para>Space is vast, and it takes precious time to move from one place to
176 another.  In comparison, other things happen so quickly that we
177 assume they take no time at all. Two ways that time can pass are when
178 you move, or when you issue a command to sit still and rest for a
179 period of time.  You will sometimes want to do the latter, since the
180 various devices aboard your starship may be damaged and require time
181 to repair.  Of course, repairs can be made more quickly at a starbase
182 than than can in flight.</para>
183
184 <para>In addition to Klingons, Romulans, and starbases, the galaxy
185 contains (surprise) stars.  Mostly, stars are a nuisance and just get
186 in your way.  You can trigger a star into going nova by shooting one
187 of your photon torpedoes at it.  When a star novas, it does a lot of
188 dammage to anything immediately adjacent to it.  If another star is
189 adjacent to a nova, it too will go nova.  Stars may also occasionally
190 go supernova; a supernova in a quadrant destroys everything in the
191 quadrant andmakes the quadrant permanently uninhabitable.  You may
192 <quote>jump over</quote> a quadrant containing a supernova when you
193 move, but you should not stop there.</para>
194
195 <para>Supernovas may happen spontaneously, without provocation.  If a
196 supernova occurs in the same quadrant you are in, your starship has an
197 <quote>emergency automatic override</quote> which picks some random
198 direction and some random warp factor, and tries to throw you clear of
199 the supernova. If the supernova occurs in some other quadrant, you
200 just get a warning message from starfleet about it (provided, of
201 course, that your subspace radio is working).</para>
202
203 <para>Also a few planets are scattered through the galaxy.  These can
204 sometimes be a great help since some of them will have <quote>dilithium
205 crystals,</quote> which are capable of replenishing the ship's energy
206 supply.  You can either beam down to the planet surface using the
207 transporter, or take the shuttle craft <quote>Galileo</quote>.</para>
208
209 <para>Finally, each quadrant will contain from zero to three black
210 holes.  These can deflect or swallow torpedoes passing near them. They
211 also swallow enemy ships knocked into them.  If your ship enters one
212 &mdash;</para>
213
214 <para>Star Trek is a rich game, full of detail.  These instructions are
215 written at a moderate level&mdash;no attempt has been made fully to
216 describe everything about the game, but there is quite a bit more
217 here than you need to get started.  If you are new to the game, just
218 get a rough idea of the kinds of commands available, and start
219 playing.  After a game or two you will have learned everthing
220 important, and the detailed command descriptions which follow will be
221 a lot more meaningful to you.</para>
222
223 <para>You have weapons: phasers and photon torpedoes. You have a defense:
224 deflector shields.  You can look at things: long-range scanners,
225 short-range scanners, and a star chart.  You can move about, under
226 warp drive or impulse power.  You can also dock at a starbase, rest
227 while repairs are being made, abandon ship, self destruct, or give up
228 and start a new game.</para>
229
230 <para>The Klingons are waiting.</para>
231
232 </chapter>
233 <chapter><title>Starting the Game</title>
234 <!-- This chapter is new in SST 2K --> 
235
236 <para>The program will ask you some setup questions.  You can give it 
237 command-line arguments that will be treated as answers.  Any token
238 may be abbreviated to a unique prefix.</para>
239
240 <para>The first question concerns whether you want a regullar,
241 tournament, or saved game.  For discussion, see the <link
242 linkend="freeze">description of the freeze command</link>.</para>
243
244 <para>The second question will concern the length of the game.  
245 Longer games include more enemies.</para>
246
247 <para>The third question will set the game's difficulty level.
248 You should probably start out at the novice level, even if you are
249 already familiar with one of the other versions of the Star Trek
250 game&mdash;but, of course, the level of game you play is up to you.  If
251 you want to start at the Expert level, go ahead.  It's your funeral.
252 The Emeritus game is strictly for masochists.</para>
253
254 <para>The fourth question, new in SST2K, sets your game options.  A
255 blank answer or 'fancy' enables all SST2K features.  The option
256 'plain' approximated the original CDC 6600 FORTRAN game from UT Austin
257 and disables a number of features: Tholians, planets &amp; dilithium,
258 Thingies shooting back, deep-space-probes, Klingon ramming and
259 movement, time-warping through black holes, death-ray
260 upgrade. inhabited worlds.  The option 'almy' approximates Tom Almy's
261 C translation from 1979, disabling Thingies shooting back, base
262 shields, time-warping through black holes, and inhabited
263 worlds.</para>
264
265 </chapter>
266 <chapter><title>How To Issue Commands</title>
267
268 <para>When the game is waiting for you to enter a command it will
269 print out</para>
270
271 <screen>
272         COMMAND>
273 </screen>
274
275 <para>You may then type in your command.  All you have to remember for each
276 command is the mnemonic. For example, if you want to move straight up
277 one quadrant, you can type in the mnemonic (case insensitive)</para>
278
279 <screen>
280         move
281 </screen>
282
283 <para>and the computer will prompt you with</para>
284
285 <screen>
286         Manual or automatic- 
287 </screen>
288
289 <para>Say you type in <quote>manual</quote>. The computer then responds</para>
290
291 <screen>
292         X and Y displacements- 
293 </screen>
294
295 <para>Now you type in <quote>0 1</quote> which specifies an X movement of zero and a Y
296 movement of one.</para>
297
298 <para>When you have learned the commands, you can avoid being prompted
299 simply by typing in the information without waiting to be asked for
300 it. For example, in the above example, you could simply type in</para>
301
302 <screen>
303         move manual 0 1
304 </screen>
305
306 <para>and it will be done.  Or you could type in</para>
307
308 <screen>
309         move manual
310 </screen>
311
312 <para>and when the computer responds with the displacement prompt, you
313 can type in</para>
314
315 <screen>
316         0 1
317 </screen>
318
319 <para>and it will understand.</para>
320
321 <para>You can abbreviate most mnemonics.  For <quote>move</quote>, you can use any
322 of</para>
323
324 <screen>
325         move mov mo m
326 </screen>
327
328 <para>successfully.  For your safety, certain critical commands (such as to
329 abandon ship) must be written out in full.  Also, in a few cases two
330 or more commands begin with the same letter, and in this case that
331 letter refers to a particular one of the commands; to get the other,
332 your abbreviation must be two or more characters long.  This sounds
333 complicated, but you will learn the abbreviations quickly enough.</para>
334
335 <para>What this all boils down to is:</para>
336
337 <orderedlist>
338 <listitem><para>You can abbreviate practically anything</para></listitem>
339 <listitem><para>If you forget, the computer will prompt you</para></listitem>
340 <listitem><para>If you remember, you can type it all on one line</para></listitem>
341 </orderedlist>
342
343 <para>If you are part way through entering a command and you change your
344 mind, you can cancel the command by typing -1 as one of the
345 parameters, with the exception of the manual move command.</para>
346
347 <para>If anything is not clear to you, experiment.  The worst you can do is
348 lose a game or two.</para>
349
350 </chapter>
351 <chapter><title>List of Commands</title>
352
353 <sect1><title>Short-Range Scan</title>
354
355 <literallayout>
356 Mnemonic:  SRSCAN
357 Shortest abbreviation:  S
358 Full commands:  SRSCAN
359                 SRSCAN NO
360                 SRSCAN CHART
361 </literallayout>
362
363 <!-- This is new in SST 2K -->
364 <para>If you are using the screen-oriented interface, this command is
365 suppressed; instead, a short-range scan will always be present on the
366 screen.</para>
367
368 <para>The short-range scan gives you a considerable amount of information
369 about the quadrant your starship is in.  A short-range scan is best
370 described by an example.</para>
371
372 <screen>
373          1 2 3 4 5 6 7 8 9 10
374       1  * . . . . R . . . .  Stardate      2516.3
375       2  . . . E . . . . . .  Condition     RED  
376       3  . . . . . * . B . .  Position      5 - 1, 2 - 4
377       4  . . . S . . . . . .  Life Support  DAMAGED, Reserves=2.30
378       5  . . . . . . . K . .  Warp Factor   5.0
379       6  . K .   . . . . * .  Energy        2176.24
380       7  . . . . . P . . . .  Torpedoes     3
381       8  . . . . * . . . . .  Shields       UP, 42% 1050.0 units
382       9  . * . . * . . . C .  Klingons Left 12
383      10  . . . . . . . . . .  Time Left     3.72
384 </screen>
385
386 In fancy mode, the display will use letters for Y coordinates.
387
388 <screen>
389          1 2 3 4 5 6 7 8 9 10
390       a  * . . . . R . . . .  Stardate      2516.3
391       b  . . . E . . . . . .  Condition     RED  
392       c  . . . . . * . B . .  Position      e1, b4
393       d  . . . S . . . . . .  Life Support  DAMAGED, Reserves=2.30
394       e  . . . . . . . K . .  Warp Factor   5.0
395       f  . K .   . . . . * .  Energy        2176.24
396       g  . . . . . P . . . .  Torpedoes     3
397       h  . . . . * . . . . .  Shields       UP, 42% 1050.0 units
398       i  . * . . * . . . C .  Klingons Left 12
399       j  . . . . . . . . . .  Time Left     3.72
400 </screen>
401
402
403 <para>The left part is a picture of the quadrant.  The E at sector 2 -
404 4 (or b4) represents the Enterprise; the B at sector 3 - 8 (or c8) is a starbase.
405 There are ordinary Klingons (K) at sectors 5 - 8 (e8) and 6 - 2 (f2), and a
406 Klingon Commander (C) at 9 - 9 (i9).  The (GULP)
407 <quote>Super-commander</quote> (S) is occupies sector 4 - 4 (d4), and a
408 Romulan (R) is at 1 - 6 (a6).  An uninhabited planet (P) is at sector 7 - 6 (g6)
409 (if it were inhabited, it would display as a '@').  There are
410 also a large number of stars (*). The periods (.) are just empty
411 space&mdash;they are printed to help you get your bearings.  Sector 6
412 - 4 contains a black hole ( ).</para>
413
414 <para>The information on the right is assorted status information. You
415 can get this alone with the STATUS command.  The status information
416 will be absent if you type <quote>N</quote> after SRSCAN.  Otherwise
417 status information will be presented.</para>
418
419 <para>If you type <quote>C</quote> after SRSCAN, you will be given a
420 short-range scan and a Star Chart.</para>
421
422 <para>Short-range scans are free.  That is, they use up no energy and no
423 time.  If you are in battle, doing a short-range scan does not give
424 the enemies another chance to hit you.  You can safely do a
425 short-range scan anytime you like.</para>
426
427 <para>If your short-range sensors are damaged, this command will only show
428 the contents of adjacent sectors.</para>
429
430 </sect1>
431 <!--
432 <sect1><title>Visual Scan</title>
433
434 <literallayout>
435 Mnemonic:  VISUAL
436 Shortest abbreviation: V
437 </literallayout>
438
439 <para>A visual scan is made in a particular direction of three sectors
440 in the general direction specified.  This takes time, and Klingons can
441 attack you, so it should be done only when short-range sensors are
442 out.</para>
443
444 </sect1>
445 -->
446 <sect1><title>Status Report</title>
447
448 <literallayout>
449 Mnemonic:  STATUS
450 Shortest abbreviation: ST
451 </literallayout>
452
453 <!-- This is new in SST 2K --> 
454 <para>If you are using the screen-oriented interface, this command is
455 suppressed; instead, a full status report will always be present on the
456 screen.</para>
457
458 <para>This command gives you information about the current state of your
459 starship as follows:</para>
460
461 <variablelist>
462 <varlistentry>
463 <term>STARDATE</term>
464 <listitem>
465 <para>The current date. A stardate is the same as a day.</para>
466 </listitem>
467 </varlistentry>
468 <varlistentry>
469 <term>CONDITION</term>
470 <listitem>
471 <para>There are four possible conditions:</para>
472     <variablelist>
473     <varlistentry>
474     <term>DOCKED</term>
475     <listitem><para>docked at starbase.</para></listitem>
476     </varlistentry>
477     <varlistentry>
478     <term>RED</term>
479     <listitem><para>in battle.</para></listitem>
480     </varlistentry>
481     <varlistentry>
482     <term>YELLOW</term>
483     <listitem><para>low on energy (&lt;1000 units)</para></listitem>
484     </varlistentry>
485     <varlistentry>
486     <term>GREEN</term>
487     <listitem><para>none of the above</para></listitem>
488     </varlistentry>
489     </variablelist>
490 </listitem>
491 </varlistentry>
492 <varlistentry>
493 <term>POSITION</term>
494 <listitem>
495 <para>Quadrant is given first, then sector</para>
496 </listitem>
497 </varlistentry>
498 <varlistentry>
499 <term>LIFE SUPPORT</term>
500 <listitem>
501 <para>If <quote>ACTIVE</quote> then life support systems are functioning
502 normally. If on <quote>RESERVES</quote> the number is how many stardates your
503 reserve food, air, etc. will last&mdash;you must get repairs made or get to
504 a starbase before your reserves run out.</para>
505 </listitem>
506 </varlistentry>
507 <varlistentry>
508 <term>WARP FACTOR</term>
509 <listitem>
510 <para>What your warp factor is currently set to.</para>
511 </listitem>
512 </varlistentry>
513 <varlistentry>
514 <term>ENERGY</term>
515 <listitem>
516 <para>The amount of energy you have left. If it drops to zero, you die.</para>
517 </listitem>
518 </varlistentry>
519 <varlistentry>
520 <term>TORPEDOES</term>
521 <listitem>
522 <para>How many photon torpedoes you have left.</para>
523 </listitem>
524 </varlistentry>
525 <varlistentry>
526 <term>SHIELDS</term>
527 <listitem>
528 <para>Whether your shields are up or down, how strong they are
529 (what percentage of a hit they can deflect), and shield energy.</para> 
530 </listitem>
531 </varlistentry>
532 <varlistentry>
533 <term>KLINGONS LEFT</term>
534 <listitem>
535 <para>How many of the Klingons are still out there.</para>
536 </listitem>
537 </varlistentry>
538 <varlistentry>
539 <term>TIME LEFT</term>
540 <listitem>
541 <para>How long the Federation can hold out against the
542 present number of Klingons; that is, how long until the end
543 if you do nothing in the meantime.  If you kill Klingons
544 quickly, this number will go up&mdash;if not, it will go down.  If
545 it reaches zero, the federation is conquered and you lose.</para>
546 </listitem>
547 </varlistentry>
548 </variablelist>
549
550 <para>Status information is free&mdash;it uses no time or energy, and
551 if you are in battle, the Klingons are not given another chance to hit
552 you.</para>
553
554 <para>Status information can also be obtained by doing a short-range scan.
555 See the SRSCAN command for details.</para>
556
557 <para>Each item of information can be obtained singly by requesting it.
558 See REQUEST command for details.</para>
559
560 </sect1>
561 <sect1><title>Long-Range Scan</title>
562
563 <literallayout>
564 Mnemonic:  LRSCAN
565 Shortest abbreviation:  L
566 </literallayout>
567
568 <!-- This is new in SST 2K --> 
569 <para>If you are using the screen-oriented interface, this command is
570 suppressed; instead, a long-range scan will always be present on the
571 screen.</para>
572
573 <para>A long-range scan gives you general information about where you are
574 and what is around you.  Here is an example output.</para>
575
576 <screen>
577     Long-range scan for Quadrant 5 - 1
578        -1  107  103
579        -1  316    5
580        -1  105 1000
581 </screen>
582
583 <para>This scan says that you are in row 5, column 1 of the 8 by 8 galaxy.
584 The numbers in the scan indicate how many of each kind of thing there
585 is in your quadrant and all adjacent quadrants.  The digits are
586 interpreted as follows.</para>
587
588 <informaltable>
589 <tgroup cols='2'>
590 <tbody>
591 <row>
592   <entry>Thousands digit:</entry>
593   <entry>1000 indicates a supernova (only)</entry>
594 </row>
595 <row>
596   <entry>Hundreds digit:</entry>
597   <entry>number of Klingons present</entry>
598 </row>
599 <row>
600   <entry>Tens digit:</entry>
601   <entry>number of starbases present</entry>
602 </row>
603 <row>
604   <entry>Ones digit:</entry>
605   <entry>number of stars present</entry>
606 </row>
607 </tbody>
608 </tgroup>
609 </informaltable>
610
611 <para>For example, in your quadrant (5 - 1) the number is 316, which
612 indicates 3 Klingons, 1 starbase, and 6 stars.  The long-range
613 scanner does not distinguish between ordinary Klingons and Klingon
614 command ships.  If there is a supernova, as in the quadrant below and
615 to your right (quadrant 6 - 2), there is nothing else in the
616 quadrant. </para>
617
618 <para>Romulans possess a <quote>cloaking device</quote> which prevents
619 their detection by long-range scan.  Because of this fact, Starfleet
620 Command is never sure how many Romulans are <quote>out there</quote>.
621 When you kill the last Klingon, the remaining Romulans surrender to
622 the Federation.</para>
623
624 <para>Planets are also undetectable by long-range scan.  The only way to
625 detect a planet is to find it in your current quadrant with the
626 short-range sensors.</para>
627
628 <para>Since you are in column 1, there are no quadrants to your left. The
629 minus ones indicate the negative energy barrier at the edge of the
630 galaxy, which you are not permitted to cross.</para>
631
632 <para>Long-range scans are free.  They use up no energy or time, and can be
633 done safely regardless of battle conditions.</para>
634
635 </sect1>
636 <sect1><title>Star Chart</title>
637
638 <literallayout>
639 Mnemonic:  CHART
640 Shortest abbreviation:  C
641 </literallayout>
642
643 <para>As you proceed in the game, you learn more and more about what things
644 are where in the galaxy. Whenever you first do a scan in a quadrant,
645 telemetry sensors are ejected which will report any changes in the
646 quadrant(s) back to your ship, providing the sub-space radio is
647 working. Spock will enter this information in the chart. If the radio
648 is not working, Spock can only enter new information discovered from
649 scans, and information in other quadrants may be obsolete.</para>
650
651 <para>The chart looks like an 8 by 8 array of numbers.  These numbers are
652 interpreted exactly as they are on a long-range scan. A period (.) in
653 place of a digit means you do not know that information yet.  For
654 example, ... means you know nothing about the quadrant, while .1.
655 menas you know it contains a base, but an unknown number of Klingons
656 and stars.</para>
657
658 <para>Looking at the star chart is a free operation.  It costs neither time
659 nor energy, and can be done safely whether in or out of battle.</para>
660
661 </sect1>
662 <sect1><title>Damage Report</title>
663
664 <literallayout>
665 Mnemonic:  DAMAGES
666 Shortest abbreviation:  DA
667 </literallayout>
668
669 <para>At any time you may ask for a damage report to find out what devices
670 are damaged and how long it will take to repair them.  Naturally,
671 repairs proceed faster at a starbase.</para>
672
673 <para>If you suffer damages while moving, it is possible that a subsequent
674 damage report will not show any damage.  This happens if the time
675 spent on the move exceeds the repair time, since in this case the
676 damaged devices were fixed en route.</para>
677
678 <para>Damage reports are free.  They use no energy or time, and can be done
679 safely even in the midst of battle.</para>
680
681 </sect1>
682 <sect1><title>Move Under Warp Drive</title>
683
684 <literallayout>
685 Mnemonic:  MOVE
686 Shortest abbreviation:  M
687 Full command:  MOVE MANUAL &lt;displacement&gt;
688                MOVE AUTOMATIC &lt;destination&gt;
689 </literallayout>
690
691 <para>This command is the usual way to move from one place to another
692 within the galaxy.  You move under warp drive, according to the
693 current warp factor (see <quote>WARP FACTOR</quote>).</para>
694
695 <para>There are two command modes for movement: MANUAL and AUTOMATIC.
696 The manual mode requires the following format:</para>
697
698 <screen>
699         MOVE MANUAL &lt;deltax&gt; &lt;deltay&gt;
700 </screen>
701
702 <para>&lt;deltax&gt; and &lt;deltay&gt; are the horizontal and vertical
703 displacements for your starship, in quadrants; a displacement of one
704 sector is 0.1 quadrants.  Specifying &lt;deltax&gt; and &lt;deltay&gt;
705 causes your ship to move in a straight line to the specified
706 destination. If &lt;deltay&gt; is omitted, it is assumed zero. For
707 example, the shortest possible command to move one sector to the right
708 would be</para>
709
710 <screen>
711         M M .1
712 </screen>
713
714 <para>The following examples of manual movement refer to the short-range
715 scan shown earlier.</para>
716
717 <screen>
718   Destination Sector    Manual Movement command
719         3 - 1                   M M -.3 -.1
720         2 - 1                   M M -.3
721         1 - 2                   M M -.2 .1
722         1 - 4                   M M 0 .1
723   (leaving quadrant)            M M 0 .2
724 </screen>
725
726 <para>The automatic mode is as follows:</para>
727
728 <screen>
729         MOVE AUTOMATIC &lt;qrow&gt; &lt;qcol&gt; &lt;srow&gt; &lt;scol&gt;
730 </screen>
731
732 <para>&lt;para&gt;where &lt;qrow&gt; and &lt;qcol&gt; are the row and column
733 numbers of the destination quadrant, and &lt;srow&gt; and &lt;scol&gt;
734 are the row and column numbers of the destination sector in that
735 quadrant.  This command also moves your ship in a straight line path
736 to the destination.  For moving within a quadrant, &lt;qrow&gt; and
737 &lt;qcol&gt; may be omitted. For example, to move to sector 2 - 9 in
738 the current quadrant, the shortest command would be</para>
739
740 <screen>
741         M A 2 9
742 </screen>
743
744 <para>To move to quadrant 3 - 7, sector 5 - 8, type</para>
745
746 <screen>
747         M A 3 7 5 8
748 </screen>
749
750 <para>and it will be done.  In automatic mode, either two or four numbers
751 must be supplied.</para>
752
753 <para> If your game is in "fancy" mode, there ia a way to input
754 coordinates that avoids any need to remember thet the Y coordinate
755 comes first.  Y values may be given as lowercase letters starting with
756 a = 1. So for example:
757
758 <screen>
759         a1 = 1 - 1
760         c5 = 3 - 5
761         f2 = 6 - 2
762 </screen>
763
764 The previous move xommand could be expressed as 
765
766 <screen>
767         m a c7 e8
768 </screen>
769
770 <para>Automatic mode utilizes the ship's <quote>battle
771 computer.</quote> If the computer is damaged, manual movement must be
772 used.</para>
773
774 <para>If warp engines are damaged less than 10 stardates (undocked) you can
775 still go warp 4.</para>
776
777 <para>It uses time and energy to move.  How much time and how much energy
778 depends on your current warp factor, the distance you move, and
779 whether your shields are up.  The higher the warp factor, the faster
780 you move, but higher warp factors require more energy.  You may move
781 with your shields up, but this doubles the energy required.</para>
782
783 <para>You can move within a quadrant without being attacked if you just
784 entered the quadrant or have been attacked since your last move
785 command.  This enables you to move and hit them before they
786 retaliate.</para>
787
788 </sect1>
789 <sect1><title>Warp Factor</title>
790
791 <literallayout>
792 Mnemonic:  WARP
793 Shortest abbreviation:  W
794 Full command:  WARP &lt;number&gt;
795 </literallayout>
796
797 <para>Your warp factor controls the speed of your starship.  The larger the
798 warp factor, the faster you go and the more energy you use.</para>
799
800 <para>Your minimum warp factor is 1.0 and your maximum warp factor is 10.0
801 (which is 100 times as fast and uses 1000 times as much energy).  At
802 speeds above warp 6 there is some danger of causing damage to your
803 warp engines; this damage is larger at higher warp factors and also
804 depends on how far you go at that warp factor.</para>
805
806 <para>At exactly warp 10 there is some probability of entering a
807 so-called <quote>time warp</quote> and being thrown foward or backward
808 in time.  The farther you go at warp 10, the greater is the
809 probability of entering the time warp.</para>
810
811 </sect1>
812 <sect1><title>Impulse Engines</title>
813
814 <literallayout>
815 Mnemonic:  IMPULSE
816 Shortest abbreviation:  I
817 Full command:  IMPULSE MANUAL &lt;displacement&gt;
818                IMPULSE AUTOMATIC &lt;destination&gt;
819 </literallayout>
820
821 <para>The impulse engines give you a way to move when your warp engines are
822 damaged.  They move you at a speed of 0.95 sectors per stardate,
823 which is the equivalent of a warp factor of about 0.975, so they are
824 much too slow to use except in emergencies.</para>
825
826 <para>Movement commands are indicated just as in the <quote>MOVE</quote> command.</para>
827
828 <para>The impulse engines require 20 units of energy to engage, plus 10
829 units per sector (100 units per quadrant) traveled. It does not cost
830 extra to move with the shields up.</para>
831
832 </sect1>
833 <sect1><title>Deflector Shields</title>
834
835 <literallayout>
836 Mnemonic:  SHIELDS
837 Shortest abbreviation:  SH
838 Full commands:  SHIELDS UP
839                 SHIELDS DOWN
840                 SHIELDS TRANSFER &lt;amount of energy to transfer&gt;
841 </literallayout>
842
843 <para>Your deflector shields are a defensive device to protect you from
844 Klingon attacks (and nearby novas).  As the shields protect you, they
845 gradually weaken.  A shield strength of 75%, for example, means that
846 the next time a Klingon hits you, your shields will deflect 75% of
847 the hit, and let 25% get through to hurt you.</para>
848
849 <para>It costs 50 units of energy to raise shields, nothing to lower them.
850 You may move with your shields up; this costs nothing under impulse
851 power, but doubles the energy required for warp drive.</para>
852
853 <para>Each time you raise or lower your shields, the Klingons have another
854 chance to attack.  Since shields do not raise and lower
855 instantaneously, the hits you receive will be intermediate between
856 what they would be if the shields were completely up or completely
857 down. </para>
858
859 <para>You may not fire phasers through your shields.  However you may
860 use the <quote>high-speed shield control</quote> to lower shields,
861 fire phasers, and raise the shields again before the Klingons can
862 react.  Since rapid lowering and raising of the shields requires more
863 energy than normal speed operation, it costs you 200 units of energy
864 to activate this control.  It is automatically activated when you fire
865 phasers while shields are up.  You may fire photon torpedoes, but they
866 may be deflected considerably from their intended course as they pass
867 through the shields (depending on shield strength).</para>
868
869 <para>You may transfer energy beteen the ship's energy (given as
870 <quote>Energy</quote> in the status) and the shields.  The word
871 <quote>TRANSFER</quote> may be abbreviated <quote>T</quote>.  The
872 ammount of energy to transfer is the number of units of energy you
873 wish to take from the ship's energy and put into the shields.  If you
874 specify an negative number, energy is drained from the shields to the
875 ship.  Transfering energy constitutes a turn.  If you transfer energy
876 to the shields while you are under attack, they will be at the new
877 energy level when you are next hit.</para>
878
879 <para>Enemy torpedoes hitting your ship explode on your shields (if they
880 are up) and have essentially the same effect as phaser hits.</para>
881
882 </sect1>
883 <sect1><title>Phasers</title>
884
885 <literallayout>
886 Mnemonic:  PHASERS
887 Shortest abbreviation:  P
888 Full commands:  PHASERS AUTOMATIC &lt;AMOUNT TO FIRE&gt; &lt;NO&gt;
889                 PHASERS &lt;AMOUNT TO FIRE&gt; &lt;NO&gt;
890                 PHASERS MANUAL &lt;NO&gt; &lt;AMOUNT 1&gt; &lt;AMOUNT 2&gt;...&lt;AMOUNT N&gt; 
891 </literallayout>
892
893 <para>Phasers are energy weapons. As you fire phasers at Klingons, you
894 specify an <quote>amount to fire</quote> which is drawn from your
895 energy reserves.  The amount of total hit required to kill an enemy is
896 partly random.  but also depends on skill level.</para>
897
898 <para>The average hit required to kill an ordinary Klingon varies from 200
899 units in the Novice game to 250 units in the Emeritus game.
900 Commanders normally require from 600 (Novice) to 700 (Emeritus).  The
901 Super-commander requres from 875 (Good) to 1000 (Emeritus). Romulans
902 require an average of 350 (Novice) to 450 (Emeritus).</para>
903
904 <para>Hits on enemies are cumulative, as long as you don't leave the
905 quadrant. </para>
906
907 <para>In general, not all that you fire will reach the Klingons.  The
908 farther away they are, the less phaser energy will reach them. If a
909 Klingon is adjacent to you, he will receive about 90% of the phaser
910 energy directed at him; a Klingon 5 sectors away will receive about
911 60% and a Klingon 10 sectors away will receive about 35%. There is
912 some randomness involved, so these figures are not exact. Phasers
913 have no effect beyond the boundaries of the quadrant you are in.</para>
914
915 <para>Phasers may overheat (and be damaged) if you fire too large a burst
916 at once. Firing up to 1500 units is safe.  From 1500 on up the
917 probability of overheat increases with the amount fired.</para>
918
919 <para>If phaser firing is automatic, the computer decides how to
920 divide up your &lt;amount to fire&gt; among the Klingons present.  If
921 phaser firing is manual, you specify how much energy to fire at each
922 Klingon present (nearest first), rather than just specifying a total
923 amount.  You can abreviate <quote>MANUAL</quote> and
924 <quote>AUTOMATIC</quote> to one or more letters; if you mention
925 neither, automatic fire is usually assumed.</para>
926
927 <para>Battle computer information is available by firing phasers manually,
928 and allowing the computer to prompt you.  If you enter zero for the
929 amount to fire at each enemy, you will get a complete report, without
930 cost.  The battle computer will tell you how much phaser energy to
931 fire at each enemy for a sure kill.  This information appears in
932 parentheses prior to the prompt for each enemy.  Since the amount is
933 computed from sensor data, if either the computer or the S.R. sensors
934 are damaged, this information will be unavailable, and phasers must
935 be fired manually.</para>
936
937 <para>A safety interlock prevents phasers from being fired through
938 the shields.  If this were not so, the shields would contain your fire
939 and you would fry yourself.  However, you may utilize the
940 <quote>high-speed shield control</quote> to drop shields, fire
941 phasers, and raise shields before the enemy can react.  Since it takes
942 more energy to work the shields rapidly with a shot, it costs you 200
943 units of energy each time you activate this control.  It is
944 automatically activated when you fire phasers while the shields are
945 up. By specifying the &lt;no&gt; option, shields are not raised after
946 firing.</para>
947
948 <para>Phasers have no effect on starbases (which are shielded) or on
949 stars.</para>
950
951 </sect1>
952 <sect1><title>Cloak</title>
953
954 <literallayout>
955   Mnemonic:  CLOAK
956   Shortest abbreviation:  CLOAK
957   Full commands:  CLOAK ON
958                   CLOAK OFF
959 </literallayout>
960
961 <para>The cloaking device prevents your ship from being seen by any enemy
962 vessels.  When the cloaking device is in use, your subspace radio will
963 not receive transmissions, torpedoes will be less accurate, you cannot
964 dock, and you cannot use your warp engines. Enemy ships will get a
965 chance to attack you when you turn cloaking on.</para>
966
967 <para>The Treaty of Algeron with the Romulans in Stardate 2311 prohibits the
968 use of cloaking devices. If a Romulan ship observes you cloaking or
969 uncloaking after this point in time you will be in violation, which
970 will hurt your final score.</para>
971
972 <para>The Faerie Queene does not have a cloaking device.</para>
973
974 </sect1>
975 <sect1><title>Capture</title>
976
977 <literallayout>
978 Mnemonic:  CAPTURE
979 Shortest abbreviation:  CAPTURE
980 Full commands:  CAPTURE
981 </literallayout>
982
983 <para>Ask a Klingon To surrender.</para>
984
985 <para>The capture command provides a more humane way to end a battle than
986 just destroying the Klingon battleship with the crew aboard. Assuming
987 the subspace radio and transporter are working, and there is room in
988 the brig, this command will ask the captain of the weakest Klingon
989 ship in the quadrant to surrender.  If the captain agrees, some of the
990 crew will transport to your ship and the Klingon ship will be
991 destroyed. This command does take time and you will be attacked by any
992 other enemy ships if the surrender occurs.</para>
993
994 <para>When you dock, any captured Klingons will be transferred to the base
995 and you will be credited with the lives you save.</para>
996 </sect1>
997 <sect1><title>Report</title>
998
999 <literallayout>
1000 Mnemonic:  REPORT
1001 Shortest abbreviation: REP
1002 </literallayout>
1003
1004 <para>This command supplies you with information about the state of the
1005 current game.  Its purpose is to remind you of things that you have
1006 learned during play, but may have forgotten, and cannot otherwise
1007 retrieve if you are not playing at a hard-copy terminal.</para>
1008
1009 <para>You are told the following things:</para>
1010
1011 <itemizedlist>
1012 <listitem><para>The length and skill level of the game you are playing</para></listitem>
1013 <listitem><para>The original number of Klingons</para></listitem>
1014 <listitem><para>How many Klingons you have destroyed</para></listitem>
1015 <listitem><para>Whether the Super-Commander has been destroyed</para></listitem>
1016 <listitem><para>How many bases have been destroyed</para></listitem>
1017 <listitem><para>How many bases are left</para></listitem>
1018 <listitem><para>What bases (if any) are under attack; your subspace radio
1019 must have been working since the attack to get this 
1020 information.</para></listitem>
1021 <listitem><para>How many casualties you have suffered</para></listitem>
1022 <listitem><para>How many times you have called for help.</para></listitem>
1023 </itemizedlist>
1024
1025 <para>This same information is automatically given to you when you start to
1026 play a frozen game.</para>
1027
1028 </sect1>
1029 <sect1><title>Computer</title>
1030
1031 <literallayout>
1032 Mnemonic:  COMPUTER
1033 Shortest abbreviation: CO
1034 </literallayout>
1035
1036 <para>This command allows using the ship's computer (if functional) to
1037 calculate travel times and energy usage.</para>
1038
1039 </sect1>
1040 <sect1><title>Photon Torpedoes</title>
1041
1042 <literallayout>
1043 Mnemonic:  TORPEDO
1044 Shortest abbreviation:  TO
1045 Full commands:  TORPEDO &lt;NUMBER&gt; &lt;TARG1&gt; &lt;TARG2&gt; &lt;TARG3&gt;
1046 </literallayout>
1047
1048 <para>Photon torpedoes are projectile weapons&mdash;you either hit what you aim
1049 at, or you don't.  There are no <quote>partial hits</quote>.</para>
1050
1051 <para>One photon torpedo will usually kill one ordinary Klingon, but it
1052 usually takes about two for a Klingon Commander.  Photon torpedoes
1053 can also blow up stars and starbases, if you aren't careful.</para>
1054
1055 <para>You may fire photon torpedoes singly, or in bursts of two or three.
1056 Each torpedo is individually targetable.  The computer will prompt
1057 you, asking for the target sector for each torpedo.  Alternately, you
1058 may specify each target in the command line.</para>
1059
1060 <para>Photon torpedoes cannot be aimed precisely&mdash;there is always some
1061 randomness involved in the direction they go.  Photon torpedoes may
1062 be fired with your shields up, but as they pass through the shields
1063 they are randomly deflected from their intended course even more.</para>
1064
1065 <para>Photon torpedoes are proximity-fused.  The closer they explode to the
1066 enemy, the more damage they do.  There is a hit <quote>window</quote> about one
1067 sector wide.  If the torpedo misses the hit window, it does not
1068 explode and the enemy is unaffected.  Photon torpedoes are only
1069 effective within the quadrant.  They have no effect on things in
1070 adjacent quadrants.</para>
1071
1072 <para>If more than one torpedo is fired and only one target sector is
1073 specified, all torpedoes are fired at that sector.  For example, to
1074 fire two torpedoes at sector 3 - 4, you type</para>
1075
1076 <screen>
1077      PHO 2 3 4           (or)           PHO 2 3 4 3 4
1078 </screen>
1079
1080 <para>To fire torpedoes at, consecutively, sectors 2 - 6, 1 - 10, and 4 -
1081 7, type</para>
1082
1083 <screen>
1084      PHO 3 2 6 1 10 4 7
1085 </screen>
1086
1087 <para>There is no restriction to fire directly at a sector.  For example,
1088 you can enter</para>
1089
1090 <screen>
1091        PHO 1 3 2.5
1092 </screen>
1093
1094 <para>to aim between two sectors.  However, sector numbers must be 1 to 10
1095 inclusive.</para>
1096
1097 <para>In fancy mode, you can write "PHO 3 2 6 1 10 4 7" as
1098
1099 <screen>
1100      pho 3 b6 a10 d7
1101 </screen>
1102
1103 Fractional Y coordinates are not supported.
1104
1105 </sect1>
1106 <sect1><title>Dock at Starbase</title>
1107
1108 <literallayout>
1109 Mnemonic:  DOCK
1110 Shortest abbreviation:  D
1111 </literallayout>
1112
1113 <para>You may dock your starship whenever you are in one of the eight
1114 sector positions immediately adjacent to a starbase.  When you dock,
1115 your starship is resupplied with energy, shield energy photon
1116 torpedoes, and life support reserves.  Repairs also proceed faster at
1117 starbase, so if some of your devices are damaged, you may wish to stay
1118 at base (by using the <quote>REST</quote> command) until they are
1119 fixed.  If your ship has more than its normal maximum energy (which
1120 can happen if you've loaded crystals) the ship's energy is not
1121 changed.</para>
1122
1123 <para>You may not dock while in standard orbit around a planet.</para>
1124
1125 <para>Starbases have their own deflector shields, so you are completely
1126 safe from phaser attack while docked.  You are also safe from
1127 long-range tractor beams.</para>
1128
1129 <para>Starbases also have both short and long range sensors, which you can
1130 use if yours are broken. There's also a subspace radio to get
1131 information about happenings in the galaxy. Mr. Spock will update the
1132 star chart if your ask for it while docked and your own radio is dead.</para>
1133
1134 </sect1>
1135 <sect1><title>Rest</title>
1136
1137 <literallayout>
1138 Mnemonic:  REST
1139 Shortest abbreviation:  R
1140 Full command:  REST &lt;NUMBER-OF-STARDATES&gt;
1141 </literallayout>
1142
1143 <para>This command simply allows the specified number of stardates to go
1144 by.  This is useful if you have suffered damages and wish to wait
1145 until repairs are made before you go back into battle.</para>
1146
1147 <para>It is not generally advisable to rest while you are under attack by
1148 Klingons or Romulans.</para>
1149
1150 </sect1>
1151 <sect1><title>Call Starbase for Help</title>
1152
1153 <literallayout>
1154 Mnemonic:  MAYDAY
1155 (No abbreviation)
1156 </literallayout>
1157
1158 <para>[Originally, this command was called <quote>HELP</quote>, but
1159 these days that might be misconstrued as an attempt to browse built-in
1160 documentation! In some later versions it was CALL.]</para>
1161
1162 <para>When you get into serious trouble, you may call a starbase for
1163 help.  Starbases have a device called a <quote>long-range transporter
1164 beam</quote> which they can use to teleport you to base.  This works
1165 by dematerializing your starship at its current position and
1166 re-materializing it adjacent to the nearest starbase.  Teleportation
1167 is instantaneous, and starbase supplies the required energy&mdash;all
1168 you have to do is let them know (via subspace radio) that you need to
1169 be rescued.</para>
1170
1171 <para>This command should be employed only when absolutely necessary.  In
1172 the first place, calling for help is an admission on your part that
1173 you got yourself into something you cannot get yourself out of, and
1174 you are heavily penalized for this in the final scoring.  Secondly,
1175 the long-range transporter beam is not reliable&mdash;starbase can always
1176 manage to dematerialize your starship, but (depending on distance)
1177 may or may not be able to re-materialize you again.  The long-range
1178 transporter beam has no absolute maximum range; if you are in the
1179 same quadrant as a starbase, you have a good chance (about 90%) of
1180 re-materializing successfully.  your chances drop to roughly 50-50 at
1181 just over 3 quadrants.</para>
1182
1183 </sect1>
1184 <sect1><title>Abandon Ship</title>
1185
1186 <literallayout>
1187 Mnemonic:  ABANDON
1188 (no abbreviation)
1189 </literallayout>
1190
1191 <para>You may abandon the Enterprise if necessary.  If there is still a
1192 starbase in the galaxy, you will be sent there and put in charge of a
1193 weaker ship, the Faerie Queene.</para>
1194
1195 <para>The Faerie Queene cannot be abandoned.</para>
1196
1197 </sect1>
1198 <sect1><title>Self-Destruct</title>
1199
1200 <literallayout>
1201 Mnemonic:  DESTRUCT
1202 (no abbreviation)
1203 </literallayout>
1204
1205 <para>You may self-destruct, thus killing yourself and ending the game.  If
1206 there are nearby Klingons, you may take a few of them with you (the
1207 more energy you have left, the bigger the bang). It is possible to
1208 win this way, if you kill off your last adversaries with the blast.</para>
1209
1210 <para>In order to self-destruct you must remember the password you typed in
1211 at the beginning of the game.</para>
1212
1213 </sect1>
1214 <sect1><title>Quit Game</title>
1215
1216 <literallayout>
1217 Mnemonic:  QUIT
1218 (no abbreviation)
1219 </literallayout>
1220
1221 <para>Immediately cancel the current game; no conclusion is reached.  You
1222 will be given an opportunity to start a new game or to leave the Star
1223 Trek program.</para>
1224
1225 </sect1>
1226 <sect1><title>Sensor-Scan</title>
1227
1228 <literallayout>
1229 Mnemonic:  SENSORS
1230 Shortest abbreviation:  SE
1231 </literallayout>
1232
1233 <para>Utilizing the short-range sensors, science officer Spock gives you a
1234 readout on any planet in your quadrant.  Planets come in three
1235 classes: M, N, and O.  Only class M planets have earth-like
1236 conditions.  Spock informs you if the planet has any dilithium
1237 crystals.  Sensor scans are free.</para>
1238
1239 </sect1>
1240 <sect1><title>Enter Standard Orbit</title>
1241
1242 <literallayout>
1243 Mnemonic:  ORBIT
1244 Shortest abbreviation:  O
1245 </literallayout>
1246
1247 <para>To land on a planet you must first be in standard orbit.  You achieve
1248 this in a manner similar to docking at starbase.  Moving to one of
1249 the eight sector positions immediately adjacent to the planet, you
1250 give the orbit command which puts your ship into standard orbit about
1251 the planet.  Since this is a maneuver, a small amount of time is
1252 used; negligible energy is required.  If enemies are present, they
1253 will attack.</para>
1254
1255 </sect1>
1256 <sect1><title>Transporter Travel</title>
1257
1258 <literallayout>
1259 Mnemonic:  TRANSPORT
1260 Shortest abbreviation:  T
1261 </literallayout>
1262
1263 <para>The transporter is a device which can convert any physical object
1264 into energy, beam the energy through space, and reconstruct the
1265 physical object at some destination.  Transporting is one way to land
1266 on a planet.  Since the transporter has a limited range, you must be
1267 in standard orbit to beam down to a planet.  Shields must be down
1268 while transporting.</para>
1269
1270 <para>The transport command is used to beam a landing party onto a planet
1271 to mine <quote>dilithium crystals</quote>.  Each time the command is given the
1272 landing party (which you lead) moves from the ship to the planet, or
1273 vice-versa.</para>
1274
1275 <para>You are advised against needless transporting, since like all
1276 devices, the transporter will sometimes malfunction.</para>
1277
1278 <para>The transporter consumes negligible time and energy.  Its use does
1279 not constitute a <quote>turn</quote>.</para>
1280
1281 </sect1>
1282 <sect1><title>Shuttle Craft</title>
1283
1284 <literallayout>
1285 Mnemonic:  SHUTTLE
1286 Shortest abbreviation:  SHU
1287 </literallayout>
1288
1289 <para>An alternate way to travel to and from planets.  Because of limited
1290 range, you must be in standard orbit to use the shuttle craft, named
1291 "Galileo".  Shields must be down.</para>
1292
1293 <para>Unlike transporting, use of the shuttle craft does constitute a
1294 <quote>turn</quote> since time is consumed.  The time naturally
1295 depends on orbit altitude, and is equal to 3.0e-5 times altitude.
1296 Shuttling uses no ship energy.</para>
1297
1298 <para>You should use the same travel device going from the planet to the
1299 ship as you use to go from the ship to the planet. However it is
1300 possible to transport to the planet and have the Galileo crew come
1301 and pick your landing party up, or to take the Galileo to the planet
1302 and then transport back, leaving the shuttle craft on the planet.</para>
1303
1304 </sect1>
1305 <sect1><title>Mine Dilithium Crystals</title>
1306
1307 <literallayout>  
1308 Mnemonic:  MINE
1309 Shortest abbreviation:  MI
1310 </literallayout>
1311
1312 <para>Once you and your mining party are on the surface of a planet which
1313 has dilithium crystals, this command will dig them for you.</para>
1314
1315 <para>Mining requires time and constitutes a <quote>turn</quote>.  No
1316 energy is used.  Class M planets require 0.1 to 0.3 stardates to mine.
1317 Class N planets take twice as long, and class O planets take three
1318 times as long.</para>
1319
1320 <para>Dilithium crystals contain enormous energy in a form that is readily
1321 released in the ship's power system.  It is an excellent idea to mine
1322 them whenever possible, for use in emergencies.  You keep the
1323 crystals until the game is over or you abandon ship when not at a
1324 starbase.</para>
1325
1326 </sect1>
1327 <sect1><title>Load Dilithium Crystals</title>
1328
1329 <literallayout>  
1330 Mnemonic:  CRYSTALS
1331 Shortest abbreviation:  CR
1332 </literallayout>
1333
1334 <para>This is a very powerful command which should be used with caution.
1335 Once you have dilithium crystals aboard ship, this command will
1336 instruct engineering officer Scott and Mr. Spock to place a raw
1337 dilithium crystal into the power channel of the ship's
1338 matter-antimatter converter.  When it works, this command will
1339 greatly boost the ship's energy.</para>
1340
1341 <para>Because the crystals are raw and impure, instabilities can occur in
1342 the power channel.  Usually Scotty can control these.  When he
1343 cannot, the results are disastrous. Scotty will use those crystals
1344 that appear to be most stable first.</para>
1345
1346 <para>Since using raw dilithium crystals for this purpose entails
1347 considerable risk, Starfleet Regulations allow its use only during
1348 "condition yellow".  No time or energy is used.</para>
1349
1350 </sect1>
1351 <sect1><title>Planet Report</title>
1352
1353 <literallayout>  
1354 Mnemonic:  PLANETS
1355 Shortest abbreviation:  PL
1356 </literallayout>
1357
1358 <para>Mr. Spock presents you a list of the available information on
1359 planets in the galaxy which are potential dilithium sources.  Since
1360 planets do not show up on long-range scans, the only way to obtain
1361 this information is with the <quote>SENSORS</quote> command.</para>
1362
1363 </sect1>
1364 <sect1 id="freeze"><title>Freeze</title>
1365
1366 <literallayout> 
1367 Mnemonic:  FREEZE
1368 (no abbreviation)
1369 Full command:  FREEZE &lt;FILE NAME&gt;
1370 </literallayout>
1371
1372 <para>The purpose of the FREEZE command is to allow a player to save the
1373 current state of the game, so that it can be finished later.  A
1374 plaque may not be generated from a frozen game. A file with the
1375 specified &lt;file name&gt; and type '.TRK' is created (if necessary) in
1376 the current directory, and all pertinent information about the game
1377 is written to that file. The game may be continued as usual or be
1378 terminated at the user's option.</para>
1379
1380 <para>To restart a game created by the <quote>FREEZE</quote> command,
1381 the user need only type <quote>FROZEN</quote> in response to the
1382 initial question about the type of game desired, followed by the
1383 &lt;file name&gt;.</para>
1384
1385 <para>NOTE: A <quote>tournament</quote> game is like a frozen game,
1386 with the following differences.  (1) Tournament games always start
1387 from the beginning, while a frozen game can start at any point.  (2)
1388 Tournament games require only that the player remember the name or
1389 number of the tournament, while the information about a frozen game
1390 must be kept on a file. Tournament games can be frozen, but then they
1391 behave like regular frozen games.</para>
1392
1393 <para>A point worth noting is that 'FREEZE' does not save the seed for the
1394 random number generator, so that identical actions after restarting
1395 the same frozen game can lead to different results.  However,
1396 identical actions after starting a given tournament game always lead
1397 to the same results.</para>
1398
1399 </sect1>
1400 <sect1><title>Request</title>
1401
1402 <literallayout>  
1403 Mnemonic:  REQUEST
1404 Shortest abbreviation:  REQ
1405 Full command:  REQUEST &lt;ITEM&gt;
1406 </literallayout>
1407
1408 <!-- This is new in SST 2K --> 
1409 <para>If you are using the screen-oriented interface, this command is
1410 suppressed; instead, a full status report will always be present on the
1411 screen.</para>
1412
1413 <para>This command allows you to get any single piece of information
1414 from the &lt;STATUS&gt; command.  &lt;ITEM&gt; specifies which
1415 information as follows:</para>
1416
1417 <informaltable> 
1418 <tgroup cols='3'>
1419 <thead>
1420 <row>
1421   <entry>Information</entry>
1422   <entry>Mnemonic for &lt;item&gt;</entry>
1423   <entry>Shortest Abbreviation</entry>
1424 </row>
1425 </thead>
1426 <tbody>
1427 <row><entry>STARDATE</entry>    <entry>DATE</entry>      <entry>D</entry></row>
1428 <row><entry>CONDITION</entry>   <entry>CONDITION</entry> <entry>C</entry></row>
1429 <row><entry>POSITION</entry>    <entry>POSITION</entry>  <entry>P</entry></row>
1430 <row><entry>LIFE SUPPORT</entry><entry>LSUPPORT</entry>  <entry>L</entry></row> 
1431 <row><entry>WARP FACTOR</entry> <entry>WARPFACTOR</entry><entry>W</entry></row>
1432 <row><entry>ENERGY</entry>      <entry>ENERGY</entry>    <entry>E</entry></row>
1433 <row><entry>TORPEDOES</entry>   <entry>TORPEDOES</entry> <entry>T</entry></row>
1434 <row><entry>SHIELDS</entry>     <entry>SHIELDS</entry>   <entry>S</entry></row>
1435 <row><entry>KLINGONS LEFT</entry><entry>KLINGONS</entry> <entry>K</entry></row>
1436 <row><entry>TIME LEFT</entry>   <entry>TIME</entry>     <entry>TI</entry></row>
1437 <row><entry>BASES LEFT</entry>   <entry>BASES</entry>   <entry>BA</entry></row>
1438 </tbody>
1439 </tgroup>
1440 </informaltable>
1441
1442 </sect1>
1443 <sect1><title>Experimental Death Ray</title>
1444
1445 <literallayout>
1446 Mnemonic:  DEATHRAY
1447 (No abbreviation)
1448 </literallayout>
1449
1450 <para>This command should be used only in those desperate cases where
1451 you have absolutely no alternative.  The death ray uses energy to
1452 rearrange matter.  Unfortunately, its working principles are not yet
1453 thoroughly understood, and the results are highly
1454 unpredictable.</para>
1455
1456 <para>The only good thing that can result is the destruction of all
1457 enemies in your current quadrant.  This will happen about 70% of the
1458 time.  Only enemies are destroyed; starbases, stars, and planets are
1459 unaffected.</para>
1460
1461 <para>Constituting the remaining 30% are results varying from bad to
1462 fatal.</para>
1463
1464 <para>The death ray requires no energy or time, but if you survive, enemies
1465 will hit you.</para>
1466
1467 <para>The Faerie Queene has no death ray.</para>
1468
1469 <para>If the death ray is damaged in its use, it must be totally replaced.
1470 This can only be done at starbase.  Because it is a very complex
1471 device, it takes 9.99 stardates at base to replace the death ray.
1472 The death ray cannot be repaired in flight.</para>
1473
1474 </sect1>
1475 <sect1><title>Launch Deep Space Probe</title>
1476
1477 <literallayout>
1478 Mnemonic:  PROBE
1479 Shortest abbreviation:  PR
1480 Full command:  PROBE &lt;ARMED&gt; MANUAL &lt;displacement&gt;
1481                PROBE &lt;ARMED&gt; AUTOMATIC &lt;destination&gt;
1482 </literallayout>
1483
1484 <para>The Enterprise carries a limited number of Long Range Probes. These
1485 fly to the end of the galaxy and report back a count of the number of
1486 important things found in each quadrant through which it went. The
1487 probe flies at warp 10, and therefore uses time during its flight.
1488 Results are reported immediately via subspace radio and are recorded
1489 in the star chart.</para>
1490
1491 <para>The probe can also be armed with a NOVAMAX warhead. When launched
1492 with the warhead armed, the probe flies the same except as soon as it
1493 reaches the target location, it detonates the warhead in the heart of
1494 a star, causing a supernova and destroying everything in the
1495 quadrant. It then flies no further. There must be a star in the
1496 target quadrant for the NOVAMAX to function. </para>
1497
1498 <para>The probe can fly around objects in a galaxy, but is destroyed if it
1499 enters a quadrant containing a supernova, or if it leaves the galaxy.</para>
1500
1501 <para>The target location is specified in the same manner as the MOVE
1502 command, however for automatic movement, if only one pair of
1503 coordinates are specified they are assumed to be the quadrant and not
1504 the sector in the current quadrant!</para>
1505
1506 <para>The Faerie Queene has no probes.</para>
1507
1508 </sect1>
1509 <sect1><title>Emergency Exit</title>
1510
1511 <literallayout>
1512 Mnemonic:  EMEXIT
1513 Shortest abbreviation:  E
1514 </literallayout>
1515
1516 <para>This command provides a quick way to exit from the game when you
1517 observe a Klingon battle cruiser approaching your terminal.  Its
1518 effect is to freeze the game on the file 'EMSAVE.TRK' in your current
1519 directory, erase the screen, and exit.</para>
1520
1521 <para>Of course, you do lose the chance to get a plaque when you use this
1522 maneuver.</para>
1523
1524 </sect1>
1525 <sect1><title>Ask for Help</title>
1526
1527 <literallayout>
1528 Mnemonic:  HELP
1529 Full command:  HELP &lt;command&gt;
1530 </literallayout>
1531
1532 <para>This command reads the appropriate section from the SST.DOC file,
1533 providing the file is in the current directory.</para>
1534
1535 </sect1>
1536 <sect1><title>Curses switch</title>
1537
1538 <literallayout>
1539 Mnemonic:  CURSES
1540 Full command:  CURSES
1541 </literallayout>
1542
1543 <para>Switch from tty to curses interface. Mainly useful for
1544 debugging, when continuing a replayed game.</para>
1545
1546 </sect1>
1547 <sect1><title>Option setting</title>
1548
1549 <literallayout>
1550 Mnemonic:  OP
1551 Full command:  OPTIONS
1552                OPTIONS SET
1553                OPTIONS CLEAR
1554 </literallayout>
1555
1556 <para>Set or clear feature flags. With no argument, list feature flags. The verbs SET and CLEAR
1557 are available to set or clear a list of feature flags following on the line.  Mainly useful
1558 for development and improving test coverage.</para>
1559
1560 </sect1>
1561 </chapter>
1562 <chapter><title>Miscellaneous Notes</title>
1563
1564 <para>Starbases can be attacked by either commanders or by the
1565 <quote>Super-Commander</quote>.  When this happens, you will be
1566 notified by subspace radio, provided it is working.  The message will
1567 inform you how long the base under attack can last.  Since the
1568 <quote>Super-Commander</quote> is more powerful than an ordinary
1569 commander, he can destroy a base more quickly.</para>
1570
1571 <para>Inhabited worlds can be attacked, enslaved, and forced to 
1572 build more Klingon starships.  They will send out a distress call
1573 by subspace radio when they are attacked, and you will lose contact
1574 with them when they are enslaved.</para>
1575
1576 <para>The <quote>Super-Commander</quote> travels around the galaxy at
1577 a speed of about warp 6 or 7.  His movement is strictly time based;
1578 the more time passes, the further he can go.</para>
1579
1580 <para>Scattered through the galaxy are certain zones of control,
1581 collectively designated the <quote>Romulan Neutral Zone</quote>.  Any
1582 quadrant which contains Romulans without Klingons is part of the
1583 Neutral Zone, except if a base is present.  Since Romulans do not show
1584 on either the long-range scan or the star chart, it is easy for you to
1585 stumble into this zone.  When you do, if your subspace radio is
1586 working, you will receive a warning message from the Romulan, politely
1587 asking you to leave.</para>
1588
1589 <para>In general, Romulans are a galactic nuisance.</para>
1590
1591 <para>The high-speed shield control is fairly reliable, but it has been
1592 known to malfunction.</para>
1593
1594 <para>You can observe the galactic movements of the
1595 <quote>Super-Commander</quote> on the star chart, provided he is in
1596 territory you have scanned and your subspace radio is working.</para>
1597
1598 <para>Periodically, you will receive intelligence reports from
1599 starfleet command, indicating the current quadrant of the
1600 <quote>Super-Commander</quote>.  Your subspace radio must be working,
1601 of course.</para>
1602
1603 <para>Each quadrant will contain from 0 to 3 black holes.  Torpedoes
1604 entering a black hole disappear.  In fact, anything entering a black
1605 hole disappears, permanently.  If you can displace an enemy into one,
1606 he is a goner.  Black holes do not necessarily remain in a quadrant.
1607 they are transient phenomena.</para>
1608
1609 <para>Commanders will ram your ship, killing themselves and inflicting
1610 heavy damage to you, if they should happen to decide to advance into
1611 your sector.</para>
1612
1613 <para>You can get a list of commands by typing
1614 <quote>COMMANDS</quote>.</para>
1615
1616 </chapter>
1617 <chapter><title>Scoring</title>
1618
1619 <para>Scoring is fairly simple.  You get points for good things, and you
1620 lose points for bad things.</para>
1621
1622 <para>You gain&mdash;</para>
1623
1624 <orderedlist>
1625 <listitem><para>10 points for each ordinary Klingon you kill,</para></listitem>
1626 <listitem><para>50 points for each commander you kill,</para></listitem>
1627 <listitem><para>200 points for killing the <quote>Super-Commander</quote>,</para></listitem>
1628 <listitem><para>20 points for each Romulan killed,</para></listitem>
1629 <listitem><para>1 point for each Romulan captured.</para></listitem>
1630 <listitem>
1631 <para>100 times your average Klingon/stardate kill rate.  If you lose
1632 the game, your kill rate is based on a minimum of 5 stardates.</para>
1633 </listitem>
1634 <listitem>
1635 <para>You get a bonus if you win the game, based on your rating:</para>
1636 <para>Novice=100, Fair=200, Good=300, Expert=400, Emeritus=500.</para>
1637 </listitem>
1638 </orderedlist>
1639
1640 <para>You lose&mdash;</para>
1641
1642 <orderedlist>
1643 <listitem><para>300 points for each inhabited world you destroy,</para></listitem>
1644 <listitem><para>200 points if you get yourself killed,</para></listitem>
1645 <listitem><para>100 points for each starbase you destroy,</para></listitem>
1646 <listitem><para>100 points for each starship you lose,</para></listitem>
1647 <listitem><para>45 points for each time you had to call for help,</para></listitem>
1648 <listitem><para>10 points for each uninhabited planet you destroyed,</para></listitem>
1649 <listitem><para>5 points for each star you destroyed, and</para></listitem>
1650 <listitem><para>1 point for each casualty you incurred.</para></listitem>
1651 </orderedlist>
1652
1653 <para>In addition to your score, you may also be promoted one grade in rank
1654 if you play well enough.  Promotion is based primarily on your
1655 Klingon/stardate kill rate, since this is the best indicator of
1656 whether you are ready to go on to the next higher rating.  However,
1657 if you have lost 100 or more points in penalties, the required kill
1658 rate goes up. Normally, the required kill rate is 0.1 * skill *
1659 (skill + 1.0) + 0.1, where skill ranges from 1 for Novice to 5 for
1660 Emeritus.</para>
1661
1662 <para>You can be promoted from any level.  There is a special
1663 promotion available if you go beyond the <quote>Expert</quote> range.
1664 You can also have a certificate of merit printed with your name, date,
1665 and Klingon kill rate, provided you are promoted from either the
1666 <quote>Expert</quote> or <quote>Emeritus</quote> levels. You may need
1667 print the certificate to a file, import it into your word processor,
1668 selecting Courier 8pt font, and then print in <quote>landscape
1669 orientation</quote>.</para>
1670 <!-- The plaque used to require an 132 column printer. Stas changed that. -->
1671
1672 </chapter>
1673 <chapter><title>Handy Reference Page</title>
1674
1675 <literallayout format='linespecific' class='monospaced'>
1676  ABBREV    FULL COMMAND                           DEVICE USED
1677  ------    ------------                           -----------
1678  ABANDON   ABANDON                                shuttle craft
1679  CA        CAPTURE                                subspace radio and transporter
1680  C         CHART                                  (none)
1681  CO        COMPUTER                               computer
1682  CR        CRYSTALS                               (none)
1683  DA        DAMAGES                                (none)
1684  DEATHRAY  DEATHRAY                               (none)  
1685  DESTRUCT  DESTRUCT                               computer
1686  D         DOCK                                   (none)
1687  E         EMEXIT                                 (none)
1688  FREEZE    FREEZE &lt;FILE NAME&gt;                     (none)
1689  I         IMPULSE &lt;MANUAL&gt; &lt;DISPLACEMENT&gt;        impulse engines
1690            IMPULSE AUTOMATIC &lt;DESTINATION&gt;        impulse engines and computer
1691  L         LRSCAN                                 long-range sensors
1692  MAYDAY    MAYDAY (for help)                      subspace radio
1693  MI        MINE                                   (none)
1694  M         MOVE &lt;MANUAL&gt; &lt;DISPLACEMENT&gt;           warp engines
1695            MOVE AUTOMATIC &lt;DESTINATION&gt;           warp engines and computer
1696  O         ORBIT                                  warp or impulse engines
1697  P         PHASERS &lt;TOTAL AMOUNT&gt;                 phasers and computer
1698            PHASERS AUTOMATIC &lt;TOTAL AMOUNT&gt;       phasers, computer, sr sensors
1699            PHASERS MANUAL &lt;AMT1&gt; &lt;AMT2&gt; ...       phasers
1700  TOR       TORPEDO &lt;NUMBER&gt; &lt;TARGETS&gt;             torpedo tubes 
1701  PL        PLANETS                                (none)
1702  PR        PROBE &lt;ARMED&gt; &lt;MANUAL&gt; &lt;DISPLACEMENT&gt;  probe launcher, radio 
1703            PROBE &lt;ARMED&gt; AUTOMATIC &lt;DESTINATION&gt;  launcher, radio, computer
1704  REP       REPORT                                 (none)
1705  REQ       REQUEST                                (none)
1706  R         REST &lt;NUMBER OF STARDATES&gt;             (none)
1707  QUIT      QUIT                                   (none)
1708  S         SRSCAN &lt;NO or CHART&gt;                   short-range sensors
1709  SE        SENSORS                                short-range sensors
1710  SH        SHIELDS &lt;UP, DOWN, or TRANSFER&gt;        deflector shields
1711  SHU       SHUTTLE                                shuttle craft
1712  ST        STATUS                                 (none)
1713  T         TRANSPORT                              transporter
1714  W         WARP &lt;FACTOR&gt;                          (none)
1715  CU        CURSES                                 (none)
1716  OP        OPTIONS                                (none)
1717  
1718  L. R. Scan:   thousands digit:   supernova
1719                hundreds digit:    Klingons
1720                tens digit:        starbases
1721                ones digit:        stars
1722                period (.):        digit not known (star chart only)
1723
1724 Courses are given in manual mode in X - Y displacements; in automatic
1725     mode as destination quadrant and/or sector.  Manual mode is default.
1726 Distances are given in quadrants.  A distance of one sector is 0.1 quadrant.
1727 Ordinary Klingons have about 400 units of energy, Commanders about
1728     1200.  Romulans normally have about 800 units of energy, and the
1729     (GULP) "Super-Commander" has about 1800.
1730 Phaser fire diminishes to about 60 percent at 5 sectors.  Up to 1500
1731     units may be fired in a single burst without danger of overheat.
1732 Warp 6 is the fastest safe speed.  At higher speeds, engine damage
1733     may occur.  At warp 10 you may enter a time warp.
1734 Shields cost 50 units of energy to raise, and double the power
1735     requirements of moving under warp drive.  Engaging the high-speed
1736     shield control requires 200 units of energy.
1737 Warp drive requires (distance)*(warp factor cubed) units of energy
1738     to travel at a speed of (warp factor squared)/10 quadrants per stardate.
1739 Impulse engines require 20 units to warm up, plus 100 units per
1740      quadrant.  Speed is just under one sector per stardate.
1741 </literallayout>
1742
1743 </chapter>
1744 <chapter><title>Game History and Modifications</title>
1745
1746 <sect1><title>Origins</title>
1747
1748 <para>The original Star Trek seems to have been written by Mike
1749 Mayfield at the beginning of the 1970s.  His first version was in
1750 BASIC for a Sigma 7 in 1971; in 1972 he rewrote it in Hewlett Packard
1751 BASIC. The source is included in the SST2K repository.  In January
1752 1975 it became part of the DECUS library under the name <ulink
1753 url='http://www.trailing-edge.com/~shoppa/decus/110174.html'>SPACWR</ulink>.</para>
1754
1755 <para>While some people claim to have recollections of playing Trek
1756 games in the late 1960s, the earlier ones seem actually to have been
1757 variants of
1758 <ulink url='http://en.wikipedia.org/wiki/Spacewar!'>
1759 SPACEWAR</ulink>, the earlier space-combat game on the
1760 PDP-1. Mayfield <ulink
1761 url='http://www3.sympatico.ca/maury/games/space/star_trek.html'>wrote
1762 in 2000</ulink> that he invented the Trek-style galactic grid, and the
1763 evidence seems to back that up.  Some of the confusion probably stems 
1764 from the fact that Mayfield's original and several early descendants 
1765 were distributed under the name SPACWR.</para>
1766
1767 <para>Many different versions radiated from Mayfield's original; most
1768 of the ones in BASIC are descended from a SPACWR version that David
1769 Ahl published in <citetitle>101 BASIC Computer Games</citetitle>,
1770 July 1973. This was a port of Mayfield's version obtained from the HP
1771 Contributed Programs library.  </para>
1772
1773 <para>Our SST2K is descended from a Taurus BASIC program by Grady
1774 Hicks dated 5 April 1973. This does not appear to have been derived
1775 from Ahl's SPACWR. The header says "GENERAL IDEA STOLEN FROM
1776 PENN. U.", and the game has several features not present in SPACEWR:
1777 notably, the Death Ray, ramming, and the Klingon summons to surrender.
1778 And, of course, it predates Ahl's book.  The source is included in the
1779 SST2K repository.</para>
1780
1781 <para>Dave Matuszek, Paul Reynolds et. al. at UT Austin played the
1782 Hicks version on a CDC6600, but disliked the long load time and
1783 extreme slowness of the BASIC program. (David Matuszek notes that the
1784 Hicks version he played had a habit of throwing long quotes from
1785 Marcus Aurelius at the users, a feature he found intolerable on a TTY
1786 at 110 baud.  It must, therefore, have been rather longer than the one
1787 we have.)</para>
1788
1789 <para>The Austin crew proceeded to write their own Trek game, loosely
1790 based on the Hicks version, in CDC6600 FORTRAN.  Most of the code was
1791 written in 1973-1974. At that time, the game was just called "Star
1792 Trek"; the "Super" was added by later developers. In the rest of this
1793 history we'll call it the "UT FORTRAN" version.</para>
1794
1795 <para>Dave Matuszek reports that the UT FORTRAN codebase he worked on
1796 in 1973-1974 was like Mayfield's original and most later versions in
1797 BASIC, in that it used used polar coordinates (a clockface angle
1798 and a distance) for manual navigation.</para>
1799
1800 <para>Tom Almy writes: "I've received further information that the
1801 black holes, Tholian web, Super Commander, and Emeritus mode were
1802 added by Marc Newman."</para>
1803
1804 <para>At the time the UT FORTRAN source was last translated to C it emitted
1805 the message "Latest update-21 Sept 78".  Thus, it actually predated
1806 (and may have influenced) the best-known BASIC version, the "Super
1807 Star Trek" published by David Ahl in his November 1978 sequel
1808 <citetitle>BASIC Computer Games</citetitle>.</para>
1809
1810 <para>This 1978 "Super Star Trek" had been reworked by Robert Leedom
1811 and friends from (according to Leedom) Mayfield's HP port. There is
1812 internal evidence to suggest that at least some features of Leedom's
1813 SST may have derived from the UT FORTRAN version.  In particular, Dave
1814 Matuszek recalls implementing command words to replace the original
1815 numeric command codes during 1973-1974, a feature Leedom's SST also
1816 had but the 1973 and 1975 SPACWRs did not.</para>
1817
1818 <para>One signature trait of the UT FORTRAN game and its descendants
1819 is that the sectors are 10x10 (rather than the 8x8 in Mike Mayfield's
1820 1972 original and its BASIC descendants).  The UT FORTRAN version also
1821 preserves the original numbered quadrants rather than the
1822 astronomically-named quadrants introduced in Ahl's SST and its
1823 descendants.</para>
1824
1825 <para>Eric Allman's BSD Trek game is one of these, also descended from
1826 the UT FORTRAN version via translation to C.  However, the mainline version
1827 (now SST2K) has had a lot more stuff folded into it over the years
1828 &mdash; deep space probes, dilithium mining, the Tholian Web, and so
1829 forth.</para>
1830 </sect1>
1831
1832 <sect1><title>Tom Almy's story</title>
1833
1834 <para>Back in (about) 1977 I got a copy of the Super Star Trek game for
1835 the CDC 6600 mainframe computer. Someone had converted it to PDP-11
1836 Fortran but couldn't get it to run because of its size. I modified
1837 the program to use overlays and managed to shoehorn it in on the 56k
1838 byte machine.</para>
1839
1840 <para>I liked the game so much I put some time into fixing bugs, mainly
1841 what could be called continuity errors and loopholes in the game's
1842 logic. We even played a couple tournaments.</para>
1843
1844 <para>In 1979, I lost access to that PDP-11. I did save the source code
1845 listing. In 1995, missing that old friend, I started converting the
1846 program into portable ANSI C. It's been slow, tedious work that took
1847 over a year to accomplish.</para>
1848
1849 <para>In early 1997, I got the bright idea to look for references to
1850 <quote>Super Star Trek</quote> on the World Wide Web. There weren't
1851 many hits, but there was one that came up with 1979 Fortran sources!
1852 This version had a few additional features that mine didn't have,
1853 however mine had some feature it didn't have. So I merged its features
1854 that I liked. I also took a peek at the DECUS version (a port, less
1855 sources, to the PDP-10), and some other variations.</para>
1856
1857 <para>Modifications I made:</para>
1858
1859 <para>Compared to original version, I've changed the
1860 <quote>help</quote> command to <quote>call</quote> and the
1861 <quote>terminate</quote> command to <quote>quit</quote> to better
1862 match user expectations. The DECUS version apparently made those
1863 changes as well as changing <quote>freeze</quote> to
1864 <quote>save</quote>. However I like <quote>freeze</quote>.</para>
1865
1866 <para>I added EMEXIT from the 1979 version.</para>
1867
1868 <para>That later version also mentions srscan and lrscan working when
1869 docked (using the starbase's scanners), so I made some changes here
1870 to do this (and indicating that fact to the player), and then
1871 realized the base would have a subspace radio as well &mdash; doing a
1872 Chart when docked updates the star chart, and all radio reports will
1873 be heard. The Dock command will also give a report if a base is under
1874 attack.</para>
1875
1876 <para>It also had some added logic to spread the initial positioning of
1877 bases. That made sense to add because most people abort games with
1878 bad base placement.</para>
1879
1880 <para>The experimental deathray originally had only a 5% chance of success,
1881 but could be used repeatedly. I guess after a couple years of use, it
1882 was less <quote>experimental</quote> because the 1979 version had a 70% success
1883 rate. However it was prone to breaking after use. I upgraded the
1884 deathray, but kept the original set of failure modes (great humor!).</para>
1885
1886 <para>I put in the Tholian Web code from the 1979 version.</para>
1887
1888 <para>I added code so that Romulans and regular Klingons could move in 
1889 advanced games. I re-enabled the code which allows enemy ships to
1890 ram the Enterprise; it had never worked right. The 1979 version
1891 seems to have it all fixed up, but I'm still not overly happy with
1892 the algorithm.</para>
1893
1894 <para>The DECUS version had a Deep Space Probe. Looked like a good idea
1895 so I implemented it based on its description.</para>
1896
1897 <para>I imported CAPTURE from BSD Trek.</para>
1898
1899 </sect1>
1900 <sect1><title>Stas Sergeev's story</title>
1901
1902 <para>I started from an older Tom Almy version and added features I had
1903 seen in other mainframe variants of the game, I wrote a screen-oriented 
1904 interface for it based on the curses library.</para>
1905
1906 <itemizedlist>
1907 <listitem>
1908 <para>The Space Thingy can be shoved, if you ram it, and can fire back if 
1909 fired upon.</para>
1910 </listitem>
1911 <listitem>
1912 <para>The Tholian can be hit with phasers.</para>
1913 </listitem>
1914 <listitem>
1915 <para>When you are docked, base covers you with an almost invincible shields 
1916       (a commander can still ram you, or a Romulan can destroy the base,
1917       or a SCom can even succeed with direct attack IIRC, but this rarely 
1918       happens).</para>
1919 </listitem>
1920 <listitem>
1921 <para>SCom can't escape from you if no more enemies remain (without this, 
1922       chasing SCom can take an eternity).</para>
1923 </listitem>
1924 <listitem>
1925 <para>Probe target you enter is now the destination quadrant. Before I don't 
1926       remember what it was, but it was something I had difficulty using.</para>
1927 </listitem>
1928 <listitem>
1929 <para>Secret password is now autogenerated.</para>
1930 </listitem>
1931 <listitem>
1932 <para>Victory plaque is adjusted for A4 paper rather than 132-column greenbar
1933 :-)</para>
1934 </listitem>
1935 <listitem>
1936 <para>Phasers now tells you how much energy needed, but only if the computer 
1937 is alive.</para>
1938 </listitem>
1939 <listitem>
1940 <para>Planets are auto-scanned when you enter the quadrant.</para>
1941 </listitem>
1942 <listitem>
1943 <para>Mining or using crystals in the presence of the enemy now yields
1944 an attack.  There are other minor adjustments to what yields an attack
1945 and what does not.</para>
1946 </listitem>
1947 <listitem>
1948 <para>Ramming a black hole is no longer instant death.  There is a
1949 chance you might get timewarped instead.</para>
1950 </listitem>
1951 <listitem>
1952 <para>"freeze" command reverts to "save", most people will understand this
1953 better anyway.</para>
1954 </listitem>
1955 <listitem>
1956 <para>Screen-oriented interface, with sensor scans always up.</para>
1957 </listitem>
1958 </itemizedlist>
1959
1960 <para>My changes got merged into SST2K in 2005.</para>
1961
1962 </sect1>
1963 <sect1><title>Eric Raymond's story</title>
1964
1965 <para>I played the FORTRAN version of this game in the late 1970s on a
1966 DEC minicomputer.  In the late 1980s Dave Matuszek and I became
1967 friends; I was vaguely aware that he had had something to do with the
1968 original Star Trek game.  In October 2004, sitting in Dave's living
1969 room, we got to talking about the game and I realized it would make a
1970 great exhibit for the <ulink
1971 url='&retro;'>Retrocomputing Museum</ulink>.</para>
1972
1973 <para>A few quick web searches later we found Tom Almy's page.  We
1974 downloaded his code and Dave verified that that it was a direct
1975 descendent of UT Super Star Trek &mdash; even though it had been translated
1976 to C, he was able to recognize names and techniques from the FORTRAN
1977 version he co-wrote.</para>
1978
1979 <para>This game became an open-source project; see the <ulink
1980 url='http://developer.berlios.de/projects/sst/'>project
1981 site</ulink>.</para>
1982
1983 <para>After I launched the Berlios project, Stas Sergeev contacted me.
1984 We worked together to merge in his changes.</para>
1985
1986 <para>Modifications I've made:</para>
1987
1988 <itemizedlist>
1989 <listitem><para>
1990 I converted the flat-text SST.DOC file to XML-Docbook so it can be
1991 webbed. (That's what you're reading now.)
1992 </para></listitem>
1993 <listitem><para>
1994 The command-help code needed a rewrite because the flat-text form of
1995 the documentation is now generated from XML and doesn't have the
1996 easily recognizable section delimiters it used to.  I wrote a script
1997 to filter that flat-text form into an sst.doc that's easy to parse for
1998 command descriptions, and changed some logic in sst.c to match.
1999 </para></listitem>
2000 <listitem><para>
2001 I've cleaned up a lot of grubby FORTRANisms in the code internals &mdash;
2002 used sizeof(), replaced magic numeric constants with #defines,
2003 that sort of thing.  Later I translated the code from C to Python.
2004 </para></listitem>
2005 <listitem><para>
2006 I fixed a surprising number of typos in the code and documentation.
2007 </para></listitem>
2008 <listitem><para>
2009 All the game state now lives in one big structure that can be
2010 written to and read from disk as one blob.  The write gives it an
2011 an identifiable magic number and the thaw logic checks for same. 
2012 </para></listitem>
2013 <listitem><para>
2014 I made the internal pager work, and in the process got rid of a number
2015 of platform dependencies in the code.
2016 </para></listitem>
2017 <listitem><para>
2018 The HELP/CALL/SOS command is now MAYDAY.
2019 </para></listitem>
2020 <listitem><para>
2021 Status report now indicates if dilithium crystals are on board.
2022 </para></listitem>
2023 <listitem><para>
2024 At Dave's prompting, restored the Space Thingy's original elusive behavior.
2025 </para></listitem>
2026 <listitem><para>
2027 Clean separation of game engine from the UI code, improving Stas
2028 Sergeev's excellent work on the curses interface.
2029 </para></listitem>
2030 </itemizedlist>
2031
2032 <para>Here are some good pages on the history of Star Trek games:</para>
2033
2034 <itemizedlist>
2035 <listitem><para>
2036 <ulink url='http://www.dunnington.u-net.com/public/startrek/'>http://www.dunnington.u-net.com/public/startrek/</ulink>
2037 </para></listitem>
2038 <listitem><para>
2039 <ulink url='http://www3.sympatico.ca/maury/games/space/star_trek.html'>http://www3.sympatico.ca/maury/games/space/star_trek.html</ulink>
2040 </para></listitem>
2041 <listitem><para>
2042 <ulink url='http://www.cactus.org/%7Enystrom/startrek.html'>http://www.cactus.org/%7Enystrom/startrek.html</ulink>
2043 </para></listitem>
2044 </itemizedlist>
2045
2046 </sect1>
2047 <sect1><title>Authors' Acknowledgments</title>
2048
2049 <para>These are the original acknowledgments by Dave Matuszek and Paul
2050 Reynolds:</para>
2051
2052 <para>The authors would like to thank Professor Michael Duggan for his
2053 encouragement and administrative assistance with the development of
2054 the Star Trek game, without which it might never have been completed.</para>
2055
2056 <para>Much credit is due to Patrick McGehearty and Rich Cohen, who assisted
2057 with the original design of the game and contributed greatly to its
2058 conceptual development.</para>
2059
2060 <para>Thanks are also due to Carl Strange, Hardy Tichenor and Steven Bruell
2061 for their assistance with certain coding problems.</para>
2062
2063 <para>This game was inspired by and rather loosely based on an earlier
2064 game, programmed in the BASIC language, by Jim Korp and Grady Hicks.
2065 It is the authors' understanding that the BASIC game was in turn
2066 derived from a still earlier version in use at Penn State University.</para>
2067
2068 </sect1>
2069 <sect1><title>References</title>
2070
2071 <para>These are the original references by Dave Matuszek and Paul
2072 Reynolds:</para>
2073
2074 <orderedlist>
2075 <listitem><para><citetitle>Star Trek</citetitle> (the original television
2076 series), produced and directed by Gene Rodenberry.</para></listitem>
2077
2078 <listitem><para><citetitle>Star Trek</citetitle> (the animated
2079 television series), produced by Gene Rodenberry and directed by Hal
2080 Sutherland.  Also excellent, and not just kiddie fare.  If you enjoyed
2081 the original series you should enjoy this one (unless you have some
2082 sort of a hangup about watching cartoons).</para></listitem>
2083
2084 <listitem><para><citetitle>The Making of Star Trek</citetitle>, by
2085 Steven E. Whitfield and Gene Rodenberry.  The best and most complete
2086 readily available book about Star Trek.  (Ballantine
2087 Books)</para></listitem>
2088
2089 <listitem><para><citetitle>The World of Star Trek</citetitle>, by
2090 David Gerrold.  Similiar in scope to the above book.
2091 (Bantam)</para></listitem>
2092
2093 <listitem><para><citetitle>The Star Trek Guide</citetitle>, third
2094 revision 4/17/67, by Gene Roddenberry.  The original writer's guide
2095 for the television series, but less comprehensive than (3) above.
2096 (Norway Productions)</para></listitem>
2097
2098 <listitem><para><citetitle>The Trouble With Tribbles</citetitle>, by
2099 David Gerrold.  Includes the complete script of this popular show.
2100 (Ballantine Books)</para></listitem>
2101
2102 <listitem><para><citetitle>Star Trek</citetitle>, <citetitle>Star Trek
2103 2</citetitle>, ..., <citetitle>Star Trek 9</citetitle>, by James
2104 Blish.  The original shows in short story form.
2105 (Bantam)</para></listitem>
2106
2107 <listitem><para><citetitle>Spock Must Die</citetitle>, by James Blish.
2108 An original novel, but rather similar to the show <citetitle>The Enemy
2109 Within</citetitle>.  (Bantam)</para></listitem>
2110
2111 <listitem><para>Model kits of the Enterprise and a <quote>Klingon
2112 Battle-Cruiser</quote> by AMT Corporation are available at most hobby
2113 shops.</para></listitem>
2114 </orderedlist>
2115
2116 </sect1>
2117 </chapter>
2118
2119 <appendix><title>Setting the Wayback Machine</title>
2120
2121 <para>SST2K and its ancestors have a long history.  One of the
2122 objectives of this project is to make that history available.
2123 Accordingly, here is a timeline of the development of SST2K and
2124 its ancestors, as closely as we can reconstruct it.  Someday this
2125 may become the basis for a "wayback machine" switch that enables
2126 feature sets by year.</para>
2127
2128 <itemizedlist>
2129 <listitem><para>1971 &mdash; Mike Mayfield's original BASIC Star
2130 Trek.</para></listitem>
2131
2132 <listitem><para>5 April 1973 &mdash; Grady Hicks's BASIC version fot
2133 the Taurus.</para></listitem>
2134
2135 <listitem><para>Summer 1973 &mdash; Dave Matuszek, Paul Reynolds, and
2136 the Austin crew begin work on the UT FORTRAN version.</para></listitem>
2137
2138 <listitem><para>1974 &mdash; Dave Matuszek gets distracted by other
2139 things, notably a job change and the birth of his first
2140 child.</para></listitem>
2141
2142 <listitem><para>21 September 1978 &mdash; This was the date on the
2143 first FORTRAN version Tom Almy saw, on which he based his later C
2144 translation.</para></listitem>
2145
2146 <listitem><para>1979 &mdash; Marc Newman adds Tholians, black holes,
2147 super-commanders, and Emeritus mode.</para></listitem>
2148
2149 <listitem><para>1995-1996 &mdash; Tom Almy translates his FORTRAN
2150 port to ANSI C.</para></listitem>
2151
2152 <listitem><para>1997 &mdash; Tom Almy finds the sources for UT
2153 FORTRAN on the Web and merges in features new since the 1978 version:
2154 EMEXIT, Tholian Web, improved death ray.  He adds deep-space probes
2155 from the DECUS version.</para></listitem>
2156
2157 <listitem><para>10 October 2004 &mdash; ESR starts hacking on Almy's C
2158 translation, de-FORTRANIZING the code. HELP/CALL/SOS becomes MAYDAY.
2159 </para></listitem>
2160
2161 <listitem><para>30 October 2004 &mdash; SST2K project started on
2162 Berlios.</para></listitem>
2163
2164 <listitem><para>18 January 2005 &mdash; First changes merged in from Stas
2165 Sergeev. The curses interface is added.</para></listitem>
2166
2167 <listitem><para>September 2006 &mdash; BSD features merged
2168 in. Inhabited-worlds features and weighted critical hits date from
2169 this time.</para></listitem>
2170
2171 <listitem><para>9 October 2006 &mdash; Translation to
2172 Python.</para></listitem>
2173
2174 <listitem><para>1 March 2017 &mdash; Color added.
2175 Cloaking device and capture command added from BSD (via Almy's
2176 2013 version)</para></listitem>
2177
2178 <listitem><para>25 March 2019 &mdash; At long last, chart entries are
2179 uniformly dot-filled. (Suppressed in the plain and almy
2180 interface styles.)</para></listitem>
2181
2182 <listitem><para>25 August 2023 &mdash; Coordinates optionally in
2183 alphameric mode, e.g "b3" rather than "2 - 3". (Suppressed in the
2184 plain and almy interface styles.)</para></listitem>
2185
2186
2187 </itemizedlist>
2188
2189 <para>One as-yet unanswered question is when the code changed from
2190 distance/direction navigation to coordinate offsets.  Dave Matuszek
2191 believes it must have been after he stopped working on the game in
2192 1974.</para>
2193 </appendix>
2194 </book>