Add BSD Terek CAPTURE from Tom Almy's 2013 changes.
[super-star-trek.git] / doc / sst-doc.xml
index 30efc78e6398417af70f259ed189d49702222c5f..03bf78934632521ac4b73a066a480cb7fe5b53e3 100644 (file)
@@ -2,7 +2,7 @@
 <!DOCTYPE book PUBLIC 
     "-//OASIS//DTD DocBook XML V4.1.2//EN" 
     "docbook/docbookxx.dtd"[
-<!ENTITY sst-site      "http://sst.berlios.de/">
+<!ENTITY sst-site      "http://catb.org/~esr/super-star-trek/">
 <!ENTITY retro         "http://catb.org/~esr/retro/">
 ]>
 <book>
 </authorgroup>
 
 <legalnotice>
-<para>Permission is hereby granted for the copying, distribution,
-modification and use of this program and associated documentation
-for recreational purposes, provided that all references to the
-authors are retained.  However, permission is not and will not be
-granted for the sale or promotional use of this program or program
-documentation, or for use in any situation in which profit may be
-considered an objective, since it is the desire of the authors to
-respect the copyrights of the originators of Star Trek.</para>
+<para>Super Star Trek 2K is issued under the BSD license.  Nothing in
+this license grants or purports to grant any rights with respect to
+the trademarks, copyrights or other property of the originators of
+Star Trek or their successors in interest.  We recognize and support
+their right under the Berne Convention to recover damages for any uses
+of this program which compromise their legitimate interest in
+protecting their copyrights and trademarks or unjustly enrich
+others.</para>
 </legalnotice>
 </bookinfo>
 
@@ -341,7 +341,7 @@ complicated, but you will learn the abbreviations quickly enough.</para>
 </orderedlist>
 
 <para>If you are part way through entering a command and you change your
-minde, you can cancel the command by typing -1 as one of the
+mind, you can cancel the command by typing -1 as one of the
 parameters, with the exception of the manual move command.</para>
 
 <para>If anything is not clear to you, experiment.  The worst you can do is
@@ -411,6 +411,21 @@ short-range scan anytime you like.</para>
 the contents of adjacent sectors.</para>
 
 </sect1>
+<!--
+<sect1><title>Visual Scan</title>
+
+<literallayout>
+Mnemonic:  VISUAL
+Shortest abbreviation: V
+</literallayout>
+
+<para>A visual scan is made in a particular direction of three sectors
+in the general direction specified.  This takes time, and Klingons can
+attack you, so it should be done only when short-range sensors are
+out.</para>
+
+</sect1>
+-->
 <sect1><title>Status Report</title>
 
 <literallayout>
@@ -899,6 +914,22 @@ firing.</para>
 <para>Phasers have no effect on starbases (which are shielded) or on
 stars.</para>
 
+</sect1>
+<sect1><title>Capture</title>
+
+<literallayout>
+Mnemonic:  CAPTURE
+Shortest abbreviation:  CA
+Full commands:  CAPTURE
+</literallayout>
+
+<para>Ask a Klingon To surrender.</para>
+
+<para>The Subspace Radio is needed to ask a Klingon if he will kindly
+surrender.  The weakest Klingon from the ones in the quadrant is
+chosen. The probability of surrender is a function of that Klingon's
+remaining power, our power, etc.</para>
+
 </sect1>
 <sect1><title>Report</title>
 
@@ -946,9 +977,9 @@ calculate travel times and energy usage.</para>
 <sect1><title>Photon Torpedoes</title>
 
 <literallayout>
-Mnemonic:  PHOTONS
-Shortest abbreviation:  PHO
-Full commands:  PHOTONS &lt;NUMBER&gt; &lt;TARG1&gt; &lt;TARG2&gt; &lt;TARG3&gt;
+Mnemonic:  TORPEDO
+Shortest abbreviation:  TO
+Full commands:  TORPEDO &lt;NUMBER&gt; &lt;TARG1&gt; &lt;TARG2&gt; &lt;TARG3&gt;
 </literallayout>
 
 <para>Photon torpedoes are projectile weapons&mdash;you either hit what you aim
@@ -1102,7 +1133,8 @@ Mnemonic:  DESTRUCT
 
 <para>You may self-destruct, thus killing yourself and ending the game.  If
 there are nearby Klingons, you may take a few of them with you (the
-more energy you have left, the bigger the bang).</para>
+more energy you have left, the bigger the bang). It is possible to
+win this way, if you kill off your last adversaries with the blast.</para>
 
 <para>In order to self-destruct you must remember the password you typed in
 at the beginning of the game.</para>
@@ -1440,6 +1472,11 @@ inform you how long the base under attack can last.  Since the
 <quote>Super-Commander</quote> is more powerful than an ordinary
 commander, he can destroy a base more quickly.</para>
 
+<para>Inhabited worlds can be attacked, enslaved, and forced to 
+build more Klingon starships.  They will send out a distress call
+by subspace radio when they are attacked, and you will lose contact
+with them when they are enslaved.</para>
+
 <para>The <quote>Super-Commander</quote> travels around the galaxy at
 a speed of about warp 6 or 7.  His movement is strictly time based;
 the more time passes, the further he can go.</para>
