Experimental X code
[super-star-trek.git] / sst.c
diff --git a/sst.c b/sst.c
index b8aa18301215b5165f40dddfb7daca67dd7618d8..e95fa2a8528ee15d1fad305d31c103381886f71b 100644 (file)
--- a/sst.c
+++ b/sst.c
@@ -42,44 +42,58 @@ Dave Matuszek says:
 
 Here are Tom Almy's changes:
 
-   Compared to original version, I've changed the "help" command to
-   "call" and the "terminate" command to "quit" to better match
-   user expectations. The DECUS version apparently made those changes
-   as well as changing "freeze" to "save". However I like "freeze".
-   (Both "freeze" and "save" work in SST2K.)
-
-   When I got a later version of Super Star Trek that I was converting
-   from, I added the emexit command.
-
-   That later version also mentions srscan and lrscan working when
-   docked (using the starbase's scanners), so I made some changes here
-   to do this (and indicating that fact to the player), and then realized
-   the base would have a subspace radio as well -- doing a Chart when docked
-   updates the star chart, and all radio reports will be heard. The Dock
-   command will also give a report if a base is under attack.
-
-   Klingon commander movements are no longer reported if long-range 
-   sensors are damaged.
-
-   Also added:
-
-   1. Better base positioning at startup.
+   In early 1997, I got the bright idea to look for references to
+   "Super Star Trek" on the World Wide Web. There weren't many hits,
+   but there was one that came up with 1979 Fortran sources! This
+   version had a few additional features that mine didn't have,
+   however mine had some feature it didn't have. So I merged its
+   features that I liked. I also took a peek at the DECUS version (a
+   port, less sources, to the PDP-10), and some other variations.
+
+   1, Compared to the original UT version, I've changed the "help" command to
+      "call" and the "terminate" command to "quit" to better match
+      user expectations. The DECUS version apparently made those changes
+      as well as changing "freeze" to "save". However I like "freeze".
+      (Both "freeze" and "save" work in SST2K.)
+
+   2. The experimental deathray originally had only a 5% chance of
+      success, but could be used repeatedly. I guess after a couple
+      years of use, it was less "experimental" because the 1979
+      version had a 70% success rate. However it was prone to breaking
+      after use. I upgraded the deathray, but kept the original set of
+      failure modes (great humor!).  (Now controlled by OPTION_DEATHRAY
+      and turned off if game type is "plain".)
 
-   2. Deathray improvement (but keeping original failure alternatives).
+   3. The 1979 version also mentions srscan and lrscan working when
+      docked (using the starbase's scanners), so I made some changes here
+      to do this (and indicating that fact to the player), and then realized
+      the base would have a subspace radio as well -- doing a Chart when docked
+      updates the star chart, and all radio reports will be heard. The Dock
+      command will also give a report if a base is under attack.
 
-   3. Tholian Web.  (Now controlled by OPTION_THOLIAN and turned off 
-      if game type is "plain".)
+   4. Tholian Web from the 1979 version.  (Now controlled by
+      OPTION_THOLIAN and turned off if game type is "plain".)
 
-   4. Enemies can ram the Enterprise. (Now controlled by OPTION_RAMMING
+   5. Enemies can ram the Enterprise. (Now controlled by OPTION_RAMMING
       and turned off if game type is "plain".)
 
-   5. Regular Klingons and Romulans can move in Expert and Emeritus games. 
+   6. Regular Klingons and Romulans can move in Expert and Emeritus games. 
       This code could use improvement. (Now controlled by OPTION_MVBADDY
       and turned off if game type is "plain".)
 
-   6. The deep-space probe feature from the DECUS version.  (Now controlled
+   7. The deep-space probe feature from the DECUS version.  (Now controlled
       by OPTION_PROBE and turned off if game type is "plain").
 
+   8. 'emexit' command from the 1979 version.
+
+   9. Bugfix: Klingon commander movements are no longer reported if long-range 
+      sensors are damaged.
+
+   10. Bugfix: Better base positioning at startup (more spread out).
+      That made sense to add because most people abort games with 
+      bad base placement.
+
+   In June 2002, I fixed two known bugs and a documentation typo.
    In June 2004 I fixed a number of bugs involving: 1) parsing invalid
    numbers, 2) manual phasers when SR scan is damaged and commander is
    present, 3) time warping into the future, 4) hang when moving
@@ -103,8 +117,8 @@ Here are Stas Sergeev's changes:
 
    4. The Tholian can be hit with phasers.
 
-   5. SCom can't escape from you if no more enemies remain (without this, 
-      chasing SCom can take an eternity).
+   5. SCom can't escape from you if no more enemies remain 
+      (without this, chasing SCom can take an eternity).
 
    6. Probe target you enter is now the destination quadrant. Before I don't 
       remember what it was, but it was something I had difficulty using.
@@ -534,7 +548,7 @@ int main(int argc, char **argv)
 {
     int i, option;
 
-    game.options = OPTION_ALL &~ (OPTION_IOMODES | OPTION_SHOWME);
+    game.options = OPTION_ALL &~ (OPTION_IOMODES | OPTION_SHOWME | OPTION_PLAIN | OPTION_ALMY);
     if (getenv("TERM"))
        game.options |= OPTION_CURSES | OPTION_SHOWME;
     else