home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / alib / d1xx / d178 / cosmic.lha / Cosmic / Cosmic.doc < prev    next >
Text File  |  1989-02-04  |  24KB  |  495 lines

  1.  
  2.  
  3.                                   Cosmic Conquest
  4.                                        V1.01
  5.  
  6.                     A interstellar multiplayer game of War and Peace
  7.  
  8. PUBLIC DOMAIN NOTICE
  9.  
  10. This program was placed in the public domain. It may be freely copied
  11. for non-profit by anyone as long as the original archive or all the
  12. unmodified files from the archive are distributed in one directory.
  13. Anybody may modify this for his personal use, but please don't give
  14. other people modified copies. On the other hand I'd be delighted to
  15. have your modifications sent to me and to incorporate them in the
  16. main program . This program is strictly public domain and not
  17. shareware and as I don't depend on living on my programs and I wrote
  18. this for fun, I wish you to play it at no higher price.
  19.  
  20. BEFORE START
  21.  
  22. Make a "games" subdirectory in the same directory you place the game.
  23. In this new directory all saved games are stored.
  24.  
  25. HOW TO PLAY
  26.  
  27. The aim of Cosmic Conquest is to be the sole remaining ruler over the
  28. complete star cluster of 16 stars. Cosmic Conquest is always played
  29. with four players which can be any combination of different human and
  30. computer players. After selecting "Start a new game" enter the names
  31. of the four players. To specify a computer player use as name,the
  32. name of the computer algorithm and add some string to make the name
  33. unique. There are four supported computer algorithms. These are
  34. Klingon, Romulan, Berserker and Alien. Acceptable names are for
  35. example:
  36. "romulan A"
  37. "Klingonian"
  38. "BerSERker Fred"
  39. Currently only the klingon player is working intelligently,the others
  40. are in V1.01 only stumps. To specify a player who is non-active
  41. already from the  beginning use the name "dead". All other names are
  42. interpreted as names of human players. After having entered the names
  43. the game starts and the players take turns at entering their
  44. commands.
  45.  
  46.  DISPLAYS
  47.  
  48.   A) Main map
  49.  
  50.   This map is automagicaly displayed in the large window on the left
  51.   hand side of the screen. Superimposed on a dot pattern all stars
  52.   are displayed as capital letters. Stars are color coded. Stars
  53.   completly controled by one player are displayed in his color.
  54.   Stars on which  several players control planets are displayed in
  55.   orange. Unknown or  uninhabited stars are displayed in white. Stars
  56.   displayed in inverse are stars which already have been explored but
  57.   on which currently there is no information. Beware ! Information
  58.   displayed about these stars may be out of date and no longer
  59.   accurate. On this screen also all taskforces known to you are
  60.   displayed as minor letters in the color of their empire. Only
  61.   taskforces in normal space(not in hyper space) are displayed.
  62.   Sometimes several taskforces will be at one star and the display
  63.   will become muddled. To obtain exact information simply examine the
  64.   starsummary for this star. To obtain a starsummary on an star click
  65.   on it. To obtain information on a taskforce click on it. If there
  66.   are several taskforces at the star then a starsummary is displayed
  67.   and you can select your taskforce from there. To obtain a general
  68.   overview about all stars simply press the left mouse button
  69.   somewhere on the background pattern.
  70.  
  71.  B) Status Display
  72.   The status is displayed in middle window on the right. To obtain it
  73.   simply press the right mouse button anywhere. It gives your name
  74.   and your techlevel. This level starts at 100 and increases with
  75.   research. What types of ships are available to you depends on the
  76.   techlevel. The pop-stat show the number of millions of creatures of
  77.   your race alive.This includes colonies enslaved by other races.
  78.   The ind-stat gives your total industrial capacity. It is the sum of
  79.   the industry of all planets you rule. Below,the names of all other
  80.   races and your attitude towards them (first) and their attitude
  81.   towards you (second). This can be War, Peace or Alliance.
  82.  
  83.  C) Starsummary
  84.  
  85.   The starsummary is displayed in the middle of the 3 windows on the
  86.   right hand side. In the top line the letter of the star and its
  87.   coordinates are displayed. In the four lines below information on
  88.   the up to 8 planets (numbered from 0 to 7) of the star is
  89.   displayed. The color of these entries is coded according to the
  90.   color of the ruler of the planet. A planet displayed in inverse
  91.   represents one on which valuable ore may be mined.The first 3-digit
  92.   figure gives the maximum population of the planet in millions. The
  93.   second one gives the current population in millions. If the planet
  94.   is enslaved this stat is displayed in the color of the original
  95.   ruler. The third one is  the current industrial level of the
  96.   planet. It describes what amount of ships or things may be build in
  97.   a certain time on this planet. This stat may never go above
  98.   population number. The final letter (or blank) is an abbrieviation
  99.   for the type of product beeing built on the planet. Blank means
  100.   nothing. Minor letters stand for different ship types. M stands for
  101.   Mining, R for Researching, I for Investing. To obtain further
  102.   information on a planet simply click on it. In the four lines below
  103.   all taskforces at this star are displayed for the four players.
  104.   Taskforces displayed in inverse are taskforces which haven't yet
  105.   arrived at the star ,but of which you know that they are headed
  106.   there. To obtain data on a taskforce click on it here. To obtain an
  107.   overview over all  taskforces of one player click on the
  108.   appropriate "Tf" sign. In the last line the seven nearest stars
  109.   together with their distances are displayed in order of proximity.
  110.   Click on a star to obtain its summary.
  111.  
  112.  D) Staroverview
  113.  
  114.   The staroverview is displayed in the middle of the 3 windows on the
  115.   right hand side. All stars are color coded as in the main map. For
  116.   each star the sum of all its planets, population maxima, population
  117.   and industry is displayed. Click on a star to obtain the
  118.   starsummary.
  119.  
  120. E) Taskforcesummary
  121.  
  122.   The taskforcesummary is displayed in the lower right hand window.
  123.   In the headline of the display the letter of the taskforce, its
  124.   star, its capacity , its speed and its range is displayed. If the
  125.   taskforce has arrived at a star only the letter of this star is
  126.   displayed. If it is in hyperspace, the name of the star it is
  127.   heading at, and the number of years it will still take it to arrive
  128.   there is displayed. The speed is the speed of the slowest ship in
  129.   the taskforce ,that is not carried by another ship. The range is
  130.   the range of the ship with the smallest range in the taskforce,
  131.   that is not being carried. These two stats give the
  132.   maximum distance between stars that a taskforce may
  133.   hyperspace non-stop and the distance it covers in each year.
  134.   The third stat gives the sum of the sizes of the storage holds of
  135.   all ships (including carried ships).  In the body of the display
  136.   the names of all shipstypes in the taskforce appear. If you have
  137.   information about the interior of the ships (i.e. it is one of your
  138.   taskforces) 2 figures are displayed at the end of the line. The
  139.   first gives the number of free ships of this type in the taskforce,
  140.   the second the number of carried ships of this kind in the
  141.   taskforce. On the other hand if it is a foreign taskforce you will
  142.   only see the number of visible ships of each kind. To obtain a
  143.   shipsummary, a summary of the technical stats of one kind of ship,
  144.   click on the name of the shiptype. To obtain an overview about all
  145.   the taskforces of the player (of which you know) in that this kind
  146.   of ship is known to be, click on the number of ships.
  147.  
  148.  F) Taskforceoverview
  149.  
  150.   This is displayed in the lower right hand window. All known
  151.   taskforces are displayed including the star they are heading at (or
  152.   are at) and the number of years it will still take the taskforce to
  153.   arrive there. To obtain a taskforce summary click on the taskforce
  154.   you wish to obtain info on.
  155.  
  156.  G) Shipoverview
  157.  
  158.   This is similar to taskforceoverview , but instead of displaying
  159.   the star each taskforce is heading at, the number of all
  160.   free(first) and carried(second) ships of one shiptype of each known
  161.   taskforce of one player is displayed. If you don't know what is
  162.   inside a taskforce(i.e. it's not one of your taskforces) then only
  163.   the visible ships are displayed  To obtain a taskforce summary
  164.   click on the taskforce you wish to obtain info on.
  165.  
  166.  H) Planetsummary
  167.  
  168.   Planetsummary is displayed in the lower right hand window. In the
  169.   headline star and planet are displayed. In the second line the
  170.   population maximum for the planet, its current population and its
  171.   industrial level are shown. The name of its displayed in the third
  172.   line product. In the next line the cost of the product( the number
  173.   of industrial points needed to build it, e.g. , to mine one point
  174.   of ore has a cost of 15. A planet with an industry of 60 produces 4
  175.   oreunits a year. A light cruiser costs 100,thus a planet with an
  176.   industry of 40 needs 2.5 years to produce one.) is shown. The
  177.   number of years needed to produce one unit as well as the estimated
  178.   time at that the next unit will be available is displayed. To
  179.   obtain further information on the ship click on its name.
  180.  
  181.  I) Shipsummary
  182.  
  183.   Shipsummaries are displayed in the lower right side window. In the
  184.   headline the name of the shiptype is displayed. In the second line
  185.   the size of the ship as well as its capacity is displayed. These
  186.   stats are important for how many ships of a type another ship can
  187.   carry inside its storage holds. The hyperspeed stat gives the
  188.   maximum speed of any taskforce in that such a ship is and is not
  189.   carried. The hyperrange gives the range of a taskforce in that such
  190.   a ship is and is not carried. If either or both of these 
  191.   attributes is 0 then this shiptype has no hyperdrive and cann't
  192.   move by itself from one star to another but must be carried by
  193.   another ship.The attack stat gives the strength of the builtin
  194.   weaponry of this shiptype. No of attack gives the number of attacks
  195.   of this strength such a ship may make. Speed determines when such a
  196.   ship makes its attack in a battle. The  lower it is the better.
  197.   Shields gives the amount of protective devices of the ship. A
  198.   shield will block an attack of the same strength 50 % of the  time.
  199.   Techcost gives the cost in industrial points it costs to build one
  200.   such ship. Techlevel gives the minimum techlevel a race has to have
  201.   to be able to build such a ship. If both of these attributes are
  202.   displayed in  inverse the ship is not available. Below these
  203.   attributes several some special abilities of ships may be
  204.   displayed:
  205.     Starkill  = This ship is equiped with a special device which can
  206.                 make suns go supernovae. All planets and all
  207.                 taskforces present are destroyed. BEWARE !!! Very
  208.                 dangerous ! Only for absolute emergencies.
  209.     One-Shot  = This is a unmanned ship which is destroyed in its
  210.                 first attack. For example: Torpedos.
  211.     CataStart = Ships with this attribute can be ejected via
  212.                 catapults very quickly in a fight, if they are
  213.                 carried aboard ships with the catapult equipment.
  214.                 This allows attacking taskforces to have some carried
  215.                 ships attack immediately in the first year of battle.
  216.     Not build = Ships of this type cannot be build using normal build
  217.                 commands. For example: Oreunits and Popunits.
  218.     Catapult  = Ships with this ability can catapult ships with the
  219.                 CataStart attribute.
  220.  
  221.  J) Help
  222.  
  223.   The help screen is displayed if you at any time click in the upper
  224.   right hand command window. It shows all commands and their one
  225.   letter abrieviations.
  226.  
  227.  All displays are always immediately updated to represent any
  228.  change.If in any display the sign oo(infinite)  appears this
  229.  represents a figure which is out of bounds. It is certainly larger
  230.  than the maximum integer to be displayed in the given number on
  231.  characters (for Example if any figure greater than 99 is going to be
  232.  displayed in a 2 character field it is displayed as oo.).
  233.  
  234. COMMANDS
  235.  
  236.  Commands are entered in the command window in the upper right hand
  237.  corner. In contrast to display functions which are completly mouse
  238.  driven all commands are entered at the keyboard. First enter the one
  239.  letter code for each command ,then you are queried for all
  240.  parameters of the command in this window. In most cases, in which you
  241.  have several different options you can scroll through them with the
  242.  <-key and the >-key. Press return to select. You can also enter an
  243.  identifying letter for each option immediately. When queried for a
  244.  number the maximum amount is displayed in brackets. Press 0-9 to
  245.  select this small quantity to select other numbers use the <-key and
  246.  the >-key. To select maximum press >-key and shift simultaneously.
  247.  To select the minimum (usualy 0) press the <-key and shift
  248.  simultaneously.
  249.  
  250.   g = Go on
  251.  
  252.     This command ends your turn and allows the next player to get his
  253.     turn.
  254.  
  255.   h = Hyperspace
  256.  
  257.     This command allows you to send taskforces from one star to
  258.     another. You are querried first for the task and then for the
  259.     destination. This command will automaticaly carry ships with
  260.     insufficient range. If this isn't possible you will get an error
  261.     message. It also optimizes for speed.(Carries slower ships in
  262.     faster if possible.)
  263.  
  264.   e = Emigrate
  265.  
  266.     If you rule a planet and the population is of your race, you can
  267.     order some of your loyal subjects into large containers, where
  268.     cold sleep is induced. Into each of these containers fit 1
  269.     million creatures. These containers are then fired into space.
  270.     They are called popunits. To colonialize a planet simply land
  271.     (with the l command) popunits on planets and your subjects will
  272.     awake and start to build another outpost for your empire. When
  273.     the population on a planet has reached its maximum, surplus
  274.     population is automaticaly sent into popunits.
  275.  
  276.   k = Kill
  277.  
  278.     This is not a very philantrophic( or philcreaturic) command but
  279.     sometimes necessary. It allows you to kill the population of any
  280.     planet you control if the population happens to be of another
  281.     race (when you have conquered and enslaved the population). If
  282.     you don't specify the planet(i.e.you hit return) and there is a
  283.     ship with starkiller present, you eliminate this star and all
  284.     taskforces there !
  285.     Be careful !!
  286.  
  287.   j = Join taskforces
  288.  
  289.     With this command you can join up to 30 taskforces. End input
  290.     with return. All taskforces have to be at the same star. If
  291.     possible all taskforces are joined to one.
  292.  
  293.   l = Land taskforce
  294.  
  295.     With this command you can colonialize other planets or supply
  296.     planets you already own. As many popunits as there are in the
  297.     taskforce and fit on the planet land. This will increase the
  298.     population by this amount. Then as many oreunits as there are in
  299.     the taskforce land and increase the industry. (Providing that
  300.     wouldn't raise the industry higher than the population).
  301.  
  302.   n = New taskforce
  303.  
  304.     This command allows you split an existing taskforce into two. You
  305.     are queried for the number of ships of each type in the new
  306.     taskforce. All ships in both taskforces are unloaded.
  307.  
  308.   d = Diplomatic declaration
  309.  
  310.     This commands sets your attitude towards the other players. You
  311.     can declare WAR and this propably causes the other side to
  312.     declare WAR on you as well as soon as it is its turn. If you
  313.     have declared war and your taskforces meet they will fight. You
  314.     can make a PEACE offer and hope that the other side will declare
  315.     PEACE on you as well or you can offer an ALLIANCE. This  ALLIANCE
  316.     will be fulfilled by your side only until the other side declares
  317.     ALLIANCE as well.
  318.  
  319.   p = Possess planet
  320.  
  321.     If you defeat another player and conquer one of his stars you
  322.     will propably wish to use this command. It allows you to take
  323.     control of any planet, if all the enemy taskforces have fled or
  324.     were defeated. The population of the planet will be enslaved. It
  325.     will always inform your opponent of the current state on this
  326.     star. You will also be unable to raise popunits from such a
  327.     planet. Thus you may wish to kill(= k) this population. On the
  328.     other hand, if you possess a planet of a culture with a higher
  329.     techlevel your techlevel will increase as well.
  330.  
  331.   b = Build ship
  332.  
  333.     This useful command allows you to set the production on any
  334.     planet you rule over. You have several options:
  335.  
  336.     Any kind of ship that your techlevel allows you to build.To get
  337.     this option enter the letter of this ship or select it the <,>
  338.     and RETURN keys.
  339.  
  340.     RESEARCHING. This allows you to increase your techlevel. Use a
  341.     capital 'R' or select it with the <,> and RETURN keys.
  342.  
  343.     INVESTING. This option allows you to increase the industry on
  344.     this planet ,but it is rather slow, thus use oreunits whenever
  345.     possible. Use a capital 'I' or select it with the <,> and RETURN
  346.     keys.
  347.  
  348.     MINING. This is only possible on a planet on that ore is found.
  349.     These planets are displayed in inverse in the Starsummary. When
  350.     using this option your planet outputs oreunits. Use a capital 'M'
  351.     or select it with the <,> and RETURN keys.
  352.  
  353.   c=Carry ships
  354.  
  355.     This command allows you to specify the number and type of ships
  356.     being  carried in a taskforce. As the ships are taken apart
  357.     before carrying, large ships can be spread among many smaller
  358.     ships. Also note that the empty space inside the storage holds of
  359.     large ships is used. This means 4 glitter with a size of 20 and a
  360.     capacity of 19 each, can be stored inside one single transporter with
  361.     a capacity of 4. Carrying ships can have different reasons. Some
  362.     ships don't have hyperdrives or only drives with insufficient
  363.     range. This means that they have to be carried by longer range
  364.     ships on far distances. Others are quite slow and fast taskforces
  365.     can be speeded up by faster ships carrying the slower ones. Note
  366.     also that ships stored inside other ships can't be destroyed in
  367.     battle, even if their carriers are blown up. They will be unloaded
  368.     and undamaged next year. This may be a way to protect valueable
  369.     but easily destroyed ships like space cannons or Q-bombs
  370.     inside larger ships with better armor.   
  371.  
  372. HINTS
  373.  
  374.  The following hints may help you to play a better game against
  375.  Klingon or another human player.
  376.  
  377.   1. When the cluster is generated you always get one populated
  378.      mineable planet type 60 and one empty planet type 40. There will
  379.      be another star within a range of 4 units. There won't be an
  380.      enemy within 8 units,thus you needn't be to frightend at the
  381.      beginning.
  382.   2. Use cheap scouts to explore and on sentry duty to yet
  383.      uncolonialized stars. Have sentries on all stars within 6 or 8
  384.      units of your main industrialized stars. They won't stop an
  385.      attacking enemy but you will get advance warning to prepare to
  386.      defend. Having one of your main stars surprised by 3 light
  387.      cruisers, conquered, and all population killed when you bring in
  388.      your taskforces is NOT the way to win.
  389.   3. How fast your population grows depends on the distance from the
  390.      sun. Planet 3 is rather ideal. Planets farther in are
  391.      progressivly to hot to have a large birth rate and planets
  392.      farther out are becoming colder and colder. Build up your
  393.      population in the middle planets. Planets  0 and 7 will never
  394.      increase their population but always remain constant.
  395.   4. Use glitter ! Glitter is very cheap and easily destroyed but has
  396.      a large size and many shots will be drawn away from your more
  397.      important ships. As its capacity is only one less than its size,
  398.      it can be transported effectively at the cost of one.
  399.      Use clearers ! These ships have a quite good speed ,thus they
  400.      will fire early in a battle. They have many attacks but each of
  401.      them is pretty weak. Their attacks can practicaly only penetrate
  402.      ships without armor. They are the ideal counterweapon against
  403.      glitter, as they clear it away ,before the other ships fire
  404.      might be distracted.
  405.   5. Never use invest, if you have got ore available.
  406.   6. The most important ship to build, after having conquered all stars
  407.      in the close neighboorhood, is the Trans II. It is available at a
  408.      techlevel of 210 and allows you to expand across the gaps between
  409.      the stars.
  410.   7. Never stop building a ship that is almost finished. You will lose
  411.      all efforts you put into it.
  412.  
  413. TECHNICAL DOCUMENTATION
  414.  
  415.  The game can be completly rebuilt by executing the makeall-file.
  416.  The resulting executable might be slightly shorter as a secret
  417.  debug mode has been removed from the source.
  418.  To add more computer players feel free to modify the files "romulan.c"
  419.  and "alien.c". To see how a simple computer player is written, examine
  420.  the "klingon.c" file. If you write a clever or unusal computer player
  421.  I'd be obliged, if you sent it to me for incorporation in future versions
  422.  of "Cosmic Conquest".
  423.  To add more ship types, modify the main.c file. If you invent good ones
  424.  send them to me.
  425.  
  426.  The files:
  427.      main.c      - startup code and definition of ship types
  428.      defs.h      - definitions for the game
  429.      con.c       - main part of the program for computation
  430.                    of moves and fights
  431.      human.c     - input/output routines for the human player
  432.      klingon.c   - klingon player
  433.      romulan.c   - romulan player (not completed)
  434.      berserker.c - berserker player (not completed)
  435.      alien.c     - alien player (not completed)
  436.      cosmic.doc  - this text
  437.      makeall     - batchfile
  438.  
  439.   Sorry, there are very few comments in the source. But the code is obvious,
  440.   isn't it ?!?
  441.  
  442. DESIGN LIMITS
  443.  
  444.  Most of these limits can be changed by changing the defs.h file and
  445.  recompiling the game.
  446.    1. There can never be more than 250 free ships of one type and 250
  447.       carried ships of one type in one taskforce. Additional ships
  448.       are ignored.
  449.    2. There can never be more than 26 taskforces.
  450.    3. There are only 16 stars.
  451.    4. All other data are short integers. This means values up to
  452.       32000 should be ok.
  453.  
  454. THANKS AND APOLOGIES
  455.  
  456.  Thanks to Bob Shimbo for the original amiga port. Altough this
  457.  source is completly independent, your program obviously
  458.  inspired me very much.
  459.  
  460.  Thanks to Charlie Heath for writing the editor without that
  461.  programing on the amiga would be a nightmare(...well,almost). BTW,
  462.  ARP is the best thing that happend to the amiga since the invention
  463.  of the coprocessor.
  464.  
  465.  Thanks to Manx for writing one of the most buggy professional
  466.  compiler I've seen to date (except of course the earlier versions of
  467.  Manx C). The assembler keeps crashing the machine without any reason
  468.  and generating illegal address gurus in the executable. (And don't ask
  469.  about the sdb !!!).
  470.  
  471.  Note to Chris Gray: Received your "Empire" yesterday and noted a few
  472.  similarities. Any  resemblance is purely coincidental.(Good game
  473.  anyway. But please add support for the second terminal (I've got one
  474.  ,I have to use it) and pleeeeeease debug it thoroughly. It just
  475.  keeps guruing.)
  476.  
  477.  If you have got ideas or code for enhancements of the program, send
  478.  them to me on a disk. You will receive the newest version of Cosmic
  479.  Conquest. Maybe your enhancements will already be incorporated in
  480.  the version you receive. If you only wish to have the newest version
  481.  send a disk to me as well, but please include the postage for the
  482.  reply mail.
  483.  
  484.  Sorry you can't reach me via any network but that's a problem here
  485.  in Germany. You can reach me via the german smail at this adress:
  486.  
  487.                    Carl Edman
  488.                    Pasteurstrasse 7
  489.                    D-8033 Martinsried
  490.                    Federal Republic of Germany
  491.  
  492.                           Have fun,
  493.  
  494.                              Carl Edman
  495.