home *** CD-ROM | disk | FTP | other *** search
-
- THE 3D GAME CREATOR
- -------------------
-
- Contents---------------------------------------------------------------------
-
- 1.0 Introduction
- 1.1 System requirements
- 1.2 Specifications
- 1.3 Playing the demo levels
- 2.0 Using the Editor
- 3.0 Designing Graphics
- 3.1 Graphic types
- 3.2 Palette conventions
- 3.3 Texture graphics
- 3.4 Object graphics
- 3.5 Characters
-
- 1.0 Introduction-------------------------------------------------------------
-
- 1.1 System requirements
- -----------------------
-
- An AGA Amiga with 4Mb fast RAM. 030 or better recommended.
-
- 1.2 Specifications
- ------------------
-
- The Cold Blood 3D system is designed for creating 3D shoot-em-up games. It
- features:
-
- - 1*1 resolution using fast c2p
- - floor and ceiling texture mapping
- - variable floor and ceiling height
- - non-orthogonal walls
- - bitmapped enemies and objects
- - advanced lighting effects (moving light sources, smoke and halo effects)
-
- A single easy to use editor is provided for creating new levels and changing
- game parameters.
-
- 1.3 Playing the demo levels
- ---------------------------
-
- To play any level just click on the icon. When the level is finished it may
- link to another one.
-
- Game controls:
-
- m - mouse
- k - keys
- v - vertical mouse options (locked/normal/reverse)
-
- mouse mode:
-
- move mouse to look
- cursor keys to move
-
- left mouse - shoot
- right mouse - operate
-
- keys mode:
-
- left/right cursor to turn
- up/down cursor to move
- right amiga to force sidestep
-
- right alt - shoot
- space - operate
-
- general:
-
- keypad 1 - look down
- keypad 7 - look up
- keypad 4 - re-centre
- shift - run
- keypad 0 - jump
- keypad . - crouch
- t - torch
- s - gun sight (in four different flavours)
- 1-9 - change weapon
-
- screen mode:
-
- keypad + - increase screen size
- keypad - - reduce screen size
- keypad ( - vertical resolution
- keypad ) - horizontal resolution
- Enter - toggle full/quarter screen
-
- Playing hints:
-
- There are two ways to play this: either go through the level stealthily
- using the silenced pistol, shooting out lights and drawing the enemies
- into traps, or just wade in with the assault rifle and send them all
- straight to hell. In practice you need to do a bit of both.
- You must remember that the enemies can both see and hear you. You can
- creep up behind one if you move very slowly, otherwise he will hear your
- footsteps. Use the assault rifle and enemies from all around will
- converge on your position. They are smart enough to plan a route to get
- to you even from the other end of the level (though they probably wouldn't
- hear you from that distance). They can hear other enemies firing on you
- as well as explosions, doors opening, lights breaking and in fact any
- other sound that you can hear in the game.
- Shooting out the lights has two effects. First of all the enemies can't
- see very well in the dark - you can go undetected more easily. Also, their
- shots lose accuracy as the light level goes down. Be careful with the
- torch, it makes it easy for the enemies to see you. They can also see the
- torch light even if they are not looking in your direction.
- Catching enemies in chain reaction barrel explosions is a very satisfying
- way to kill them, although difficult to do. Don't stand by a barrel
- yourself during a gunfight: the enemies' shots can set them off too (and
- they can shoot each other, which can be helpful when you're being
- attacked from two directions at once).
- Use the gunsight for better targeting and the vertical mouse option for
- a faster response to attacks from above and below. Use a good stereo
- system or headphones, then you can hear where sounds are coming from.
-
- 2.0 Using the Editor---------------------------------------------------------
-
- 2.1 Introduction
- ----------------
-
- The editor allows you to:
-
- - Create entirely new levels with your own layouts
- - Import graphics for textures and objects from iff files
- - Define new weapons and enemy types
-
- 2.2 Explanation of the file system
- ----------------------------------
-
- The main game executable is player.exe. To start a game: from the CLI, type
-
- player.exe levelname
-
- Or click on the level's icon.
-
- File types used by the program are:
-
- - map files, created using the editor (see section)
- - textures, converted from iff pictures using the editor (see section)
- - images, grabbed from iff pictures using the editor (see section)
- - enemies, which are a collection of image files (see section)
- - sounds, which are raw samples. No sound editing facilities are provided.
-
- All textures, objects, enemies and sounds refered to by the level must be
- contained in their respective drawers in the same directory as the player.
-
- There are a number of other files that are not refered to in the map file
- but must be present. These are stored in the 'game' drawer. By replacing
- these files you can change certain aspects of the games not covered in the
- editor, such as the weapon graphics and sounds, title screen and panel.
-
- Also needed is the font 'dbib' which must be in the main fonts directory.
-
- 2.3 Editor screen layout
- ------------------------
-
- The title bar
- -------------
-
- As you perform functions within the program, instructions often appear here,
- such as 'select section' or 'select wall'. You can either do what it says or
- cancel by clicking the right mouse button.
-
- Windows
- -------
-
- Map window This shows a top down view of the current level.
- Useful keyboard controls are:
-
- arrow keys scroll map
- +/- magnification
- keypad 7 raise eye level
- keypad 1 lower eye level
-
- To select an item in the map window, left click on it.
- To select multiple items, left click on each while holding
- down shift.
-
- Sections are shown plain (usually black), selected (usually
- white) or ghosted (some other colour). Objects are shown as
- small circles, enemies as little men and lights as stars.
-
- Button bank This contains a number of buttons for manipulating the map.
- See below for details.
-
- Detail window Once opened from the menu, this window shows some
- information on whatever item you click on in the map window.
-
- Menus
- -----
-
- Project
- /New Allows you to either start an entirely new level or clear
- just the map and keep the definitions for textures, objects
- etc.
- /open Loads a level from disk.
- /save
- /save as Save the current level.
- /crunch Redundant since files are crunched automatically.
- /about Information about the program.
- /quit Quit the program. Will prompt if not saved.
-
- View
- /detail Opens the detail window.
- /grid Toggles the map grid.
- /zoom Choose zoom factor.
- /eye level Enter a new eye level. (see section)
- /eye level check Toggles eye level checking. (see section)
- Off by default.
-
- Textures
- /Convert texture Converts an iff picture to a texture file.
- /Add texture Adds a texture to the list for the level.
- You should miss off the extension '.chk'
- when naming the texture.
- /Remove texture Removes a texture from the list.
-
- Objects
- /Grab image Grab an image from an iff picture.
- /Add image Adds an image to the list for the level.
- You should miss off the extension '.chk'
- when naming the object.
- /Remove image Removes an image from the list.
- /Select picture Changes the picture to grab images from.
- /One point grabbing Toggles the grab method. One-point means that images
- will be grabbed with a single click. In this case the
- image must be drawn with a crosshair in colour 2
- around it, pointing at the handle, i.e.
-
- | image with handle at centre
- / of crosshair
- ~~~ |/
- / \ -
- - | . | - <--- crosshair in colour 2
- \ /
- ~~~
-
- |
-
- The alternative is rectangular grabbing which does not
- need a crosshair but takes a click and drag movement
- to draw a rectangle around the area to grab, plus an
- extra click to place the handle.
- One point grabbing is off by default.
-
- Enemies
- /Add enemy Adds an enemy to the list for the level.
- /Remove enemy Removes an enemy from the list.
- /Properties Sets a number of parameters that govern the
- enemy's behavior.
- Weapons
- /Add weapon Adds a weapon to the list for the level.
- /Remove weapon Removes a weapon from the list.
-
- Sounds
- /Add sound Adds a sound to the list for the level.
- /Remove sound Removes a sound from the list.
-
- Buttons:
-
- Add section Delete section
- Raise floor * Lower floor *
- Raise ceiling * Lower ceiling *
- Raise all ceilings Lower all ceilings
- Set floor texture * Set ceiling texture *
- Set wall texture Set all wall textures *
- Add light Delete light
- Set start point Section effect
- Add object Delete object
- Add enemy Delete enemy
- Object damage Object pick-up
- Add door Delete door
- Add lift Delete lift
- Add switch Delete switch
-
- * works on all currently selected sections
-
- 2.3 Creating sections
- ---------------------
-
- All levels, however complex they may appear, are built from simple builing
- blocks called sections. The player will be able to walk around inside the
- sections. There are a few rules governing how you may define sections,
- which are as follows:
-
- - A section is a closed polygon made up of up to 10 walls.
-
- - Sections are drawn clockwise.
-
- - No internal angle between two adjacent walls in a section may be more than
- 180 degrees. Put another way, no wall can ever obscure any part of another
- wall in the same section.
-
- You can add a section by clicking on the 'new section' button and clicking the
- left mouse button to draw the walls. Clicking the right mouse button cancels,
- and the space bar comletes the section. You can also complete the section by
- drawing a wall that completes the shape. If the section disappears after
- completion, it did not follow the above rules.
-
- To join two sections together to make a larger area, just draw the second so
- that it shares a wall with the first. The player will then be able to walk
- between them. Again, there are rules for joining sections:
-
- - Two sections may share one, and only one wall. They cannot share part of
- a wall.
-
- - The sections must not overlap. Sections inside sections are illegal.
-
- - A wall can be joined to only one other wall.
-
- - Ghosted sections cannot be joined if eye level checking is on
- (see section).
-
- If the first wall that you draw is shared with another section, the new section
- will take on the characteristics of the old one, such as floor and ceiling height
- and textures. This saves you the trouble of setting these things later.
-
- Steps can be created by changing floor and ceiling heights (using the buttons).
- One click produces a small step, two clicks a larger one. More than two clicks
- and the player will have to jump. The default height of sections is 16
- clicks. This corresponds to textures 128 pixels high.
-
- Changing textures
- -----------------
-
- Any texture in the texture list can be applied to any wall, floor or ceiling.
- Textures will be stretched horizontally to fit walls, but tiled vertically.
- Walls can have an upper and lower texture in the case of steps in both floor
- and ceiling.
-
- To change a wall texture, click on either 'set wall texture' or 'set all wall
- textures'. The latter will set every wall texture in all selected sections,
- the former a single wall texture which must be chosen with the mouse. Walls
- are selected with a single mouse click on the furthest clockwise point of that
- wall.
-
- Floor and ceiling textures must be 128*128 pixels, and are tiled. One grid
- square corresponds to one tile. Note that the placement of floor and ceiling
- tiles is independent of the walls. The 'set floor texture' and 'set ceiling'
- texture buttons work on all currently selected sections.
-
- Lights
- ------
-
- If you create a level with a few sections, some steps and a few textures, then
- test it out, you will find that you can't see anything. With no lights,
- everything is dark (just like life, really). The torch is one light source,
- but it is not very powerful. To add lights to the level, first select all
- the sections you want to be affected by the light, then click on the 'add light'
- button, place the light and finally, set its brightness. You can add a number
- of lights and have bright areas and dark areas.
-
- Some tips when adding lights:
-
- - Add lights last, and be prepared to keep changing them until the level looks
- right.
-
- - Lights fade with distance, but shadows are not calculated. You can make your
- own shadow effects by choosing which sections are lit up by a particular light.
-
- - Having a visible object such as a light bulb at the same position as a light
- source can be very effective.
-
- - Lights can be as bright as you want, but if a wall is fully lit up, it cannot
- get any brighter. All that happens is that the light reaches further.
-
- Objects
- -------
-
- 2D bitmaps are used to show objects in the game environment. Objects use the same
- bitmap for all angles, so there are some things that they can't be used for. Some
- examples of things that work well are barrels, plants, light bulbs and wine
- glasses. These things have cylindrical symmetry. Flat objects like plates don't
- work well because they change too much with vertical viewing angle.
-
- Players can interact with objects by shooting them or picking them up. This allows
- for things like ammo boxes and lights that can be shot out.
-
- To add an object, click on the 'add object' button and follow the prompts. You will
- set the objects position and choose the image and draw mode. You can add an object
- on top of another object in a different draw mode to achieve such effects as halos
- around lights.
-
- To change an object's damage effect, click on the 'object damage' button. The
- object will always vanish when shot, but it can also turn a light off or explode.
-
- To change an object's pick-up effect, click on the 'object pick-up' button.
- The object can be a pass, a gun, ammo or a health or shield bonus.
-
- Doors and lifts
- ---------------
-
- Adding doors and lifts could not be simpler. Just press the button and choose the
- section. If you are adding a lift you also have the option to a wall that
- activates it, and whether to have a switch on the lift itself. For a door you
- choose which pass (if any) is needed to open it.
-
- To get textures to move correctly when a door or lift is activated, do this:
-
- For a lift, nothing. Textures will move up with the lift automatically.
-
- For a door, either use a blank texture for the inside of the door frame or add
- a new section on either side of the door frame with the ceiling moved all the
- way down to the floor. A diagram might make this clearer.
-
- | |
- /|--------------|\
- / | | \
- | | DOOR | | <-- sections with ceiling at floor level
- \ | | / |
- \|--------------|/ |
- | | |
- /\ |
- -------------------------
-
- To the player, the two smaller sections are invisible. All they do is force the
- texture to be drawn correctly.
-
- If you are interested in the details of this, textures are always fixed to the
- edge of a floor or ceiling step. If there is no step they are attached to the
- ceiling. What the trick with the door does is make the whole wall become a
- step, fixing the texture to the 'floor' instead.
-
- Switches
- --------
-
- Switches can open doors, move lifts or turn lights on and off. They can be
- once-only switches, on/off types or reset after a short time. To add a switch,
- click on the 'add switch' button and follow the prompts.
-
- Graphically, there is a small trick used with switches. When pressed, they swap
- the upper and lower textures of a wall. This means that you can't have switches
- on steps.
-
- Section effects
- ---------------
-
- Events can be triggered when the player walks into a section. Doors can open, lifts
- can start, sound effects can be played or the level can end. The 'section effect'
- button handles this. Click and follow the prompts.
-
- 3.0 Designing Graphics-------------------------------------------------------
-
- 3.1 Graphic types
- -----------------
-
- There are two kinds of graphic files, textures and objects. Objects are
- drawn flat and scaled. Enemies, barrels and lights are all objects. So are
- the player's guns. There are four drawing modes for objects: colour,
- brighten, darken and tint. Colour is the standard mode. Brighten can be seen
- in gun barrel flashes and could be used for halos around bright lights.
- Darken could be used for smoke effects. Tint changes the colour of pixels
- without changing their brightness. It could be used for transparent liquid
- containers and possibly explosions or fire. Different modes can also be
- superimposed, e.g. a colour object with tint applied to it. Textures have
- only the colour drawing mode.
-
- 3.2 Palette conventions
- -----------------------
-
- For colour mode graphics, the standard palette (palette.iff) should be used.
- The palette is divided into two parts. The first 32 colours are deemed
- 'bright'. Bright colours are not affected by lighting effects. Hence sparks,
- explosions and lights are drawn in these colours. The rest of the palette
- contains seven 32 colour ranges. Anything drawn with these colours is
- subject to lighting effects. Colour zero is transparent for objects but not
- for textures.
-
- Brighten and darken modes use only the first 32 colours. Colour zero means
- no effect. Colour 1 means Brighten/darken by one shade, and so on.
-
- Tint mode uses only the first colour of each of the seven ranges. Tinted
- pixels will be transported directly across into the corresponding range,
- without changing brightness.
-
- Because it is possible to include some of the first 32 colours by mistake
- when using certain drawing tools in art packages, it is useful to work
- with the palette remap.iff and add bright colours later.
-
- 3.3 Texture graphics
- --------------------
-
- Wall textures must be 128 pixels wide and a power of 2 pixels high, e.g.
-
- 128*16
- 128*64
- 128*128
- 128*256
-
- They should be placed at the top left corner of an iff picture.
-
- If a texture is shorter than the wall it is placed on, it will be tiled.
- If this is the case, it will be necessary for the top and bottom to match.
-
- Floor textures must be 128*128 pixels in size. It is important for them to
- tile properly.
-
- 3.4 Object graphics
- -------------------
-
- Objects can be any size. A useful hint when drawing objects is to keep
- in mind the angle that they will be seen from. Anything that is normally
- below the player's viewpoint should be drawn slightly from above. However,
- the player can move and look up and down, so don't overdo the angle. Keep
- things almost level, to minimise the distortion when the object is seen
- from a different angle.
-
- 3.5 Characters
- --------------
-
- There are currently two types of character: walkers and floaters. They require
- different numbers of animation frames.
-
- Walkers require the following frames:
-
- standing
- walking (4)
- hit by player
- attacks player
- fall over (7)
- dead
-
- All frames except the dying animation are needed in eight directions, making
- 64 frames in total.
-
- Floaters only need:
-
- floating
- hit by player
- attacks player
- dead
-
- Again in eight directions, except for the dead frame.
-
- The size of individual frames is not important, just keep the handle in the
- same relative position in each frame.
-
- -----------------------------------------------------------------------------
-
- 4.0 Bugs and future enhancement ---------------------------------------------
-
- 4.1 Known bugs
- --------------
-
- The editor lists:
-
- The editor uses lists of textures, objects etc so that it knows what files to
- load. Getting these to work in Blitz was a nightmare. There are still
- occasional problems when selecting items from lists. Generally quitting and
- reloading will solve them.
-
- Removing items from lists:
-
- This is safe as long as you have not started using items in the list yet. If
- you have, later objects will be messed up when removing items from the list.
- It is always safe to remove the last object.
-
- Phantom walls:
-
- These 2 dimensional features can appear if two adjacent sections did not join
- correctly. They should be rare and easily corrected be deleting one or both of
- the sections and redefining them.
-
- Invisible walls:
-
- The opposite to the above; a wall that should be there is not drawn. No idea
- why this sometimes happens, but it is easily fixed by deleting and redrawing
- the section.
-
- Wobbly textures:
-
- When doors and lifts move, there can be a one pixel error in drawing the textures.
- The result is a strange rippling effect. Probably a days work on the code to fix,
- but in the meantime the effect can be minimised by using textures that are quite
- smooth in the vertical direction.
-
- -----------------------------------------------------------------------------
-
- Edmund Clay
- 44 Finstall Rd
- Aston Fields
- Bromsgrove
- Worcs
- B60 2EA
-
- email: ec@hep.ucl.ac.uk
-