home *** CD-ROM | disk | FTP | other *** search
/ The Best of Select: Games 9 / CD_1.iso / tips / apogee / maped83.doc < prev    next >
Text File  |  1995-03-08  |  95KB  |  2,661 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.                                     MAPEDIT
  20.  
  21.                                   Version 8.3
  22.  
  23.                                   Map Editor
  24.                                       for
  25.  
  26.                             Wolf3D/Spear of Destiny
  27.                           Blake Stone: Aliens of Gold
  28.                           Blake Stone: Planet Strike
  29.                           Corridor 7: Alien Invasion
  30.                              Operation: Body Count
  31.                 -----------------------------------------------
  32.                  By Bryan Baker - David Huntoon - Warren Buss
  33.        
  34.  
  35.                     *****NOTICE*****NOTICE*****NOTICE*****
  36.  
  37.  
  38.        The Map Editor supports ONLY registered games of Wolfenstein(tm),
  39.        Spear of Destiny(tm), Blake Stone(tm), Corridor 7(tm), & Operation:
  40.        Body Count(tm). It will neither read nor write game maps intended
  41.        for use with a shareware game. If you have problems with any floors
  42.        produced using MAPEDIT, do NOT contact either Apogee Software's
  43.        Technical Support or Hints staff,  Id Software, FormGen Corp., JAM
  44.        Productions, or IntraCorp, Inc. (Capstone). They are not
  45.        responsible for this editor or its products. Nor do they support
  46.        them. Please contact one of the Mapedit authors if you have
  47.        problems with MAPEDIT.
  48.  
  49.        Also, if you produce floors that you place in the public domain, be
  50.        sure they carry a notice that users should not contact any of the
  51.        above named companies for help.
  52.  
  53.        It is not unusual for "home-grown" floor designs to cause problems
  54.        when played. That is, a game engine may produce an  error message
  55.        if it finds something in the floor that it doesn't like. Most
  56.        messages from any of these games urge the player to contact one of
  57.        the above companies and report the problem. IGNORE all such
  58.        messages and contact one of the authors of MAPEDIT if you receive
  59.        any of these error messages.
  60.  
  61.        To avoid most problems, test all your floor designs thoroughly at
  62.        all skill levels. If possible, have a friend test them also if you
  63.        intend to release your designs into the public domain.
  64.  
  65.        Your cooperation is essential for continued support and
  66.        availability of MAPEDIT. Thank you.
  67.  
  68.                                    ---------
  69.  
  70.        Wolfenstein & Spear of Destiny are trademarks of Id Software
  71.        Blake Stone is a trademark of Jam Productions and Apogee Software
  72.        Corridor 7 and Operation: Body Count are trademarks of IntraCorp.
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.                                      -ii-
  87.        
  88.                                  FREEWARE NOTICE
  89.  
  90.        This program is Freeware. No part of the MAPEDIT program or the
  91.        accompanying documentation may distributed for compensation (except
  92.        for a copying cost and the price of a disk). MAPEDIT may only be
  93.        distributed in its original form -- complete, intact, and
  94.        unaltered.
  95.  
  96.                               LIMITS OF LIABILITY
  97.  
  98.        The authors of Mapedit make no warranties, expressed or implied, as
  99.        to the quality or performance of this program. Your use of this
  100.        program constitutes your release of the authors from liability or
  101.        litigation for any indirect or consequential damages arising from
  102.        the use of the program or its associated files.
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139.  
  140.  
  141.  
  142.                                      -iii-
  143.        
  144.                             NOT ALL GAMES ARE EQUAL
  145.  
  146.        While all 6 games supported by Mapedit use the same basic engine,
  147.        due to alterations in design of the engine by some of the makers,
  148.        each game contains unique features which do not exist in the other
  149.        games of the same genre. Mapedit supports each game's unique
  150.        features but does not support them for the other games.
  151.  
  152.        Separate documents explain the unique features of each game. You
  153.        only need read the documents for the game you are interested in
  154.        editing.
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.                                      -iv-
  197.        
  198.                               *******************
  199.                                   QUICK START
  200.                               *******************
  201.  
  202.                 !!!  IMPORTANT  WARNING  !!!  IMPORTANT WARNING
  203.                 -----------------------------------------------
  204.                   Be sure you have backup copies of your map
  205.                          files prior to using MAPEDIT.
  206.                 -----------------------------------------------
  207.                 !!!  IMPORTANT  WARNING  !!!  IMPORTANT WARNING
  208.  
  209.        To use MapEdit, place all MAPEDIT associated files (see the
  210.        MANIFEST file) in a directory separate from where the game is you
  211.        want to edit. Edit the file named MAPEDIT.INI to supply the name
  212.        of the directory where the game is, or use the supplied SETUP
  213.        program to alter MAPEDIT.INI. Type MAPEDIT to start the editor.
  214.        When you are done editing, press the 'Q' key to Quit and follow the
  215.        prompt.
  216.  
  217.        A swap directory is required for temporary use during execution of
  218.        MAPEDIT. MAPEDIT will prompt you for a drive letter on which to
  219.        place this directory. Either an uncompressed drive that is being
  220.        cached or a RAM disk is recommended.  See the section below for
  221.        swap size requirements, optimization suggestions, and potential
  222.        clean-up problems.
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.                                       -v-
  253.        
  254.                                 Table of Contents
  255.  
  256.        NOTICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
  257.  
  258.        FREEWARE NOTICE. . . . . . . . . . . . . . . . . . . . . . . .iii
  259.  
  260.        LIMITS OF LIABILITY. . . . . . . . . . . . . . . . . . . . . .iii
  261.  
  262.        NOT ALL GAMES ARE EQUAL. . . . . . . . . . . . . . . . . . . . iv
  263.  
  264.        QUICK START. . . . . . . . . . . . . . . . . . . . . . . . . .  v
  265.  
  266.        BASIC MAPEDIT REQUIREMENTS . . . . . . . . . . . . . . . . . .  9
  267.             Data Definition Files . . . . . . . . . . . . . . . . . .  9
  268.             Game Files. . . . . . . . . . . . . . . . . . . . . . . .  9
  269.  
  270.        Mapedit Swap Space . . . . . . . . . . . . . . . . . . . . . . 10
  271.  
  272.        HOW MAPEDIT OPERATES . . . . . . . . . . . . . . . . . . . . . 11
  273.  
  274.        HELP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
  275.  
  276.        Semantics. . . . . . . . . . . . . . . . . . . . . . . . . . . 12
  277.  
  278.        Loading MAPEDIT. . . . . . . . . . . . . . . . . . . . . . . . 12
  279.  
  280.        Map & Legend Windows . . . . . . . . . . . . . . . . . . . . . 12
  281.  
  282.        Window Borders . . . . . . . . . . . . . . . . . . . . . . . . 13
  283.  
  284.        Selecting a Floor Map to Edit. . . . . . . . . . . . . . . . . 13
  285.  
  286.        Map Window Details . . . . . . . . . . . . . . . . . . . . . . 14
  287.  
  288.        Mouse Use in the Map Window. . . . . . . . . . . . . . . . . . 14
  289.  
  290.        Selecting a Definition For Either Mouse Button . . . . . . . . 14
  291.  
  292.        Inserting an Item on the Map . . . . . . . . . . . . . . . . . 14
  293.  
  294.        Erasing an Item from the Map . . . . . . . . . . . . . . . . . 15
  295.  
  296.        Changing Multiple Items of One Type. . . . . . . . . . . . . . 15
  297.  
  298.        Clearing the Map Window. . . . . . . . . . . . . . . . . . . . 15
  299.  
  300.        Drawing Mode - Rubber Banding. . . . . . . . . . . . . . . . . 15
  301.  
  302.        Drawing Mode - Freehand. . . . . . . . . . . . . . . . . . . . 16
  303.  
  304.        Grab (Copy) and Paste Function . . . . . . . . . . . . . . . . 16
  305.             Initiating the Grab . . . . . . . . . . . . . . . . . . . 17
  306.  
  307.                                      -vi-
  308.             
  309.             Initiating a Normal Paste Operation . . . . . . . . . . . 17
  310.             Rotate & Mirror Functions . . . . . . . . . . . . . . . . 17
  311.             Initiating a Paste & Exchange Operation . . . . . . . . . 18
  312.             Summarizing Control Keys. . . . . . . . . . . . . . . . . 18
  313.             Other Grab & Paste Notes. . . . . . . . . . . . . . . . . 18
  314.  
  315.        Viewing Objects Selectively. . . . . . . . . . . . . . . . . . 19
  316.  
  317.        Other Selective Viewing Option . . . . . . . . . . . . . . . . 19
  318.  
  319.        Legend Window. . . . . . . . . . . . . . . . . . . . . . . . . 19
  320.  
  321.        Hot-Keys, Scrolling Keys & Toggle Keys . . . . . . . . . . . . 21
  322.  
  323.        Hot-Keys . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
  324.             C Command (Clear Map Window). . . . . . . . . . . . . . . 21
  325.             D Command (Load New Map and Obj Definition Files) . . . . 21
  326.             E Command (Exchanging floors) . . . . . . . . . . . . . . 21
  327.             G Command (Goto Level). . . . . . . . . . . . . . . . . . 22
  328.             M Command (Memorize Present Map). . . . . . . . . . . . . 22
  329.             N Command (Change the Name of the Current Level). . . . . 22
  330.             Q Command (Quit Mapedit). . . . . . . . . . . . . . . . . 22
  331.             R Command (Read/Import a Floor File from Disk to
  332.                  Clipboard) . . . . . . . . . . . . . . . . . . . . . 22
  333.             W Command (Write the Current Floor to Hard Disk). . . . . 22
  334.             Z Command (Set/Zap) floorcodes within room. . . . . . . . 22
  335.             Alt+Z Command (Similar to 'Z' Command - see above). . . . 23
  336.             Ctrl+F10 Command - Clear Guards from Current Floor. . . . 23
  337.             Alt+F10 Command - Clear All Objects from Current Floor. . 23
  338.  
  339.        Toggle Keys. . . . . . . . . . . . . . . . . . . . . . . . . . 24
  340.             F Toggle (Toggle Floor data On and Off) . . . . . . . . . 24
  341.             H Toggle (Toggle Hex Mode on/off) . . . . . . . . . . . . 24
  342.             Alt+H Toggle (Toggle Item Hex Values On/Off). . . . . . . 24
  343.             L Toggle (Toggle LHV Display) - Blake Stone Only. . . . . 24
  344.             Alt+M Toggle (Toggle Map Data During Selective
  345.                  Viewing) . . . . . . . . . . . . . . . . . . . . . . 24
  346.             O Toggle (Toggle Object Data On/Off). . . . . . . . . . . 25
  347.             S Toggle (Toggle between Stats Display and Hot-key
  348.                  Display) . . . . . . . . . . . . . . . . . . . . . . 25
  349.             Alt+S Toggle (Display Count of Items in Legend Window). . 25
  350.             Spacebar Toggle (Toggle between Map and Object
  351.                  Legends) . . . . . . . . . . . . . . . . . . . . . . 25
  352.             Ctrl+Z Toggle (Toggle ZAP through Pushwalls on and
  353.                  off) . . . . . . . . . . . . . . . . . . . . . . . . 25
  354.  
  355.        Scrolling Keys . . . . . . . . . . . . . . . . . . . . . . . . 26
  356.  
  357.        Manipulating Maps. . . . . . . . . . . . . . . . . . . . . . . 27
  358.             E Command (Exchange Currently Displayed Floor With Floor
  359.                  Stored in Clipboard) . . . . . . . . . . . . . . . . 27
  360.             M Command (Copy/Memorize Floor to Clipboard). . . . . . . 27
  361.  
  362.                                      -vii-
  363.             
  364.             R Command (Read/Import a Floor from Hard Disk to the
  365.                  Clipboard) . . . . . . . . . . . . . . . . . . . . . 27
  366.             T Command (Transfer a Floor from Clipboard to Current
  367.                  Level) . . . . . . . . . . . . . . . . . . . . . . . 28
  368.             W Command (Write/Export the Current Floor to Hard
  369.                  Disk). . . . . . . . . . . . . . . . . . . . . . . . 28
  370.  
  371.        Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . 29
  372.  
  373.        MAPEDIT.INI file . . . . . . . . . . . . . . . . . . . . . . . 30
  374.  
  375.        Editing Features Unique to BLAKE STONE Games . . . . . . . . . 31
  376.  
  377.        Map Coordinates. . . . . . . . . . . . . . . . . . . . . . . . 31
  378.             Coordinates Vs. Objects . . . . . . . . . . . . . . . . . 31
  379.  
  380.        FEATURE IMPLEMENTATIONS. . . . . . . . . . . . . . . . . . . . 32
  381.             Food Units. . . . . . . . . . . . . . . . . . . . . . . . 32
  382.             Automatic Doors . . . . . . . . . . . . . . . . . . . . . 32
  383.             Door Linkages (Pointers). . . . . . . . . . . . . . . . . 33
  384.             Teleporters . . . . . . . . . . . . . . . . . . . . . . . 33
  385.             Barriers and Barrier Switches . . . . . . . . . . . . . . 33
  386.             Bio Tech Messages . . . . . . . . . . . . . . . . . . . . 34
  387.             Time Delays . . . . . . . . . . . . . . . . . . . . . . . 34
  388.             Ceiling and Floor Textures. . . . . . . . . . . . . . . . 35
  389.             Ceiling and Floor Colors. . . . . . . . . . . . . . . . . 35
  390.  
  391.        Using Multiple Push-Wall Codes . . . . . . . . . . . . . . . . 36
  392.  
  393.        Other Error Conditions . . . . . . . . . . . . . . . . . . . . 36
  394.  
  395.        Features Unique to BLAKE STONE: PLANET STRIKE. . . . . . . . . 37
  396.  
  397.        Format of the Data Definition Files. . . . . . . . . . . . . . 38
  398.  
  399.        Credits. . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
  400.  
  401.        Version History. . . . . . . . . . . . . . . . . . . . . . . . 48
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.  
  415.  
  416.  
  417.                                     -viii-
  418.        
  419.        BASIC MAPEDIT REQUIREMENTS
  420.  
  421.        6 files (1 is optional) plus some temporary disk space for swapping
  422.        data, are required for MAPEDIT to operate. All files except 2 game
  423.        files must reside in the same directory. If you place the MAPEDIT
  424.        files in other than the game's directory you will need to tell
  425.        MAPEDIT where the game's files are located. Use the optional
  426.        MAPEDIT.INI file for this.
  427.  
  428.        MAPEDIT.EXE (map editor program)
  429.  
  430.        Data Definition Files
  431.  
  432.        MAPDATA.xxx + OBJDATA.xxx (default extensions are the same as
  433.                                   the game files)
  434.        The above 2 files are used to equate the numeric codes within
  435.        the game's Map files to graphic symbols for MAPEDIT to display in
  436.        the Map window. You may modify either data file if you choose.
  437.        See page 31 for an explanation of the codes in these files.
  438.  
  439.        MAPEDIT.INI (Optional file)
  440.  
  441.        Game Files
  442.  
  443.        There are 2 game files that contain the maps and pointers to all
  444.        the game's existing levels. The names are listed below. Be sure you
  445.        save copies of the original files BEFORE you use the editor the
  446.        first time as MAPEDIT reads and modifies these files.
  447.  
  448.        WOLF3D & Spear of Destiny
  449.  
  450.        MAPHEAD.xxx + GAMEMAPS.xxx
  451.        (xxx = WL3 or WL6 for WOLF3D)
  452.        (xxx = SOD for Spear of Destiny)
  453.  
  454.        Blake Stone: Aliens of Gold
  455.  
  456.        MAPHEAD.xxx + MAPTEMP.xxx
  457.        (xxx=BS6 for Aliens of Gold)
  458.        (xxx=VSI for Planet Strike)
  459.  
  460.        Corridor 7: Alien Invasion
  461.  
  462.        MAPTEMP.CO7 -- MAPHEAD data integrated into .EXE file
  463.  
  464.        Operation: Body Count
  465.  
  466.        MAPHEAD.BC + MAPTEMP.BC
  467.  
  468.  
  469.  
  470.  
  471.                                       -9-
  472.        
  473.        Mapedit Swap Space
  474.  
  475.        MAPEDIT requires temporary disk space to be available for a "swap
  476.        directory".  You will be prompted for a drive letter to use for
  477.        this swap space when you start Mapedit. (If you designate the drive
  478.        letter in the optional MAPEDIT.INI file, you will not be prompted).
  479.  
  480.        If you're using a hard disk cache program such as SMARTDRV, for
  481.        example, then using an uncompressed drive will do very nicely. If
  482.        not, a RAM drive is a suitable alternative for this purpose. You
  483.        might want to try both to see which works best for you.
  484.  
  485.        A subdirectory named MAPSWAP.DIR will be created on whatever drive
  486.        you specify. Assuming MAPEDIT terminates normally, this directory
  487.        and all its contents will be deleted automatically. If for any
  488.        reason MAPEDIT aborts, it will still attempt to delete the
  489.        MAPSWAP.DIR directory and all its files. If unsuccessful, you will
  490.        have to manually remove all files within the directory, then remove
  491.        the directory from the drive you specified. The DOS command DELTREE
  492.        that is available with DOS Version 6 is an excellent tool for this.
  493.  
  494.        The amount of disk space required in the subdirectory depends on
  495.        the complexity of the maps, and will vary as you make edits.  A
  496.        good rule of thumb is to have at least twice as much space
  497.        available as the size of the original GAMEMAPS.xxx (or MAPTEMP.xxx)
  498.        file.  (This usually will be about 600k to 700k bytes.)
  499.  
  500.        When MAPEDIT is first started, all of the levels are read from the
  501.        GAMEMAPS/MAPTEMP file into the swap disk.  In addition, as you
  502.        scroll through the levels using the up and down arrow keys, levels
  503.        are swapped to and from disk.  Due to the inherent I/O time, it is
  504.        recommended you set up a RAM disk, and use a subdirectory there as
  505.        the swap dir.  This will eliminate disk access except for the
  506.        initial reading of the GAMEMAPS/MAPTEMP file as well as saving the
  507.        edited version upon quitting MAPEDIT.
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.  
  525.  
  526.                                      -10-
  527.        
  528.        HOW MAPEDIT OPERATES
  529.  
  530.        Each of the 6 games that Mapedit processes provide 2 types of game
  531.        data that consist of all the floor maps in a game and pointers to
  532.        each floor in the map file. With the exception of Corridor 7, this
  533.        data resides in 2 separate files. Mapedit reads these files (the
  534.        pointer file first), and writes the maps as individual floor files
  535.        to temporary disk storage where they are accessible to MAPEDIT
  536.        during editing .
  537.  
  538.        Game Map Pointer files for five of the six games have the name
  539.        MAPHEAD. (The Maphead data for Corridor 7 is contained within the
  540.        main .EXE file of Corridor 7, but this will be largely transparent
  541.        to the user).
  542.  
  543.        The actual Game Map files are named GAMEMAPS for both WOLF3D and
  544.        SoD. The Game Map file for the other games is named MAPTEMP.
  545.  
  546.        During editing, floors can be exchanged with one another, or
  547.        replaced with other imported floors. Individual floors can also be
  548.        written (exported) to the hard disk using the 'W' (Write) command -
  549.        this is a COPY operation as the original floor being exported is
  550.        not erased. When a copy of a floor is exported to hard disk it
  551.        becomes independent of the original map file. It cannot be edited
  552.        or viewed again until it is imported to an existing game map file.
  553.  
  554.        Existing floors can be imported to a Clipboard in MAPEDIT using the
  555.        'R' (Read) command for placement on any existing level within the
  556.        game being edited. From the Clipboard the floor must be Transferred
  557.        to some desired level before it can be viewed and edited. This
  558.        causes the original floor on the target level to be overlaid.
  559.  
  560.        When you finish editing and are ready to quit MAPEDIT, you will be
  561.        prompted for whether you want to save any changes made during the
  562.        edit operation. If you reply YES, all floors on all levels are
  563.        rewritten to the game's map file. This replaces the original copy
  564.        of the map file on disk.
  565.  
  566.        Saving is not the same as writing (exporting) individual floors;
  567.        Saving saves all floors into one file; Writing creates a single
  568.        file consisting of one floor only.
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.                                      -11-
  582.        
  583.        HELP
  584.  
  585.        Help while running MAPEDIT is available online by pressing either
  586.        F1, F2, or F3. F1 provides help with the keyboard. F2 displays help
  587.        with the mouse. And F3 is used to give help for the Large Hex
  588.        Values used in Blake Stone editing.
  589.  
  590.        Semantics
  591.  
  592.        For most, the terms LEVEL and FLOOR mean the same thing. However,
  593.        for this document they have distinctly different meanings. A LEVEL
  594.        is a fixed position within an episode or entire game. A FLOOR is a
  595.        unique map that resides in some LEVEL, but can be moved to another
  596.        LEVEL or written to disk for safe-keeping. Every LEVEL must contain
  597.        a FLOOR -- there are no "empty "LEVELS", only empty FLOORS. Each
  598.        LEVEL has a unique name. Within the structure of MAPEDIT it is also
  599.        assigned a unique number. BSTONE levels number from 0; WOLF3D and
  600.        SoD levels start with number 1. Planet Strike levels number from 0.
  601.        Corridor 7 and Body Count each start with level 1.
  602.  
  603.        Loading MAPEDIT
  604.  
  605.        Upon loading MAPEDIT (by typing MAPEDIT on the DOS command line),
  606.        you will see a string of messages at the top of the screen which
  607.        will list all the map floors that are being loaded into the swap
  608.        drive. When this is complete, the screen will display the 1st floor
  609.        in the first episode/mission (level #1 in all 6 games).
  610.  
  611.        Map & Legend Windows
  612.  
  613.        The Map window occupies most of the screen. To the right of the map
  614.        is a Legend window. The legend shows the first screen full of
  615.        Mapdata definitions which have been read from the MAPDATA.xxx file.
  616.        The Objdata definition legend can be toggled onto the screen by
  617.        pressing the SpaceBar. Depending on whether you are viewing Map
  618.        data or Object data, you will be in either Map Mode or Object Mode.
  619.        In Map mode, only map items are selectable; in Object mode, only
  620.        object items.
  621.  
  622.        Underneath the Legend window is a small area that lists some Hot-
  623.        keys that you can press to initiate several different functions.
  624.        These are all discussed below in detail. The complete list of hot-
  625.        keys are also available in help screens by pressing F1 or F2.
  626.  
  627.        Depending on where the mouse pointer is located, there are several
  628.        fields of information available directly under the Map Window. If
  629.        the mouse pointer is within the Map Window, the information below
  630.        it consists of 4 fields of information. (Note: if the mouse pointer
  631.        fails to appear in the Map window, press L-shift+R-shift to force
  632.        it on.) On the left are the data definitions currently assigned to
  633.        both the left and right mouse.
  634.  
  635.  
  636.                                      -12-
  637.        
  638.        To the right is the location (in decimal) of where the mouse
  639.        pointer is in the Map window. These are column:row (or x:y)
  640.        coordinates. To the right of the coordinates is the word "MAP:"
  641.        followed by the name of the map item where the mouse is pointing.
  642.  
  643.        Directly underneath are optionally the same map coordinates, but in
  644.        hex this time - this hex value can be toggled on and off. Following
  645.        the optional hex coordinates is the word "OBJ:" followed by the
  646.        name of the object item where the mouse is pointing. (It is common
  647.        to have both an object and a map code exist at the same
  648.        coordinate). NOTE: By pressing ALT+H, the words MAP: and  OBJ: will
  649.        be toggled off and be replaced by the codes of the items being
  650.        pointed at by the mouse. Pressing ALT+H again will cause the words
  651.        MAP: and OBJ: to reappear. The default for this can be controlled
  652.        by a variable in the optional MAPEDIT.INI file.
  653.  
  654.        When the mouse pointer is outside the Map Window the coordinate
  655.        lines are replaced by 2 lines of different information. The top
  656.        line will indicate whether you are in Map Mode or Object Mode. The
  657.        line underneath will display the number and name of the level you
  658.        are currently viewing.
  659.  
  660.        Window Borders
  661.  
  662.        Both Map and Legend windows are enclosed within colored border
  663.        lines.
  664.  
  665.        GREY Border:   Mapedit is ready to accept any command.
  666.        BLUE Border:   Mapedit is busy and won't accept commands.
  667.        RED Border:    Mapedit won't permit changes in the map Window.
  668.        YELLOW Border: Mapedit expects a response.
  669.        GREEN Border:  Mapedit is processing a Grab-and-Paste request.
  670.  
  671.        Selecting a Floor Map to Edit
  672.  
  673.        Starting MAPEDIT with a numeric command line parameter will let you
  674.        start editing at that level. For example, MAPEDIT 15 will load
  675.        MAPEDIT and cause level 15 to be displayed.
  676.  
  677.        After MAPEDIT is loaded you can use the Pgup/Pgdn keys to scroll
  678.        sequentially through the map levels until you locate the floor you
  679.        want to edit. When you reach the end of the available map levels,
  680.        the display will wrap around to the 1st/last map of the game
  681.        (depending on which direction you were scrolling).
  682.  
  683.        To select any level without scrolling sequentially, use the "G"
  684.        (GoTo) hot-key to display a list of all the level numbers and names
  685.        in the Legend Window. Use the INS/DEL keys to single-line scroll or
  686.        up/down arrow keys to page scroll through the list for the level
  687.        you want, then move the mouse pointer to the selected level and
  688.        click on the left mouse button.
  689.  
  690.  
  691.                                      -13-
  692.        
  693.        Map Window Details
  694.  
  695.        A floor map is 64 by 64 squares (or cells), and as stated above,
  696.        the map consists of 2 basic ingredients: Map data (floors, walls,
  697.        and doors), and Object data (everything else). Both can be
  698.        displayed independently or all at once. Also, Objects can be
  699.        displayed selectively instead of all at once. Object data is
  700.        further defined as being either Static (it doesn't move), or Active
  701.        (it does move). Active objects are mostly the actors (guards), but
  702.        there are a few other objects that are classed as Actives (Blake
  703.        Stone games only). See BSTONE.DOC for a complete discussion of
  704.        Active Objects and their effect on play.
  705.  
  706.        By default, the floor codes are not visible when the editor is
  707.        first loaded. (The default can be changed by use of the optional
  708.        MAPEDIT.INI file - see below). In order to see them, you press the
  709.        'F' hot-key which will toggle them on the screen. Since floor codes
  710.        and object codes often exist together, you may want to turn off the
  711.        object codes when viewing the floor codes. You can toggle them off
  712.        by pressing the 'O' hot-key. (Walls and doors normally remain
  713.        visible on the screen). Everything in the Map window is manipulated
  714.        using the mouse.
  715.  
  716.        NOTE: From time-to-time, the Map Window will be redrawn on the
  717.        screen. If you do something that causes the redraw to stop before
  718.        it is complete, do not panic. Just press Pgup followed by Pgdn and
  719.        this time let it finish redrawing before proceeding.
  720.  
  721.        Mouse Use in the Map Window
  722.  
  723.        Since there are at least 2 buttons on every mouse, you can use the
  724.        left and right buttons to hold 2 different Map item codes or 2
  725.        different Object item codes, depending on the Legend mode you are
  726.        currently in - Object or Map. Both button values are displayed in
  727.        the lower left corner of the screen under the Map Window.
  728.  
  729.        Selecting a Definition For Either Mouse Button
  730.  
  731.        There are 2 ways to select a data definition for a mouse button.
  732.        You can either move the mouse over to the Legend window and point
  733.        to the symbol you want to select and push a mouse button, or you
  734.        can point to an object or map symbol in the Map window, hold down
  735.        a Shift key and click a mouse button to pick up the desired item.
  736.        (Using this latter method will cause the Legend window to be
  737.        repositioned with the selected item displayed in the window).
  738.  
  739.        Inserting an Item on the Map
  740.  
  741.        After assigning an item to either mouse button, move the mouse to
  742.        the location on the map where you want the item to be inserted and
  743.        click the appropriate mouse button to place the item on the map.
  744.  
  745.  
  746.                                      -14-
  747.        
  748.        This has the effect of erasing any object currently at the chosen
  749.        location and inserting a new one in its place.
  750.  
  751.        Erasing an Item from the Map
  752.  
  753.        To erase (remove) an item anywhere on the map, select the
  754.        appropriate Legend Mode (Map or Object) and do the following. If
  755.        the item is Object Data, select the item marked "Nothing" at the
  756.        top of the Object Legend Window, then move the mouse over to the
  757.        item in the Map Window you want to erase and click on the mouse
  758.        button that has "Nothing" assigned to it. (This works for LHV
  759.        object items in BLAKE STONE too). If you want to remove a Map Data
  760.        item (wall, door, or floor code), you must replace it with another
  761.        wall, door, or floor code. Remember, every cell on the map must
  762.        have a Map Data item on it.
  763.  
  764.        Changing Multiple Items of One Type
  765.  
  766.        If there are multiple items of a single type that you would like to
  767.        change all at once, assign the replacement item (object or map) to
  768.        a mouse button, then position the mouse over one of the items to be
  769.        replaced in the Map window. While holding down both the Alt and
  770.        Ctrl keys simultaneously, click on the selected mouse button.
  771.  
  772.        Clearing the Map Window
  773.  
  774.        When starting a fresh design, it is often desireable to start with
  775.        a clear Map window. You do this by assigning a floor OR wall code
  776.        from the mapdata Legend window to the left mouse button. Then you
  777.        move the mouse to any spot in the map window and press the 'C' key.
  778.        Before anything happens you will be prompted to be sure you want
  779.        the entire floor to be cleared. The entire window will be filled
  780.        with the selected floor or wall code, thus erasing everything that
  781.        was previously there. There will also be 4 perimeter walls visible.
  782.        To view the floor codes, toggle the floor codes on.
  783.  
  784.        Selective Clearing of Objects
  785.  
  786.        You can selectively clear out all objects from an existing floor or
  787.        just the guards, leaving the other objects untouched. To clear out
  788.        all objects press Alt+F10. A message will be displayed asking you
  789.        to confirm your request. You reply either 'Y' or 'N'. Clearing only
  790.        the guards out of a floor is done by using Ctrl+F10. Again you will
  791.        be asked to confirm your request.
  792.  
  793.        Drawing Mode - Rubber Banding
  794.  
  795.        You can use the mouse to draw rectangles of map data types. This is
  796.        especially useful when creating a new map. Start by selecting a Map
  797.        data item (floor or wall) with either mouse button. Move the mouse
  798.        to where you want a corner of the rectangle to be. While holding
  799.  
  800.  
  801.                                      -15-
  802.        
  803.        the mouse button, move the mouse either right or left in the
  804.        direction you want the rectangle to appear, then up or down to open
  805.        the rectangle. Release the mouse button when you are done. You can
  806.        draw odd shapes by simply adding on to a previous rectangle. Or you
  807.        can use Freehand drawing (see below).
  808.  
  809.        NOTE: Previously placed objects will remain in their original
  810.        positions, so be careful not to end up with guards embedded in
  811.        walls.
  812.  
  813.        The mouse can also be used to draw straight lines of map data that
  814.        you want replicated. Just select the item with either mouse button.
  815.        Position the mouse in the Map window where you want to start
  816.        replicating the item and hold the appropriate button down while
  817.        dragging the mouse vertically or horizontally.
  818.  
  819.        Drawing Mode - Freehand
  820.  
  821.        The mouse can also be used to draw figures in the Map window in
  822.        freehand. To go into freehand mode (map data only) you must press
  823.        Alt+R to toggle from "rubber-banding" mode to freehand mode. The
  824.        initial toggle setting is controlled by a variable in the
  825.        MAPEDIT.INI file. By default, "rubber-band" mode is on unless you
  826.        override it.
  827.  
  828.        To draw freehand, select any item (wall or object) with either
  829.        mouse button and position the mouse in the Map window where you
  830.        want to start drawing. Hold down the appropriate mouse button and
  831.        drag the mouse in any direction. Release the mouse button when
  832.        you're finished.
  833.  
  834.        NOTE: Whether drawing in Rubber Banding mode or Freehand mode, in
  835.        the case of Blake Stone, you cannot draw map data types such as
  836.        Food Units, Plasma generators, or anything that requires an LHV
  837.        input.
  838.  
  839.        Grab (Copy) and Paste Function
  840.  
  841.        This powerful feature permits you to define any rectangular area of
  842.        the current floor and grab it for the purpose of copying it to
  843.        another area of the same floor or any other floor. The contents of
  844.        an area to be copied remain unchanged.
  845.  
  846.        When an area of the floor is defined and grabbed, it is copied to
  847.        a special buffer in memory called the "Grab" buffer. The buffer
  848.        area is NOT the same as the Clipboard area and the two should not
  849.        be confused.
  850.  
  851.        Before "pasting" the contents of the "Grab" buffer somewhere, you
  852.        will have the option of rotating the buffer in 90 degree increments
  853.        and/or flipping the buffer to produce a mirror image of the
  854.  
  855.  
  856.                                      -16-
  857.        
  858.        original area. Rotating and Mirroring will produce a total of 8
  859.        possible orientations of the original area.
  860.  
  861.        Initiating the Grab
  862.  
  863.        To define the rectangular area to be copied, position the mouse
  864.        pointer at the upper left corner (cell) of the area. Press Ctrl+C.
  865.        The border of the Map window will turn green and a single cell
  866.        rectangle will appear on the map. Dragging the mouse down and to
  867.        the right causes the rectangle to grow and shrink. After you have
  868.        outlined the area you want to grab, click on either mouse button.
  869.        You will now be returned to normal operation and the border lines
  870.        will turn grey again.
  871.  
  872.        At this point you are free to continue editing or GoTo a different
  873.        level. The Grab buffer contents will stay intact until you replace
  874.        them.
  875.  
  876.        Initiating a Normal Paste Operation
  877.  
  878.        The normal Paste operation is started by pressing Ctrl+V. This will
  879.        cause a rectangle the size of the area previously grabbed to
  880.        appear. For a normal Paste operation the rectangle will be white.
  881.  
  882.        Move the mouse around the screen to position it over the area where
  883.        you want to paste the Grab Buffer contents. As you move the
  884.        rectangle around, the coordinates of the upper left corner will be
  885.        displayed below the Map window.
  886.  
  887.        Now you have 2 choices. You can either paste both map and object
  888.        data from the grab buffer by pressing the left mouse button, or you
  889.        can paste only the map data, thus eliminating all the old object
  890.        data, by pressing the right mouse button. This completes the normal
  891.        Paste operation. The contents of the Grab Buffer remain unchanged.
  892.  
  893.        Rotate & Mirror Functions
  894.  
  895.        Before completing the Paste operation as described in the previous
  896.        paragraphs, you can opt to rotate the original image and/or "flip"
  897.        it over to produce a mirror image. There is an indicator that is
  898.        initially in the upper left corner of the rectangle. By pressing
  899.        the 'r' (or 'R') key the rectangular box will rotate clockwise 90
  900.        degrees for each press of the key. Pressing 'm' (or 'M') will
  901.        result in a mirror image of the grabbed area. The mirroring will be
  902.        about the vertical axis of the original area. As mentioned earlier,
  903.        Rotation and Mirroring can be combined. Whether you use either
  904.        function or not, the contents of the grab buffer remain unchanged.
  905.  
  906.        NOTE: After applying either Rotation or Mirroring, if you Paste the
  907.        image with the left mouse button (which copies both Object and Map
  908.        data), it is highly possible that objects such as guards and LHV's
  909.        will no longer be oriented correctly. This problem can be bypassed
  910.  
  911.                                      -17-
  912.        
  913.        by using the right mouse button to Paste so as to place only the
  914.        Map data in the new location.
  915.  
  916.        Initiating a Paste & Exchange Operation
  917.  
  918.        The difference between a normal Paste operation and a Paste &
  919.        Exchange operation is that in the latter operation, the content of
  920.        the Grab Buffer is exchanged with the area being Pasted into rather
  921.        than remaining unchanged as in the Normal Paste operation. A Paste
  922.        & Exchange is initiated using Ctrl+B. The rectangle is colored red
  923.        instead of white. The rest of the operation is the same as a normal
  924.        Paste.
  925.  
  926.        Summarizing Control Keys
  927.  
  928.        Ctrl+C   - Initiate a Grab Operation
  929.        Ctrl+V   - Normal Paste from Grab Buffer
  930.        Ctrl+B   - Paste & Exchange with Grab Buffer
  931.        R        - (After Ctrl+V or Ctrl+B) to rotate original image
  932.        M        - (After Ctrl+V or Ctrl+B) to mirror original image
  933.  
  934.        Other Grab & Paste Notes
  935.  
  936.        You can abort Grab & Paste at any time by pressing the Esc key.
  937.  
  938.        The Grab buffer cannot be written to a disk file. Its contents will
  939.        be lost when you quit MAPEDIT.
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.                                      -18-
  957.        
  958.        Viewing Objects Selectively
  959.  
  960.        The following is a list of keys you can use to selectively display
  961.        various objects in the Map window.
  962.  
  963.        Key     Function
  964.          1  -  Display only Level 1 enemies
  965.          2  -  Display only treasure and One-ups
  966.          3  -  Display only Level 3 enemies
  967.          4  -  Display only Level 4 enemies
  968.          5  -  Display only Super Bosses
  969.          6  -  Display only Ammo, Weapons, Food, First Aid, and One-ups
  970.          #  -  Display only Level 1 and 3 enemies
  971.          $  -  Display only Level 1, 3, and 4 enemies
  972.          %  -  Display only enemies (all skill levels)
  973.          A  -  Display All Objects
  974.  
  975.        Other Selective Viewing Option
  976.  
  977.        You can click on the left mouse button while holding down the Ctrl
  978.        key (Ctrl+click) to selectively display any map data or object
  979.        data. You select the item(s) to be displayed by either pointing the
  980.        mouse at them in the Map Window or in the Legend Window. The item
  981.        displayed will depend on which Legend Mode you are currently in. If
  982.        you are displaying selected Objects and you prefer not to have the
  983.        map data visible, you can use the ALT+M hot-key to toggle off all
  984.        map data. (The default for this toggle can be set up in the
  985.        MAPEDIT.INI file).  Use the "A" key to restore the full display.
  986.  
  987.        Legend Window
  988.  
  989.        To change Legend Modes, press the Space Bar (or middle mouse button
  990.        if you have a 3-button mouse). To scroll vertically, use the
  991.        up/down arrow keys. Use the Home and End keys to get to the top and
  992.        bottom respectively. Use the INS (up), DEL (down) keys to scroll
  993.        vertically one line at a time. (Please note that the INS key cannot
  994.        be held down for repeated use). Use the left/right arrows to scroll
  995.        horizontally. Hold down the Ctrl key with the left/right arrows to
  996.        scroll horizontally 10 columns at a time. Pressing HOME, END, or
  997.        Space will return the window to the far left. As you toggle back
  998.        and forth between Legend modes, the legend will always remain where
  999.        you last used it.
  1000.  
  1001.        You can also use the mouse to scroll the Legend vertically. Place
  1002.        the mouse pointer on either the UP or DOWN box under the window and
  1003.        press the left mouse button to Page the Legend up or down. Use the
  1004.        right mouse button to scroll the Legend one line at a time.
  1005.  
  1006.        After each guard/enemy displayed in the Object Legend window is a
  1007.        3 or 4 character description that specifies what level the actor
  1008.        is, whether he is moving or stationary, and what direction he is
  1009.  
  1010.  
  1011.                                      -19-
  1012.        
  1013.        facing or walking. For example, "1/S/E" means a level 1 actor,
  1014.        stationary, facing east.
  1015.  
  1016.        NOTE: In Blake Stone some Perscan Drones use an "SM" designation.
  1017.        This means they start out stationary, but when alerted will start
  1018.        to move.
  1019.  
  1020.        At the bottom of the Legend window are four boxes (buttons) which
  1021.        you can point at with the mouse to select the other Legend window
  1022.        or to scroll up and down the current window. The button labeled
  1023.        XTRA, which means EXTRA, is displayed only when editing Blake Stone
  1024.        floors. It provides access to some additional editing features
  1025.        which will be described later.
  1026.  
  1027.  
  1028.  
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034.  
  1035.  
  1036.  
  1037.  
  1038.  
  1039.  
  1040.  
  1041.  
  1042.  
  1043.  
  1044.  
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065.  
  1066.                                      -20-
  1067.        
  1068.        Hot-Keys, Scrolling Keys & Toggle Keys
  1069.  
  1070.        MAPEDIT uses keys to initiate commands, to toggle various
  1071.        functions, and to control scrolling. Some of these have been
  1072.        mentioned earlier, but are described more completely below.
  1073.        Brief help is available by pressing F1.
  1074.  
  1075.        Hot-Keys
  1076.  
  1077.             C  - Clear Map Window
  1078.             D  - Load new map/obj data definition files
  1079.             E  - Exchange clipboard map with current map
  1080.             G  - Goto level
  1081.             M  - Memorize present map to clipboard
  1082.             N  - Change the name of the current level
  1083.             Q  - Quit (you will be prompted to save)
  1084.             R  - Read/Import a floor file from disk into clipboard
  1085.             T  - Transfer clipboard map into current level
  1086.             W  - Write/Export present map to a floor file on disk
  1087.             Z  - Set (Zap) all floorcodes within room to selected left
  1088.                  mouse button code except "deaf guard" codes (plus
  1089.                  guard block & autodoor codes in Blake Stone only)
  1090.                  See Ctrl+Z toggle below for other ZAPping implications.
  1091.         Alt+Z  - Same as 'Z' except all floor codes are "zapped"
  1092.         Ctrl+F10 - Clear all guards from current floor
  1093.         Alt+F10  - Clear all objects (including guards) from floor
  1094.  
  1095.        C Command (Clear Map Window)
  1096.  
  1097.        Start by selecting a floor or wall code with the left mouse button.
  1098.        Move the mouse pointer to the Map Window and press the 'C' key. You
  1099.        will be prompted to reply 'Y' or 'N' to okay or disapprove the
  1100.        request to clear before anything happens. The result of replying
  1101.        'Y' will be the entire window set to the selected floor or wall
  1102.        code except for the 4 perimeter walls which will be set to the
  1103.        default wall type. All previous object, wall, and floor data in the
  1104.        map window will be erased. Replying with anything other than 'Y' or
  1105.        'N' will be ignored.
  1106.  
  1107.        D Command (Load New Map and Obj Definition Files)
  1108.  
  1109.        After pressing the 'D' key you will be prompted for a new data
  1110.        definition file extension (up to 3 characters). If you change your
  1111.        mind, press the Esc key to return to editing. After entering the
  1112.        extension, both new Map and Obj files will be loaded and the Map
  1113.        Window redrawn to display the result.
  1114.  
  1115.        E Command (Exchanging floors)
  1116.  
  1117.        See section below entitled "Manipulating Maps".
  1118.  
  1119.  
  1120.  
  1121.                                      -21-
  1122.        
  1123.        G Command (Goto Level)
  1124.  
  1125.        Pressing the 'G' key will produce a list of all level numbers and
  1126.        level names in the area of the Legend Window. Use the up/down arrow
  1127.        keys to page through the list, or INS/DEL to move a line at a time.
  1128.        Move the mouse pointer to select a level then click the left mouse
  1129.        button to cause the selected level to be displayed.
  1130.  
  1131.        M Command (Memorize Present Map)
  1132.  
  1133.        See section below entitled "Manipulating Maps"
  1134.  
  1135.        N Command (Change the Name of the Current Level)
  1136.  
  1137.        Use the 'N' command to assign a different name to the current
  1138.        level. The name of the current level is displayed beneath the Map
  1139.        Window when the mouse pointer is outside the window. When you press
  1140.        the 'N' key, you will be prompted for a new name - up to 16
  1141.        characters. It may consist of any numeric or alphabetic characters
  1142.        as well as spaces, period (.), underscore (_), or dash (-). Note
  1143.        that this name will not be preserved in a floor file written with
  1144.        the 'W' command. The name is associated with the level where it
  1145.        appears regardless of what floor map fills that position. The name
  1146.        will be saved in the .WL6, .SOD, or .BS6 game map file.
  1147.  
  1148.        Q Command (Quit Mapedit)
  1149.  
  1150.        Use the 'Q' command to end the current edit session. You will be
  1151.        prompted to save all the floors or not. Replying 'N' will cause all
  1152.        editing changes to be lost. Replying 'Y' will cause all floor files
  1153.        that are in the Swap Directory to be saved in the Game Map file,
  1154.        which will replace the original file. If you change your mind about
  1155.        ending the edit session, press the Esc key.
  1156.  
  1157.        R Command (Read/Import a Floor File from Disk to Clipboard)
  1158.  
  1159.        See section below entitled "Manipulating Maps"
  1160.  
  1161.        T Command (Transfer Clipboard Map Into Current Level)
  1162.  
  1163.        See the section below entitled "Manipulating Maps".
  1164.  
  1165.        W Command (Write the Current Floor to Hard Disk)
  1166.  
  1167.        See the section below entitled "Manipulating Maps".
  1168.  
  1169.        Z Command (Set/Zap) floorcodes within room
  1170.  
  1171.        Use the 'Z' command to "Zap" all floor codes in an enclosed area to
  1172.        a new floor code which has been selected using the LEFT mouse
  1173.        button. All floor codes except "deaf guard" codes will be replaced
  1174.        within the enclosed area with the selected floor code. After
  1175.  
  1176.                                      -22-
  1177.        
  1178.        selecting a new floor code, move the mouse pointer to the enclosed
  1179.        target area and press the 'Z' key.
  1180.  
  1181.        NOTE to Blake Stone designers: The ZAP command will not replace
  1182.        guard block codes or autodoor hot-spot codes. Either of these codes
  1183.        will constrain the ZAP if they extend from wall to wall. Also any
  1184.        floor codes enclosed by blocking codes or autodoor codes will not
  1185.        be replaced if the ZAP is initiated outside the enclosed area.
  1186.  
  1187.        Alt+Z Command (Similar to 'Z' Command - see above)
  1188.  
  1189.        Use the Alt+Z command to replace/zap all floor codes in an enclosed
  1190.        area including "deaf guard" codes (as well as guard block codes &
  1191.        autodoor codes in Blake Stone).
  1192.  
  1193.        Ctrl+F10 Command - Clear Guards from Current Floor
  1194.  
  1195.        This command can be quite useful for WOLF3D and SoD designers who
  1196.        will want to walk through an entire floor to check on everything
  1197.        without having to deal with all the guards. IMPORTANT: Before using
  1198.        this command, be sure to save the floor to disk using the Write
  1199.        command so it can be restored later with all the guards back where
  1200.        they belong. NOTE: Blake Stone designers can make Stone invisible
  1201.        in Debug mode to accomplish the same thing without having to clear
  1202.        out all the guards.
  1203.  
  1204.        Alt+F10 Command - Clear All Objects from Current Floor
  1205.  
  1206.        Similar to Ctrl+F10 command except that all objects including
  1207.        guards are cleared from the current floor. Walls, floors, and doors
  1208.        remain untouched, as well as Pushwall object codes.
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.                                      -23-
  1232.        
  1233.        Toggle Keys
  1234.  
  1235.             F - Toggle floor codes display on/off
  1236.             H - Toggle HEX mode on/off
  1237.         Alt+H - Toggle MAP:/OJB: with data values below map window
  1238.             L - Toggle LHV display (Bstone only)
  1239.         Alt+M - Toggle Mapdata on/off when viewing selected objects
  1240.             O - Toggle objects on/off
  1241.         Alt+R - Toggle Drawing Mode (Rubber-band/Freehand)
  1242.             S - Toggle between Statistics and Hot-Key display
  1243.         Alt+S - Display count of items in Legend Window
  1244.        <Space>- Toggles between object and map legends
  1245.                 Middle mouse button does the same thing
  1246.        Ctrl+Z - Toggle ZAP-through-Pushwall on/off
  1247.  
  1248.        NOTE: Initial "toggle" settings are controlled by MAPEDIT.INI file.
  1249.  
  1250.        F Toggle (Toggle Floor data On and Off)
  1251.  
  1252.        Pressing the 'F' key will toggle the floor code display on and off
  1253.        in the Map Window. The default setting is set by MAPEDIT.INI.
  1254.  
  1255.        H Toggle (Toggle Hex Mode on/off)
  1256.  
  1257.        Use the 'H' key to cause map coordinates to be displayed in both
  1258.        decimal and hex below the Map Window or to toggle off the hex
  1259.        values. The default setting for this is controlled by can the
  1260.        MAPEDIT.INI file. For Blake Stone only, the LHV's are also toggled
  1261.        between HEX and DECIMAL. All other object codes are always
  1262.        displayed in hex.
  1263.  
  1264.        Alt+H Toggle (Toggle Item Hex Values On/Off)
  1265.  
  1266.        This key combination causes the words MAP: and OBJ: underneath the
  1267.        Map Window to be replaced with the hex values of the data items
  1268.        being pointed at by the mouse. Pressing Alt+H again toggles the
  1269.        words MAP: and OBJ: on again. The default setting for this is
  1270.        controlled by the MAPEDIT.INI file.
  1271.  
  1272.        L Toggle (Toggle LHV Display) - Blake Stone Only
  1273.  
  1274.        The 'L' key toggles the LHV display graphics on/off. Having them
  1275.        toggled on will show where the LHV codes are. Toggling them off
  1276.        will display what is underneath the LHV codes. The default setting
  1277.        for this is controlled by MAPEDIT.INI.
  1278.  
  1279.        Alt+M Toggle (Toggle Map Data During Selective Viewing)
  1280.  
  1281.        The Alt+M key combination is used to toggle Map Data on and off
  1282.        when viewing selected Objects. When Map data is left on, the
  1283.        selected objects are sometimes difficult to locate in the Map
  1284.  
  1285.  
  1286.                                      -24-
  1287.        
  1288.        Window. Turning off Map data viewing displays only the selected
  1289.        object symbols in the Map Window. The default setting for this
  1290.        toggle action is controlled by the MAPEDIT.INI file.
  1291.  
  1292.        O Toggle (Toggle Object Data On/Off)
  1293.  
  1294.        Use the 'O' key to toggle Object data on and off. This operation is
  1295.        similar to the 'F' key above which toggles Floor codes on and off.
  1296.        It is often useful to have Object data removed from the Map Window
  1297.        when examining floor codes. The default setting for this toggle
  1298.        action is controlled by the MAPEDIT.INI file.
  1299.  
  1300.        S Toggle (Toggle between Stats Display and Hot-key Display)
  1301.  
  1302.        Use the 'S' key to toggle between the display of Statistics and the
  1303.        Hot-key display. Leaving the Stats displayed during editing will
  1304.        slow the editing process somewhat as each change to the contents of
  1305.        the Map Window will cause the statistics to be recalculated. The
  1306.        default setting for this toggle action is controlled by the
  1307.        MAPEDIT.INI file.
  1308.  
  1309.        Alt+S Toggle (Display Count of Items in Legend Window)
  1310.  
  1311.        Pressing Alt+S will toggle on and off a display of the count of the
  1312.        individual items listed in the Legend Window. The default setting
  1313.        for Alt+S is controlled by the MAPEDIT.INI file. As with the 'S'
  1314.        command, Alt+S can slow the editing process somewhat if left
  1315.        toggled on (See 'S' command above).
  1316.  
  1317.        Spacebar Toggle (Toggle between Map and Object Legends)
  1318.  
  1319.        Pressing the Spacebar will toggle the Legend window to display
  1320.        either Map data or Object data, the effect of which is to move
  1321.        between Map Mode and Object Mode. The same thing can be done using
  1322.        the middle mouse button (if you have a 3-button mouse).
  1323.  
  1324.        Ctrl+Z Toggle (Toggle ZAP through Pushwalls on and off)
  1325.  
  1326.        Pressing Ctrl+Z will toggle on and off the ability to cause the ZAP
  1327.        command (see above) to extend the selected floor code through any
  1328.        pushwalls that may exist within the area being ZAPed. The default
  1329.        for this toggle is 'off'. Its initial setting is controlled by a
  1330.        variable in the MAPEDIT.INI file.
  1331.  
  1332.        NOTE: For designers of WOLF3D and SoD floors, if you extend a floor
  1333.        code into an area entered through a Pushwall, be aware that if
  1334.        there are any guards behind the Pushwall, they may prevent it from
  1335.        sliding all the way open. Such guards, if present, should be made
  1336.        "deaf guards" so they will remain still until they actually see
  1337.        their enemy.
  1338.  
  1339.  
  1340.  
  1341.                                      -25-
  1342.        
  1343.        Scrolling Keys
  1344.  
  1345.        <up/down arrows>     - Pages legend up or down
  1346.        <left mouse button>  - Pages legend up/down when pointer in
  1347.                               UP or DOWN box under Legend window
  1348.        <INS/DEL>            - Scroll legend one line up/down
  1349.        <right mouse button> - Scrolls legend one line up/down when
  1350.                               pointer in UP/DOWN box under window
  1351.        <left/rt arrows>     - Scroll legend horizontally one column
  1352.        <Ctrl+lft/rt arrows> - Scroll legend horiz. 10 columns
  1353.        <Home/End>           - Top/Bottom of Legend
  1354.        <Pgup/Pgdn>          - Select level to view
  1355.        <L-Shift+R-shift>    - Redisplays mouse pointer if lost
  1356.  
  1357.  
  1358.  
  1359.  
  1360.  
  1361.  
  1362.  
  1363.  
  1364.  
  1365.  
  1366.  
  1367.  
  1368.  
  1369.  
  1370.  
  1371.  
  1372.  
  1373.  
  1374.  
  1375.  
  1376.  
  1377.  
  1378.  
  1379.  
  1380.  
  1381.  
  1382.  
  1383.  
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.  
  1390.  
  1391.  
  1392.  
  1393.  
  1394.  
  1395.  
  1396.                                      -26-
  1397.        
  1398.        Manipulating Maps
  1399.  
  1400.        Besides being able to edit any particular map, you will often find
  1401.        it desireable to copy/move floors from one level to another and
  1402.        even exchange floors between levels. You can also Read and Write
  1403.        individual floors from/to hard disk for safe keeping at
  1404.        intermediate stages of development. Or you can save a floor to be
  1405.        shipped to someone else for inclusion in their game. Note that the
  1406.        receiver of your floors must have a copy of Mapedit to be able to
  1407.        use the floor file. Some of the Hot-key commands listed above deal
  1408.        with these features.
  1409.  
  1410.        E Command (Exchange Currently Displayed Floor With Floor Stored in
  1411.        Clipboard)
  1412.  
  1413.        To exchange 2 floors, copy one of the floors to the clipboard ('M'
  1414.        command), then use the 'E' command to Exchange the floor in the
  1415.        clipboard with the second floor involved in the exchange. Last,
  1416.        transfer the floor now in the clipboard to the position where the
  1417.        first floor was located. Use the 'E' hot-key for the Exchange
  1418.        function.
  1419.  
  1420.        M Command (Copy/Memorize Floor to Clipboard)
  1421.  
  1422.        MAPEDIT contains a clipboard for temporary storage of a copy of any
  1423.        floor you are currently viewing or one that you have imported from
  1424.        your hard disk. If you do nothing with the clipboard copy, it will
  1425.        be lost when you quit the game. To copy the current floor to the
  1426.        clipboard, use the 'M' (for Memorize) hot-key.
  1427.  
  1428.        R Command (Read/Import a Floor from Hard Disk to the Clipboard)
  1429.  
  1430.        Use the 'R' hot-key to initiate the READ function. You will be
  1431.        prompted for the full DOS filename of the floor file to be read.
  1432.        The file must exist in the current directory or in the location
  1433.        specified in Mapedit.INI.  The file will then be read into the
  1434.        Clipboard where it can be exchanged with another floor or
  1435.        transferred to the current level.
  1436.  
  1437.  
  1438.  
  1439.  
  1440.  
  1441.  
  1442.  
  1443.  
  1444.  
  1445.  
  1446.  
  1447.  
  1448.  
  1449.  
  1450.  
  1451.                                      -27-
  1452.        
  1453.        T Command (Transfer a Floor from Clipboard to Current Level)
  1454.  
  1455.        Once there is a map floor in the Clipboard it can be transferred to
  1456.        any other level. The current floor that existed before the transfer
  1457.        operation is lost unless you saved it first by writing it to disk
  1458.        or used the Exchange hot-key. Use the 'T' hot-key to transfer a
  1459.        floor from the Clipboard. Transfer is used along with the Exchange
  1460.        command when you want to exchange floors between levels.
  1461.  
  1462.        W Command (Write/Export the Current Floor to Hard Disk)
  1463.  
  1464.        Use the 'W' hot-key to initiate the WRITE function. The floor to be
  1465.        written to disk is written directly from the floor currently
  1466.        displayed. Do not copy it first to the Clipboard. You will be
  1467.        prompted for a DOS filename to give the floor. The file will be
  1468.        stored in the current directory or in a directory specified in
  1469.        MAPEDIT.INI.
  1470.  
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.                                      -28-
  1507.        
  1508.        Statistics
  1509.  
  1510.        The statistics display, which is toggled on and off using the 'S'
  1511.        hot-key, keeps track of the following information:
  1512.  
  1513.             Static Objects
  1514.             Total Guards (Wolf3D & SoD)
  1515.             Active Objects (Blake Stone only)
  1516.             Doors
  1517.  
  1518.             Level 1 Guards
  1519.             Level 3 Guards
  1520.             Level 4 Guards
  1521.             Boss Guards
  1522.  
  1523.             Secret Doors
  1524.             $$$ / One-ups
  1525.  
  1526.        This information can be very useful in designing floors.  There are
  1527.        some program limits that must not be exceeded.  These limits are
  1528.        the same in all 3 games:
  1529.  
  1530.            399 Static Objects
  1531.            149 Guards (Wolf3D & SoD only)
  1532.            149 Active Objects (Blake Stone only)
  1533.            64 Doors - Unlocked/Locked/Elevator
  1534.  
  1535.        When these limits are exceeded, the text changes to red as a visual
  1536.        warning. If you play a game with the limits exceeded, it will abort
  1537.        - usually gracefully, but not always! You should always check your
  1538.        STATS before quitting MAPEDIT.
  1539.  
  1540.        WARNING: Map window scrolling and map modifications are slightly
  1541.        inhibited by leaving the STAT display toggled on. It is recommended
  1542.        that you toggle off STATS before scrolling or making changes.
  1543.  
  1544.        Besides the statistics displayed above, there are more available in
  1545.        each Legend window by using the Alt+S key. When this key
  1546.        combination is pressed, the count of any items presently displayed
  1547.        in the Legend window that exist in the current Map window will be
  1548.        displayed to the right of each item in the Legend window. The item
  1549.        counts can be toggled off by using Alt+S again. This feature can be
  1550.        quite useful when you are attempting to determine whether a
  1551.        particular object or map code exists in any given level. Any value
  1552.        other than zero means the code does exist.
  1553.  
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.                                      -29-
  1562.        
  1563.        MAPEDIT.INI file
  1564.  
  1565.        An optional file included in the MAPEDIT package is a MAPEDIT.INI
  1566.        file. This file can be used to change defaults that are used by the
  1567.        editor.
  1568.  
  1569.        The file currently contains 12 variables that can be edited with
  1570.        any Ascii editor. Below are the variable names and their default
  1571.        values.
  1572.                                               Default
  1573.        show_objects=true/false                 true
  1574.        show_floor=true/false                   false
  1575.        stats=true/false                        false
  1576.        count_all=true/false                    false
  1577.        show_large_hex=true/false               true
  1578.        hexvals=true/false                      false
  1579.        item_hex_codes=true/false               false
  1580.        mapitems_with_onlyobject=true/false     true
  1581.        def_file_extension=xxx                  none
  1582.        swap_drive=(any logical DOS drive)      none
  1583.        game_path=(any valid DOS path)          .\
  1584.        floorfile_path=any valid DOS path       .\
  1585.        rubber_band=true/false                  true
  1586.        zap_thru_pushwall=true/false            false
  1587.  
  1588.        Explanations in the order listed above:                 Hot-key
  1589.                                                                Toggle
  1590.        Display Object symbols on map                             O
  1591.        Display Floor Code symbols on map                         F
  1592.        Display Object Counts                                     S
  1593.        Display Items Counts in Legend Window                     Alt+S
  1594.        Display LHV symbols (Blake Stone only)                    L
  1595.        Display column/row in hex                                 H
  1596.        Display Map and Object hex codes                          Alt+H
  1597.        Display map symbols when viewing only selected objects    Alt+M
  1598.        DOS file extension for map and object data def. files.
  1599.        Drive to use to store Swap files
  1600.        Directory containing game files.
  1601.        Path to read/write floor files.
  1602.        Controls drawing mode - rubberband or freehand            Alt+R
  1603.        Permits ZAPping thru pushwalls or not                     Ctrl+Z
  1604.  
  1605.        The MAPEDIT.INI file included is a sample of how these variables
  1606.        are coded. You can use the sample file by changing the definitions
  1607.        to suit your needs.
  1608.  
  1609.        To expand a bit on a couple of the variables in the list above,
  1610.        "game_path" can be used to define the name and location of the
  1611.        directory where the MAPHEAD and GAMEMAPS or MAPTEMP files are
  1612.        located, if not in the current directory. In any case, the order of
  1613.        search is: .WL3, .WL6, .SOD, .BS6, .VSI, .CO7, .BC. Whichever one
  1614.        is found first defines the game to be edited.
  1615.  
  1616.                                      -30-
  1617.        
  1618.        Once the game being edited is known, the Map and Object definition
  1619.        files are sought. They must reside in the same directory as
  1620.        MAPEDIT. If you specify 'XXX' as the def_file_extension parameter
  1621.        in the .INI file, then the files are assumed to be MAPDATA.XXX and
  1622.        OBJDATA.XXX.
  1623.  
  1624.        Editing Features Unique to BLAKE STONE Games
  1625.  
  1626.        As indicated earlier, Blake Stone floors have a number of unique
  1627.        features that do not exist in the other games supported. To
  1628.        understand what the features are and how they work, you need to
  1629.        study the companion document - BSTONE.DOC - for details. This
  1630.        section will describe how the editor is used to implement these
  1631.        features. Also included in this package is a simple Blake Stone
  1632.        floor map that contains samples of most of the Large Hex Values
  1633.        used in Blake Stone.
  1634.  
  1635.        Map Coordinates
  1636.  
  1637.        Before proceeding with a discussion of how Blake Stone features are
  1638.        implemented by MAPEDIT, it is important to consider some points
  1639.        about map coordinates. Several of the new features require that
  1640.        some cell (or coordinate) of the map be identified as a target
  1641.        location. This is true for Teleporters, Barrier Switches, doors, as
  1642.        well as other features.
  1643.  
  1644.        Any cell or coordinate on the map consists of an X (column) and Y
  1645.        (row) value. Since a map is 64 by 64 cells, this results in an X
  1646.        and Y range of 00 to 3F (hex). A cell located at the 10th column
  1647.        and 9th row, for instance, would have an X:Y value of '0A09' (hex).
  1648.        If this cell, '0A09', happened to be the target coordinate of a
  1649.        Barrier switch, i.e., the location of a Barrier object, then
  1650.        MAPEDIT would store the coordinate at the appropriate location on
  1651.        the map as an LHV (Large Hex Value). In addition, the Blake Stone
  1652.        engine would eventually recognize '0A09' at game time and handle it
  1653.        accordingly.
  1654.  
  1655.        Coordinates Vs. Objects
  1656.  
  1657.        However, there is a problem when the X:Y coordinates fall in the
  1658.        range of 0000 to 023F. If you scan the OBJDATA file you will
  1659.        immediately notice that the above range of values also represents
  1660.        much of the Object data in the game. As a result, if a target
  1661.        coordinate is '011b', for example, it will show up on the floor map
  1662.        as a Perscan Drone rather than as LHV object data. In most cases
  1663.        the Blake Stone engine will discriminate between what is a map
  1664.        coordinate and what is a true object. But not always.
  1665.  
  1666.        The bottom line to all this: AVOID PLACING ANY OBJECT DATA IN THE
  1667.        LEFT-MOST 3 COLUMNS OF THE FLOOR MAP THAT ARE ALSO COORDINATE
  1668.        TARGETS. These left-most 3 columns fall in the range of 0000 to
  1669.  
  1670.  
  1671.                                      -31-
  1672.        
  1673.        023F. Alternately, do not include the 1st 3 columns in any map you
  1674.        design.
  1675.  
  1676.        To be very specific, don't place Barriers, Teleporters, Auto-Doors,
  1677.        or Linked Doors in the left-most 3 columns of the map.
  1678.  
  1679.        FEATURE IMPLEMENTATIONS
  1680.  
  1681.        The features that are described below are:
  1682.  
  1683.        Food Units
  1684.        Automatic Opening Doors
  1685.        Linked Doors
  1686.        Teleporters
  1687.        Barriers and barrier switches
  1688.        Bio-Tech messages
  1689.        Time Delays
  1690.        Ceiling and Floor Textures
  1691.        Ceiling and Floor Colors
  1692.  
  1693.        Food Units
  1694.  
  1695.        When you select either Food Unit 1 or 2 from the Map Legend Window
  1696.        and insert it into the Map Window, you will be prompted to indicate
  1697.        whether the food unit is to be operational or "Not in Working
  1698.        Order". If the unit is to be operational, then you will be prompted
  1699.        again to select how many items of food the unit is to dispense.
  1700.        Supply a number and press Enter. The result of the above actions
  1701.        will place LHV's over the Food Unit wall. You can view the LHV by
  1702.        pressing the 'L' key. LHV's can be toggled off by pressing the 'L'
  1703.        key again. (An LHV code symbol appears as a white block with a red
  1704.        center). Positioning the mouse pointer over an LHV symbol will
  1705.        display the hex code represented by the LHV symbol below the Map
  1706.        Window.
  1707.  
  1708.        Automatic Doors
  1709.  
  1710.        To cause any door to open automatically you must select a special
  1711.        floor code labeled "Auto Door Hot-Spot" from the Map Legend window.
  1712.        You then insert this code in the floor map at the chosen location
  1713.        just like inserting any other floor code. (The "hot-spot" is a kind
  1714.        of sensor that Stone can cross over which will then cause the
  1715.        selected door to open). When you insert the special code you will
  1716.        be prompted to move the mouse pointer to a door that you want the
  1717.        "hot-spot" or sensor to open. When you click the mouse button, the
  1718.        X:Y coordinates, or location (an LHV) of the door, will be placed
  1719.        on top of the "hot-spot". You may repeat this operation for as many
  1720.        sensors as you want to create for the single door. (It is
  1721.        recommended that you use at least 2 sensors on both sides of a
  1722.        selected door).
  1723.  
  1724.  
  1725.  
  1726.                                      -32-
  1727.        
  1728.        Door Linkages (Pointers)
  1729.  
  1730.        To link doors together so that all linked doors appear to open
  1731.        simultaneously, select the Map code from the Map Legend window that
  1732.        is labeled "Auto Door Pointer". Next, move the mouse pointer to the
  1733.        first door in the chain of linked doors and click the mouse button.
  1734.        Now point to the next door in the chain and click the mouse button
  1735.        again. This will cause a pointer (LHV) to the 2nd door to be placed
  1736.        at the location of the 1st door, thus creating the required
  1737.        linkage. To link additional doors, repeat the above procedure
  1738.        starting with the 2nd door (the one pointed to by the first door)
  1739.        and so on.
  1740.  
  1741.        NOTE: You can link 2 doors to each other by having each door
  1742.        pointing to the other. Both doors will open at the same time when
  1743.        either door is opened.
  1744.  
  1745.        Teleporters
  1746.  
  1747.        A Teleporter is inserted in the floor map using the Teleporter map
  1748.        code. When you place a Teleporter map code in the Map Window you
  1749.        will be prompted to choose whether the Teleporter is to be for
  1750.        "This Floor" (the current floor) or for a "Distant Floor" (in the
  1751.        same Mission). If for the current floor, you will be prompted to
  1752.        point to the location on the map of the receiving location (not
  1753.        necessarily another Teleporter), then click the mouse button. (If
  1754.        a Teleporter is used at the receiving location, the receiving
  1755.        position must ALWAYS be on a floor code immediately adjacent to the
  1756.        Teleporter symbol).
  1757.  
  1758.        If the Teleporter is to be used to transport Stone to a "distant
  1759.        floor" such as the secret level in the basement, then you will be
  1760.        prompted for the number of the receiving level. The receiving
  1761.        location must be at the same absolute coordinate as the sending
  1762.        location. Generally, the receiving location should have a
  1763.        Teleporter positioned where Blake will materialize. But another set
  1764.        of sending/receiving Teleporters can be used from the distant
  1765.        location back to the original location. Again, such Teleporters, if
  1766.        used, must exist at the same absolute coordinates.
  1767.  
  1768.        Barriers and Barrier Switches
  1769.  
  1770.        These instructions apply to both types of barriers (Post and Arc)
  1771.        used in the game. Whenever you use a barrier, you would normally
  1772.        place a barrier switch somewhere to raise (turn on) or lower (turn
  1773.        off) the barrier.
  1774.  
  1775.        Switches can operate barriers on either the current floor, or on a
  1776.        "distant floor" in the same Mission. When you insert a Barrier
  1777.        switch code into the Map window, you will be asked whether the
  1778.        barrier is in "this floor" (current floor) or a "distant floor". If
  1779.        you opt for the current floor, you will be prompted to point to one
  1780.  
  1781.                                      -33-
  1782.        
  1783.        of the barrier symbols in the target barrier and click the mouse
  1784.        button which will cause the barrier switch to point to the correct
  1785.        barrier. NOTE: All adjacent barrier objects will switch on or off
  1786.        along with the targeted object of the switch.
  1787.        If you select a barrier on a "distant floor", you will be prompted
  1788.        for the level number. At this time, the "distant floor" will be
  1789.        drawn on the screen and you will be prompted to point to a barrier
  1790.        object and click on the mouse. The original floor will be
  1791.        redisplayed and the location of the "distant barrier" will be
  1792.        placed on the barrier switch as an LHV. NOTE: If you mistakenly
  1793.        enter the wrong "distant" level number, then click at any location
  1794.        on the error level Map window. Now go back and repeat the operation
  1795.        to correct your error. (Nothing was stored on the error level).
  1796.  
  1797.        Bio Tech Messages
  1798.  
  1799.        Examine the bottom of the Object Legend window and you will find 3
  1800.        object codes used to trigger menus of messages used by Bio Techs.
  1801.        (This explanation assumes you are familiar with the section in
  1802.        BSTONE.DOC that describes how these messages are used).
  1803.  
  1804.        All 3 kinds of message codes have default locations on the floor.
  1805.        Loyalist message codes are stored along the West perimeter wall.
  1806.        Informant message codes are stored in the southwest corner of the
  1807.        south wall. However, you can force any of these message codes to be
  1808.        placed anywhere else on the floor near one or more Bio-techs.
  1809.  
  1810.        The Object code in the legend window for Informant messages is
  1811.        0256. Point and click on this code. If you want the message code
  1812.        stored at the default location then move the mouse pointer anywhere
  1813.        in the Map window and click again. If you want to place the message
  1814.        code at other than the default location, then move the mouse to
  1815.        that location and click the button. In either case a menu of
  1816.        Informant messages will appear in place of the Legend window. Use
  1817.        the left and right arrow keys to scroll left and right in order to
  1818.        see the entire message. Point to the message you want to use and
  1819.        click the mouse. You will be prompted for whether the message code
  1820.        is to be inserted at the default location for Informant messages or
  1821.        to some other location. Enter your choice.
  1822.  
  1823.        The Object codes in the legend window for Loyalist "warning"
  1824.        messages (delayed action) is 0257 and "alarm" messages (immediate
  1825.        action) is 0258. Process the selected message in the same way as
  1826.        described above for Informant messages.
  1827.  
  1828.        Time Delays
  1829.  
  1830.        Time delays are used to manage the "hatching" of Pod Aliens, the
  1831.        "energization" of Mutant guards, and the release rate of Plasma
  1832.        Aliens. When you want to insert one of these objects into the floor
  1833.        map, you will be prompted for whether you want a time delay used or
  1834.  
  1835.                                      -34-
  1836.        
  1837.        not. If so, you will then be prompted for the value of the delay -
  1838.        a number from 00 to FF. Press the enter key and an LHV representing
  1839.        the time delay will be placed on the floor next to or on the object
  1840.        in question. (The lower the number, the shorter the delay).
  1841.  
  1842.        Ceiling and Floor Textures
  1843.  
  1844.        In order to control the ceiling and floor textures of each floor,
  1845.        you can insert the appropriate default LHV object codes on the map
  1846.        by using the XTRA button at the bottom of the Legend Window.  Point
  1847.        the mouse at the XTRA button and click the mouse. You will now see
  1848.        a button marked "MAP", click the mouse on it. At this point you
  1849.        will be prompted to enter a value for one of 4 selections. Since
  1850.        this is a discussion of Ceiling and Floor Textures, enter a number
  1851.        for either Ceiling or Floor texture. This last action will trigger
  1852.        a menu of texture codes which will appear in place of the Legend
  1853.        window. Use the mouse to point to a code, then click the mouse on
  1854.        it. Next, repeat the procedure for the other texture value. Again,
  1855.        you are referred to the BSTONE.DOC Appendix for which values are
  1856.        available.
  1857.  
  1858.        NOTE: The XTRA button can also be used to enter any LHV data
  1859.        manually anywhere on the floor. After selecting XTRA, then select
  1860.        HEX and follow the prompts.
  1861.  
  1862.        Ceiling and Floor Colors
  1863.  
  1864.        See the discussion under Ceiling and Floor Textures for how to
  1865.        enter the default values for ceiling and floor colors. The main
  1866.        difference here is that a menu of color codes will not appear. You
  1867.        will be prompted to enter the color code you want.
  1868.  
  1869.        The color selections are listed in the Appendix of BSTONE.DOC.
  1870.  
  1871.        Unlike ceiling and floor textures, ceiling and floor colors can be
  1872.        made to change dynamically while the game is being played. To
  1873.        implement these changes on the floor, examine the end of the Object
  1874.        Legend window. There you will find the codes 0259 and 025a. 0259
  1875.        represents ceiling colors and 025a represents floor colors. Point
  1876.        the mouse and click on the code you want. Next, point to the
  1877.        location on the floor where you want the color change to take place
  1878.        and click on the mouse button. You will be prompted to enter a
  1879.        ceiling color value. After pressing ENTER, the LHV's for your
  1880.        choice will be placed at the location originally pointed to by the
  1881.        mouse.
  1882.  
  1883.        Repeat the above procedure for entering a floor color choice. Point
  1884.        to the same location on the floor as previously used for the
  1885.        ceiling color.
  1886.  
  1887.  
  1888.  
  1889.  
  1890.                                      -35-
  1891.        
  1892.        Using Multiple Push-Wall Codes
  1893.  
  1894.        When setting up a series of push-wall codes such that one section
  1895.        of wall can be pushed 2 or more times there is a "rule" to be
  1896.        observed. To be certain you understand, in order to push one
  1897.        section of wall more than once, you insert push-wall codes on a
  1898.        floor 2 squares apart so that each time a wall is pushed, it will
  1899.        stop on top of another push-wall code. The wall can then be pushed
  1900.        again. For an example, view the basement level of Mission 4.
  1901.  
  1902.        The "rule" for doing this is that multiple push-wall codes must not
  1903.        be used adjacent to an outer perimeter wall (a single code is
  1904.        okay). The result of using multiple push-wall codes in this manner
  1905.        will cause the game to immediately abort the instant the wall is
  1906.        pushed the 2nd time, with an error message from Blake Stone stating
  1907.        "Invalid Page Request".
  1908.  
  1909.        Other Error Conditions
  1910.  
  1911.        When creating a Blake Stone map, you are limited to the following
  1912.        numbers of certain items per floor:
  1913.  
  1914.        Dr. Goldfire sites: 10
  1915.        Electro-Alien Walls: 12
  1916.        Food Units: 15
  1917.        Unique barrier switch coordinates: 5
  1918.        Static Objects: 399
  1919.        Active Objects: 149
  1920.        Doors: 64
  1921.  
  1922.  
  1923.  
  1924.  
  1925.  
  1926.  
  1927.  
  1928.  
  1929.  
  1930.  
  1931.  
  1932.  
  1933.  
  1934.  
  1935.  
  1936.  
  1937.  
  1938.  
  1939.  
  1940.  
  1941.  
  1942.  
  1943.  
  1944.  
  1945.                                      -36-
  1946.        
  1947.        Features Unique to BLAKE STONE: PLANET STRIKE
  1948.  
  1949.        A number of new features have been added to this game. However, all
  1950.        new features are handled within the existing support supplied by
  1951.        Mapedit for the previous Blake Stone game (Aliens of Gold). The
  1952.        features for Planet Strike are described in a separate document.
  1953.  
  1954.  
  1955.  
  1956.  
  1957.  
  1958.  
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964.  
  1965.  
  1966.  
  1967.  
  1968.  
  1969.  
  1970.  
  1971.  
  1972.  
  1973.  
  1974.  
  1975.  
  1976.  
  1977.  
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.  
  1984.  
  1985.  
  1986.  
  1987.  
  1988.  
  1989.  
  1990.  
  1991.  
  1992.  
  1993.  
  1994.  
  1995.  
  1996.  
  1997.  
  1998.  
  1999.  
  2000.                                      -37-
  2001.        
  2002.        Format of the Data Definition Files
  2003.  
  2004.        This section was contributed by Peter Burrough.
  2005.  
  2006.          The encoding for the input lines in the ???DATA.xxx files is as
  2007.          follows:
  2008.  
  2009.                  1           2   3
  2010.            123456789012345678901234567890...
  2011.  
  2012.            nnnn psgc tttttttttttttttttttx...
  2013.  
  2014.          where:
  2015.  
  2016.            "nnnn" is the map/object code (leading zeroes required, value
  2017.                   in hex, any mixture of upper/lower case permitted for
  2018.                   hex digits)
  2019.  
  2020.            col 5  is ignored
  2021.  
  2022.            "psgc" is the code indicating the graphic code on the map
  2023.                   display (described below)
  2024.  
  2025.            col 10 is ignored
  2026.  
  2027.            "t..t" is the narrative for the entity (note that the program
  2028.                   will accept up to 20 characters, but will only display
  2029.                   16!) If less than 16 characters are present, the
  2030.                   narrative will be padded to 16 with nulls/blanks.
  2031.  
  2032.                   NOTE: If there are non-blank characters in columns
  2033.                   17-20, they will be truncated in the legend scroll list,
  2034.                   but will appear in the other narrative areas below the
  2035.                   map.
  2036.  
  2037.            "x..." is ignored (can be used for comments)
  2038.                   (column 30 onwards)
  2039.  
  2040.  
  2041.  
  2042.  
  2043.  
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.  
  2050.  
  2051.  
  2052.  
  2053.  
  2054.  
  2055.                                      -38-
  2056.        
  2057.          Graphic Type
  2058.          ------------
  2059.  
  2060.          Columns 6-9 in the ???DATA.xxx files define how the object will
  2061.          look in the map.  Any alphabetics in columns 6/7/8 MUST be in
  2062.          lower case!
  2063.  
  2064.          "psgc" is the code indicating the graphic type on the map display
  2065.  
  2066.           where:
  2067.  
  2068.            "p" is the primary color
  2069.  
  2070.            "s" is the secondary color
  2071.             (direction flag when "g" = f)
  2072.             (unused for some other values of "g")
  2073.  
  2074.            "g" is the graphic type
  2075.  
  2076.            "c" is the character to be displayed ("g" = 0 [text] ONLY)
  2077.                (value should be zero for all other values of "g")
  2078.  
  2079.          Color codes ["p" and "s"] (values a-f MUST be coded as lower
  2080.          case!)
  2081.  
  2082.            0 - black       "s" for type "f":  0 = N
  2083.            1 - blue                           1 = NE
  2084.            2 - green                          2 = E
  2085.            3 - cyan                           3 = SE
  2086.            4 - red                            4 = S
  2087.            5 - magenta                        5 = SW
  2088.            6 - brown                          6 = W
  2089.            7 - light grey                     7 = NW
  2090.            8 - dark grey
  2091.            9 - light blue
  2092.            a - light green
  2093.            b - light cyan
  2094.            c - light red
  2095.            d - light magenta
  2096.            e - yellow
  2097.            f - white
  2098.  
  2099.          Graphic types ["g"] (values a-f MUST be coded as lower case):
  2100.  
  2101.            NOTE: the graphics type codes are treated as CHARACTER, not as
  2102.            hexadecimal values, so it is possible to extend the range of
  2103.            graphic symbols considerably, beyond 0-9 and a-f.
  2104.  
  2105.            "*" - this type uses ONLY the primary color (the secondary
  2106.                  color is ignored even if non-zero, except for type 'f')
  2107.  
  2108.  
  2109.  
  2110.                                      -39-
  2111.        
  2112.            code  significance
  2113.            ----  ------------
  2114.  
  2115.            0     - text
  2116.                  (uses "c" for character to be displayed)
  2117.  
  2118.            1 * - solid box (large square)
  2119.                  (special case of type "3" or "8", with "p" = "s")
  2120.  
  2121.            2 * - checkered box
  2122.                  (NOT a special case of type "4")
  2123.  
  2124.            3   - solid box (primary) with interior solid box (secondary)
  2125.                  (single color solid box if "p" = "s", i.e. type "1")
  2126.                  (small 3x3 solid box if "p" = 0, i.e. type "b")
  2127.  
  2128.            4   - checkered box (primary) with interior solid box
  2129.                  (secondary)
  2130.                  (NOT the same as type "2" if "p" = "s")
  2131.                  (small 3x3 solid box if "p" = 0, i.e. type "b")
  2132.  
  2133.            5   - large filled circle (primary) with smaller circle
  2134.                  (secondary)
  2135.                  (small circle is actually just a small "+" symbol)
  2136.                    (single color solid circle if "p" = "s")
  2137.                    (small "+" if "p" = 0)
  2138.  
  2139.            6 * - horizontal bar (doors)
  2140.  
  2141.            7 * - vertical bar (doors)
  2142.  
  2143.            8   - two color box (top 4 primary, lower 3 secondary)
  2144.                  (single color solid box if "p" = "s", i.e. type "1")
  2145.  
  2146.            9 * - single pixel centered
  2147.  
  2148.            a * - 3x5 pixel block (width-x-height) (short vertical bar)
  2149.  
  2150.            b * - 3x3 pixel block (small square block)
  2151.                  (special case of type "3" or "4", with "p" = 0)
  2152.  
  2153.            c * - 5x5 pixel block (medium square block)
  2154.  
  2155.            d * - cross (X)
  2156.  
  2157.            e * - open large square
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.                                      -40-
  2166.            
  2167.            f * - arrow
  2168.                  (secondary color indicates direction - see below)
  2169.  
  2170.                  type 'f' uses the secondary color field ["s"] for the
  2171.                  direction of the arrow, as follows:
  2172.  
  2173.                 0 = N
  2174.                 1 = NE
  2175.                 2 = E
  2176.                 3 = SE
  2177.                 4 = S
  2178.                 5 = SW
  2179.                 6 = W
  2180.                 7 = NW
  2181.  
  2182.          Special cases
  2183.          -------------
  2184.  
  2185.            Type "1" is a special case of type "3" or "8" (if "p" = "s" for
  2186.            these types, the result is the same as type "1").
  2187.  
  2188.            Type "b" is a special case of type "3" or "4" (if "p" = 0 for
  2189.            these types, the result is the same as type "b").
  2190.  
  2191.  
  2192.  
  2193.  
  2194.  
  2195.  
  2196.  
  2197.  
  2198.  
  2199.  
  2200.  
  2201.  
  2202.  
  2203.  
  2204.  
  2205.  
  2206.  
  2207.  
  2208.  
  2209.  
  2210.  
  2211.  
  2212.  
  2213.  
  2214.  
  2215.  
  2216.  
  2217.  
  2218.  
  2219.  
  2220.                                      -41-
  2221.          
  2222.          Code summary
  2223.          ------------
  2224.  
  2225.          The following summary of codes should be used as a guideline
  2226.          only:
  2227.  
  2228.          "p" = primary color
  2229.          "s" = secondary color
  2230.  
  2231.            0 - ps0c   Text             "c" = character to be displayed
  2232.            1 - p010   Solid box
  2233.            2 - p020   Chequered box
  2234.            3 - ps30   Solid box + centre
  2235.                pp30   [= type '1': p010]
  2236.                0s30   [= type 'b': s0b0]
  2237.            4 - ps40   Chequered box + centre
  2238.                0s30   [= type 'b': s0b0]
  2239.            5 - ps50   Circle + centre
  2240.                pp50   [= solid circle]
  2241.                0s50   [= small "+"]
  2242.            6 - p060   Horizontal bar/door
  2243.            7 - p070   Vertical bar/door
  2244.            8 - ps80   2-color box
  2245.                pp80   [= type '1': p010]
  2246.            9 - p090   1-pixel dot
  2247.            a - p0a0   3x5-pixel
  2248.            b - p0b0   3x3-pixel
  2249.            c - p0c0   5x5-pixel
  2250.            d - p0d0   Cross
  2251.            e - p0e0   Open square
  2252.            f - pdf0   Arrow     "d" is direction code (0-7 only)
  2253.  
  2254.  
  2255.  
  2256.  
  2257.  
  2258.  
  2259.  
  2260.  
  2261.  
  2262.  
  2263.  
  2264.  
  2265.  
  2266.  
  2267.  
  2268.  
  2269.  
  2270.  
  2271.  
  2272.  
  2273.  
  2274.  
  2275.                                      -42-
  2276.        
  2277.          Pixel patterns
  2278.          --------------
  2279.  
  2280.          All graphics are displayed in a 7x7-pixel box
  2281.  
  2282.            "P" = primary color
  2283.            "Q" = checkered primary color
  2284.            "S" = secondary color
  2285.            "." = black
  2286.  
  2287.            "*" - this type uses ONLY the primary color (the secondary
  2288.                  color is ignored even if non-zero)
  2289.  
  2290.            1 * - solid box
  2291.  
  2292.               PPPPPPP
  2293.               PPPPPPP
  2294.               PPPPPPP
  2295.               PPPPPPP
  2296.               PPPPPPP
  2297.               PPPPPPP
  2298.               PPPPPPP
  2299.  
  2300.               (p010)
  2301.  
  2302.            2 * - checkered box
  2303.  
  2304.               QQQQQQQ
  2305.               QQQQQQQ
  2306.               QQQQQQQ
  2307.               QQQQQQQ
  2308.               QQQQQQQ
  2309.               QQQQQQQ
  2310.               QQQQQQQ
  2311.  
  2312.               (p020)
  2313.  
  2314.            3     - solid box (primary) with interior solid box (secondary)
  2315.  
  2316.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2317.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2318.               PPSSSPP     ..SSS..      PP...PP     PPPPPPP
  2319.               PPSSSPP     ..SSS..      PP...PP     PPPPPPP
  2320.               PPSSSPP     ..SSS..      PP...PP     PPPPPPP
  2321.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2322.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2323.  
  2324.               (ps30)      (0s30)       (p030)      (pp30)
  2325.  
  2326.               (normal)    ("p"=0)      ("s"=0)     ("s"="p")
  2327.  
  2328.  
  2329.  
  2330.                                      -43-
  2331.        
  2332.            4     - checkered box (primary) with interior solid box
  2333.                    (secondary)
  2334.                    (only primary is checkered)
  2335.  
  2336.               QQQQQQQ     .......      QQQQQQQ
  2337.               QQQQQQQ     .......      QQQQQQQ
  2338.               QQSSSQQ     ..SSS..      QQ...QQ
  2339.               QQSSSQQ     ..SSS..      QQ...QQ
  2340.               QQSSSQQ     ..SSS..      QQ...QQ
  2341.               QQQQQQQ     .......      QQQQQQQ
  2342.               QQQQQQQ     .......      QQQQQQQ
  2343.  
  2344.               (ps40)      (0s40)       (p040)
  2345.  
  2346.               (normal)    ("p"=0)      ("s"=0)
  2347.  
  2348.            5     - large filled circle (primary) with smaller circle/+
  2349.                    (secondary)
  2350.  
  2351.               ..PPP..     .......      ..PPP..     ..PPP..
  2352.               .PPPPP.     .......      .PPPPP.     .PPPPP.
  2353.               PPPSPPP     ...S...      PPP.PPP     PPPPPPP
  2354.               PPSSSPP     ..SSS..      PP...PP     PPPPPPP
  2355.               PPPSPPP     ...S...      PPP.PPP     PPPPPPP
  2356.               .PPPPP.     .......      .PPPPP.     .PPPPP.
  2357.               ..PPP..     .......      ..PPP..     ..PPP..
  2358.  
  2359.               (ps50)      (0s50)       (p050)      (pp50)
  2360.  
  2361.               (normal)    ("p"=0)      ("s"=0)     ("p"="s")
  2362.  
  2363.            6 * - horizontal bar (doors)
  2364.  
  2365.               .......
  2366.               .......
  2367.               PPPPPPP
  2368.               PPPPPPP
  2369.               PPPPPPP
  2370.               .......
  2371.               .......
  2372.  
  2373.               (p060)
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.  
  2380.  
  2381.  
  2382.  
  2383.  
  2384.  
  2385.                                      -44-
  2386.        
  2387.            7 * - vertical bar (doors)
  2388.  
  2389.               ..PPP..
  2390.               ..PPP..
  2391.               ..PPP..
  2392.               ..PPP..
  2393.               ..PPP..
  2394.               ..PPP..
  2395.               ..PPP..
  2396.  
  2397.               (p070)
  2398.  
  2399.            8     - two color box (top 4 primary, lower 3 secondary)
  2400.  
  2401.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2402.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2403.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2404.               PPPPPPP     .......      PPPPPPP     PPPPPPP
  2405.               SSSSSSS     SSSSSSS      .......     PPPPPPP
  2406.               SSSSSSS     SSSSSSS      .......     PPPPPPP
  2407.               SSSSSSS     SSSSSSS      .......     PPPPPPP
  2408.  
  2409.               (ps20)      (0s20)       (p020)      (ps20)
  2410.  
  2411.               (normal)    ("p"=0)      ("s"=0)     ("p"="s")
  2412.  
  2413.            9 * - single pixel centered
  2414.  
  2415.               .......
  2416.               .......
  2417.               .......
  2418.               ...P...
  2419.               .......
  2420.               .......
  2421.               .......
  2422.  
  2423.               (p090)
  2424.  
  2425.            a * - 3x5 pixel block (width-x-height) (short vertical bar)
  2426.  
  2427.               .......
  2428.               ..PPP..
  2429.               ..PPP..
  2430.               ..PPP..
  2431.               ..PPP..
  2432.               ..PPP..
  2433.               .......
  2434.  
  2435.               (p0a0)
  2436.  
  2437.  
  2438.  
  2439.  
  2440.                                      -45-
  2441.        
  2442.            b * - 3x3 pixel block (small square block)
  2443.  
  2444.               .......
  2445.               .......
  2446.               ..PPP..
  2447.               ..PPP..
  2448.               ..PPP..
  2449.               .......
  2450.               .......
  2451.  
  2452.               (p0b0)
  2453.  
  2454.            c * - 5x5 pixel block (medium square block)
  2455.  
  2456.               .......
  2457.               .PPPPP.
  2458.               .PPPPP.
  2459.               .PPPPP.
  2460.               .PPPPP.
  2461.               .PPPPP.
  2462.               .......
  2463.  
  2464.               (p0c0)
  2465.  
  2466.            d * - cross (X)
  2467.  
  2468.               .......
  2469.               .P...P.
  2470.               ..P.P..
  2471.               ...P...
  2472.               ..P.P..
  2473.               .P...P.
  2474.               .......
  2475.  
  2476.               (p0d0)
  2477.  
  2478.            e * - open large square
  2479.  
  2480.               PPPPPPP
  2481.               P.....P
  2482.               P.....P
  2483.               P.....P
  2484.               P.....P
  2485.               P.....P
  2486.               PPPPPPP
  2487.  
  2488.               (p0e0)
  2489.  
  2490.  
  2491.  
  2492.  
  2493.  
  2494.  
  2495.                                      -46-
  2496.        
  2497.            f * - arrow (secondary color indicates direction)
  2498.  
  2499.               ...P...     ...PPPP      ...P...     P......
  2500.               ..PPP..     .....PP      ....P..     .P.....
  2501.               .P.P.P.     ....P.P      .....P.     ..P....
  2502.               P..P..P     ...P..P      PPPPPPP     ...P..P
  2503.               ...P...     ..P....      .....P.     ....P.P
  2504.               ...P...     .P.....      ....P..     .....PP
  2505.               ...P...     P......      ...P...     ...PPPP
  2506.  
  2507.               (p0f0)      (p1f0)       (p2f0)      (p3f0)
  2508.  
  2509.               s=0/N       s=1/NE       s=2/E       s=3/SE
  2510.  
  2511.               -------------------------------------------
  2512.  
  2513.               ...P...     ......P      ...P...     PPPP...
  2514.               ...P...     .....P.      ..P....     PP.....
  2515.               ...P...     ....P..      .P.....     P.P....
  2516.               P..P..P     P..P...      PPPPPPP     P..P...
  2517.               .P.P.P.     P.P....      .P.....     ....P..
  2518.               ..PPP..     PP.....      ..P....     .....P.
  2519.               ...P...     PPPP...      ...P...     ......P
  2520.  
  2521.               (p4f0)      (p5f0)       (p6f0)      (p7f0)
  2522.  
  2523.               s=4/S       s=5/SW       s=6/W       s=7/NW
  2524.  
  2525.  
  2526.  
  2527.  
  2528.  
  2529.  
  2530.  
  2531.  
  2532.  
  2533.  
  2534.  
  2535.  
  2536.  
  2537.  
  2538.  
  2539.  
  2540.  
  2541.  
  2542.  
  2543.  
  2544.  
  2545.  
  2546.  
  2547.  
  2548.  
  2549.  
  2550.                                      -47-
  2551.        
  2552.        Credits
  2553.  
  2554.        We the authors wish to thank a few individuals for their kind and
  2555.        generous offers of help and contributions.
  2556.  
  2557.        Testers: Carlton Griffin, Peter Burrough, Chuck Archer
  2558.        Contributors: Blaine Horrock, Peter Burrough
  2559.  
  2560.        Version History
  2561.  
  2562.        Ver 8.3  - Added support for Corridor 7, Operation: Body Count,
  2563.                   & Blake Stone: Planet Strike. Removed requirement for
  2564.                   special graphics file (EGAVGA.BGI).
  2565.  
  2566.        Ver 8.1  - Selective Object Clearing, Grab-and-Paste added.
  2567.  
  2568.        Ver 8.0  - Programming by Bryan Baker & Dave Huntoon
  2569.                   Documentation & Testing by Warren Buss
  2570.                   Blake Stone support added. All new documentation.
  2571.                   Legend window: Toggling between Map & Object Legend
  2572.                   does not reset Legend. Home/End keys move to start/end
  2573.                   of Legend. INS/DEL scroll one line. Horiz scrolling up
  2574.                   to 50 characters. Left/right arrows scroll one column.
  2575.                   Ctrl+Left/Right arrows scroll 10 columns.
  2576.                   Added Hot-keys: D, G, H, Alt+H, L, Alt+M, Alt+S
  2577.                   Expanded online Help using F1, F2, and F3 keys.
  2578.                   Added Features: Changing multiple items of same type.
  2579.                                   Selective map/object item viewing.
  2580.                                   Legend repositioned when item
  2581.                                   selected in Map Window.
  2582.                   Added MAPEDIT.INI file support for changing editor
  2583.                   defaults.
  2584.                   Data Definition files now commentable.
  2585.  
  2586.        Ver 7.1  - Bryan Baker (Eliminated output of shareware levels,
  2587.        added room "ZAP" feature, added full-screen help, added level name
  2588.        input)
  2589.  
  2590.        Ver 7.0  - Bryan Baker & Dave Huntoon (Expanded statistics
  2591.        features, Read/Write filename may now be specified, Improved
  2592.        program error reporting & logic during startup)
  2593.  
  2594.        Ver 6.1  -  Matt Gruson (Spacebar toggles between Map and Object
  2595.        modes,  PAGEUP/PAGEDWN scroll legend display, add right mouse
  2596.        button to have own value, Shift + left mouse button memorizes value
  2597.        from map)
  2598.  
  2599.        Ver 6.0  - Dave Huntoon Modification (Help, Copy, Paste, Exchange,
  2600.        Write and Read)
  2601.  
  2602.        Ver 5.0  - Bryan Baker  Modification (Display of critical stats)
  2603.  
  2604.  
  2605.                                      -48-
  2606.        
  2607.        Ver 4.1a - Dave Huntoon Modification (SoD compatibility)
  2608.  
  2609.        Ver 4.1  - (c) 1992 Bill Kirby
  2610.  
  2611.  
  2612.  
  2613.  
  2614.  
  2615.  
  2616.  
  2617.  
  2618.  
  2619.  
  2620.  
  2621.  
  2622.  
  2623.  
  2624.  
  2625.  
  2626.  
  2627.  
  2628.  
  2629.  
  2630.  
  2631.  
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.  
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643.  
  2644.  
  2645.  
  2646.  
  2647.  
  2648.  
  2649.  
  2650.  
  2651.  
  2652.  
  2653.  
  2654.  
  2655.  
  2656.  
  2657.  
  2658.  
  2659.                                      -49-
  2660.        
  2661.