@@ -1507,11 +1544,12 @@ the game, your kill rate is based on a minimum of 5 stardates.</para>
 <para>You lose&mdash;</para>
 
 <orderedlist>
+<listitem><para>300 points for each inhabited world you destroy,</para></listitem>
 <listitem><para>200 points if you get yourself killed,</para></listitem>
 <listitem><para>100 points for each starbase you destroy,</para></listitem>
 <listitem><para>100 points for each starship you lose,</para></listitem>
 <listitem><para>45 points for each time you had to call for help,</para></listitem>
-<listitem><para>10 points for each planet you destroyed,</para></listitem>
+<listitem><para>10 points for each uninhabited planet you destroyed,</para></listitem>
 <listitem><para>5 points for each star you destroyed, and</para></listitem>
 <listitem><para>1 point for each casualty you incurred.</para></listitem>
 </orderedlist>
@@ -1542,6 +1580,7 @@ orientation</quote>.</para>
  ABBREV    FULL COMMAND                           DEVICE USED
  ------    ------------                           -----------
  ABANDON   ABANDON                                shuttle craft
+ CA        CAPTURE                                subspace radio and transporter
  C         CHART                                  (none)
  CO        COMPUTER                               computer
  CR        CRYSTALS                               (none)
@@ -1562,7 +1601,7 @@ orientation</quote>.</para>
  P         PHASERS &lt;TOTAL AMOUNT&gt;                 phasers and computer
            PHASERS AUTOMATIC &lt;TOTAL AMOUNT&gt;       phasers, computer, sr sensors
            PHASERS MANUAL &lt;AMT1&gt; &lt;AMT2&gt; ...       phasers
PHO       PHOTONS &lt;NUMBER&gt; &lt;TARGETS&gt;             torpedo tubes 
TOR       TORPEDO &lt;NUMBER&gt; &lt;TARGETS&gt;             torpedo tubes 
  PL        PLANETS                                (none)
  PR        PROBE &lt;ARMED&gt; &lt;MANUAL&gt; &lt;DISPLACEMENT&gt;  probe launcher, radio 
            PROBE &lt;ARMED&gt; AUTOMATIC &lt;DESTINATION&gt;  launcher, radio, computer
@@ -1611,10 +1650,8 @@ Impulse engines require 20 units to warm up, plus 100 units per
 <para>The original Star Trek seems to have been written by Mike
 Mayfield at the beginning of the 1970s.  His first version was in
 BASIC for a Sigma 7 in 1971; in 1972 he rewrote it in Hewlett Packard
-BASIC. The source is <ulink
-url="&sst-site;www/historic/mayfield.basic">available</ulink> on the
-SST2K website. In January 1975 it became part of the DECUS library
-under the name <ulink
+BASIC. The source is included in the SST2K repository.  In January
+1975 it became part of the DECUS library under the name <ulink
 url='http://www.trailing-edge.com/~shoppa/decus/110174.html'>SPACWR</ulink>.</para>
 
 <para>While some people claim to have recollections of playing Trek
@@ -1640,9 +1677,8 @@ Hicks dated 5 April 1973. This does not appear to have been derived
 from Ahl's SPACWR. The header says "GENERAL IDEA STOLEN FROM
 PENN. U.", and the game has several features not present in SPACEWR:
 notably, the Death Ray, ramming, and the Klingon summons to surrender.
-And, of course, it predates Ahl's book.  The source is <ulink
-url="&sst-site;www/historic/UT-Trek.basic">available</ulink> on the
-SST2K website.</para>
+And, of course, it predates Ahl's book.  The source is included in the
+SST2K repository.</para>
 
 <para>Dave Matuszek, Paul Reynolds et. al. at UT Austin played the
 Hicks version on a CDC6600, but disliked the long load time and
@@ -1663,6 +1699,10 @@ in 1973-1974 was like Mayfield's original and most later versions in
 BASIC, in that it used used polar coordinates (a clockface angle
 and a distance) for manual navigation.</para>
 
+<para>Tom Almy writes: "I've received further information that the
+black holes, Tholian web, Super Commander, and Emeritus mode were
+added by Marc Newman."</para>
+
 <para>At the time the UT FORTRAN source was last translated to C it emitted
 the message "Latest update-21 Sept 78".  Thus, it actually predated
 (and may have influenced) the best-known BASIC version, the "Super
@@ -1756,6 +1796,8 @@ the algorithm.</para>
 <para>The DECUS version had a Deep Space Probe. Looked like a good idea
 so I implemented it based on its description.</para>
 
+<para>I imported CAPTURE from BSD Trek.</para>
+
 </sect1>
 <sect1><title>Stas Sergeev's story</title>
 
@@ -1800,8 +1842,8 @@ is alive.</para>
 <para>Planets are auto-scanned when you enter the quadrant.</para>
 </listitem>
 <listitem>
