home *** CD-ROM | disk | FTP | other *** search
/ The Amiga Game Guide / AmigaGameGuide_CD.iso / Amiga / Tools / dbib / docs / docs.txt < prev   
Text File  |  1977-12-31  |  22KB  |  590 lines

  1.  
  2.                             THE 3D GAME CREATOR
  3.                             -------------------
  4.  
  5. Contents---------------------------------------------------------------------
  6.  
  7. 1.0 Introduction
  8.     1.1 System requirements
  9.     1.2 Specifications
  10.     1.3 Playing the demo levels
  11. 2.0 Using the Editor
  12. 3.0 Designing Graphics
  13.     3.1 Graphic types
  14.     3.2 Palette conventions
  15.     3.3 Texture graphics
  16.     3.4 Object graphics
  17.     3.5 Characters
  18.  
  19. 1.0 Introduction-------------------------------------------------------------
  20.  
  21. 1.1 System requirements
  22. -----------------------
  23.  
  24. An AGA Amiga with 4Mb fast RAM. 030 or better recommended.
  25.  
  26. 1.2 Specifications
  27. ------------------
  28.  
  29. The Cold Blood 3D system is designed for creating 3D shoot-em-up games. It 
  30. features:
  31.  
  32.  - 1*1 resolution using fast c2p
  33.  - floor and ceiling texture mapping
  34.  - variable floor and ceiling height
  35.  - non-orthogonal walls
  36.  - bitmapped enemies and objects
  37.  - advanced lighting effects (moving light sources, smoke and halo effects)
  38.  
  39. A single easy to use editor is provided for creating new levels and changing
  40. game parameters.
  41.  
  42. 1.3 Playing the demo levels
  43. ---------------------------
  44.  
  45. To play any level just click on the icon. When the level is finished it may
  46. link to another one.
  47.  
  48. Game controls:
  49.  
  50.   m  -  mouse
  51.   k  -  keys
  52.   v  -  vertical mouse options (locked/normal/reverse)
  53.  
  54.   mouse mode:
  55.  
  56.     move mouse to look
  57.     cursor keys to move
  58.  
  59.     left mouse   -  shoot
  60.     right mouse  -  operate
  61.  
  62.   keys mode:
  63.  
  64.     left/right cursor to turn
  65.     up/down cursor to move
  66.     right amiga to force sidestep
  67.  
  68.     right alt  -  shoot
  69.     space      -  operate
  70.  
  71.   general:
  72.  
  73.     keypad 1  -  look down
  74.     keypad 7  -  look up
  75.     keypad 4  -  re-centre
  76.     shift     -  run
  77.     keypad 0  -  jump
  78.     keypad .  -  crouch
  79.     t         -  torch
  80.     s         -  gun sight (in four different flavours)
  81.     1-9       -  change weapon 
  82.     
  83.   screen mode:
  84.  
  85.     keypad +  -  increase screen size
  86.     keypad -  -  reduce screen size
  87.     keypad (  -  vertical resolution
  88.     keypad )  -  horizontal resolution
  89.     Enter     -  toggle full/quarter screen
  90.  
  91. Playing hints:
  92.  
  93. There are two ways to play this: either go through the level stealthily
  94. using the silenced pistol, shooting out lights and drawing the enemies
  95. into traps, or just wade in with the assault rifle and send them all
  96. straight to hell. In practice you need to do a bit of both.
  97. You must remember that the enemies can both see and hear you. You can
  98. creep up behind one if you move very slowly, otherwise he will hear your
  99. footsteps. Use the assault rifle and enemies from all around will
  100. converge on your position. They are smart enough to plan a route to get
  101. to you even from the other end of the level (though they probably wouldn't
  102. hear you from that distance). They can hear other enemies firing on you
  103. as well as explosions, doors opening, lights breaking and in fact any 
  104. other sound that you can hear in the game.
  105. Shooting out the lights has two effects. First of all the enemies can't
  106. see very well in the dark - you can go undetected more easily. Also, their
  107. shots lose accuracy as the light level goes down. Be careful with the 
  108. torch, it makes it easy for the enemies to see you. They can also see the
  109. torch light even if they are not looking in your direction.
  110. Catching enemies in chain reaction barrel explosions is a very satisfying
  111. way to kill them, although difficult to do. Don't stand by a barrel
  112. yourself during a gunfight: the enemies' shots can set them off too (and
  113. they can shoot each other, which can be helpful when you're being 
  114. attacked from two directions at once).
  115. Use the gunsight for better targeting and the vertical mouse option for
  116. a faster response to attacks from above and below. Use a good stereo
  117. system or headphones, then you can hear where sounds are coming from.   
  118.  
  119. 2.0 Using the Editor---------------------------------------------------------
  120.  
  121. 2.1 Introduction
  122. ----------------
  123.  
  124. The editor allows you to:
  125.  
  126.  - Create entirely new levels with your own layouts
  127.  - Import graphics for textures and objects from iff files
  128.  - Define new weapons and enemy types
  129.  
  130. 2.2 Explanation of the file system
  131. ----------------------------------
  132.  
  133. The main game executable is player.exe. To start a game: from the CLI, type 
  134.  
  135. player.exe levelname
  136.  
  137. Or click on the level's icon.
  138.  
  139. File types used by the program are:
  140.  
  141.  - map files, created using the editor (see section)
  142.  - textures, converted from iff pictures using the editor (see section)
  143.  - images, grabbed from iff pictures using the editor (see section)
  144.  - enemies, which are a collection of image files (see section)
  145.  - sounds, which are raw samples. No sound editing facilities are provided.
  146.  
  147. All textures, objects, enemies and sounds refered to by the level must be 
  148. contained in their respective drawers in the same directory as the player.
  149.  
  150. There are a number of other files that are not refered to in the map file 
  151. but must be present. These are stored in the 'game' drawer. By replacing 
  152. these files you can change certain aspects of the games not covered in the 
  153. editor, such as the weapon graphics and sounds, title screen and panel.
  154.  
  155. Also needed is the font 'dbib' which must be in the main fonts directory.
  156.  
  157. 2.3 Editor screen layout
  158. ------------------------
  159.  
  160. The title bar
  161. -------------
  162.  
  163. As you perform functions within the program, instructions often appear here,
  164. such as 'select section' or 'select wall'. You can either do what it says or
  165. cancel by clicking the right mouse button.
  166.  
  167. Windows
  168. -------
  169.  
  170. Map window          This shows a top down view of the current level.
  171.                     Useful keyboard controls are:
  172.  
  173.                     arrow keys      scroll map
  174.                     +/-             magnification
  175.                     keypad 7        raise eye level
  176.                     keypad 1        lower eye level
  177.  
  178.                     To select an item in the map window, left click on it.
  179.                     To select multiple items, left click on each while holding
  180.                     down shift.
  181.  
  182.                     Sections are shown plain (usually black), selected (usually
  183.                     white) or ghosted (some other colour). Objects are shown as
  184.                     small circles, enemies as little men and lights as stars.
  185.  
  186. Button bank         This contains a number of buttons for manipulating the map.
  187.                     See below for details.
  188.  
  189. Detail window       Once opened from the menu, this window shows some
  190.                     information on whatever item you click on in the map window.
  191.  
  192. Menus
  193. -----
  194.  
  195. Project
  196. /New                Allows you to either start an entirely new level or clear
  197.                     just the map and keep the definitions for textures, objects 
  198.                     etc. 
  199. /open               Loads a level from disk.     
  200. /save      
  201. /save as            Save the current level.
  202. /crunch             Redundant since files are crunched automatically.
  203. /about              Information about the program.
  204. /quit               Quit the program. Will prompt if not saved.         
  205.  
  206. View
  207. /detail             Opens the detail window.
  208. /grid               Toggles the map grid.
  209. /zoom               Choose zoom factor.
  210. /eye level          Enter a new eye level. (see section)
  211. /eye level check    Toggles eye level checking. (see section)
  212.                     Off by default.
  213.  
  214. Textures
  215. /Convert texture    Converts an iff picture to a texture file.
  216. /Add texture        Adds a texture to the list for the level.
  217.                     You should miss off the extension '.chk'
  218.                     when naming the texture.
  219. /Remove texture     Removes a texture from the list.
  220.  
  221. Objects
  222. /Grab image         Grab an image from an iff picture.
  223. /Add image          Adds an image to the list for the level.
  224.                     You should miss off the extension '.chk'
  225.                     when naming the object.
  226. /Remove image       Removes an image from the list.
  227. /Select picture     Changes the picture to grab images from.
  228. /One point grabbing Toggles the grab method. One-point means that images
  229.                     will be grabbed with a single click. In this case the
  230.                     image must be drawn with a crosshair in colour 2
  231.                     around it, pointing at the handle, i.e.
  232.  
  233.                                |        image with handle at centre
  234.                                       / of crosshair
  235.                               ~~~   |/
  236.                              /   \   -
  237.                            - | . | -   <--- crosshair in colour 2
  238.                              \   /
  239.                               ~~~
  240.  
  241.                                | 
  242.  
  243.                     The alternative is rectangular grabbing which does not
  244.                     need a crosshair but takes a click and drag movement
  245.                     to draw a rectangle around the area to grab, plus an
  246.                     extra click to place the handle. 
  247.                     One point grabbing is off by default.
  248.  
  249. Enemies
  250. /Add enemy          Adds an enemy to the list for the level.
  251. /Remove enemy       Removes an enemy from the list.
  252. /Properties         Sets a number of parameters that govern the
  253.                     enemy's behavior.
  254. Weapons
  255. /Add weapon         Adds a weapon to the list for the level.
  256. /Remove weapon      Removes a weapon from the list.
  257.  
  258. Sounds
  259. /Add sound          Adds a sound to the list for the level.
  260. /Remove sound       Removes a sound from the list.
  261.  
  262. Buttons:
  263.  
  264. Add section         Delete section
  265. Raise floor *       Lower floor *
  266. Raise ceiling *     Lower ceiling *
  267. Raise all ceilings  Lower all ceilings
  268. Set floor texture * Set ceiling texture *
  269. Set wall texture    Set all wall textures *
  270. Add light           Delete light
  271. Set start point     Section effect
  272. Add object          Delete object
  273. Add enemy           Delete enemy
  274. Object damage       Object pick-up
  275. Add door            Delete door
  276. Add lift            Delete lift
  277. Add switch          Delete switch
  278.  
  279. * works on all currently selected sections
  280.  
  281. 2.3 Creating sections
  282. ---------------------
  283.  
  284. All levels, however complex they may appear, are built from simple builing
  285. blocks called sections. The player will be able to walk around inside the 
  286. sections.  There are a few rules governing how you may define sections,
  287. which are as follows:
  288.  
  289.  - A section is a closed polygon made up of up to 10 walls.
  290.  
  291.  - Sections are drawn clockwise.
  292.  
  293.  - No internal angle between two adjacent walls in a section may be more than 
  294.    180 degrees. Put another way, no wall can ever obscure any part of another 
  295.    wall in the same section.
  296.  
  297. You can add a section by clicking on the 'new section' button and clicking the
  298. left mouse button to draw the walls. Clicking the right mouse button cancels,
  299. and the space bar comletes the section. You can also complete the section by
  300. drawing a wall that completes the shape. If the section disappears after
  301. completion, it did not follow the above rules.
  302.  
  303. To join two sections together to make a larger area, just draw the second so
  304. that it shares a wall with the first. The player will then be able to walk
  305. between them. Again, there are rules for joining sections:
  306.  
  307.  - Two sections may share one, and only one wall. They cannot share part of
  308.    a wall.
  309.  
  310.  - The sections must not overlap. Sections inside sections are illegal.
  311.  
  312.  - A wall can be joined to only one other wall.
  313.  
  314.  - Ghosted sections cannot be joined if eye level checking is on 
  315.    (see section).
  316.  
  317. If the first wall that you draw is shared with another section, the new section
  318. will take on the characteristics of the old one, such as floor and ceiling height
  319. and textures. This saves you the trouble of setting these things later.
  320.  
  321. Steps can be created by changing floor and ceiling heights (using the buttons).
  322. One click produces a small step, two clicks a larger one. More than two clicks
  323. and the player will have to jump. The default height of sections is 16
  324. clicks. This corresponds to textures 128 pixels high.
  325.  
  326. Changing textures
  327. -----------------
  328.  
  329. Any texture in the texture list can be applied to any wall, floor or ceiling.
  330. Textures will be stretched horizontally to fit walls, but tiled vertically.
  331. Walls can have an upper and lower texture in the case of steps in both floor
  332. and ceiling.
  333.  
  334. To change a wall texture, click on either 'set wall texture' or 'set all wall
  335. textures'. The latter will set every wall texture in all selected sections,
  336. the former a single wall texture which must be chosen with the mouse. Walls
  337. are selected with a single mouse click on the furthest clockwise point of that
  338. wall.
  339.  
  340. Floor and ceiling textures must be 128*128 pixels, and are tiled. One grid 
  341. square corresponds to one tile. Note that the placement of floor and ceiling
  342. tiles is independent of the walls. The 'set floor texture' and 'set ceiling'
  343. texture buttons work on all currently selected sections.
  344.  
  345. Lights
  346. ------
  347.  
  348. If you create a level with a few sections, some steps and a few textures, then
  349. test it out, you will find that you can't see anything. With no lights,
  350. everything is dark (just like life, really). The torch is one light source,
  351. but it is not very powerful. To add lights to the level, first select all
  352. the sections you want to be affected by the light, then click on the 'add light'
  353. button, place the light and finally, set its brightness. You can add a number
  354. of lights and have bright areas and dark areas.
  355.  
  356. Some tips when adding lights:
  357.  
  358.  - Add lights last, and be prepared to keep changing them until the level looks
  359.    right.
  360.  
  361.  - Lights fade with distance, but shadows are not calculated. You can make your
  362.    own shadow effects by choosing which sections are lit up by a particular light.
  363.    
  364.  - Having a visible object such as a light bulb at the same position as a light
  365.    source can be very effective.
  366.  
  367.  - Lights can be as bright as you want, but if a wall is fully lit up, it cannot
  368.    get any brighter. All that happens is that the light reaches further.
  369.  
  370. Objects
  371. -------
  372.  
  373. 2D bitmaps are used to show objects in the game environment. Objects use the same
  374. bitmap for all angles, so there are some things that they can't be used for. Some
  375. examples of things that work well are barrels, plants, light bulbs and wine 
  376. glasses. These things have cylindrical symmetry. Flat objects like plates don't
  377. work well because they change too much with vertical viewing angle.
  378.  
  379. Players can interact with objects by shooting them or picking them up. This allows
  380. for things like ammo boxes and lights that can be shot out.
  381.  
  382. To add an object, click on the 'add object' button and follow the prompts. You will
  383. set the objects position and choose the image and draw mode. You can add an object
  384. on top of another object in a different draw mode to achieve such effects as halos
  385. around lights.
  386.  
  387. To change an object's damage effect, click on the 'object damage' button. The 
  388. object will always vanish when shot, but it can also turn a light off or explode.
  389.  
  390. To change an object's pick-up effect, click on the 'object pick-up' button.
  391. The object can be a pass, a gun, ammo or a health or shield bonus. 
  392.  
  393. Doors and lifts
  394. ---------------
  395.  
  396. Adding doors and lifts could not be simpler. Just press the button and choose the
  397. section. If you are adding a lift you also have the option to a wall that
  398. activates it, and whether to have a switch on the lift itself. For a door you
  399. choose which pass (if any) is needed to open it.
  400.  
  401. To get textures to move correctly when a door or lift is activated, do this:
  402.  
  403.  For a lift, nothing. Textures will move up with the lift automatically.
  404.  
  405.  For a door, either use a blank texture for the inside of the door frame or add
  406.  a new section on either side of the door frame with the ceiling moved all the
  407.  way down to the floor. A diagram might make this clearer.
  408.  
  409.                  |              | 
  410.                 /|--------------|\
  411.                / |              | \
  412.               |  |    DOOR      |  | <-- sections with ceiling at floor level
  413.                \ |              | /     |
  414.                 \|--------------|/      | 
  415.                  |              |       |
  416.                /\                       |
  417.                 -------------------------                  
  418.  
  419. To the player, the two smaller sections are invisible. All they do is force the
  420. texture to be drawn correctly.
  421.  
  422. If you are interested in the details of this, textures are always fixed to the
  423. edge of a floor or ceiling step. If there is no step they are attached to the
  424. ceiling. What the trick with the door does is make the whole wall become a 
  425. step, fixing the texture to the 'floor' instead.
  426.  
  427. Switches
  428. --------
  429.  
  430. Switches can open doors, move lifts or turn lights on and off. They can be 
  431. once-only switches, on/off types or reset after a short time. To add a switch,
  432. click on the 'add switch' button and follow the prompts.
  433.  
  434. Graphically, there is a small trick used with switches. When pressed, they swap
  435. the upper and lower textures of a wall. This means that you can't have switches
  436. on steps.
  437.  
  438. Section effects
  439. ---------------
  440.  
  441. Events can be triggered when the player walks into a section. Doors can open, lifts
  442. can start, sound effects can be played or the level can end. The 'section effect'
  443. button handles this. Click and follow the prompts.
  444.  
  445. 3.0 Designing Graphics-------------------------------------------------------
  446.  
  447. 3.1 Graphic types
  448. -----------------
  449.  
  450. There are two kinds of graphic files, textures and objects. Objects are
  451. drawn flat and scaled. Enemies, barrels and lights are all objects. So are
  452. the player's guns. There are four drawing modes for objects: colour,
  453. brighten, darken and tint. Colour is the standard mode. Brighten can be seen
  454. in gun barrel flashes and could be used for halos around bright lights.
  455. Darken could be used for smoke effects. Tint changes the colour of pixels
  456. without changing their brightness. It could be used for transparent liquid
  457. containers and possibly explosions or fire. Different modes can also be
  458. superimposed, e.g. a colour object with tint applied to it. Textures have
  459. only the colour drawing mode.
  460.  
  461. 3.2 Palette conventions
  462. -----------------------
  463.  
  464. For colour mode graphics, the standard palette (palette.iff) should be used.
  465. The palette is divided into two parts. The first 32 colours are deemed
  466. 'bright'. Bright colours are not affected by lighting effects. Hence sparks,
  467. explosions and lights are drawn in these colours. The rest of the palette
  468. contains seven 32 colour ranges. Anything drawn with these colours is
  469. subject to lighting effects. Colour zero is transparent for objects but not
  470. for textures.
  471.  
  472. Brighten and darken modes use only the first 32 colours. Colour zero means
  473. no effect. Colour 1 means Brighten/darken by one shade, and so on.
  474.  
  475. Tint mode uses only the first colour of each of the seven ranges. Tinted 
  476. pixels will be transported directly across into the corresponding range,
  477. without changing brightness.
  478.  
  479. Because it is possible to include some of the first 32 colours by mistake
  480. when using certain drawing tools in art packages, it is useful to work
  481. with the palette remap.iff and add bright colours later.
  482.  
  483. 3.3 Texture graphics
  484. --------------------
  485.  
  486. Wall textures must be 128 pixels wide and a power of 2 pixels high, e.g.
  487.  
  488.   128*16
  489.   128*64
  490.   128*128
  491.   128*256
  492.  
  493. They should be placed at the top left corner of an iff picture.
  494.  
  495. If a texture is shorter than the wall it is placed on, it will be tiled.
  496. If this is the case, it will be necessary for the top and bottom to match.
  497.  
  498. Floor textures must be 128*128 pixels in size. It is important for them to
  499. tile properly.
  500.  
  501. 3.4 Object graphics
  502. -------------------
  503.  
  504. Objects can be any size. A useful hint when drawing objects is to keep
  505. in mind the angle that they will be seen from. Anything that is normally 
  506. below the player's viewpoint should be drawn slightly from above. However,
  507. the player can move and look up and down, so don't overdo the angle. Keep
  508. things almost level, to minimise the distortion when the object is seen
  509. from a different angle.
  510.  
  511. 3.5 Characters
  512. --------------
  513.  
  514. There are currently two types of character: walkers and floaters. They require 
  515. different numbers of animation frames.
  516.  
  517. Walkers require the following frames:
  518.  
  519.   standing
  520.   walking (4)
  521.   hit by player
  522.   attacks player
  523.   fall over (7)
  524.   dead
  525.  
  526. All frames except the dying animation are needed in eight directions, making
  527. 64 frames in total.
  528.  
  529. Floaters only need:
  530.  
  531.   floating
  532.   hit by player
  533.   attacks player
  534.   dead
  535.  
  536. Again in eight directions, except for the dead frame.
  537.  
  538. The size of individual frames is not important, just keep the handle in the
  539. same relative position in each frame.
  540.  
  541. -----------------------------------------------------------------------------
  542.  
  543. 4.0 Bugs and future enhancement ---------------------------------------------
  544.  
  545. 4.1 Known bugs
  546. --------------
  547.  
  548. The editor lists:
  549.  
  550. The editor uses lists of textures, objects etc so that it knows what files to
  551. load. Getting these to work in Blitz was a nightmare. There are still 
  552. occasional problems when selecting items from lists. Generally quitting and 
  553. reloading will solve them.
  554.  
  555. Removing items from lists:
  556.  
  557. This is safe as long as you have not started using items in the list yet. If 
  558. you have, later objects will be messed up when removing items from the list.
  559. It is always safe to remove the last object. 
  560.  
  561. Phantom walls:
  562.  
  563. These 2 dimensional features can appear if two adjacent sections did not join
  564. correctly. They should be rare and easily corrected be deleting one or both of
  565. the sections and redefining them.
  566.  
  567. Invisible walls:
  568.  
  569. The opposite to the above; a wall that should be there is not drawn. No idea
  570. why this sometimes happens, but it is easily fixed by deleting and redrawing 
  571. the section.
  572.  
  573. Wobbly textures:
  574.  
  575. When doors and lifts move, there can be a one pixel error in drawing the textures.
  576. The result is a strange rippling effect. Probably a days work on the code to fix,
  577. but in the meantime the effect can be minimised by using textures that are quite
  578. smooth in the vertical direction.
  579.  
  580. -----------------------------------------------------------------------------
  581.  
  582. Edmund Clay
  583. 44 Finstall Rd
  584. Aston Fields
  585. Bromsgrove
  586. Worcs
  587. B60 2EA
  588.  
  589. email: ec@hep.ucl.ac.uk
  590.