home *** CD-ROM | disk | FTP | other *** search
/ PC/CD Gamer UK 28 / PCGAMER28.bin / dos / abuse / abuse.doc next >
Text File  |  1995-09-10  |  78KB  |  1,666 lines

  1. ABUSE.DOC
  2. -----------------------
  3.   Written by Duong Dai Nguyen, level designer for Abuse
  4.   Edited by Mitch Burton.
  5.  
  6.  
  7.                           TUTORIAL NUMBER 1
  8.  
  9.  
  10.         Here at Crack dot Com we strive to create fun games.  Many elements
  11.   go into making a fun game, one of which is level design. Supplied with
  12.   your official Abuse package is a level editor. This editor allows
  13.   you to produce your own Abuse levels, using prefabricated pieces which
  14.   we call OBJECTS. The interface is a little daunting at first, but with some
  15.   persistence you can be blasting your way down long, dark alleys pursuing (or
  16.   being pursued by!) aliens, robots, and flyers of your own creation. Let's
  17.   begin!
  18.  
  19.  
  20.                         Table of contents
  21.  
  22.         (Do a key-word search for the number/letter combination
  23.             to jump to the section you want to read)
  24.  
  25.  
  26.       [1] Key Listings and Extended Options
  27.     [1.a] Key Listings
  28.     [1.b] Extended Options
  29.     [1.c] X11 (X windows for UNIX) Options
  30.    ---------------------------------------
  31.       [2] Object Listings and Descriptions
  32.     [2.a] Links
  33.     [2.b] AI
  34.     [2.c] Range
  35.     [2.d] Object List
  36.    --------------------------------------
  37.       [3] Preliminary Level Designing, Editors Windows and Menus
  38.     [3.a] Preliminary Level Designing
  39.     [3.b] Windows and Menus
  40.    -------------------------------------------------------------
  41.       [4] Level Designing Hints and Practicalities
  42.     [4.a] Level Designing Hints and Practicalities
  43.    ---------------------------------------------
  44.  
  45.  
  46. [1]
  47.  
  48.                           Key Listings and Extended Options
  49.                          -----------------------------------
  50.  
  51. ------------------------------------------------------------------------
  52. [1.a] Key Listings
  53. ------------------------------------------------------------------------
  54.  
  55. a     : Toggle toolbar window.
  56. A     : Disable auto lighting (when computer is too slow, lighting shuts off)
  57. b     : Toggle background tile picker window.
  58. B     : Make background window wider.
  59. c     : Center on player.
  60. C     : Clone object under cursor.
  61. d     : Delete object under cursor.
  62. D     : Toggle delays.
  63. E     : Toggle enlarged render.
  64. f     : Toggle foreground tile picker window.
  65. F     : Make foreground tile picker window wider.
  66. g     :
  67. h     : Help!
  68. i     : Invert color black (for foreground tile window, for discerning
  69.            transparent and non-transparent tiles)
  70. j     : Jump player to mouse position.
  71. k     : Kill first link of object under cursor.
  72. K     : Kill last link of object under cursor.
  73. l     : Toggle light picker window.
  74. L     : Toggle layer show window.
  75. m     : Toggle map.
  76. n     : Next player focus (not working/useful).
  77. o     : Toggle object picker window.
  78. p     : Toggle palette picker window.
  79. P     : Toggle profiler window.
  80. Q     : Quit (does not ask permission).
  81. r     : Raise/lower tile under cursor.
  82. s     : Search for object. Not working yet.
  83. S     : Save level.
  84. t     : Flood fill the current tile. If "grabbing" a palette window, flood
  85.            fills with the palette pattern.
  86. U     : Ultra smooth drawing. Not working yet.
  87. v     : Volume.
  88. w     : Where. Tells the x & y position of the mouse in the game.
  89. x     : Flip object under cursor on the X axis.
  90. z     : Clear weapons.
  91. Z     : Toggle god mode. Cursor must be inside of view to toggle god-mode.
  92. space : Pick up object, so that you can move it around (click to drop).
  93. ctrl  : When moving an object : Hold down to align on a tile grid.
  94.         When not moving an objects : Hold down on one object and let go on
  95.                                      top of another to make a link.
  96. alt   : Hold down while moving to align to center of tile grid.
  97. `     : "Pick up" the foreground tile the mouse is current on.
  98. F1    : Help!
  99. F2    : Save a single screen shot to scrnshot.pcx.
  100. F3    : Save a single screen shot, but name shot0001.pcx, shot0002.pcx...
  101. F5    : Save a series of screen shots, one every 5 frames.
  102. F10   : Reduce screen to what it would for 320x200. Useful for hi-res editing.
  103. +     : Increase view size.
  104. SHIFT+: Increase view size a lot.
  105. +     : Decrease view size.
  106. SHIFT-: Decrease view size a lot.
  107. arrows: Scroll view.
  108. TAB   : Toggle edit/play mode.
  109. /     : Toggle console window.
  110.  
  111. ------------------------------------------------------------------------
  112. [1.b] Extended Options
  113. ------------------------------------------------------------------------
  114.  
  115. -nosound
  116. -sfx_volume [0..127]
  117. -vmode [G640x480x256 |     // SVGA for linux
  118.         G800x600x768 |
  119.         G1024x768x256]
  120. -size xres yres            // for X11 and DOS, for DOS -size ? will give you
  121.                            // a list of available modes
  122. -2                         // doubles each pixel during rendering
  123. -demo                      // quits game after an idle timeout and goes to
  124.                            // demo
  125. -lisp                      // starts up with an interactive lisp command line
  126. -lock_size                 // X11, does not allow window to be resized
  127. -disp/-display             // specify an alternative X server than $DISPLAY
  128. -no_delay                  // starts with no delays, plays as fast as computer
  129.                            // goes
  130. -cprint                    // print all output to stderr instead of console
  131. -nojoy                     // disables joystick use (there isn't any, anyway!)
  132. -lsf [filename]            // use a different lisp startup file than abuse.lsp
  133. -edit                      // Initially start in EDIT_MODE, loads "edit.lsp" 
  134.                            // as well
  135. -t [filename]              // auto-number and load tiles from SPE file
  136. -f [filename]              // load filenames as "level1.spe"
  137.                            // don't shoot yourself in the foot!
  138.  
  139. ------------------------------------------------------------------------
  140. [1.c] X11 (X windows for UNIX) options :
  141. ------------------------------------------------------------------------
  142.  
  143. -noshm                     // don't use Shared memory for X11
  144. -grab_pointer              // causes abuse to keep pointer inside of window
  145.  
  146.  
  147. While playing, press <TAB> to go into development mode, if you ran abuse with
  148. the -edit parameter. Type '/' to bring up the console window, into which you
  149. can type LISP commands.
  150.  
  151.  
  152. [2]
  153.  
  154.                          Object Listings and Descriptions
  155.                         ----------------------------------
  156.  
  157. ------------------------------------------------------------------------
  158. [2.a] Links
  159. ------------------------------------------------------------------------
  160.  
  161.         Before you can learn about the objects you need to learn about
  162. LINKING. Links are the grey lines drawn from one object to another. They
  163. act as visual cues, indicating that those objects are referencing each
  164. other for particular purposes that will be discussed later on in this
  165. document. The exact function of a link depends upon the objects being
  166. linked and the order in which the links are created. Creating a link is
  167. actually quite simple.
  168.  
  169.         First, position your mouse cursor over the object you wish to
  170. start the link from. A grey bounding box will surround the object.  Now,
  171. you have two options. The first, and slightly faster, way is to hold down
  172. the <CTRL> key, move the cursor to the object you want to create the link
  173. to, and let go. The second way is to click on the first object. An extended
  174. options window will open. Now, click on the second object, and you've
  175. made your link. Note that the extended options window now belongs to the
  176. second object, not the first. The advantage of this method is that it can
  177. be used to link objects to lights, whereas the first method cannot.
  178.  
  179.         Some objects can have multiple links.  To make multiple links,
  180. simply repeat either method.  However, if you are using the second
  181. method, you must close the extended options window before you can make
  182. another link from the first object. It is also important to note that links
  183. are sensitive to which object they originate from.  When you create a link
  184. from Object A to Object B, Object B is modified only in that its range is
  185. extended when the player is within range of Object A.
  186.  
  187.         There are two ways to kill a link. The first is the most
  188. flexible and efficient, and involves only the shortcut keys. First, move
  189. the cursor over the object that owns the link. Since objects can have
  190. multiple links, you can now either break the links first to last, by
  191. pressing <k>, or last to first, by pressing <SHIFT>-<k>. To see whether an
  192. object is making a link or being linked, move the cursor over an object with
  193. a link line originating from it. If the line turns yellow, then that object
  194. owns the link.
  195.  
  196.         The second method uses the extended options window. First, open
  197. said window by clicking on the object. There will be two buttons
  198. with a red X on them. The button on the left will break links with
  199. objects from first to last. The button on the right will break links
  200. with objects from last to first. Note that links to lights must be
  201. broken using this method. It is suggested that you close the extended
  202. options window when you are finished, to prevent any accidental linking
  203. or delinking. Simply click on the check mark to close the window.
  204.  
  205.         Most links that objects make act as triggers. That is, an
  206. object usually makes a link to another object, such as a sensor or
  207. switch, which can only have two states (on or off). When this sensor
  208. or switch changes its state, the object is triggered and then proceeds
  209. to do whatever it does best.
  210.  
  211. ------------------------------------------------------------------------
  212. [2.b] AI
  213. ------------------------------------------------------------------------
  214.  
  215.         There are two ways to access an object's AI. The first
  216. method is to click on the object, thus bringing up the extended
  217. options window. Then, click on the AI button, which will bring
  218. up the AI window. The second method is to simply position the
  219. cursor over the object, and then press <SHIFT>-<a>.
  220.  
  221.         The AI window will have a bunch of labeled fields, which are
  222. different for each object. For the most part, these should be
  223. self-explanatory. To modify them, move your mouse cursor over the box
  224. for the parameter you wish to modify, use the <BACKSPACE> key to delete
  225. the current value, and, finally, type in the desired value. Click on
  226. the check to close the AI window and make the changes complete.
  227.  
  228. ------------------------------------------------------------------------
  229. [2.c] Range
  230. ------------------------------------------------------------------------
  231.  
  232.         Another important facet of objects is the range concept. Levels
  233. can be quite large, and have hundreds of objects. Obviously, if all of
  234. them were given processing time, the game would run very slowly. Thus,
  235. only objects within a certain distance of the player are processed.
  236. However, not all objects have the same range. For example, distant
  237. aliens can walk through closed doors, because the aliens have a longer
  238. range. There are two ways to fix this. The first is to search through
  239. the LISP code, find the portion that defines the AI of the objects,
  240. and change the range there. The second way is to link another object,
  241. usually a sensor, to the short-ranged object. When the closer
  242. or longer ranged object is active, it will extend the range of
  243. the linked object, allowing it to perform its special functions.
  244.  
  245. ------------------------------------------------------------------------
  246. [2.d] Object List
  247. ------------------------------------------------------------------------
  248.  
  249. Some objects which have on/off states will change their color to reflect
  250. these states. Green, of course, means on, while red means off. The
  251. following objects do this :
  252.   Sensor
  253.   Death_respawner
  254.   Death_sensor
  255.   All of the logic gates
  256.   Indicator
  257.   Switch
  258.  
  259. Now let's take a look at the objects.
  260.  
  261. AMBIENT_SOUND
  262.         AMBIENT_SOUNDs are played continuously with a user definable delay
  263.         and volume. They have a range of 500 pixels. Volume is highest at the
  264.         point of origin, and diminishes with distance.  You can use the 
  265.         number keys to change the sound type quickly.  Use SHIFT-number key
  266.         to get more of the sound effects.
  267.  
  268.         It can be linked to a sensor or switch and will be
  269.         activated when the sensor or switch is in an on state.
  270.  
  271.  
  272. ANT_CRACK
  273.         An ANT_CRACK is an irregular object from which any number and type of
  274.         aliens can come bursting forth. The user can set the number and type
  275.         of aliens by accessing the extended AI options. The alien types are
  276.         as follows :
  277.  
  278.         0 = yellow-white fast Laser shot
  279.         1 = golden-ornage slow Laser shot
  280.         2 = Grenade
  281.         3 = Rocket
  282.         4 = Plasma
  283.         5 = Fire Bomb
  284.         6 = Death Frizbee
  285.         7 = Laser Saber
  286.  
  287.         You can also press a number key while the cursor is on the ant to
  288.         quickly change the type of weapon it fires.
  289.  
  290.         If it has no links it will NOT be active.
  291.         It can be linked to a sensor or switch and will be
  292.         activated when the sensor or switch is in an on state.
  293.  
  294.  
  295.  
  296. ANT_ROOF
  297.         An ANT_ROOF is an alien whose normal state is a invulnerable coccon.
  298.         Usually placed on the roof, hence its name. It will activate when
  299.         the player comes within range when UNDERNEATH it. It will not activate
  300.         if the player is above it, even when in range. An ANT_ROOF can be of
  301.         any type of alien. To change its type, place the mouse cursor over the
  302.         alien of your choice, watching for a grey bounding box to be drawn.
  303.         Once you are over the alien press any of the number keys from 1-7 to
  304.         change the alien type, refer above to alien type and number.
  305.  
  306.         If it has no links it will be active.
  307.         It can be linked to a sensor or switch and will be
  308.         activated when the sensor or switch is in an on state.
  309.  
  310. BIG_BOMB
  311.         A really big bomb which is triggered by a sensor or switch.
  312.         It has a user definable delay which can be set in its AI.
  313.         It can kill the player if they are in range of its blast, which is
  314.         not very large. They can be chained together by linking them
  315.         sequentially. If placed with no links, the bomb will explode on its
  316.         own.
  317.  
  318.         If it has no links it will be active.
  319.         It can be linked to a sensor or switch and will be
  320.         activated when the sensor or switch is in an on state.
  321.  
  322. BLOCK
  323.         A BLOCK is just an object which can be hurt, but otherwise
  324.         only blocks the player. The player can walk on BLOCKs. BLOCKs have a
  325.         health of 30.
  326.  
  327.         It ignores all links.
  328.  
  329. BOULDER
  330.         A BOULDER is a huge, spiked ball. If dropped from a height, it
  331.         will bounce on the floor doing damage to anything beneath it,
  332.         including aliens, HIDDEN tiles, players, and anything else
  333.         capable of being hurt. Its x and y velocity can be modified in
  334.         its AI. It can be killed.
  335.  
  336.         If it has no links it will be active.
  337.         It can be linked to a sensor or switch and will be
  338.         activated when the sensor or switch is in an on state.
  339.  
  340. BOMB
  341.         This is a smaller version of the BIG_BOMB and does the same thing,
  342.         but has a weaker and smaller explosion. See BIG_BOMB above.
  343.  
  344.         If it has no links it will be active.
  345.         It can be linked to a sensor or switch and will be
  346.         activated when the sensor or switch is in an on state.
  347.  
  348. CONC
  349.         This is a mine. When touched by the player, it explodes, causing
  350.         damage. Otherwise it will just sit there waiting for the player.
  351.         Typically placed on the floor.
  352.  
  353.         If it has no links it will be active.
  354.         It can be linked to a sensor or switch and will be
  355.         activated when the sensor or switch is in an on state.
  356.  
  357.  
  358. CONC_AIR
  359.         This is a air mine. Essentially the same as the CONC mine, except
  360.         it looks different. Typically placed in the air.
  361.  
  362.         If it has no links it will be active.
  363.         It can be linked to a sensor or switch and will be
  364.         activated when the sensor or switch is in an on state.
  365.  
  366. DEATH_RESPAWNER
  367.         The DEATH_RESPAWNER will spawn a new object at the location of another
  368.         object, when that object dies. For example, if linked to an alien, a
  369.         user chosen object will appear where that alien died. This can be
  370.         useful for creating types of puzzles where the player must kill a
  371.         certain alien. This object can only be used on the alien objects.
  372.  
  373.         The linking order is as follows:
  374.  
  375.                 First, link the DEATH_RESPAWNER to the object you want to
  376.                 be respawned.
  377.                 
  378.                 Next, link the DEATH_RESPAWNER to any number of aliens (ANTs).
  379.  
  380. DEATH_SENSOR
  381.         This object, like all other sensors, has two states : on and off.
  382.         Whenever the object this sensor is linked to dies, or is deleted
  383.         (which is the case with ammo and health), the sensor will switch to an
  384.         on state. It can have multiple links. If it does, the sensor will
  385.         switch to the on state only when all of the objects it has been linked
  386.         to are dead or deleted.
  387.  
  388. DFRIS_ICON10
  389.         This is the large ammo unit for the Death Frizbee. It gives the player
  390.         10 additional units of ammo. Like all ammo, if it is connected to a
  391.         sensor or switch which is off, the ammo will be invisible, untouchable,
  392.         and unaffected by gravity, until the sensor or switch turns on.
  393.  
  394.         If it has no links it will be active.
  395.         It can be linked to a sensor or switch and will be
  396.         activated when the sensor or switch is in an on state.
  397.  
  398. DFRIS_ICON4
  399.         This is the small ammo unit for the Death Frizbee. It gives the player
  400.         4 additional units of ammo. Like all ammo, if it is connected to a
  401.         sensor or switch which is off, the ammo will be invisible, untouchable,
  402.         and unaffected by gravity, until the sensor or switch turns on.
  403.  
  404.         If it has no links it will be active.
  405.         It can be linked to a sensor or switch and will be
  406.         activated when the sensor or switch is in an on state.
  407.  
  408. FBOMB_ICON1
  409.         This is the small ammo unit for the Fire Bomb. It gives the player 1
  410.         additional unit of ammo. Like all ammo, if it is connected to a
  411.         sensor or switch which is off, the ammo will be invisible, untouchable,
  412.         and unaffected by gravity, until the sensor or switch turns on.
  413.  
  414.         If it has no links it will be active.
  415.         It can be linked to a sensor or switch and will be
  416.         activated when the sensor or switch is in an on state.
  417.  
  418. FBOMB_ICON5
  419.         This is the large ammo unit for the Fire Bomb. It gives the player 5
  420.         additional units of ammo. Like all ammo, if it is connected to a
  421.         sensor or switch which is off, the ammo will be invisible, untouchable,
  422.         and unaffected by gravity, until the sensor or switch turns on.
  423.  
  424.         If it has no links it will be active.
  425.         It can be linked to a sensor or switch and will be
  426.         activated when the sensor or switch is in an on state.
  427.  
  428. FLYER
  429.         This is a flying robot, which can fire any of the 7 weapon types.
  430.         To change the weapon type, use the same method used for the ANT_ROOF.
  431.  
  432.         If it has no links it will be active.
  433.         It can be linked to a sensor or switch and will be
  434.         activated when the sensor or switch is in an on state.
  435.  
  436. FORCE_FIELD
  437.         This object is a wall of energy which blocks the character from
  438.         crossing. This wall can be up to one screen in height. Position the
  439.         object at the top of where you want the wall.
  440.  
  441.         If it has no links it will be active (on or off depending).
  442.         It can be linked to a sensor or switch and will be
  443.         activated when the sensor or switch is in an on state.
  444.  
  445. GATE_AND
  446.         Logic gates modify their state depending upon the states of their
  447.         links. A GATE_AND will turn on only when all of its links are in
  448.         the on state. This logic gate can have multiple links.
  449.  
  450. GATE_DELAY
  451.         Logic gates modify their state depending upon the states of their
  452.         links. A GATE_DELAY reflects the state of its link, however, it has
  453.         a user definable delay before it switches states. This logic gate
  454.         can have only one link.
  455.  
  456. GATE_NOT
  457.         Logic gates modify their state depending upon the states of their
  458.         links. The state of a GATE_NOT will always be the opposite of the
  459.         state of its link. A GATE_NOT only supports one link.
  460.  
  461. GATE_OR
  462.         Logic gates modify their state depending upon the states of their
  463.         links. A GATE_OR will be in the on state whenever any one of its
  464.         links are on, and is off only when all of its links are off. This
  465.         logic gate supports multiple links.
  466.  
  467. GATE_PULSE
  468.         Logic gates modify their state depending upon the states of their
  469.         links. A GATE_PULSE will, when switched on by its link, pulsate
  470.         between on and off states, with a user definable delay between
  471.         off states. This gate only supports one link.
  472.  
  473. GATE_XOR
  474.         Logic gates modify their state depending upon the states of their
  475.         links. A GATE_XOR switches on if and only if an odd number of its
  476.         links are on. That is, if there are two links, and one is on while
  477.         the other is off, the GATE_XOR will be on. If they were both off or
  478.         both on, then the GATE_XOR would be off. This gate supports multiple
  479.         links.
  480.  
  481. GREEN_FLYER
  482.         This is a green flying robot, which can fire any of the 7 weapon
  483.         types. See ANT_ROOF for a description of how to change the weapon
  484.         type.
  485.  
  486.         If it has no links it will be active.
  487.         It can be linked to a sensor or switch and will be
  488.         activated when the sensor or switch is in an on state.
  489.  
  490.  
  491. GRENADE_ICON10
  492.         This is the large ammo unit for the Grenade. It gives the player 10
  493.         additional units of ammo. Like all ammo, if is connected to a sensor
  494.         or switch which is off, the ammo will be invisible, untouchable, and
  495.         unaffected by gravity, until the sensor or switch turns on.
  496.  
  497.         If it has no links it will be active.
  498.         It can be linked to a sensor or switch and will be
  499.         activated when the sensor or switch is in an on state.
  500.  
  501.  
  502. GRENADE_ICON2
  503.         This is the small ammo unit for the Grenade. It gives the player 5
  504.         additional units of ammo. Like all ammo, if is connected to a sensor
  505.         or switch which is off, the ammo will be invisible, untouchable, and
  506.         unaffected by gravity, until the sensor or switch turns on.
  507.  
  508.         If it has no links it will be active.
  509.         It can be linked to a sensor or switch and will be
  510.         activated when the sensor or switch is in an on state.
  511.  
  512. HEALTH
  513.         This is a heart icon. It increases your health by 5-20 points,
  514.         depending on difficulty level.
  515.  
  516. HIDDEN_ANT
  517.         This is an ANT whose normal state is invisible. It acts like the
  518.         ANT_ROOF, but is invisible.(see ANT_ROOF)
  519.  
  520.         If it has no links it will be active.
  521.         It can be linked to a sensor or switch and will be
  522.         activated when the sensor or switch is in an on state.
  523.  
  524. HIDDEN_WALL1
  525.         Hidden objects are used to hide secrets. They can be destroyed using
  526.         any of your weapons. Hidden walls can be made indestructible by
  527.         linking them up to sensors or switchs. When the switch or sensor
  528.         turns on, the hidden wall will self destruct, causing a lot
  529.         of damage to any aliens, and/or other hidden walls surrounding
  530.         it, but no damage to the player. This hidden wall looks like
  531.         a floor tile.
  532.  
  533.         If it has no links it will be active.
  534.         It can be linked to a sensor or switch and will be
  535.         activated when the sensor or switch is in an on state.
  536.  
  537. HIDDEN_WALL2
  538.         This hidden wall looks like a roof tile.
  539.  
  540.         If it has no links it will be active.
  541.         It can be linked to a sensor or switch and will be
  542.         activated when the sensor or switch is in an on state.
  543.  
  544. HIDDEN_WALL3
  545.         This hidden wall looks like a wall tile.
  546.  
  547.         If it has no links it will be active.
  548.         It can be linked to a sensor or switch and will be
  549.         activated when the sensor or switch is in an on state.
  550.  
  551. HIDDEN_WALL4
  552.         This hidden wall looks like a blocking tile.
  553.  
  554.         If it has no links it will be active.
  555.         It can be linked to a sensor or switch and will be
  556.         activated when the sensor or switch is in an on state.
  557.  
  558. HIDDEN_WALL5
  559.         This hidden wall looks like a floor tile.
  560.  
  561.         If it has no links it will be active.
  562.         It can be linked to a sensor or switch and will be
  563.         activated when the sensor or switch is in an on state.
  564.  
  565. HIDDEN_WALL_2x2
  566.         This hidden wall looks like a 2x2 blocking tile.
  567.  
  568.         If it has no links it will be active.
  569.         It can be linked to a sensor or switch and will be
  570.         activated when the sensor or switch is in an on state.
  571.  
  572. HIDDEN_WALL_3FLR
  573.         This hidden wall looks like a 3 tile wide floor tile.
  574.  
  575.         If it has no links it will be active.
  576.         It can be linked to a sensor or switch and will be
  577.         activated when the sensor or switch is in an on state.
  578.  
  579. HIDDEN_WALL_3TOP
  580.         This hidden wall looks like a 3 tile wide roof tile.
  581.  
  582.         If it has no links it will be active.
  583.         It can be linked to a sensor or switch and will be
  584.         activated when the sensor or switch is in an on state.
  585.  
  586. HIDDEN_WALL_3WALL
  587.         This hidden wall looks like a 3 tile wide wall tile.
  588.  
  589.         If it has no links it will be active.
  590.         It can be linked to a sensor or switch and will be
  591.         activated when the sensor or switch is in an on state.
  592.  
  593. HIDDEN_WALL_AFLR
  594.         This hidden wall looks like an alien floor tile.
  595.  
  596.         If it has no links it will be active.
  597.         It can be linked to a sensor or switch and will be
  598.         activated when the sensor or switch is in an on state.
  599.  
  600. INDICATOR
  601.         This object switches its color between red and green when it turns off
  602.         and on. It's useful for showing the player info about sensor states
  603.         or switch states.
  604.  
  605.         It can be linked to a sensor or switch and will be
  606.         activated when the sensor or switch is in an on state.
  607.  
  608. JUGGER
  609.         This is a walking or stationary robot which tosses grenades.
  610.         Its AI modifies whether is walks or is stationary, and the angle
  611.         at which it throws the grenades.
  612.  
  613.         If it has no links it will be active.
  614.         It can be linked to a sensor or switch and will be
  615.         activated when the sensor or switch is in an on state.
  616.  
  617. LADDER
  618.         LADDERs allow the player to climb up and down. The LADDER must be
  619.         linked to another object to work. The LADDER marks the upper left
  620.         corner of the box the player can climb up in, and the other object
  621.         marks the lower right corner. When a player enters this box, they
  622.         can climb the ladder by pressing up. Note that a player is
  623.         considered to be in this box if his feet are.
  624.  
  625.         This object requies one and only 1 link to another object
  626.         (usually a marker) to function.
  627.  
  628. LAVA
  629.         LAVA constantly does damage to the player, for as long as they are
  630.         touching.
  631.  
  632. LIGHTHOLD
  633.         A LIGHTHOLD allows other objects to have lights attached to them.
  634.         Simply link the LIGHTHOLD to the light and to the object you wish to
  635.         hold the light. The order in which these links are created does not
  636.         make a difference. The light will now follow the other object wherever
  637.         it goes. Remember to use the second method of linking for lights.
  638.  
  639. LIGHTIN
  640.         This object hurts the player when the lighting flashes. The speed is
  641.         user definable.
  642.  
  643.         If it has no links it will be active.
  644.         It can be linked to a sensor or switch and will be
  645.         activated when the sensor or switch is in an on state.
  646.  
  647. LSABER_ICON10
  648.         This is the small ammo unit for the Laser Saber. It gives
  649.         the player 10 additional units of ammo. Like all ammo, if it is
  650.         connected to a sensor or switch which is off, the ammo will be
  651.         invisible, untouchable, and unaffected by gravity, until the sensor
  652.         or switch turns on.
  653.  
  654.         If it has no links it will be active.
  655.         It can be linked to a sensor or switch and will be
  656.         activated when the sensor or switch is in an on state.
  657.  
  658. LSABER_ICON50
  659.         This is the large ammo unit for the Laser Saber. It gives
  660.         the player 50 additional units of ammo. Like all ammo, if it is
  661.         connected to a sensor or switch which is off, the ammo will be
  662.         invisible, untouchable, and unaffected by gravity, until the sensor
  663.         or switch turns on.
  664.  
  665.         If it has no links it will be active.
  666.         It can be linked to a sensor or switch and will be
  667.         activated when the sensor or switch is in an on state.
  668.  
  669. MARKER
  670.         An object which does nothing, but can hold links for objects
  671.         which need to be linked to other objects such as the LADDER.
  672.  
  673. MBULLET_ICON10
  674.         This is the large ammo unit for the Laser Rifle. It gives
  675.         the player 10 additional units of ammo. Like all ammo, if it is
  676.         connected to a sensor or switch which is off, the ammo will be
  677.         invisible, untouchable, and unaffected by gravity, until the sensor
  678.         or switch turns on.
  679.  
  680.         If it has no links it will be active.
  681.         It can be linked to a sensor or switch and will be
  682.         activated when the sensor or switch is in an on state.
  683.  
  684. MBULLET_ICON5
  685.         This is the small ammo unit for the Laser Rifle. It gives
  686.         the player 5 additional units of ammo. Like all ammo, if it is
  687.         connected to a sensor or switch which is off, the ammo will be
  688.         invisible, untouchable, and unaffected by gravity, until the sensor
  689.         or switch turns on.
  690.  
  691.         If it has no links it will be active.
  692.         It can be linked to a sensor or switch and will be
  693.         activated when the sensor or switch is in an on state.
  694.  
  695. NEXT_LEVEL
  696.         When the player activates the NEXT_LEVEL object (by pressing the down
  697.         arrow while touching it), it will take the player to a level listed as
  698.         a number in its AI. To use the NEXT_LEVEL object it is necessary for
  699.         the level to be in the levels directory and use the naming convention
  700.         "levelXX.spe", where XX is any number from 0 to 99. Note that the first
  701.         0 must be included if the number is less than 10.
  702.  
  703.         It is recommended that you double link the NEXT_LEVEL to its top,
  704.         NEXT_LEVEL_TOP. To double link something means to link one object to
  705.         another and that second object back to the first.
  706.  
  707. NEXT_LEVEL_TOP
  708.         The top part to the NEXT_LEVEL. Should be linked to a NEXT_LEVEL
  709.         object.
  710.  
  711. OBJ_HOLDER
  712.         This object is similar to the LIGHTHOLD, but instead of attaching
  713.         a light to an object, it glues together two objects. This object is
  714.         sensitive to the ordering of the links. The first link is the object
  715.         to be held. The second link is the object which is holding the first.
  716.         There is an optional third link which, if it exists, will act as a
  717.         trigger for the OBJ_HOLDER. The object will be held only if this link
  718.         is on.
  719.         Note that if the first or second link is broken (which will happen if
  720.         the object dies or is deleted), the links will reorder themselves.
  721.         The OBJ_HOLDER has modifiable AI for the displacement of the first
  722.         object with respect to the second object.
  723.         An OBJ_HOLDER with no links or one link will be deleted by the engine.
  724.  
  725. OBJ_MOVER
  726.         This object allows the level designer create paths for objects to
  727.         move on. It accepts two links. The first link marks the endpoint
  728.         for the path, and the second is the object which is to be moved.
  729.         By linking OBJ_MOVERs in a circle, the object can be kept moving
  730.         indefinitely. When the OBJ_MOVER moves the object to its
  731.         destination, the link is then transfered to the end object, which
  732.         in a chain of OBJ_MOVER will then move the target object to the
  733.         next link in the chain. A chain composed of multiple OBJ_MOVERS
  734.         can hold multiple target objects, one for each pair of OBJ_MOVERS.
  735.         You can modify the speed at which it will move in its AI.
  736.  
  737. PLASMA_ICON10
  738.         This is the small ammo unit for the Plasma Beam. It gives
  739.         the player 10 additional units of ammo. Like all ammo, if it is
  740.         connected to a sensor or switch which is off, the ammo will be
  741.         invisible, untouchable, and unaffected by gravity, until the sensor
  742.         or switch turns on.
  743.  
  744.         If it has no links it will be active.
  745.         It can be linked to a sensor or switch and will be
  746.         activated when the sensor or switch is in an on state.
  747.  
  748. PLASMA_ICON50
  749.         This is the large ammo unit for the Plasma Beam. It gives
  750.         the player 50 additional units of ammo. Like all ammo, if it is
  751.         connected to a sensor or switch which is off, the ammo will be
  752.         invisible, untouchable, and unaffected by gravity, until the
  753.         sensor or switch turns on.
  754.  
  755.         If it has no links it will be active.
  756.         It can be linked to a sensor or switch and will be
  757.         activated when the sensor or switch is in an on state.
  758.  
  759. POINTER
  760.         An object which does nothing, but can be used to draw the players
  761.         attention to certain points in the level. It looks like a golden
  762.         arrow.
  763.  
  764. POWER_FAST
  765.         Power icons, when collected, augment the player's abilities. The
  766.         player can only have one power icon at a time. All power icons
  767.         are activated by pressing the right mouse button.
  768.         This power icon will allow the player to move twice as fast as
  769.         normal and jump higher.
  770.  
  771. POWER_FLY
  772.         Power icons, when collected, augment the player's abilities. The
  773.         player can only have one power icon at a time. All power icons
  774.         are activated by pressing the right mouse button.
  775.         This power icon will allow the player to fly.
  776.  
  777. POWER_HEALTH
  778.         Power icons, when collected, augment the player's abilities. The
  779.         player can only have one power icon at a time. All power icons
  780.         are activated by pressing the right mouse button.
  781.         This power icon will allow the player to have 200 health points.
  782.  
  783. POWER_SNEAKY
  784.         Power icons, when collected, augment the player's abilities. The
  785.         player can only have one power icon at a time. All power icons
  786.         are activated by pressing the right mouse button.
  787.         This power icon will allow the player to become paritally invisible.
  788.  
  789. PUSHER
  790.         This object will push the player in the direction of the arrows.
  791.         The level designer can change the strength at which it pushes the
  792.         player in its AI.
  793.  
  794.         If it has no links it will be active.
  795.         It can be linked to a sensor or switch and will be
  796.         activated when the sensor or switch is in an on state.
  797.  
  798. RESPAWNER
  799.     (This object is not avaible until net abuse is available)
  800.         This object, like the DEATH_RESPAWNER, spawns new objects. It has but
  801.         one link, the object it will respawn. There is a user definable delay
  802.         between respawns in its AI. An object is respawned only if it is
  803.         deleted once spawned. The object will be spawned at the location of
  804.         the RESPAWNER. One use of this object is to have infinite sources of
  805.         ammo and health in network games.
  806.  
  807. RESTART_POSITION
  808.         This object functions as a user activated save position in the game.
  809.         When the levels tend to be very large, it is necessary to put in
  810.         RESTART_POSITIONs, so that if the player dies, they do not have to
  811.         start from the very beginning again. In general, the more
  812.         RESTART_POSITIONs a level has the easier it is.
  813.  
  814. ROB1
  815.         A large robot which can chase you down halls. It has large spinning
  816.         blades which are situated in front of it, that do a decent amount of
  817.         damage. It has user definable speed and health settings in its AI.
  818.  
  819.         If it has no links it will be active.
  820.         It can be linked to a sensor or switch and will be
  821.         activated when the sensor or switch is in an on state.
  822.  
  823. ROCKET_ICON2
  824.         This is the small ammo unit for the Rocket Launcher. It gives
  825.         the player 2 additional units of ammo. Like all ammo, if it is
  826.         connected to a sensor or switch which is off, the ammo will be
  827.         invisible, untouchable, and unaffected by gravity, until the sensor
  828.         or switch turns on.
  829.  
  830.         If it has no links it will be active.
  831.         It can be linked to a sensor or switch and will be
  832.         activated when the sensor or switch is in an on state.
  833.  
  834. ROCKET_ICON5
  835.         This is the large ammo unit for the Rocket Launcher. It gives
  836.         the player 5 additional units of ammo. Like all ammo, if it is
  837.         connected to a sensor or switch which is off, the ammo will be
  838.         invisible, untouchable, and unaffected by gravity, until the sensor
  839.         or switch turns on.
  840.  
  841.         If it has no links it will be active.
  842.         It can be linked to a sensor or switch and will be
  843.         activated when the sensor or switch is in an on state.
  844.  
  845. SENSOR
  846.         The sensor is the basic triggering device. In addition to responding
  847.         to the player's position, a sensor can also be used to extend the
  848.         range of other objects, since sensors have the longest range. A sensor
  849.         has on and off area boxes. When the player enters the on area (green
  850.         box) the sensor will turn on and stay on until the player leaves the
  851.         off area (red box).
  852.  
  853.         Note that a player is only in the box if his feet are.
  854.  
  855.         The off area typically encloses the on area, but this does not have
  856.         to be the case. Each of the areas is user definable in the sensor's
  857.         AI.
  858.  
  859.         Sensors do not processs their links.
  860.  
  861. SMART_PLAT_BIG
  862.         The smart platforms are objects which require two links, typically
  863.         (but not always) a pair of sensors. If a link is on, it will travel to
  864.         that linked object's location. A third optional link will, if it
  865.         exists, direct the platform to be active or inactive, depending on the
  866.         link's state (on will activate, and off will deactivate). The speed of
  867.         the platform can be changed in its AI.
  868.         This platform is a big techno looking platform.
  869.  
  870. SMART_PLAT_RED
  871.         This platform is a big alien looking platform.
  872.  
  873. SMART_PLAT_SMALL
  874.         This platform is a small techno looking platform.
  875.  
  876. SPRAY_GUN
  877.         This is a gun object which, when active, will shoot out sprays of
  878.         fire. It is capable of shooting any of the weapon types. You can use
  879.         the ANT_ROOF method for altering the weapon type, or change it in the
  880.         AI. The arc range and firing speed are also user configurable.
  881.     You can use the number keys to change the weapon type quickly.
  882.  
  883.         If it has no links it will NOT be active.
  884.         It can be linked to a sensor or switch and will be
  885.         activated when the sensor or switch is in an on state.
  886.  
  887. SPRING
  888.         This object will allow the player to jump higher than normal.
  889.         The longer the player is in contact with the SPRING object
  890.         the further it will push them. The strength of the push is
  891.         user definable.
  892.  
  893.         If it has no links it will be active.
  894.         It can be linked to a sensor or switch and will be
  895.         activated when the sensor or switch is in an on state.
  896.  
  897. START
  898.         This object sets the starting point for the player when the game
  899.         is begun anew. If the player is set behind objects when the game
  900.         starts, then is nessecary to raise this object and save the level
  901.         again with the raised START object.
  902.         To raise objects, position the mouse cursor over the object, and
  903.         press <>> (<SHIFT>-<.>).
  904.  
  905.         It is possible to have multiple starting points in a level. The
  906.         game will start where the last one was placed.
  907.  
  908. STEP
  909.         A simple step that the player can walk on.
  910.  
  911. SWITCH
  912.         This is a user activated object. It has two states, on and off.
  913.         Other objects reference this object often, as it is a versatile tool.
  914.  
  915. SWITCH_BALL
  916.         This is a user activated object. It has two states, on and off.
  917.         It is similar to the regular switch, but is activated when it is
  918.         shot. It cannot be deactivated.
  919.  
  920. SWITCH_DELAY
  921.         This switch, once activated, will revert back to its default state
  922.         after a user definable time delay. Its default state is off.
  923.  
  924. SWITCH_DIMMER
  925.         This is the only object that can modify lights. It requires two
  926.         links, one to a switch or any object which can change states
  927.         (on or off), and the other to a light which it modifies. Since
  928.         light and object links are different, you can link them in any
  929.         order. The amount of decrease in light can be set in the AI.
  930.         If you flip a SWITCH_DIMMER around (press the <x> key with your
  931.         cursor over the SWITCH_DIMMER), the light will grow instead of
  932.         shrink. The SWITCH_DIMMER will only activate when the object it is
  933.         linked to is in the on state.
  934.  
  935.         If it has no links it will NOT be active.
  936.         It can be linked to a sensor or switch and will be
  937.         activated when the sensor or switch is in an on state.
  938.  
  939. SWITCH_DOOR
  940.         A SWITCH_DOOR requires one link. When this link is off, the
  941.         SWITCH_DOOR will be in a blocking state, but when on, the
  942.         SWITCH_DOOR will be in a non-blocking state.
  943.  
  944.         It can be linked to a sensor or switch and will be
  945.         activated when the sensor or switch is in an on state.
  946.  
  947. SWITCH_MOVER
  948.         This object requires two links, the first to the object which is
  949.         to be moved and the second to any object which can change states (on
  950.         or off). When the second object's state is on, the switch mover will
  951.         move the first object to the SWITCH_MOVER's current position. The
  952.         engine will then delete the SWITCH_MOVER.
  953.  
  954.         A SWITCH_MOVER with no links will be deleted by the engine.
  955.         It can be linked to a sensor or switch and will be
  956.         activated when the sensor or switch is in an on state.
  957.  
  958. SWITCH_ONCE
  959.         This is a user activated object. It has two states, on and off.
  960.         Other objects reference this object often as it is a versatile
  961.         tool. It can only be switched ONCE.
  962.  
  963. TELE2
  964.         This is an object which requires one link. When activated, it will
  965.         teleport the player to the postion of the object it is linked to.
  966.         TELE2s can be linked to each other, thus creating connections within
  967.         levels which have no direct connections.
  968.  
  969. TP_DOOR
  970.         A TP_DOOR requires one link. This link should be to another TP_DOOR.
  971.         When the TP_DOOR is activated, it will teleport the player to the
  972.         TP_DOOR it is linked to.
  973.  
  974. TRACK_GUN
  975.         This object, when active, will track and shoot the player.  Rate of
  976.         fire and weapon type are modifiable via its AI.  You can use the
  977.         number keys to change the weapon type quickly.
  978.  
  979.         If it has no links it will be active.
  980.         It can be linked to a sensor or switch and will be
  981.         activated when the sensor or switch is in an on state.
  982.  
  983. TRAIN_MSG
  984.         When a player is near this object, a preset message will be printed.
  985.         These messages are defined externally.
  986.  
  987. TRAP_DOOR2
  988.         A door similar to the SWITCH_DOOR, but this is used on the floor.
  989.         (see SWITCH DOOR)
  990.  
  991.         It can be linked to a sensor or switch and will be
  992.         activated when the sensor or switch is in an on state.
  993.  
  994. TRAP_DOOR3
  995.         A door similar to the SWITCH_DOOR, but this is used on the floor.
  996.         (see SWITCH DOOR)
  997.  
  998.         It can be linked to a sensor or switch and will be
  999.         activated when the sensor or switch is in an on state.
  1000.  
  1001. WHO
  1002.         Another type of flying robot, with the same attributes as the FLYER.
  1003.         (see FLYER)
  1004.  
  1005.         If it has no links it will be active.
  1006.         It can be linked to a sensor or switch and will be
  1007.         activated when the sensor or switch is in an on state.
  1008.  
  1009.  
  1010. [3]
  1011.  
  1012.              Preliminary Level Designing, Windows and Menus
  1013.             ---------------------------------------------------------
  1014.  
  1015.  
  1016. ------------------------------------------------------------------------
  1017. [3.a] Preliminary Level Designing
  1018. ------------------------------------------------------------------------
  1019.  
  1020.         When creating a new level, it is generally a good idea to think
  1021. about a general theme. Will it be all action? Will there be puzzles, and
  1022. if so, have difficult will they be? What is the mood of the level? What
  1023. is the skill level of the target player? Keep these questions in mind. You
  1024. may also find it helpful to sketch out the general design of a level on
  1025. paper before you begin. Levels can be more or less as large as you want them
  1026. to be, but the default size of 100 by 100 tiles should be large enough for
  1027. most levels.
  1028.  
  1029.         However, before you can begin putting down tiles and objects, you
  1030. must first learn to tame the windows and menus that populate the world
  1031. we call ABUSE.
  1032.  
  1033.  
  1034. ------------------------------------------------------------------------
  1035. [3.b] Windows and Menus
  1036. ------------------------------------------------------------------------
  1037.  
  1038.         First, you will need to start the game in edit mode. This will
  1039. allow you to access the built-in editor. To do this, go to the current
  1040. ABUSE directory and type in this line :
  1041.  
  1042.         abuse -edit
  1043.  
  1044.         The "-edit" is an Extended Option. See section 1.b for a complete
  1045. listing of these.
  1046.  
  1047.         The game will now start. It will load level 00, the training level
  1048. by default. This will suit our goal of learning the windows and menus just
  1049. fine. Notice that the game is not running yet. If you have already played
  1050. the game, you will notice there now is a menu bar at the bottom of the
  1051. screen that is not present when you normally play, and that your cursor is
  1052. now an arrow instead of the usual target. Let's examine the menus and their
  1053. functions.
  1054.  
  1055.         Under the farthest left hand menu called FILE, we find a listing
  1056. of file utility commands and some advanced options.
  1057.  
  1058. Under FILE-->
  1059.              Load Level
  1060.              Save Level (S)
  1061.              Save level as
  1062.              Save game
  1063.              New level
  1064.              Resize map
  1065.              Suspend non-players
  1066.              Play mode toggle (TAB)
  1067.              Save Palettes
  1068.              Start cache profile
  1069.              End cache profile
  1070.  
  1071. The first 5 options from the top are basic file utility commands found
  1072. in almost all programs.
  1073.  
  1074.         Load level
  1075.                 This command loads in levels. There are two methods you
  1076.                 can use to do this. The first is the command line -- simply
  1077.                 point the cursor at the text box at the top of the window,
  1078.                 use the <BACKSPACE> key to delete the current contents, and
  1079.                 type in the path and name of the level you wish to load.
  1080.                 The second is the file selection system that uses the mouse.
  1081.                 Under the text box, you will notice a list of files in the
  1082.                 current directory. By double clicking on a directory, you
  1083.                 can move around your directory structure. Double clicking on
  1084.                 a file will have the editor try to load it as a level.
  1085.                                 -------NOTE----------
  1086.                 The file selection system does not work for loading up files
  1087.                 outside the directory from which ABUSE was ran. Use the
  1088.                 command line to load up levels from other directories outside
  1089.                 the current one.
  1090.  
  1091.         Save level (S)
  1092.                 This command saves levels. A shortcut key is <SHIFT>-<s>.
  1093.                 This command will save the level with the name and path of the
  1094.                 currently loaded level.
  1095.  
  1096.         Save level as
  1097.                 This command saves a level using a different name from the
  1098.                 currently loaded level. Its methods are the same as the Load
  1099.                 Level command, and it has the same limitaions.
  1100.  
  1101.         Save game
  1102.                 The save game command saves the level with your current
  1103.                 position and weapon status. When the level is loaded up,
  1104.                 the player will begin at the position from which the game
  1105.                 was saved. This differs from the other save level commands
  1106.                 in those do not save your current position, and weapon status.
  1107.  
  1108.         New level
  1109.                 This command creates a new level.
  1110.  
  1111.         Resize map
  1112.                 This command resizes the map (level). The default size is
  1113.                 100 x 100 tiles. A tile is 30 x 15 pixels, so this
  1114.                 translates into a 3000 x 1500 pixel world, or roughly
  1115.                 9.5 x 7.5 screens at the default resolution of 320x200.
  1116.                 To change the size of the world type in the new parameters
  1117.                 and press <OK>.
  1118.  
  1119.         Suspend non-players
  1120.                 This command stops all objects from being processed, aside
  1121.                 from the main character. You will notice that when you
  1122.                 execute this command, the main characters upper body is
  1123.                 frozen. This is because the main character is composed of two
  1124.                 objects, and only the lower half is processed. This mode
  1125.                 is useful in level designing when you don't want to
  1126.                 disturb the world as you roam about.
  1127.  
  1128.         Play mode toggle (TAB)
  1129.                 This command starts the game from edit mode, allowing you to
  1130.                 play the game as you normally would. Once you select this
  1131.                 command you can only use the short-cut key (TAB) to return to
  1132.                 edit mode. It is suggested you use this key and forgo the menu
  1133.                 command, as the shortcut is much faster and not as tedious,
  1134.                 and you will find yourself using it often.
  1135.  
  1136.         Save palettes
  1137.                 This command saves palettes to a file called edit.lsp, which
  1138.                 can be edited using a conventional text editor. Palettes will
  1139.                 be discussed in detail later in this document.
  1140.  
  1141.         Start cache profile
  1142.                 This is a level optimization feature. It lets the engine know
  1143.                 in advance which graphics and sounds will be used in a level,
  1144.                 so that it can store them in an efficient manner, resulting
  1145.                 in reduced disk access when playing the level.
  1146.                 -----------------------NOTE--------------------------
  1147.                 This command should only be used for COMPLETED levels.
  1148.                 To use this command properly these steps must be followed :
  1149.  
  1150.                    1) Start a new level from the proper position and state.
  1151.                    2) Select this command from the menu system.
  1152.                    3) Enter play mode.
  1153.                    4) Play through the level as you normally would. Using
  1154.                       save positions is ok. Each time graphics, sound,
  1155.                       etc. is used, the game makes note of it.
  1156.                    5) Continue until you reach the end of the level. Do NOT
  1157.                       go to the next level.
  1158.                    6) Press tab to return to edit mode.
  1159.                    7) Use the load command to reload the level.
  1160.                    8) Save the level from the menu, or by using <SHIFT>-<s>
  1161.                    9) Choose End Cache Profile from the file menu.
  1162.  
  1163.         End/save cache profile
  1164.                 This command will save and end the cache optimization
  1165.                 procedure. It saves the data to a file under the name
  1166.                 and directory of the original level with an extensiton of
  1167.                 .cpf.
  1168.  
  1169.         From the FILE menu you will use the Load Level command most often.
  1170. The rest are occasionally used, and the Save Level command has a keyboard
  1171. short-cut so it will not be necessary to use the menu for that command. Now
  1172. let's take a look at the EDIT menus.
  1173.  
  1174. Under EDIT ---->
  1175.                 Toggle light
  1176.                 Set scroll rate
  1177.                 Center on player
  1178.                 Add palette
  1179.                 Toggle Delays
  1180.  
  1181.                 God mode
  1182.                 Clear weapons (z)
  1183.                 Mouse scroll
  1184.                 Lock palette windows
  1185.                 Raise all foreground
  1186.                 Toggle object names
  1187.  
  1188.                 Toggle map        (m)
  1189.                 Shrink to 320x200 (F10)
  1190.                 Disable view shifts
  1191.                 Ultra Smooth draw (U)
  1192.                 Disable Autolight (A)
  1193.                 Show FPS/Obj count
  1194.  
  1195.                 Record demo
  1196.                 Play demo
  1197.  
  1198.  
  1199.         Toggle light
  1200.                 This command turns on and off the lighting. Lighting is a
  1201.                 unique feature of the Abuse engine, allowing the level
  1202.                 designer to create new and interesting scenes simply
  1203.                 by moving around the light sources. However, it can be
  1204.                 distracting while editing a level, so this command is
  1205.                 provided.
  1206.  
  1207.         Set scroll rate
  1208.                 This command modifies the rate at which the foreground
  1209.                 layer and background layer scroll relative to each other.
  1210.                 The Abuse engine has the capability for 2 layers of
  1211.                 parallaxing. The top layer is called the foreground layer
  1212.                 and the bottom is called the background layer. The parameters
  1213.                 for the scroll rate are:
  1214.  
  1215.                         rate for background scroll in x axis:
  1216.                         rate for foreground scroll in x axis:
  1217.  
  1218.                         rate for background scroll in y axis:
  1219.                         rate for foreground scroll in y axis:
  1220.  
  1221.                 For example if the parameters were:
  1222.  
  1223.                                X mul         1
  1224.                                X div         2
  1225.  
  1226.                                Y mul         1
  1227.                                Y div         2
  1228.  
  1229.                 Then background would scroll twice as fast as the
  1230.                 foreground in the x and y axes.
  1231.  
  1232.         Center on player
  1233.                 This command will center the screen on the main character.
  1234.                 It's very useful since the Abuse engine allows the level
  1235.                 designer to move the center of the screen away from the
  1236.                 character. The short-cut key is <c>.
  1237.  
  1238.         Add palette
  1239.                 This command allows the level designer to make custom
  1240.                 palettes. When you choose this command, a dialog box will
  1241.                 open with several fields. Type in an appropriate name, as well
  1242.                 as width and height values. Since the palette can be resized
  1243.                 with the arrow keys, you do not need to worry about getting
  1244.                 the size perfect. You will now have a blank palette window.
  1245.                 You can add foreground tiles to this window by selecting a
  1246.                 tile from the foreground tile window (see below), and then
  1247.                 clicking in the palette window with the RIGHT mouse button.
  1248.                 Palettes are discussed in detail in the section on the
  1249.                 Palettes menu option, below.
  1250.  
  1251.         Toggle Delays
  1252.                 This command will allow the game to run at the fastest speed
  1253.                 your machine is capable of. There should be a message telling
  1254.                 you whether delays are being turned on or off after you choose
  1255.                 this command. The keyboard short-cut is <SHIFT>-<d>.
  1256.  
  1257.         God mode
  1258.                 In this mode you have all the weapons, unlimited ammo, and
  1259.                 cannot be killed. The SHAREWARE version has only four
  1260.                 weapons as opposed to the COMMERCIAL versions full eight
  1261.                 weapon types. The keyboard short-cut is <SHIFT>-<z>.
  1262.  
  1263.         Clear weapons (z)
  1264.                 This command resets your weapon status, leaving you
  1265.                 with only the laser rifle. All ammo will be set to 0.
  1266.                 This is useful when designing and debugging levels,
  1267.                 since the Abuse engine does not clear your weapons
  1268.                 status when you reset the level. The keyboard shortcut
  1269.                 is <z>.
  1270.  
  1271.         Mouse scroll
  1272.                 An optional feature is the ability to use the mouse as a
  1273.                 scrolling device. If this command is active (as indicated
  1274.                 by an asterisk), you can move around the level by pushing
  1275.                 the cursor against the boundaries of the screen. You can
  1276.                 also use the arrow keys to scroll around, however, you must
  1277.                 take care that you do not accidentally resize palette windows
  1278.                 when using them.
  1279.  
  1280.         Lock palette windows
  1281.                 This command prevents any accidential alteration to
  1282.                 palettes. When this command is active (as indicated by an
  1283.                 asterisk) none of the palette windows can be resized nor
  1284.                 can the tiles in them be changed. To deactivate this command,
  1285.                 simply select it again.
  1286.  
  1287.         Raise all foreground
  1288.                 This command will, when active as indicated by the asterisk,
  1289.                 make all the foreground tiles laid down in the level be
  1290.                 raised. Raised foreground tiles are drawn in front of the
  1291.                 character. When in edit mode all raised foregrounds will have
  1292.                 an 'X' drawn over them. You can deactivate this command by 
  1293.                 selecting it from he menu again. To raise and lower individual
  1294.                 tiles, position the cursor over the tile you wish to raise or
  1295.                 lower and press the <r> key.
  1296.  
  1297.         Toggle object names
  1298.                 When this command is active, each object will have its name
  1299.                 displayed below it in green.
  1300.  
  1301.         Toggle map        (m)
  1302.                 This command will display a map of the level. The map is a
  1303.                 global representation of the level, with area boxes shown.
  1304.                 An area box is an area of the level that has its own
  1305.                 ambient light and screen displacement values. The map can
  1306.                 be scrolled around with the arrow keys, or with the mouse
  1307.                 if mouse scroll is activated.
  1308.                         Ambient light is the global level of lighting. A
  1309.                 player can only have one ambient light value at a time.
  1310.                 However with the help of area boxes, you can have multiple
  1311.                 ambient light values. Once a player leaves an area box, the
  1312.                 screen displacement and ambient light do not return to their
  1313.                 original values. The values of the screen displacement and
  1314.                 ambient light change only when the player enters another area
  1315.                 box. Screen displacement shifts the center of the screen
  1316.                 away from the player. You can access these parameters and
  1317.                 others via the toolbar window, which can be opened from the
  1318.                 WINDOWS menu. See the section on the toolbar window, below,
  1319.                 for a description of the tools and what they do.
  1320.                         The keyboard shortcut for map mode is <m>. To get
  1321.                 out of map mode, simply press <m> again.
  1322.  
  1323.         Shrink to 320x200 (F10)
  1324.                 This command shrinks the view window to 320x200 resolution.
  1325.                 When working in hi-res mode, this can give you an idea of
  1326.                 what the player will see in low-res mode.
  1327.  
  1328.         Disable view shifts
  1329.                 If this command is activated (it will have an asterisk next
  1330.                 to it in the menu selection) view shifts will not take place
  1331.                 when the player enters a new area box. When developing a
  1332.                 level, this command can prevent accidental and annoying
  1333.                 view shifts. To enable view shifts, simply reselect this
  1334.                 command.
  1335.  
  1336.         Ultra Smooth draw (U)
  1337.                 This command will draw the characters as smoothly as possible.
  1338.                 This command currently is under development and should
  1339.                 not be used.
  1340.  
  1341.         Disable Autolight (A)
  1342.                 This command disables the autolight feature. The autolight
  1343.                 feature will turn off the lighting if the frame rate drops
  1344.                 below 9 frames per second. Disable this if you're working on
  1345.                 a slow machine and want to see the lighting no matter what
  1346.                 the speed. To enable autolighting again, reselect this from
  1347.                 the menu. The keyboard short cut is <SHIFT>-<a>.
  1348.  
  1349.         Show FPS/Obj count
  1350.                 This command prints the number of frames per second and the
  1351.                 number of objects currently being processed in the upper
  1352.                 left hand corner of the screen.
  1353.  
  1354.         Record demo
  1355.                 This command will begin recording a demo of the game. These
  1356.                 demos can be viewed with the play demo command.
  1357.  
  1358.         Play demo
  1359.                 this will play the demo which you have recorded.
  1360.  
  1361.         The EDIT menu is very important to designing levels. Most of the
  1362. important functions have keyboard shortcuts and can greatly speed up
  1363. level designing. Now let's take a look at the WINDOWS menu.
  1364.  
  1365. WINDOWS->
  1366.         Foreground  (f)
  1367.         Background  (b)
  1368.         Draw layers (L)
  1369.         Lighting    (l)
  1370.         Palettes    (p)
  1371.         Objects     (o)
  1372.         Console     (/)
  1373.         Tool Bar    (a)
  1374.         Search      (s)
  1375.         Profile     (P)
  1376.         Save positions
  1377.  
  1378.         Foreground  (f)
  1379.                 This command will bring up the foreground tile window.
  1380.                 From this window you can select foreground tiles to place
  1381.                 in the game world.
  1382.                 To expand the foreground window, place your mouse cursor
  1383.                 inside the foreground window and press <SHIFT>-<f>.
  1384.                 Multiple presses will expand the window even further,
  1385.                 though it will eventually return to a single tile window
  1386.                 window. If the foreground tiles seem small, place the
  1387.                 cursor in the window and press the <+> key to make them
  1388.                 full size. Similarly, if they are taking up too much space,
  1389.                 press the <-> key to shrink them. Note that the 0 color black
  1390.                 is drawn as beige in the foreground tiles, for identification
  1391.                 purposes. To select a tile from this window, simply click on
  1392.                 it. You can then place the tile by moving to where you want to
  1393.                 put it and left clicking. The keyboard shortcut is the <f> key.
  1394.  
  1395.         Background  (b)
  1396.                 This selection will bring up the background tile window.
  1397.                 These tiles are drawn behind the foreground tiles, and will
  1398.                 show through only where there are no foreground tiles, or
  1399.                 where the color black (0 color) is present in foreground
  1400.                 tiles. You can select tiles from this window using the same
  1401.                 method as for the foreground window. However, to place tiles,
  1402.                 you must right click, as a left click will place a foreground
  1403.                 tile. The keyboard shortcut is <b>.
  1404.  
  1405.         Draw layers (L)
  1406.                 This selection opens the layers window. The buttons in this
  1407.                 window toggle the display of various layers. That is, you can
  1408.                 toggle the drawing of, among other things, lighting effects
  1409.                 and foreground tiles. The latter would be useful when laying
  1410.                 down background tiles.
  1411.  
  1412.                    FORE  : Toggles the foreground layer.
  1413.                    BACK  : Toggles the background layer.
  1414.                    BOUND : Toggles the bounding boxes on foreground tiles.
  1415.                            Bounding boxes block the player, so that one can
  1416.                            walk on floors and be stopped by walls.
  1417.                    LIGHT : Toggles the lighting.
  1418.                    LINKS : Toggles the display of links between objects.
  1419.                            In areas with lots of links, they can sometimes
  1420.                            obscure the foreground. Note that when off, the
  1421.                            light icons will not be drawn.
  1422.  
  1423.                 The keyboard shortcut is <SHIFT>-<l>.
  1424.  
  1425.         Lighting    (l)
  1426.                 This will bring up the lighting window. This window has
  1427.                 buttons for a variety of light source shapes, as well as an
  1428.                 ambient button. Lights are respresented by a white, circular
  1429.                 or semi-circular icon, depending upon its shape. You select
  1430.                 and place a light in the same way you do a foreground tile.
  1431.  
  1432.                 Sometimes you will want to modify the size or shape of the
  1433.                 light. There are several ways to do this. The first method
  1434.                 uses the keyboard almost entirely :
  1435.  
  1436.                    1) Position the cursor over the light whose shape
  1437.                       you wish to change. Or, you can skip to step 3,
  1438.                       if you have selected a light but have not dropped it.
  1439.                    2) Press the <SPACEBAR> to pick it up.
  1440.                    3) Use the arrow keys to reshape the light, or + and - to
  1441.                       resize it.
  1442.  
  1443.                 The second method involves the use of the extended options
  1444.                 window :
  1445.  
  1446.                    1) Click on the light.
  1447.                    2) Modify the W and H fields for the light. These will
  1448.                       change the width and height, respectively. Note
  1449.                       that these fields expect small numbers. The L2 field
  1450.                       will change the size of the light. This field can
  1451.                       accept very large numbers.
  1452.  
  1453.                 The keyboard shortcut is <l>. Lighting is an excellent
  1454.                 tool for creating mood in the levels. Learn how to use the
  1455.                 lighting well.
  1456.  
  1457.          Palettes    (p)
  1458.                 This command will open a window containing a list of palettes.
  1459.                 Choose one and double click on it to open a palette window.
  1460.                 Sometimes the palette windows will be shrunken so as to take
  1461.                 up less space. Palette windows can be shrunk and expanded,
  1462.                 just as the foreground and background windows can. While in
  1463.                 this window, hold shift and type a letter to jump to the
  1464.                 palettes starting with that letter.
  1465.  
  1466.                 Palettes have a variety of uses. Not only can they be used as
  1467.                 custom tile libraries, they can be used to fill areas, or to
  1468.                 stamp down one set of tiles at a time. They are quite useful
  1469.                 for creating complex patterns of tiles with great speed. To
  1470.                 stamp down the palette, click on the palette's window bar with
  1471.                 the left mouse button. While keeping the mouse button held
  1472.                 down, drag the upper left corner of the window to the position
  1473.                 where you wish to stamp, then press the <SPACEBAR> key. If you
  1474.                 wish to fill, press the <t> key instead. The result of a
  1475.                 palette stamp is perhaps best shown rather than described.
  1476.                 Assume that the palette is being stamped at the upper left
  1477.                 corner of the grid. A-d are foreground tiles.
  1478.  
  1479.                  Palette       Grid before stamp       Grid after stamp
  1480.                   +-+-+             +-+-+                +-+-+
  1481.                   |a|b|             | | |                |a|b|
  1482.                   +-+-+             +-+-+                +-+-+
  1483.                   |c|d|             | | |                |c|d|
  1484.                   +-+-+             +-+-+                +-+-+
  1485.  
  1486.                         Palettes can also be used to fill or stamp one tile
  1487.                 at a time. Simply left click on a tile in the palette window,
  1488.                 then place it as you normally would. Do NOT right click, as
  1489.                 you might accidentally alter your palette. To help prevent
  1490.                 accidental alterations to the palette, read about the Lock
  1491.                 Palette Windows command, above.
  1492.  
  1493.                         To expand or shrink a palette, simply position the
  1494.                 cursor in the palette window and use the arrow keys to resize
  1495.                 it. BE CAREFUL with this -- if you shrink a palette, any tiles
  1496.                 that were in area you just shrunk will no longer be there,
  1497.                 even if you expand the palette back to where it was. This is
  1498.                 annoying, at best.
  1499.  
  1500.                         Also, make sure to use the Save Palettes command in
  1501.                 the FILE menu to save your palettes so that you may use them
  1502.                 in the future. Saving the level does NOT save the palettes.
  1503.                 Palettes are very powerful tools to a level designer. They
  1504.                 will allow you to do complex fills and create repetitive
  1505.                 structures easily, as well as being custom libraries for
  1506.                 tiles. Palettes are your friends.
  1507.  
  1508.         Objects     (o)
  1509.                 Objects are the core of the game. They are all the characters
  1510.                 which you interact with. Each one has its own, unique AI
  1511.                 settings. This window gives you a listing of all the objects
  1512.                 in the game. While in this window, hold down shift and type a
  1513.                 letter to jump to the objects beginning with that letter. See
  1514.                 Object Listings and Descriptions for a complete overview of
  1515.                 all the objects in the game. Some basic object utility
  1516.                 commands are as follows :
  1517.  
  1518.                    <SPACEBAR>   Picks up object under cursor.
  1519.                    <x>          Flips object under cursor in x axis.
  1520.                    <d>          Deletes object under cursor.
  1521.                    <SHIFT>-<c>  Clone object under cursor.
  1522.                    <CTRL>       Position object to a grid.
  1523.                                 (object must be picked up)
  1524.                    <ALT>        Position object in the middle of a grid.
  1525.                                 (object must be picked up)
  1526.                    <SHIFT>-<k>  Kills last link of object under cursor.
  1527.                    <k>          Kills first link of object under cursor.
  1528.  
  1529.                 The keyboard shortcut key for this window is <o>
  1530.  
  1531.         Console     (/)
  1532.                 This will bring up the console window. The console window
  1533.                 can accept command line inputs. It can also be used to
  1534.                 modify the game and receive information about the game's
  1535.                 state.
  1536.                 The keyboard shortcut is </>.
  1537.  
  1538.         Tool Bar    (a)
  1539.                 This will bring up the toolbar window. It is used in
  1540.                 conjunction with the map view to add and modify area boxes
  1541.                 and place tiles in the map view.
  1542.  
  1543.                 The toolbar menu has 3 icons : a pencil, an arrow, and a box
  1544.                 made of broken lines. The pencil lets you lay down tiles
  1545.                 that you have chosen from either the foreground window,
  1546.                 palette window, or the current level itself. To lay down a
  1547.                 tile in the game, simply press the right mouse button over
  1548.                 an area in the map. The pencil mode is also useful for using
  1549.                 the fill option. To fill an area in the map with one
  1550.                 foreground tile, follow these steps :
  1551.  
  1552.                    1) Select a tile from any of the three sources.
  1553.                    2) Make sure the area you wish to fill is completely
  1554.                       surrounded by tiles. If not, then lay down some tiles
  1555.                       to fill the gaps.
  1556.                    3) Move the mouse pointer into the area.
  1557.                    4) Press the <t> key.
  1558.  
  1559.                         To select a tile which has already been laid down,
  1560.                 position your mouse cursor over the tile and press
  1561.                 the <`> key. If your foreground window is open at the
  1562.                 same time, it will jump to the tile you just selected.
  1563.                 This selection mechanism will work in map mode as well.
  1564.  
  1565.                         The box tool allows you to create a new area
  1566.                 box. To do this, follow these simple steps :
  1567.  
  1568.                    1) Select the box tool.
  1569.                    2) Enter map mode, if you haven't already.
  1570.                    3) Hold down the left mouse button, then drag to
  1571.                       create the box.
  1572.                    4) Release the mouse button.
  1573.  
  1574.                         The arrow icon lets you modify the settings of an
  1575.                 area box. To do this, follow this procedure :
  1576.  
  1577.                    1) Select the arrow tool.
  1578.                    2) Go to one of the yellow endpoints of the area box.
  1579.                       Each area box has two endpoints; one at the upper left
  1580.                       corner, and another at the lower right corner.
  1581.                    3) Double click on the endpoint. You will know when you
  1582.                       have selected an area box, as it will have turned into
  1583.                       a yellow box. This will bring up a window with several
  1584.                       parameters :
  1585.                          Ambient
  1586.                            The global lighting level. It ranges from 0 to 63.
  1587.                            A value of -1 means no change.
  1588.                          Ambient Speed
  1589.                            This is the increment at which the ambient light
  1590.                            level changes when the player enters the area box.
  1591.                            Obviously if the ambient light level is the same,
  1592.                            there will be no change.
  1593.                          View x off
  1594.                            This is the number of pixels the player should be
  1595.                            offset from the center of the screen, in the X axis.
  1596.                            A negative value will shift the screen left, and a
  1597.                            positive value will shift the screen right.
  1598.                          View y off
  1599.                            This is the number of pixels the player should be
  1600.                            offset from the center of the screen, in the Y axis.
  1601.                            If the value is negative, it will shift the screen
  1602.                            upwards. A positive value will shift the screen
  1603.                            downwards.
  1604.                          View x speed
  1605.                            The rate the view shifts, in pixels.
  1606.                          View y speed
  1607.                            The rate the view shifts, in pixels.
  1608.  
  1609.                         Click on the <OK> (check) button to close the area
  1610.                 box's extended option window to save the changes, or the
  1611.                 <DELETE> (big red X) button to delete the area box.
  1612.  
  1613.         Search      (s)
  1614.                 This is currently under development, it will search for
  1615.                 objects within a level. Do not use.
  1616.  
  1617.         Profile     (P)
  1618.                 The profile window will display the current objects and
  1619.                 rank their CPU time. The higher up on the list, the more
  1620.                 CPU time taken up by that object or group of objects.
  1621.  
  1622.         Save positions
  1623.                 This command will save the positions of all opened windows.
  1624.                 Thus, when reopened, they will appear where you left them.
  1625.  
  1626.  
  1627. [4]
  1628.                 Level Designing Hints and Practicalities
  1629.                -----------------------------------------
  1630.  
  1631. ------------------------------------------------------------------------
  1632. [4.a] Level Designing Hints and Practicalities
  1633. ------------------------------------------------------------------------
  1634.  
  1635.         If anyone has read this far, they either have to be crazy, or
  1636. very determined. You make the call.
  1637.  
  1638.         If you don't want to draw your own tiles, you need to familiarize
  1639. yourself with the tile set. A good way to do this is to take a look at the
  1640. current levels, like LEVEL00.SPE, the training level. Using the <`> key,
  1641. with the foreground window open, select the tiles which you have an interest
  1642. in. Learn what they look like, and what they do. Also look at how the various
  1643. tiles fit together. Use the layers window to turn on the bounding layer and
  1644. see the bounding boxes for the various tiles. Use palettes so that you don't
  1645. have to search through the foreground window for your favorite tiles. Play
  1646. with the objects, see how they work with the player and with each other. And
  1647. save your level often. Since you often mess up your level while testing it
  1648. and killing monsters and so on, make use of the restore key (<SHIFT>-<r>),
  1649. which will reload your level. Note that if you saved the game at a
  1650. RESTART_POSITION, your savegame and not the original level will be reloaded.
  1651. Make sure not to save a level after you've gone through and killed everything.
  1652.  
  1653.         Making a level is an incremental process, building block by block as
  1654. you go. Keep in mind your global goals for the level. Keep the action steady,
  1655. but gradually build up to the "big finish". But, more than anything, make
  1656. levels and get more experience. This is the best way to learn to make great
  1657. levels.
  1658.  
  1659.         With all that said, level designing is a rewarding process filled
  1660. with little twists and turns that will keep you enthralled and entertained
  1661. for hours on end.
  1662.  
  1663. 
  1664.  
  1665.  
  1666.