home *** CD-ROM | disk | FTP | other *** search
/ The Fred Fish Collection 1.5 / ffcollection-1-5-1992-11.iso / ff_disks / 300-399 / ff357.lzh / Empire / Doc / Hosting < prev    next >
Text File  |  1990-06-02  |  13KB  |  271 lines

  1.             Amiga Empire by Chris Gray - Hosting an Empire Game
  2.  
  3.  
  4. Hosting an Amiga Empire game is fairly straightforward in the normal cases,
  5. and can be done on a floppy based Amiga with no expansion memory. Hosting a
  6. large game requires a hard disk because of the size of the data files.
  7. The first step is to decide where you want the data files to go. All of the
  8. files will be generated when the world creation program, EmpCre, is run.
  9.  
  10.  
  11. Summary of Hosting
  12.  
  13. 1) Decide where the game files are to go. For a first try, just have them
  14.     in the 'Game' directory.
  15.  
  16. 2) Create the world. For a first test world, a 16 x 16 world will do just
  17.     fine. From a shell, CD to the Games directory and type:
  18.  
  19.         EmpCre < 16x16
  20.  
  21.     From WorkBench, open the Game drawer and double click on the 16x16
  22.     icon. A window will be opened for output messages. In either case you
  23.     will get a lot of output as EmpCre tries to randomly create a world as
  24.     defined by the parameters in the '16x16' file. The world will be 16
  25.     sectors high by 16 sectors wide, and will have 3 countries, a deity
  26.     called 'god' with password 'godpassword', and space for 2 regular
  27.     countries. The country creation password will be 'creationpassword'.
  28.     A compressed map of the created world will be shown. The 'I's mark rich
  29.     iron deposits, the 'G's mark rich gold deposits, and the 'X's mark
  30.     sectors rich in both iron and gold. The data files for the world will
  31.     be created. Any files left over from a previous game in the same
  32.     directory will be deleted.
  33.  
  34.     It is possible that EmpCre will fail to satisfactorily create a world,
  35.     due to lack of connected space for santuaries, lack of accessible rich
  36.     deposits, etc. In this case, no map will be shown and no files will be
  37.     created. Just run EmpCre again to try again with the same parameters.
  38.  
  39.     If you run EmpCre directly, it will prompt you for all of the
  40.     parameters it needs. Everything defaults, so you can just hit RETURN
  41.     for each one. These parameters are described in more detail later.
  42.  
  43.     NOTE: If you are creating a world in the same directory as a previous
  44.     world, you MUST delete the old news and propaganda files yourself.
  45.     The best way to do this is to type:
  46.             delete news.#?
  47.             delete prop.#?
  48.     If you fail to do this you may get news articles that are nonsensical,
  49.     or that cause great confusion.
  50.  
  51. 3) Run the server. From a shell, type
  52.  
  53.         Run EmpServ
  54.  
  55.     From WorkBench, double click on the EmpServ icon. There will be some
  56.     disk activity as the server starts up, and reads in the basic world and
  57.     country information. It will then be ready to accept requests from
  58.     client programs.
  59.  
  60. 4) Run client programs. From a shell, CD to the Progs directory and type:
  61.  
  62.         Run SEREmp
  63.         Empire
  64.  
  65.     From WorkBench, find and open the Progs drawer, then double click on
  66.     the SEREmp icon and then the Empire icon. When the first one is
  67.     started, it will have to load 'Empire.libary' from your LIBS directory
  68.     (you did copy it to there didn't you?), so there will be a fair amount
  69.     of disk activity. It is not necessary to run both SEREmp and Empire,
  70.     but doing so shows the multi-player nature of this release of Amiga
  71.     Empire. SEREmp will attempt to open the serial port (it will need
  72.     DEVS:serial.device in order to do this), for a 2400/1200/300 baud
  73.     connection at either no or even parity. If you have a modem connected
  74.     to your regular serial port, you should see the DTR light come on.
  75.     Empire will open a window for WorkBench, or use your shell window. You
  76.     should see:
  77.  
  78.          Running Amiga Empire Version 2.1 by Chris Gray & David Wright
  79.  
  80.          Enter country name:
  81.  
  82.     At this point you can either log in as country 'god' with password
  83.     'godpassword', or create a new country with whatever name and password
  84.     you want. Empire will then ask you for the country creation password,
  85.     which is 'creationpassword' if you used EmpCre as above. File 'Intro'
  86.     contains a log of a sample session of starting up a new country.
  87.  
  88.     NOTE: a couple of commands in Amiga Empire, notably 'map', 'power', and
  89.     'radar', require a large amount of stack space. The client programs
  90.     check the stack size given to them and will not run if it is less than
  91.     25000. My guess is that this is at least twice as much as needed, so it
  92.     should be quite safe.
  93.  
  94. 5) Shut down the game. If you are running Empire locally, type 'bye' to
  95.     exit. This will leave you in the shell or will close the window and
  96.     leave you back in WorkBench. SEREmp and the server will still be
  97.     running, however. To shut them down, from a shell type:
  98.  
  99.         EmpShut
  100.  
  101.     From WorkBench, double click on the EmpShut icon. In a second or two
  102.     all SEREmps running and the server should shut down. If someone is
  103.     connected to a SEREmp and is playing, the shutdown of that SEREmp and
  104.     of the server will be delayed until that player leaves.
  105.  
  106.     From the shell, the effect of an EmpShut can also be done by sending a
  107.     control-C signal to the server. Issue the 'Status' command to see the
  108.     various CLI processes running (WorkBench tasks do NOT show up), and
  109.     note the CLI number for EmpServ. Use the 'Break' command to send the
  110.     signal, as in
  111.  
  112.         Break #
  113.  
  114.     where '#' is the appropriate CLI number. This technique can also be
  115.     used to shut down individual SEREmps. In cases where it appears a
  116.     SEREmp may have locked up, or you want the remote user to get off NOW,
  117.     you can use 'Break # f' to force an immediate disconnect. This is not
  118.     a very nice thing to do, however, and may not work with all non-
  119.     standard serial ports.
  120.  
  121. 6) Logfile, etc. Empire writes a logfile, normally 'RAM:empire.log',
  122.     showing connections, disconnections and country changes that have
  123.     occured. It is also possible that error comments from the server could
  124.     appear. You can delete this logfile between runs, or you can let it
  125.     accumulate, in order to collect statistics on country usage, serial
  126.     port usage, etc. When you want to restart the game from where it left
  127.     off, just go back to step 3 above. Note that there is no problem with
  128.     leaving the SEREmps and the server running at all times - they use very
  129.     little CPU time.
  130.  
  131.  
  132. File Space Needed
  133.  
  134. The files would normally be all in one directory, but the capability exists
  135. of storing them in several directories, and across multiple disks. Files
  136. used by the game are:
  137.  
  138.     empire.files - lists paths to the various files/directories. Normally
  139.         not present, in which case everything defaults to the current
  140.         directory.
  141.     empire.world (.5K) - various constants defining the world, its weather,
  142.         update factors, damage factors, etc.
  143.     empire.country (13K) - an array of 45 country structures. Each country
  144.         structure contains the country name, password, realms, user flags,
  145.         wealth, fleet indicators, etc.
  146.     empire.sector (varies) - an array of the sectors in the world. Each
  147.         sectors occupies about 40 bytes, so a 16 x 16 world will have a 10K
  148.         sector file, and a 256 x 256 world will have a 2.6 Meg file.
  149.     empire.ship (varies) - an array of the ships in the world. Each ship
  150.         occupies about 20 bytes. A small game will probably top out at 100
  151.         ships or less (2K), but a large world can have thousands.
  152.     empire.fleet (varies) - an array of the fleets in the world. Each fleet
  153.         occupies about 200 bytes. Most countries use no more than half a
  154.         dozen fleets at the most. A very long game with a lot of naval
  155.         activity could have more, however.
  156.     empire.loan (varies) - an array of all loans offered in the world. Each
  157.         loan occupies about 17 bytes. Loans are very infrequent.
  158.     empire.offer (varies) - an array of all sales offers in the world. Each
  159.         offer occupies about 4 bytes, so this file is quite small.
  160.     empire.power (varies) - the current power report for the game. It is
  161.         quite small (about 80 bytes per active country).
  162.     telegrams.XXX - a telegram file for each country. The size will be
  163.         determined by the maximum size of undeleted telegrams the country
  164.         has. These are only a problem for a country that hasn't deleted them
  165.         for a long time (perhaps the player has left) and the country is
  166.         under heavy attack. In these cases a deity can log on to the country
  167.         and delete the telegrams.
  168.     news.XXX - news files. News items are automatically generated by the
  169.         program as events occur. Each item is small (8 bytes), and a new
  170.         file is started for each "day". Old news files can be deleted - if
  171.         someone asks to read them they will get no news.
  172.     prop.XXX - propaganda files. Each item can only be at most 900 bytes,
  173.         and a new file is created for each day. They may be deleted if
  174.         desired.
  175.  
  176. Four files can be created in the base directory and will be used by Empire
  177. if they are present. They are:
  178.  
  179.     empire.conMess - printed as soon as a connection is made, before the
  180.         country name prompt is given
  181.  
  182.     empire.logMess - printed after a country has logged in
  183.  
  184.     empire.logMess - printed when a country logs out
  185.  
  186.     empire.bulletin - printed as the first part of the newspaper
  187.  
  188.     empire.access - printed if someone tries to log in, but is unsuccessful.
  189.         It is used to tell people how to join the game.
  190.  
  191.  
  192. Alternate File Placement
  193.  
  194. If you do not have space in one directory for EmpCre, EmpServ and all of
  195. the data files for a world (plus all of the online help files in a
  196. directory beside the one the game files are in), then you can split them up
  197. by using an 'empire.files' file. Also, you can move EmpCre and EmpServ to
  198. different directories, and then tell them where the Game directory is.
  199. Running a 128 x 128 world on a two-floppy system should be possible. To
  200. have EmpCre and EmpServ in a directory other than the base directory which
  201. will contain the game files, you can run them directly from a shell, or,
  202. from WorkBench, you can use the WorkBench Info menu item to add a Tool Type
  203. that looks like:
  204.  
  205.     PATH=directory
  206.  
  207. Note that if 'directory' does not end in a ':', it must end in a '/', since
  208. EmpCre and EmpServ just add their specific file names onto the end of it.
  209. For example, if you want to use a floppy in drive DF1 for the files, you
  210. would use:
  211.  
  212.     PATH=DF1:
  213.  
  214. If you wanted to use directory 'Empire.Game' on your 'DH0' hard disk
  215. partition, then you would use:
  216.  
  217.     PATH=DH0:Empire.Game/
  218.  
  219. You must use the same path for both EmpCre and EmpServ, or the server won't
  220. be able to find the files that EmpCre created. Also, the default path for
  221. find finding help files is '/Help/', so the help files are normally in a
  222. directory called help which is beside the directory the game files are in.
  223. Similarly, the doc file directory defaults to '/Doc/'.
  224.  
  225. To split the files across multiple directories or drives, you must use a
  226. text editor (e.g. Ed or Emacs) to create a file called 'empire.files' in
  227. your base game directory. It should contain one path per line, with the
  228. paths being given in the following order:
  229.  
  230.     full path for the log file
  231.     full path for the world file
  232.     full path for the country file
  233.     full path for the sector file
  234.     full path for the ship file
  235.     full path for the fleet file
  236.     full path for the loan file
  237.     full path for the offer file
  238.     full path, ending in '/' for the help directory
  239.     full path, ending in '/' for the doc directory
  240.  
  241. The telegram, news, and propaganda files will always be in the same
  242. directory as the 'empire.files' file. As an example, here is an
  243. 'empire.files' file which puts the log file on RAM, the sectors file on
  244. DF1, the help and doc directories on DF2 and everything else on DF0:
  245.  
  246.     RAM:empire.log
  247.     DF0:empire.world
  248.     DF0:empire.country
  249.     DF1:empire.sector
  250.     DF0:empire.ship
  251.     DF0:empire.fleet
  252.     DF0:empire.loan
  253.     DF0:empire.offer
  254.     DF2:empire.help/
  255.     DF2:empire.doc/
  256.  
  257. With this file, you would want the PATH to be 'DF0:'.
  258.  
  259. The client programs SEREmp and Empire, along with EmpShut, do not need to
  260. know where the data files are since they communicate only with the server
  261. through an Amiga Exec message port. There are many options that you can
  262. give to SEREmp, so it is described in a separate file. Similarly, the world
  263. creation parameters of EmpCre are described separately. If Empire is run
  264. from a shell, it can have a single flag, '-a', which tells it that it is
  265. running in a non-standard environment, typically over the serial port using
  266. the AUX: device. Normally, it uses control sequences understood by the
  267. Amiga console windows to turn off character display when reading passwords.
  268. This likely does not work for a terminal connected over the serial port (it
  269. locks the keyboard on mine!), so with '-a' specified, no password blanking
  270. will be done. This same flag applies to EmpCre as well.
  271.