-<para>Mining or using crystals in presense of enemy now yields an attack.
-There are other minor adjustments to what yields an attack
+<para>Mining or using crystals in the presence of the enemy now yields
+an attack.  There are other minor adjustments to what yields an attack
 and what does not.</para>
 </listitem>
 <listitem>
@@ -1817,7 +1859,7 @@ better anyway.</para>
 </listitem>
 </itemizedlist>
 
-<para>My changes got merged into SST2K in 2005, and I work on it now.</para>
+<para>My changes got merged into SST2K in 2005.</para>
 
 </sect1>
 <sect1><title>Eric Raymond's story</title>
@@ -1860,7 +1902,7 @@ command descriptions, and changed some logic in sst.c to match.
 <listitem><para>
 I've cleaned up a lot of grubby FORTRANisms in the code internals &mdash;
 used sizeof(), replaced magic numeric constants with #defines,
-that sort of thing.
+that sort of thing.  Later I translated the code from C to Python.
 </para></listitem>
 <listitem><para>
 I fixed a surprising number of typos in the code and documentation.
@@ -1928,6 +1970,9 @@ derived from a still earlier version in use at Penn State University.</para>
 </sect1>
 <sect1><title>References</title>
 
+<para>These are the original references by Dave Matuszek and Paul
+Reynolds:</para>
+
 <orderedlist>
 <listitem><para><citetitle>Star Trek</citetitle> (the original television
 series), produced and directed by Gene Rodenberry.</para></listitem>
@@ -1947,9 +1992,9 @@ Books)</para></listitem>
 David Gerrold.  Similiar in scope to the above book.
 (Bantam)</para></listitem>
 
-<listitem><para><citetitle>The Star Trek Guide</citetitle>, third revision 4/17/67, by Gene
-Roddenberry.  The original writer's guide for the television
-series, but less comprehensive than (3) above.
+<listitem><para><citetitle>The Star Trek Guide</citetitle>, third
+revision 4/17/67, by Gene Roddenberry.  The original writer's guide
+for the television series, but less comprehensive than (3) above.
 (Norway Productions)</para></listitem>
 
 <listitem><para><citetitle>The Trouble With Tribbles</citetitle>, by
@@ -1972,4 +2017,72 @@ shops.</para></listitem>
 
 </sect1>
 </chapter>
+
+<appendix><title>Setting the Wayback Machine</title>
+
+<para>SST2K and its ancestors have a long history.  One of the
+objectives of this project is to make that history available.
+Accordingly, here is a timeline of the development of SST2K and
+its ancestors, as closely as we can reconstruct it.  Someday this
+may become the basis for a "wayback machine" switch that enables
+feature sets by year.</para>
+
+<itemizedlist>
+<listitem><para>1971 &mdash; Mike Mayfield's original BASIC Star
+Trek.</para></listitem>
+
+<listitem><para>5 April 1973 &mdash; Grady Hicks's BASIC version fot
+the Taurus.</para></listitem>
+
+<listitem><para>Summer 1973 &mdash; Dave Matuszek, Paul Reynolds, and
+the Austin crew begin work on the UT FORTRAN version.</para></listitem>
+
+<listitem><para>1974 &mdash; Dave Matuszek gets distracted by other
+things, notably a job change and the birth of his first
+child.</para></listitem>
+
+<listitem><para>c.1977 &mdash; Tom Almy translates the UT FORTAN
+version to PDP-11 FORTRAN.</para></listitem>
+
+<listitem><para>21 September 1978 &mdash; This was the date on the
+first version Tom Almy saw, on which he based his later C
+translation.</para></listitem>
+
+<listitem><para>1979 &mdash; Marc Newman adds Tholians, black holes,
+super-commanders, and Emeritus mode.</para></listitem>
+
+<listitem><para>1995-1996 &mdash; Tom Almy translates his FORTRAN
+port to ANSI C.</para></listitem>
+
+<listitem><para>1997 &mdash; Tom Almy finds the sources for UT
+FORTRAN on the Web and merges in features new since the 1978 version:
+EMEXIT, Tholian Web, improved death ray.  He adds deep-space probes
+from the DECUS version.</para></listitem>
+
+<listitem><para>10 October 2004 &mdash; ESR starts hacking on Almy's C
+translation, de-FORTRANIZING the code. HELP/CALL/SOS becomes MAYDAY.
+</para></listitem>
+
+<listitem><para>30 October 2004 &mdash; SST2K project started on
+Berlios.</para></listitem>
+
+<listitem><para>18 January 2005 &mdash; First changes merged in from Stas
+Sergeev. The curses interface is added.</para></listitem>
+
+<listitem><para>September 2006 &mdash; BSD features merged
+in. Inhabited-worlds features and weighted critical hits date from
+this time.</para></listitem>
+
+<listitem><para>9 October 2006 &mdash; Translation to
+Python.</para></listitem>
+
+<listitem><para>22 February 2017 &mdash; Color added.</para></listitem>
+
+</itemizedlist>
+
+<para>One as-yet unanswered question is when the code changed from
+distance/direction navigation to coordinate offsets.  Dave Matuszek
+believes it must have been after he stopped working on the game in
+1974.</para>
+</appendix>
 </book>