
                               Galaxy 5 
                      Copyright (c) 1996 Thomas J. Smith

     
      This text file explains the use of Xports, how to install and use
      them, and how to go about creating your own!
     
      For a complete listing of data file structures, formats of all of
      the drop files that G5 creates, and a complete list of color, and
      other codes, unzip the G5_STRUC.ZIP archive. Everything 3rd party
      programmers need is located in this archive!
     


                                 HOW THEY WORK
     
      In order to explain this in the simplest way, I will use an
      example. Lets say Joe SysOp just downloaded an Xport called
      "Hermans World." First, Joe unzips the file he just downloaded to
      a temporary directory (or the directory he wishes the Xport to be
      installed to). Then Joe will read the docs that came with the .ZIP
      file first (or will he?). In the docs, Joe will find that all he
      needs to do to install this Xport, is run the INSTALL.EXE program
      included with the .ZIP file (or other installation method). The
      install program then puts all the necessarry files in their proper
      places, and writes the needed info to the XPORTS.DAT file in Joes
      main Galaxy 5 directory.
     
      Now to use the Xport, Joe logs on to Galaxy 5 either locally, or
      by logging on to his BBS locally, and running the game from there.
      From the main menu (Lexor Street, or whichever planet he is on),
      Joe will choose the option, "(X)port to another place." Then he is
      taken to a menu listing all of the Xports he has installed. If he
      only installed one Xport, then only the name of that one Xport
      will be listed as number (1). Joe then presses 1 to go to this
      Xport, and wala! Thats all there is to it. After Joe is done using
      the Xport, Galaxy 5 reloads, and picks up from the Xport menu
      where it left off, and deducts the time that Joe was in the Xport
      from his time left in the game!
     
      Then later (or right after trying it), if Joe finds that he does
      not like this Xport, he runs the UNINSTAL.EXE program that came
      with the Xport (or whatever program the Xports docs point him
      to), and the game is "uninstalled!"
     


                                     Q & A
     
       Q. What is an Xport?
      ----------------------
       A. An Xport is an external program (door) created by third
          party programmers for use in your Galaxy 5 game. They can
          be run directly from within the game, without any special
          setup on the SysOps part!
     
       Q. Where can I find an Xport?
      -------------------------------
       A. Good question! Depending on how well Galaxy 5 does with
          popularity, it may or may not be hard to find an Xport.
          However, I have created a freeware Xport named "The Inscribers
          Guild." It allows players to personalize their Armour, Weapon,
          and Space Craft at a price the SysOp sets. SysOp can also
          disallow personalizing of any of the three items mentioned.
          Look for SCRIBE??.ZIP (where ?? is the version number).
     
       Q. If I find one, how do I set it up?
      ---------------------------------------
       A. It should be extremely simple to set up. As a ground rule,
          any Xport created by a third party programmer, must come
          with an easy to use install program, and easy to use
          "uninstall" program in case the SysOp does not like it, or
          needs to remove it for some reason. The SysOp installing the
          Xport, should not have to do anything else but run the
          INSTALL program that comes with the Xport!
     
       Q. What if an Xport I installed doesn't work properly?
      --------------------------------------------------------
       A. Read the docs that came with it. If the author(s) of the Xport
          provides support for the program, then follow their
          instructions on how to obtain that support. It is beyond my
          ability to help with problems concerning someone elses
          program! :) If all else fails, remove the Xport from your
          game. If the Xport just happened not to come with an
          uninstall program, then remove the two lines in the
          XPORTS.DAT file that pertain to that Xport.
     
       Q. I write doors, how can I make an Xport?
      --------------------------------------------
       A. If the door writing kit that you use supports the Quick BBS
          drop file format (DORINFO*.DEF where * is the node number),
          then you may already have what you need to write your own
          Xport! Galaxy 5 creates 3 drop files before running an Xport,
          one of which is a DORINFO*.DEF compatible drop file. Figure
          out some way to have your Xport read this drop file (located
          in the TEMP subdirectory), and it -should- be all you need!
          Other door writing kits that are directly supported are UrDoor,
          and the DDplus door driver kit. Read the next section,
          "Creating Your Own Xports." It explains everything you need to
          know!
     


                           CREATING YOUR OWN XPORTS
     
      ** Unzip the G5_STRUC.ZIP archive!! It contains everything you
         need to know!!! ;>
     
      Before your creation(s) can be "officially" called Xports, you
      must follow these 3 simple rules:
     
      1  It must come with an easy to use install program, and an easy
          to use uninstall program. These can be implemented as separate
          .EXE's, or as command line switches in your game, or whatever.
          What the install program must do, is place its game files in
          the proper directory (preferably its own directory off of the
          main Galaxy 5 directory), and write its needed two lines to
          the XPORTS.DAT file located in the main Galaxy 5 directory.
          The XPORTS.DAT file, is a regular text file, listing the name
          of your Xport as it will be shown to callers first, and then
          the command line you want passed to your door when a player
          uses the Xport on the second line. Here is an example,

          ~0B~T~01~he ~0B~I~01~nscribers ~0B~G~01~uild
          C:\DOORS\GALAXY5\SCRIBES\SCRIBES.EXE ~UN~

          In the above example, the characters in between the tilde (~)
          signs are codes used by Galaxy 5. ~01~ tells G5 to set the
          color following to blue, ~0B~ tells G5 to set the color
          following to light cyan (see "Galaxy 5 Codes" for a complete
          list of color codes), and ~UN~ is a user variable. In this
          case, it will be replaced by the node number the current
          caller is on. So the command that will go into the batch file
          that calls this Xport, would be,
          C:\DOORS\GALAXY5\SCRIBES\SCRIBES.EXE 1, if the caller was on
          node 1. There are many other user variables you can use in
          the XPORTS.DAT file to use on your Xports command line, and
          they are all listed below in the section, "Galaxy 5 Codes."
     
      2  Your Xport must get all of its caller info from one or more of
          4 sources,
                    a. The user variables placed in the XPORTS.DAT file
                       on the command line for your Xport.

                    b. The DROPFILE.* file which G5 creates for each
                       caller online (* is the callers node number).

                    c. From the NODE*.DAT file which G5 also creates for
                       each caller online (again, the * will be the node
                       number that the caller is on).

                    d. The DORINFO*.DEF file which G5 also creates for
                       each caller online. Same as the above two, the
                       star will be the node number.
     
      All of the three drop files created, are placed in the TEMP
      subdirectory. So if your Galaxy 5 game is in C:\DOORS\GALAXY5,
      then the drop file directory would be C:\DOORS\GALAXY5\TEMP.
     
      The format of the three drop files created can be found in the
      G5_STRUC.ZIP archive. Your Xport must NOT read a BBS drop file!
     
      3  Please do not charge more for your Xports than what it costs
          to buy Galaxy 5 (15 bucks).
     
      If you have no means of doing this with the door writing kit that
      you are using, then try to find some way to implement your own
      procedure to read the caller info from the DROPFILE.* drop file
      (or one of the others), instead of your door kit looking for the
      BBS drop file.
     
                                A FEW POINTERS
                               ----------------
      1  Don't make an Xport that gives the players mucho amounts of
          "stuff." This makes the game no fun when the player has done
          everything they can possibly do before they are even half way
          through the game!

      2  Try to keep a look and feel that the players are familiar
          with. This is not a must, but its no fun for a player to enter
          an Xport and be totally lost! At the least, make it easy to
          navigate.

      3  Your Xports can do almost anything! Consider the fact that the
          game takes place in a futuristic space age setting. Using that
          you can have time tunnels that take callers back to medieval
          times, transporters that take them to other galaxies, or just
          a new place on the planet they are on. The only limit is your
          imagination! :)
     


                                GALAXY 5 CODES
     
      Listed here are all of the codes that you can use on the command
      line for your Xport in the XPORTS.DAT file. For a full, complete
      listing of all Galaxy 5 codes, unzip G5_STRUC.ZIP and read the
      G5_CODES.TXT file.
     
                                  Color Codes
                                 -------------
      Color codes can be used on the line in the XPORTS.DAT file that
      lists the name of your Xport, not on the command line for your
      Xport! Here is the format for color codes,
                                                ~BF~
                                                 Foreground color
                                                 Background color

       Background Colors                     Foreground Colors
      -------------------                   -------------------
       0 = Black                             0 = Black
       1 = Blue                              1 = Blue
       2 = Green                             2 = Green
       3 = Cyan                              3 = Cyan
       4 = Red                               4 = Red
       5 = Magenta                           5 = Magenta
       6 = Brown (dark yellow)               6 = Brown (dark yellow)
       7 = Light Gray                        7 = Light Gray
       8 = Black (blinks foreground)         8 = Dark Gray (light black)
       9 = Blue (blinks foreground)          9 = Light Blue
       A = Green (blinks foreground)         A = Light Green
       B = Cyan (blinks foreground)          B = Light Cyan
       C = Red (blinks foreground)           C = Light Red
       D = Magenta (blinks foreground)       D = Light Magenta
       E = Brown (blinks foreground)         E = Light Yellow
       F = Light Gray (blinks foreground)    F = White
     
                                USER VARIABLES
                               ----------------
      These codes can be used to pass caller information to your Xport
      in the XPORTS.DAT file. Each user variable contains a U as the
      first character, and the second character will be whatever you
      want passed to your Xport. Listed below are the user variables.

      ~U*~
       Fill this in with one of the characters below
       U (for user)

      E = Will be replaced with either TRUE or FALSE, for "Keep a log of
          errors?"
      I = Will be replaced by the IRQ number.
      C = Will be replaced by the COM port number.
      B = Contains the callers baud rate.
      F = Holds the users first name.
      L = Users last name.
      D = Full path and file name of DROPFILE.* file for this caller.
      P = Full path and file name of NODE*.DAT file for this caller.
      R = Full path and file name of DORINFO*.DEF file for this caller.
      N = Node number this caller is on.
     
      Here is an example using the user variables listed above. If I put
      this command line in the XPORTS.DAT file as the command line to be
      passed to my door,

      C:\DOORS\GALAXY5\XPORT.EXE ~UN~ ~UD~

      Then if a caller used the Xport from node 2, then the above
      example would be passed to my door looking like this,

      C:\DOORS\GALAXY5\XPORT.EXE 2 C:\DOORS\GALAXY5\TEMP\DROPFILE.2
     
      When a caller chooses to use an Xport from within the game, a file
      is created in the temp directory called XPORT*.BAT where * is the
      node number the caller is on. Galaxy 5 exits with an errorlevel of
      255. Then, in the G5.BAT file, it detects this errorlevel, and in
      turn, executes XPORT*.BAT. Then after XPORT*.BAT is done, Galaxy 5
      reloads, gathers how many minutes the caller was in the Xport, and
      subtracts those minutes from the callers time, so as to keep a
      proper balance in the callers time allowed in the door. Then the
      caller is returned back to the Xports menu, right where he/she
      left off. But you really needn't pay any attention to any of this
      to write an Xport, this is all done by Galaxy 5 with no help from
      you! :)
     

                                 END OF FILE 
