"docbook/docbookxx.dtd">\r
\r
<book>\r
-<title>Super Star Trek</title>\r
<bookinfo>\r
+<title>Super Star Trek</title>\r
\r
<authorgroup>\r
<author>\r
<firstname>Tom</firstname>\r
<surname>Almy</surname>\r
</author>\r
+<author>\r
+ <firstname>Stas</firstname>\r
+ <surname>Sergeev</surname>\r
+</author>\r
<author>\r
<firstname>Eric</firstname>\r
<othername>Steven</othername>\r
</author>\r
</authorgroup>\r
\r
+<legalnotice>\r
+<para>Permission is hereby granted for the copying, distribution,\r
+modification and use of this program and associated documentation\r
+for recreational purposes, provided that all references to the\r
+authors are retained. However, permission is not and will not be\r
+granted for the sale or promotional use of this program or program\r
+documentation, or for use in any situation in which profit may be\r
+considered an objective, since it is the desire of the authors to\r
+respect the copyrights of the originators of Star Trek.</para>\r
+</legalnotice>\r
+</bookinfo>\r
+\r
+\r
<dedication>\r
<literallayout format='linespecific' class='monospaced'>\r
SSSSS U U PPPPP EEEEE RRRRR\r
\r
Resurrected By\r
Tom Almy\r
+\r
+ Curses Interface By\r
+ Stas Sergeev \r
+\r
+ SST 2K polishing by\r
+ Eric S. Raymond\r
</literallayout>\r
</dedication>\r
\r
-<legalnotice>\r
-<para>Permission is hereby granted for the copying, distribution,\r
-modification and use of this program and associated documentation\r
-for recreational purposes, provided that all references to the\r
-authors are retained. However, permission is not and will not be\r
-granted for the sale or promotional use of this program or program\r
-documentation, or for use in any situation in which profit may be\r
-considered an objective, since it is the desire of the authors to\r
-respect the copyrights of the originators of Star Trek.</para>\r
-</legalnotice>\r
-</bookinfo>\r
-\r
<chapter><title>Introduction</title>\r
<para>The Organian Peace Treaty has collapsed, and the Federation is at war\r
with the Klingon Empire. Joining the Klingons against the Federation\r
or more commands begin with the same letter, and in this case that\r
letter refers to a particular one of the commands; to get the other,\r
your abbreviation must be two or more characters long. This sounds\r
-complicated, but you will learn the abbreviations quickly enough.</para>\r
+complicated, but you will learn the abbreviations qGuickly enough.</para>\r
\r
<para>What this all boils down to is:</para>\r
\r
SRSCAN CHART\r
</literallayout>\r
\r
+<!-- This is new in SST 2K -->\r
+<para>If you are using the screen-oriented interface, it should never\r
+be necessary to call this command explicitly; a short-range scan will\r
+always be present on the screen.</para>\r
+\r
<para>The short-range scan gives you a considerable amount of information\r
about the quadrant your starship is in. A short-range scan is best\r
described by an example.</para>\r
\r
<para>If your short-range sensors are damaged, this command will only show\r
the contents of adjacent sectors.</para>\r
-\r
</sect1>\r
<sect1><title>Status Report</title>\r
\r
Shortest abbreviation: L\r
</literallayout>\r
\r
+<!-- This is new in SST 2K -->\r
+<para>If you are using the screen-oriented interface, it should never\r
+be necessary to call this command explicitly; a long-range scan will\r
+always be present on the screen.</para>\r
+\r
<para>A long-range scan gives you general information about where you are\r
and what is around you. Here is an example output.</para>\r
\r
Mnemonic: MOVE\r
Shortest abbreviation: M\r
Full command: MOVE MANUAL <displacement>\r
- MOVE AUTOMATIC <estination*gt;\r
+ MOVE AUTOMATIC <destination>\r
</literallayout>\r
\r
<para>This command is the usual way to move from one place to another\r
\r
<para><para>where <qrow> and <qcol> are the row and column\r
numbers of the destination quadrant, and <srow> and <scol>\r
-are the row and column numbers of thedestination sector in that\r
+are the row and column numbers of the destination sector in that\r
quadrant. This command also moves your ship in a straight line path\r
to the destination. For moving within a quadrant, <qrow> and\r
<qcol> may be omitted. For example, to move to sector 2 - 9 in\r
<para>The DECUS version had a Deep Space Probe. Looked like a good idea\r
so I implemented it based on its description.</para>\r
\r
+</sect1>\r
+<sect1><title>Stas Sergeev's story</title>\r
+\r
+<para>I started from an older Tom Almy version and added features I had\r
+seen in mainframe variants of the game, I wrote a screen-oriented \r
+interface for it based on the curses library.</para>\r
+\r
+<itemizedlist>\r
+<listitem>\r
+<para>The Space Thingy can be shoved, if you ram it, and can fire back if \r
+fired upon.</para>\r
+</listitem>\r
+<listitem>\r
+<para>The Tholian can be hit with phasers.</para>\r
+</listitem>\r
+<listitem>\r
+<para>When you are docked, base covers you with an almost invincible shields \r
+ (a commander can still ram you, or a Romulan can destroy the base,\r
+ or a SCom can even succeed with direct attack IIRC, but this rarely \r
+ happens).</para>\r
+</listitem>\r
+<listitem>\r
+<para>SCom can't escape from you if no more enemies remain (without this, \r
+ chasing SCom can take an eternity).</para>\r
+</listitem>\r
+<listitem>\r
+<para>Probe target you enter is now the destination quadrant. Before I don't \r
+ remember what it was, but it was something I had difficulty using)</para>\r
+</listitem>\r
+<listitem>\r
+<para>Secret password is now autogenerated.</para>\r
+</listitem>\r
+<listitem>\r
+<para>Victory plaque is adjusted for A4 paper rather than 132-column greenbar\r
+:-)</para>\r
+</listitem>\r
+<listitem>\r
+<para>Phasers now tells you how much energy needed, but only if the computer \r
+is alive.</para>\r
+</listitem>\r
+<listitem>\r
+<para>Planets are auto-scanned when you enter the quadrant.</para>\r
+</listitem>\r
+<listitem>\r
+<para>Mining or using crystals in presense of enemy now yields an attack.\r
+There are other minor adjustments to what yields an attack\r
+and what does not.</para>\r
+</listitem>\r
+<listitem>\r
+<para>Ramming a black hole is no longer instant death. There is a\r
+chance you might get timewarped instead.</para>\r
+</listitem>\r
+<listitem>\r
+<para>"freeze" command reverts to "save", most people will understand this\r
+better anyway.</para>\r
+</listitem>\r
+<listitem>\r
+<para>Screen-oriented interface, with sensor scans always up.</para>\r
+</listitem>\r
+</itemizedlist>\r
+\r
</sect1>\r
<sect1><title>Eric Raymond's story</title>\r
\r
url='http://developer.berlios.de/projects/sst/'>project\r
site</ulink>.</para>\r
\r
-<para>Here are some good pages on the history of Star Trek games:</para>\r
+<para>After I launched the Berlios project, Stas Sergeev contacted me\r
+me. We worked together to merge in his changes.</para>\r
+\r
+<para>Modifications I've made:</para>\r
\r
<itemizedlist>\r
<listitem><para>\r
-<ulink url='http://www.dunnington.u-net.com/public/startrek/'>http://www.dunnington.u-net.com/public/startrek/</ulink>\r
+I converted the flat-text SST.DOC file to XML-Docbook so it can be\r
+webbed. (That's what you're reading now.)\r
</para></listitem>\r
<listitem><para>\r
-<ulink url='http://www3.sympatico.ca/maury/games/space/star_trek.html'>http://www3.sympatico.ca/maury/games/space/star_trek.html</ulink>\r
+The command-help code needed a rewrite because the flat-text form of\r
+the documentation is now generated from XML and doesn't have the\r
+easily recognizable section delimiters it used to. I wrote a script\r
+to filter that flat-text form into an sst.doc that's easy to parse for\r
+command descriptions, and changed some logic in sst.c to match.\r
</para></listitem>\r
<listitem><para>\r
-<ulink url='http://www.cactus.org/%7Enystrom/startrek.html'>http://www.cactus.org/%7Enystrom/startrek.html</ulink>\r
+I've cleaned up a lot of grubby FORTRANisms in the code internals --\r
+used sizeof(), replaced magic numeric constants with #defines,\r
+that sort of thing.\r
+</para></listitem>\r
+<listitem><para>\r
+I fixed a surprising number of typos in the code and documentation.\r
+</para></listitem>\r
+<listitem><para>\r
+All the game state now lives in one big structure that can be\r
+written to and read from disk as one blob. The write gives it an\r
+an identifiable magic number and the thaw logic checks for same. \r
+</para></listitem>\r
+<listitem><para>\r
+I made the internal pager work, nd in the process got rid of a number\r
+of platform dependencies in the code.\r
+</para></listitem>\r
+<listitem><para>\r
+The HELP/CALL/SOS command is now MAYDAY. SOS and CALL are still accepted.\r
</para></listitem>\r
</itemizedlist>\r
\r
-<para>Modifications I made:</para>\r
+<para>Here are some good pages on the history of Star Trek games:</para>\r
\r
<itemizedlist>\r
<listitem><para>\r
-I converted the flat-text SST.DOC file to XML-Docbook so it could be webbed.\r
-(That's what you're reading now.)\r
-</para></listitem>\r
-<listitem><para>\r
-I cleaned up a lot of grubby FORTRANisms in the code internals.\r
+<ulink url='http://www.dunnington.u-net.com/public/startrek/'>http://www.dunnington.u-net.com/public/startrek/</ulink>\r
</para></listitem>\r
<listitem><para>\r
-I fixed a surprising number of typos in the code and documentation.\r
+<ulink url='http://www3.sympatico.ca/maury/games/space/star_trek.html'>http://www3.sympatico.ca/maury/games/space/star_trek.html</ulink>\r
</para></listitem>\r
<listitem><para>\r
-I changed the freeze logic to emit an identifiable magic number and \r
-the thaw logic to check for it.\r
+<ulink url='http://www.cactus.org/%7Enystrom/startrek.html'>http://www.cactus.org/%7Enystrom/startrek.html</ulink>\r
</para></listitem>\r
</itemizedlist>\r
\r