home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Encyclopedia of Games
/
eog_disc2.iso
/
encyclop
/
dosgames
/
abuse
/
abuse.doc
next >
Wrap
Text File
|
1995-08-31
|
98KB
|
2,070 lines
This document was written by Duong Dai Nguyen,
level designer & artist for Abuse
WELLCOMMMEEEE ....
TUTORIAL NUMBER 1
(how to make levels the crack-dot-com way!)
Here at crack-dot-com we strive to create fun games. Many elements
goes into makeing a fun game, and but one is level design. Suppiled with
your offical crack-dot-com package is a level editor. This editor allows
you to produce your own ABUSE levels, using prefabracatied peices which
we call OBJECTS. The interface is a little daunting at first but with some
persistance you can be blasting your way down long dark allies pursuing or
being pursued by aliens, robots and/or flyers of your own creation. Let's
begin!
Table of contents
(do a key-word search for the number/letter combination
to jump to the section you want to read)
1A) Key Listings and Extented Options
---------------------------------------
2B) Object Listings and Descriptions
--------------------------------------
3C) Prelimanry Level Designing, Editors Windows and Menus
-------------------------------------------------------------
4D) Level Designing Hints and Praticalities
---------------------------------------------
1A)
Key Listings and Extented Options
-----------------------------------
------------------------------------------------------------------------
Key Listings
------------------------------------------------------------------------
a : toggle toolbar window
A : disable auto lighting (when computer is too slow, lighting shuts off)
b : toggle background tile picker window
B : make background window wider
c : center on player
C : clone object (mouse cursor must be on it)
d : delete object
D : toggle delays
E : toggle enlarged render
f : toggle background tile picker window
F : make foreground tile picker window wider
g :
h : help
i : invert color black (for foreground tile window, for descerning transparent/non-trans tiles)
j : jump player to mouse position
k : kill first link
K : kill last link
l : toggle light picker window
L : toggle layer show window
m : toggle map
n : next player focus (not working/useful)
o : toggle object picker window (hold down shift-(first letter) to jump to an object)
p : toggle palette picker window (hold down shift-(first letter) to jump to an palette)
P : toggle profiler window
Q : quit (does not ask permission!)
r : raise/lower tile (under mouse)
s : sreach for object (not working yet)
S : save level
t : flood fill the current tile, (if "grabbing" palette window, flood fills palette pattern)
U : Ultra smooth drawing (not working correctly right now).
v : volume
w : where, tells the x & y position of the mouse in the game
x : flip objects direction
z : clear weapons
Z : toggle god mode (cursor must be inside of view to turn god-mode)
space : pick object and move it (click when finished moving)
ctrl : hold down while moving to allign on a tile grid,
when not moving objects : hold down on a object and let go on top of another,
and a link is created
alt : hold down while moving to allign to center of tile grid
` : "pick up" the foreground tile the mouse is current on
F1 : help
F2 : save a single screen shot to scrnshot.pcx
F3 : save a single screen shot, but name shot0001.pcx, shot0002.pcx...
F5 : save a series of screen shots, save one every 5 frames
F10 : reduce screen to what it would for 320x200, usefull for hi-rez editing
+ : increase view size
SHIFT+: increase view size a lot
+ : decrease view size
SHIFT-: decrease view size a lot
arrows: scroll view in a direction
TAB : toggle edit/play mode
/ : toggle console window
------------------------------------------------------------------------
Extended Options
------------------------------------------------------------------------
-nosound
-sfx_volume [0..127]
-vmode [G640x480x256 | // SVGA for linux
G800x600x768 |
G1024x768x256]
-size xres yres // for X11 and DOS, for DOS -size ? will give you
// a list of available modes
-2 // doubles each pixel during rendering
-demo // quits game after an idle timeout and goes to demo
-lisp // starts up with an interactive lisp command line
-lock_size // X11, does not allow window to be resized
-disp/-display // specify an alternative X server than $DISPLAY
-no_delay // starts with no delays, plays as fast as computer goes
-cprint // print all output to stderr instead of console
-nojoy // disables joystick use (there isn't any, anyway!)
-lsf [filename] // use a different lisp startup file than abuse.lsp
-edit // Initially start in EDIT_MODE, loads "edit.lsp" as well
-t [filename] // auto-number and load load tiles from SPE file
-f [filename] // load filenames as "level1.spe"
// don't shoot yourself in the foot!
X11 (X windows for UNIX) options :
------------------------------------------
-noshm // don't use Shared memory for X11
-grab_pointer // causes abuse to keep pointer inside of window
while playing... press <TAB> to go into devlopment mode (if you ran with -edit),
type '/' to bring up the console (you can type lisp commands in there).
2B)
Object Listings and Descriptions
----------------------------------
------------------------------------------------------------------------
Object Listings and Descriptions
------------------------------------------------------------------------
------------------------------------------------------------------------
IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT IMPORTANT
------------------------------------------------------------------------
Before you can learn about the objects you need to learn about
LINKING. Links are the grey lines drawn from one object to another.They act
as visual cues, indicating that those objects are referencing each other
for particualar purposes as will be disscussed. The links are created by
the level designer. The serve a variety of purposes, dependent upon the
objects linked and their order relative to one and another. What follows
is a description of how to make a link:
--First lay your mouse cursor over the object you want to start
the link from, watch for the grey bounding box.
(note that the object which starts the link is the object which
is 'thinking' and the object which end the links, is not modified
by the link other than its range being extended when the first
object is in the players range.
To understand why the first object 'thinks', it is
nessecary to know that every object in this list has an AI,
a small peice of code which determines how the object
behaves in the game. The AI paramters of an object can be
accessed by either moving you mouse cursor over the object, watch
for the grey bounding box to pop up. Either press the left mouse
button and bring up the extended option window for that object and
then press the button labeled AI to access the AI parameters. Or, you
can press <shift> <a> with your mouse cursor over the object to
access the AI window directly. Most of the AI parameters are labeled
and customizable for most objects. To change a parameter of the AI,
move your mouse over the number you want to modify and delete the
existing number with the <backspace> key first, and now type in a
new number.)
--With your mouse cursor over the object, now you have two choices
from which to make a link.
--the quick way is to the deprees the <Ctrl> key, and keep
it depressed move you mouse cursor off the object.
(note the line drawn from your chossen object and the
mouse cursor)
--choose the ending object you want the link to end to
--move your mouse cursor over that object, watch for the
grey bounding box.
--release the <Ctrl> key and the link will be formed
as indicated by a grey line between the two objects.
--The other way to make a link is as follows:
--click on the object of your choice, this will cause an
extended option window to open up.
--move your mouse over to the next object you want to
link the first to.
--click on that object, note the grey line now draw between
the two objects.
(note that the extended window now belongs to that of the
second object not the first. Thus if you modify the AI
of this object you are modifying the second objects AI not
the first.)
(note you cannot link objects to lights with the first method, you
must use the second method to link objects to lights.)
(note some object can have multiple links, to make multiple links,
just repeat the first method as usual. However if you are using the
second method you must close the extended options windows before
you can make another link from the first object.)
To see whether an object is making a link or being linked, you can
use the mouse cursor. Move the mouse cursor over the object with a link line
comming from it. If the link line turn a yellow color then you know that it
is the object making the link. If the line does not change color then it is
not makeing the link, but instead being linked by some other object.
To kill a link follow these procedures.
--there are two ways to kill a link line, the first is the
most flexible and efficient
--the first method involves only the short-cut keys
--move your mouse cursor over the object making the link
(see above to determine whether an object is making a link)
--since objects can have multiple links you have two method
of which to break a link, from the frist toward the last or
vice versa.
-if you want to break the first toward the last use the
<k> key
-if you want to break the last toward the first use the
<shift> <k> keys
-if you want to beak all the links comming from that object
use multiple <k> or <shift> <k> keys presses.
(note any reamaing link does not originate from that object)
--the second method uses the extended options window
--open the extended options window, by clicking on the
object
--look got the buttons with the red 'X's.
--the button farthest to the left with the red 'X' will
break links with objects, ONLY in the order from first
to last.
--the button farthest to the right with the red 'X' will
break links with lights, ONLY in the order from first to
last.
--it is advisable to close the extended options window after
you are done using it to prevent any accidental delinking or linking.
(click on the CHECK to close the window, or the 'X' on the upper
left hand corner to delete the object.)
(note links from objects to lights can only be broken with second
method.)
It is worth mentioning that most links that objects make serve the
purposes of acting as triggers. That is an object usually makes a link
to another object such as a sensor or a switch, which can only have two
states (on or off), and when the sensor or switch changes to an approriate
state, recognizable by the originating object, the originating object
will activate its approaite AI code, thus modifing its state.
To access an objects AI follow these procedures:
--first method
--click on the object, thus bringing up the extended options
window
--click on the AI button,thus bringing up the AI window
with all modifiable paramaters for that window. They are
labeled, and thus self explanatory.
--second method
--move mouse cursor over the object
--press the <shift> <a> keys, thus bringing up the AI window
with all modifiable paramaters for that window. They are
labeled, and thus self explanatory.
To modify an objects AI follow these procedures:
--move your mouse cursor over the paramters box
--use the <backspace> key to delete the current parameters value
--type in the desired value
--close the AI window to make the changes complete (click on the
CHECK)
Another important facet of the objects nessecary to learn before you
tackle the list, is the range concept. The levels are filled with
hundreds of objects. If they all were given processing time, the
game would run very slowly. So, as an optimization feature, only
the characters within a certain distance of the player are processed.
However not all characters have the same range. Thus some characters,
can be proccessed, while others wouldn't, yet be spatially very close.
Such as the case with doors and aliens, the aliens can walk through
doors, when the player goes to far away from the door and alien.
This is resolved either by extending the range of the door,
in code or in the game. To extend the range in code, you need to find
the lisp code which defines the characters AI and modify it there.
To extend the range of a character in the game, you need only to link
an object, any object but usually it is a sensor, to the short
ranged object. That is the link originates from the sensor, terminating
on the object. When the sensor is active it will 'pull' the linked object
into range as well, and thus allows that object to perform its special
function.
Now let's take a look at the objects.
------------------------------------------------------------------------
NOTE
------------------------------------------------------------------------
As customary, objects which have either on or off states, will change their
color to reflect these states. GREEN means on, and RED means off.
Objects which have these are as follows:
Sensor
Death_respawner
Death_sensor
All the logic gates
Indicator
Switch
------------------------------------------------------------------------
NOTE
------------------------------------------------------------------------
AMBIENT_SOUND
are sounds which are played continuosly with a user definable delay
and volume. They have a range of 500 pixels, and are played at their
highest defined volume at their point of origin and decreasing with
distance.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
ANT_CRACK
is and irregular object from which any number and type of alien can
come bursting forth. The user can set the number and type of alien
by accessing the extend AI options. The type of aliens are as follows:
0 = yellow-white fast Laser shot
1 = golden-ornage slow Laser shot
2 = Grenade
3 = Rocket
4 = Plasma
5 = Fire Bomb
6 = Death Frizbee
7 = Laser Saber
If it has no links it will NOT be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
ANT_ROOF
is an alien whose normal state is a invunerable coccon. Usually
placed on the roof, hence its name. It will activate when the player
comes within range when UNDERNEATH it, it will not activate if the
player is above it, even when in range. It can be of any type of
alien. To change its type, place the mouse cursor over the alien
of your choice, watching for a grey bounding box to be drawn. Once
you are over the alien press any of the number keys from 1-7 to
change the alien type, refer above to alien type and number.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
BIG_BOMB
A really big bomb which is triggerd off, by a sensor or switch.
It has a user definable delay which can be set in its AI.
It can kill the player if they are in range of its blast, which
is however not very large. They can be chained together by linking
them sequentialy. If placed with no links, the bomb will explode of
its on accord.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
BLOCK
A block is just an object which can be hurt, but otherwises
does nothing else but blocks the player. The player can
walk on blocks. heatlh = 30
It igores all links.
BOULDER
A boulder is an object which when active if droped from a height
will bounce on the floor doing damage to anything undereath it,
such as aliens, HIDDEN tiles, players, and anything else capable
of being hurt. It's x and y velocity can be modified.
It can be killed. heatlh = ?
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
BOMB
This is a smaller version of the BIG_BOMB and has the same
attributes except its explosion is weaker and is smaller.
see BIG_BOMB above.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
CONC
This is a mine. That is if the player touches this object it will
explode causing damage to the player. Otherwise it will just sit
there waiting for the player. Customarly placed on the floor.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
CONC_AIR
This is a air mine. That is if the player touches this object it will
explode causing damage to the player. Otherwise it will just sit
there waiting for the player. Customarly placed in the air.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
DEATH_RESPAWNER
This object allows you to spawn an object onto anothers object
location when it dies. That is if linked to an alien, when the
alien dies a user chossen object will appear where the alien died.
This can be useful for creating certain types for puzzles where
it is required for the player to kill a certain ANT This
character can only be used on the ANT (alien) characters.
The linking order are as follows:
--first link the DEATH_RESPAWNER to the object you want
to be respawned (any object)
(note the first link is always the object that will be
respawned in this case. It is also intresting to note
that if for some reason the first link dies, the second
link now becomes the first link. This could be an intersting
source for a puzzle.)
--now link the DEATH_RESPAWNER to any number of ANTs(only
ANTs) which you want the chossen object to be respawned to.
DEATH_SENSOR
This object, like all other sensors only has two states, on or off.
Whatever object this sensor connets to, when it dies , or
is deleted, such as the case with ammo and health, the sensor will
switch to an on state. It can have multiple links. If that is the
case, it will only turn on when all the object it is linked to
is dead or deleted. This object is useful in that you can link
other objects to it, which is activiated when its links dies.
DFRIS_ICON10
This is the large ammo unit for the Death Frizbee. It gives
the player 10 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
DFRIS_ICON4
This is the small ammo unit for the Death Frizbee. It gives
the player 4 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
FBOMB_ICON1
This is the small ammo unit for the Fire Bomb It gives
the player 1 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
FBOMB_ICON5
This is the large ammo unit for the Fire Bomb It gives
the player 5 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
FLYER
This is a flying robot, which can fire any of the 1-7 weapon types.
Use the same method of modifcation as on the ANT, to change the
weapon types for the flyer.(see ANT_ROOF) Its many modifiable AI
parameter.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
FORCE_FIELD
This object when actived by a sensor or switch will make a wall
for energy which blocks the character from crossing. It can be
any hieght but no greater than once screen. Position the character
on the top of where you want the wall.
If it has no links it will be active (on or off depending).
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
GATE_AND
Logic gates modify their states depending upon their links states.
For instance a GATE_AND will only turn on when all its links
are in the on state. If however one of the links turn off, the
GATE_AND will revert to an off state. This logic gate can have
more than one link associated with it.
GATE_DELAY
Logic gates modify their states depending upon their links states.
For instance a GATE_DELAY will only reflect the state of its link.
If the GATE_DELAY is link to an on sensor, it will eventually turn
on as well. However, the special property of the GATE_DELAY is that
it has a user definable delay in between switching states,
whether from on to off or vice versa. It can only support one link.
GATE_NOT
Logic gates modify their states depending upon their links states.
For instance a GATE_NOT will be in the oppsite state of its link.
If a GATE_NOT is linked to an on sensor it will be in the off state.
GATE_NOT only support one link.
GATE_OR
Logic gates modify their states depending upon their links states.
For instance a GATE_OR will be in the on state whenever any one
of its links are on, and is off only when all of it's links
are off. It can support multiple links.
GATE_PULSE
Logic gates modify their states depending upon their links states.
A GATE_PULSE will, when switch on by an on sensor or on switch,
pulsuate between on and off states with a user definable delay
between the off states. This gate only supports one link.
GATE_XOR
Logic gates modify their states depending upon their links states.
A GATE_XOR will only switch on if and only if its links (GATE_XOR
usually have more than one link associated with it as with GATE_OR,
and GATE_AND) are not of the same state. That is if there are
two links, and if they are in different states, the GATE_XOR will
be in the on state. However if one of the links switch states,
thus both being the same, the GATE_XOR will be in the off state.
This gate supports more than one link.
GREEN_FLYER
This is a green flying robot, which can fire any of the 1-7 weapon
types. Use the same method of modifcation as on the ANT, to change
the weapon types for the flyer.(see ANT_ROOF) Its many modifiable AI
parameter.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
GRENADE_ICON10
This is the large ammo unit for the Grenade. It gives
the player 10 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
GRENADE_ICON2
This is the small ammo unit for the Grenade. It gives
the player 5 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HEALTH
This is a heart icon. It increases your health, dependent upon your
difficulty level it can give you a range from 5-20 health points.
HIDDEN_ANT
This is an ANT whose normal state is invisible. It acts like the
ANT_ROOF but is invisible.(see ANT_ROOF)
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL1
Hidden object are used to hide secrets. The can be destroyed using
any of your weapons. Hidden walls can be made indestructable by
linking them up to sensors or switchs. When the switch or sensor
comes on, the hidden wall will self destruct, causing alot
of damage to any aliens, and/or other hidden walls surrounding
it, but no damage to the player. This hidden wall look like
a floor tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL2
This hidden wall looks like a roof tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL3
This hidden wall looks like a wall tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL4
This hidden wall looks like a blocking tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALLl5
This hidden wall looks like a floor tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL_2x2
This hidden wall looks like a 2x2 blocking tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL_3FLR
This hidden wall looks like a 3 tile wide floor tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL_3TOP
This hidden wall looks like a 3 tile wide roof tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL_3WALL
This hidden wall looks like a 3 tile wide wall tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
HIDDEN_WALL_AFLR
This hidden wall looks like an alien floor tile.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
INDICATOR
This object switch it's color from red to geen when it turns off
and on. It's useful when showing the player info about sensor states
or switch states.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
JUGGER
This is a walking or stationary robot which toss greandes.
Its AI can modifies whether is walks or is stationary, and
the angle at which it throws the grenades.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
LADDER
An object which allows the player to clmib along it's lenght when
in the area bounded by the ladder object and another object the
ladder is linked to. That is the ladder needs to be linked to
any other arbitary object to work. Forming the upper left hand
corner of the area box, and the other arbitary object forming
the lower right hand corner of the box. When a player enters
the area they can climb up the ladder when the press up.
(note the cirterion for the player entering the box is when
the feet of the player be in the box for this to work)
This object requies one and only 1 link to another object
(usually a marker) to function.
LAVA
The lava is an object which does constant damage to the player as
long as they are in contact.
LIGHTHOLD
This object allows other object to have light icons, thus lights,
assoicated with them. By linking them together, a light
can be 'glued' onto another character. By linking the LIGHTHOLD to
an object that you want to hold the light, and then linking the
LIGHTHOLD again to the light you want that object to hold. (note you
must use the second method of linking for lights, see above
LINKING)
LIGHTIN
This object can hurt the player when the lighting flashes and only
then. The speed is user definable.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
LSABER_ICON10
This is the small ammo unit for the Laser Saber. It gives
the player 10 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
LSABER_ICON50
This is the large ammo unit for the Laser Saber. It gives
the player 50 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
MARKER
An object which does nothing, but can hold links for other
objects which need to be linked to other objects such as
the LADDER.
MBULLET_ICON10
This is the large ammo unit for the Laser Rifle. It gives
the player 10 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
MBULLET_ICON5
This is the small ammo unit for the Laser Rifle. It gives
the player 5 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
NEXT_LEVEL
This object will take you to another level when activated (player
touching, presses down arrorw). The next level it takes the player
to is arbitary, listed as a number in its AI. To use the NEXT_LEVEL
object it is nessecary for the level to be in the levels directory
under the current ABUSE directory and use the naming convention,
levelXX.spe
where, XX = any number from 00 - 99. (note the first 0 must be
include if the number is less than 10)
It is advisable to double link the NEXT_LEVEL to its top,
the NEXT_LEVEL_TOP, for covention and future expansion purposes.
To double link something, means to link the objects mutually.
Link one object to another and that second object back to the first.
NEXT_LEVEL_TOP
The top part to the NEXT_LEVEL. Should be linked to NEXT_LEVEL
object.
OBJ_HOLDER
This object is similar to the LIGHTHOLD, but instead of gluing
a light to and object , it glues together two objects. This
object is senitive to the ordering of the links. The first
link is the object to be held. The second link is the object
which is holding the first. There is an optional third link,
which if it exist, will act as a trigger for the OBJ_HOLDER, when
the trigger switchs on.
(note that if the first or second link is broken, this will
happen if the object dies or is deleted, the links will
reorder themselves)
The OBJ_HOLDER has modifiable AI for the displacement of the
first object with respect to the second object.
An OBJ_HOLDER with no links or one link will be deleted by the
engine.
OBJ_MOVER
This object will allow the level designer create paths for objects
to move on. It accepts two links. The first link marks the endpoint
for the path, and the second is the target object which is to be
moved. By linking OBJ_MOVERs in a cyclic pattern the target object can
be kept moving indefintely. When the OBJ_MOVER moves the target
object to its destination, the link is then transfered to the end
object, which in a chain of OBJ_MOVER will then move the target
object to the next link in the chain. A chain composed of multiple
OBJ_MOVERS can hold multiple target objects, one for each pair of
OBJ_MOVERS. It has a user definable speed at which it can
move the target object, in its AI.
PLASMA_ICON10
This is the small ammo unit for the Plasma Beam. It gives
the player 10 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
PLASMA_ICON50
This is the large ammo unit for the Plasma Beam. It gives
the player 50 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
POINTER
An object which does nothing, but is used to draw the players
attention to certain points in the level. It looks like a golden
arrorw.
POWER_FAST
The power icon series, are icons which when collected by
the player augments thier abilites. The player can only collect
one icon at a time.
This power icon will allow the player to move twice as fast as
normal and jumper higher.
It is activated by using the right mouse button.
POWER_FLY
The power icon series, are icons which when collected by
the player augments thier abilites. The player can only collect
one icon at a time.
This power icon will allow the player to fly.
It is activated by using the right mouse button.
POWER_HEALTH
The power icon series, are icons which when collected by
the player augments thier abilites. The player can only collect
one icon at a time.
This power icon will allow the player to have 200 health points.
It is activated by using the right mouse button.
POWER_SNEAKY
The power icon series, are icons which when collected by
the player augments thier abilites. The player can only collect
one icon at a time.
This power icon will allow the player to become paritally invisible.
It is activated by using the right mouse button.
PUSHER
This object will push the player in the direction of the arrows.
It has a modifiable AI allowing the level designer to change
the strenght at which it pushes the player.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
RESPAWNER
This object, like the DEATH_RESPAWNER will respawn another object.
It has only one link, the object to which it will respawn, and
in its AI is a user definable delay time between the respawning.
An object can only be respawnnded if it is deleted once it has been
spawned. The object will be spawned at the same location of the
RESWPANER. This object is very useful in network games,
since ammo and health tend to get depleted very quickly and needs
to be respawned often.
RESTART_POSITION
This object functions as a user activiated save positon in the game.
When the levels tend to be very large, it is nessecary to put in
RESTART_POSITIONs, so as if the player dies, they do not have to
start from the very begining again. The more RESTART_POSITIONs in
a level, in general the eaiser it is.
ROB1
A large robot which can chase you down halls. It has large spining
blades which are situated in from of it, which can do damage. It
has a user definable speed and health settings in its AI.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
ROCKET_ICON2
This is the small ammo unit for the Rocket Launcher. It gives
the player 2 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
ROCKET_ICON5
This is the large ammo unit for the Rocket Launcher. It gives
the player 5 addition points to their ammo. Like all ammo,
if is connected to a sensor or switch which is off, the ammo
will be invisible, untouchable, and unaffected by gravity, until
the sensor or switch turns on.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
SENSOR
This is the basic triggering device. It has a on and off area box.
When the player enters the on area (green box) the sensor will
turn on and stay on until the player leaves the off area (red box).
(note the feet of the player must be inside the area boxes to be
considered inside the area box. Thus sensors are placed well
through emcompassing the floor, to maximize their effectiveness.)
It is usually the case that the off area encloses the on area,
but this does not have to be always. Each of the areas are
user definable in the sensors AI. Many different objects can be
linked to a sensor. Sensors act as triggers, responding to the players
positon. Sensors are also used to extend the range of other objects,
since it has the largest range, by linking them to other objects.
Sensors do not processs their links.
SMART_PLAT_BIG
The smart platforms are objects which requires two links,
usually two sensors, but not always. They look at the links
state. If the link is on, it will travel to that linked objects
location. A third optional link if it exists will direct the
platform to be active or inactive, by the links state.
(on will activate, and off will inactivate). They all have modifiable
AIs for their traveling speed.
This platform is a big techno looking platform.
SMART_PLAT_RED
This platform is a big alien looking platform.
SMART_PLAT_SMALL
This platform is a small techno looking platform.
SPRAY_GUN
This is a gun object which, when active will shoot out sparys of
shots. It is capable of shooting any of the weapon types. Use
the same method as the ANT to change its weapon type , or modify
its AI setting. The arc range and firing speed is user configerable.
If it has no links it NOT will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
SPRING
This object will allow the player to jump higher than normal.
The longer the player is in contact with the SPRING object
the greater it will push them. The strengh of the push is
user definable.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
START
This object sets the starting point for the player when the game
is started anew. If the player is set behind objects when the game
starts, then is nessecary to raise this object and same the level
again with the raised START object.
To raise objects, you need to use this procedure:
--position mouse cursor over the object
--use the <shift> <>> key to raise the object
--if you want to lower it, use the <shift> <<> key
It is possible to have multiple starting points in a level. The
game will start with the last one placed however.
STEP
This object just allows the player to walk on it. It is useful
as a steping stone.
SWITCH
This is a user activated object. It has two states, on and off.
Other objects reference this object often as with the sensor,
as it is a versatile tool.
SWITCH_BALL
This is a user activated object. It has two states, on and off.
Other objects reference this object often as with the sensor,
as it is a versatile tool. It can only be activated by
a weapon attack. That is the player must shoot it for it to
activate. It cannot be deactivated.
SWITCH_DELAY
This switch once activated will revert back into its default state
after a certain user definable time delay. Its defualt state is
off.
SWITCH_DIMMER
This is the only object that can modify lights. It requires two
links, one to a switch or any object which can change states
(on or off), and the other to a light which it modifies. Since
light and object links are different, it is not nessecary in which
order you link them to the SWITCH_DIMMER. The SWITCH_DIMMER can
increase or decrease the size of the light, as set buy its AI.
The SWITCH_DIMMER is one of the few objects which have
different properties depending upon it orientaion. If you flip
a SWITCH_DIMMER around, (by using the <x> key with your cursor
over the SWITCH_DIMMER you can flip it around) it will now function
in reverse. That is it will make the light grow, instead of
shrink. The SWITCH_DIMMER will only activate when the object
it is linked to is in the on state.
If it has no links it will NOT be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
SWITCH_DOOR
This is an object which has blocking and non-blocking states,
depending upon its link. It requires one link, which when on
will set the SWITCH_DOOR to a non-blocking state, and when off
will set the SWITCH_DOOR to a blocking state.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
SWITCH_MOVER
This object requires two link, the first to the object to be moved
and the second to any object which can change states (on or off).
When the second object state is on, the switch mover will move the
first object to its current position and then the engine will
delete the SWITCH_MOVER.
A SWITCH_MOVER with no link will be delete by the engine.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
SWITCH_ONCE
This is a user activated object. It has two states, on and off.
Other objects reference this object often as with the sensor,
as it is a versatile tool. It can only be switch ONCE.
TELE2
This is an object which requires one link. When activated, it will
teleport the player to the postion of the object it is linked to.
TELE2 can be linked to each other, thus creating connections within
levels which have no direct connections.
TP_DOOR
This object requires one link. When activated it will teleport the
player to another TP_DOOR. It is convention that TP_DOOR be linked
to other TP_DOORs, only.
TRACK_GUN
This object when active, will track and shoot the player with
a rate of fire and weapon type as defined by its AI,
which is customizable.
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
TRAIN_MSG
This object will print preset message to the player when
near it. The messages are defined externally.
TRAP_DOOR2
A door similar to the SWITCH_DOOR but is used on the floor.
(see SWITCH DOOR)
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
TRAP_DOOR3
A door similar to the SWITCH_DOOR but is used on the floor.
(see SWITCH DOOR)
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
WHO
Another type of flying robot, with the same attributes as the FLYER.
(see FLYER)
If it has no links it will be active.
It can be linked to a sensor or switch and will be
activated when the sensor or switch is in an on state.
Congrulations for making it to the bottom of the list.
3C)
Prelimanry Level Designing, Editors Windows and Menus
---------------------------------------------------------
------------------------------------------------------------------------
Prelimanry Level Designing
------------------------------------------------------------------------
In starting a new level I first muse upon a generalization of
what i want in the level. Will it be all action? will it have some difficlut
puzzles? simple ones? what kind of puzzles or challenges can i make
and what skill level is the player at? keep these in mind. The levels in
general can be as large a you want it to be, but the default value of
100 x 100 tiles is usually large enough for most levels. Before you can
begin putting down tiles and objects you first must learn how to tame
the windows and menus that proliferate the world that we call ABUSE.
------------------------------------------------------------------------
Editors Windows and Menus
------------------------------------------------------------------------
To find a window or menu description in this text do a key-word
search for it, review the Key Listings for proper spelling.
First you will need to start the game in edit mode for you to access
the editor that comes with ABUSE. To do this go to the current ABUSE
directory and type in this line:
abuse -edit
The '-edit' is an Extended Option see section 1A for a complete listing
of such.
The game will now start, it will load level 0, the training level
as default. This will suit our purpose for just learning the windows and
menus. As you notice the game is not running, as of yet, and if you have
already played the game you will notice there now is a menu bar
at the bottom of the screen not present when you normally play, and
your cursor is now an arrow instead of the usual target. Let's examine the
menus and their functions.
Under the farthest left hand menu called FILE, we find a listing
of file utility commands and some advance options.
under FILE-->
Load Level
Save Level (S)
Save level as
Save game
New level
Resize map
Suspend non-players
Play mode toggle (TAB)
Save Palettes
Start cache profile
End cache profile
The first 5 options from the top are basic file utility command found
on almost all programs.
Load level
is a command to load in levels. It has two method to
which to do this. The first is the command line in which
the user can input the path and name of the level which
they want to load. The second is the file selection system
using the mouse. The user can DOUBLE click on the file
or directory to look for and load up the level they want.
-------NOTE----------
The file selection system does not work for loading up files
outside the current directory from which ABUSE was ran.
Use the command line to load up levels from other
directories outside the current one.
Save level (S)
is a command to save levels. Its methods are the same
as the Load Level command, with the same limitaions.
A shortcut key is <shift> <s> . This command will save
the level with the current name and directory structure
as that of the current loaded level.
Save level as
is a command to save a level under a diffrent name from
the current loaded level. Its methods are the same as
the Load Level command, with the same limitaions.
Save game
is a command to save the level with your current position,
and weapon status. When the level is loaded up
the player will begin at the position from which is was
the game was saved, with . This differs from the other save
game commands in that when you use those it does
not save your current position, and weapon status.
New level
creates a new level.
Resize map
is a command to resize the map (level). The default is
100 x 100 tiles. A tile is 30 x 15 pixels, so in pixel
terms this translates into a 3000 x 1500 pixel world.
To change the size of the world type in the new parameters
and press <ok>, then press <cancel> to close the window.
Suspend non-players
is a command to stop all objects from being processed,
except the main character. You will notice that when you
excute this command the main characters upper body is frozen,
this is because the main character is composed of two
OBJECTS and only the lower half is processed. This mode
is useful in level desiging when you don't want to
distrub the world when you roam about.
Play mode toggle (TAB)
is the command to start the game from edit mode. That is,
allows the user to play the game as they normally would.
Once you select this command you can only use the
short-cut key (TAB) to return to edit mode. The
(TAB) key will work in either situation. I suggest you
use this key and forgo the menu command in that it is
tedious since in level desiging it is nessecary to
have to switch between these two modes very often. Normally
it is in edit mode (has menu bar on bottom of screen)
which an object can be placed and their AI modified.
Save palettes
save palettes to a file called edit.lsp. Which can be
edited using a convential text editor. Palettes are windows
which the level designer can place an assortment of
foreground tiles in any arrangement and use to stamp down
one copy or fill entire regions with. More on this and
foreground tiles will be disscused later.
Start cache profile
is a level optimization command in which memory allocation
for most often used sound effects and graphics are preloaded
into memory for short load times when playing the level.
-----------------------NOTE--------------------------
This command should only be used for finish levels.
To use this command properly these steps must be followed
--start a new level from the proper position and state
--select this command from the menu system
--enter play mode
--go through level as you normally would (using
save positions are ok) Each time a graphics
animation, sound effect, etc. are used the
game makes note of it.
--contiune up until you reach the end level
teleporter or end point of the level do not
go to the next level.
--reload the game from the menu
--save the game from the menu or use <shift> <s>
--now choose the End cache profile command
from the menu
End/save cache profile
is a command to save and end the cache optimization
procedure. It saves the data to a file under the name
and directory of the original level with an extensiton of
.cpf .
From the FILE menus you will use the Load level command most often.
The rest are occasionally used, and the Save level has a keyboard short-cut
so it will not be nessecary to use the menu for that command. Now let's
take a look at the EDIT menus.
under EDIT ---->
Toggle light
Set scroll rate
Center on player
Add palette
Toggle Delays
God mode
Clear weapons (z)
Mouse scroll
Lock palette windows
Raise all foreground
Toggle object names
Toggle map (m)
Shrink to 320x200 (F10)
Disable view shifts
Ultra Smooth draw (U)
Disable Autolight (A)
Show FPS/Obj count
Record demo
Play demo
Toggle light
is a command to turn on and off the lighting. Lighting is a
unique feature of the ABUSE engine, allowing the
level designer to create new and intresting scenes simply
by moving around the light sources.
Set scroll rate
modifies the rate at which the foreground layer and
background layer scroll relative to each other.
The abuse engine has the capability for 2 layers of
parallaxing. The top layer is called the foreground layer
and the bottom called the background layer. The parameters
for the scroll rate is as such:
rate for background scroll in x axis:
rate for foreground scroll in x axis:
rate for background scroll in y axis:
rate for foreground scroll in y axis:
For example if the parameters were
X mul 1
X div 2
Y mul 1
X div 2
the background could scroll twice as fast as the
forground in the x and y axis.
Center on player
this command will center the screen on the main character.
It's very useful because the abuse engine allows the level
designer to displace the screens center from the main
character in any arbitarty fashion. The short-cut key is
<c>.
Add palette
command allows the level designer to make their own custom
palettes. Palettes are windows which the level designer
can place an assortment of foreground tiles in any
arrangement and use to stamp down one copy or fill
entire regions with. To access a listing of available
palettes press <p>. A window will pop up with the listings,
choose one and double click on it. This will open the
appropriate palette window. Sometime the palette windows will
be shrunk so to be more managable. To unshrink them use the
<+> key while the mouse is inside the appropriate
window, and they can be shruken again using the <-> key.
Palettes can be used to fill or stamp down one
copy at a time. Once you have opened the appropriate
palette window use the mouse and click on the palettes window
bar (the top thick part the window) with the left mouse
button and while keeping the left mouse button in the
depress position the level designer can use the <t> key
to do a flood fill, and the <space bar> to do a single
copy stamp down. Keep in mind that the fill option will
only fill an area composed of the same tile type and is
continueous. To position the stamp or fill you have to use
the upper left hand corner, this is same as the upper
left hand corner of the set of tiles. If you fill or stamp
down the palette with the upper left corner being inside
the tile grid on screen (the game is composed of 30 x 15
pixel foreground tiles) it will fill to the upper left edge
of tile, and so it is not nessecary for complete accuracy
to use the stamping/filling feature of the palettes.
Inherent in a palette is the ability to pick
any tile in the set of tiles you have laid down thus
they act as custom libiaries. To make your own custom
palettes, pick the:
Add palette
command from the menu. Name your palette something
represenitive of the palette. For our case something
like 'test' will do. You will notice that the parameters
for the X and Y size, don't worry too much about this
since palette are easily readjusted. Choose the <ok> button,
now you will see a palette window pop up in the upper
left hand corner of the screen with the chossen name.
To add forground tiles to your custom palette you first
need to bring up the forground window. The <f> key will
bring up the foreground window. To expand the foreground
window place your mouse cursor inside the foreground
window and press <shift> <f>. Multiple presses of <shift> <f>
will continuely expand the foreground window, until
to a certain point and then it will return to a single
tile wide window. If the forground tiles are shruken
then use the <+> key to expand them and <-> to shrink
them, with the mouse cursor inside the foreground window.
Don't be concerned about moving around the windows on
your screen to clear up the clutter. Use the <-> key
often to shrink down unused palette windows or press on the
upper left hand button on windows to close them. To choose
a tile from the foreground window, use either the left or
the right mouse button. You can only lay a tile down in
a palette with the right mouse button. Go into the palette
window of your choice and use the RIGHT mouse button
to lay down your chossen tile. If you cannot lay down a
tile in a palette window you might have a protection command
activated. Go to the EDIT menu and look for the command:
Lock palette windows
If this command selection, has an asterick next to it then,
it is active. Select it to deavtivate it.
To expand a palette window you use the arrow
keys. Place your mouse inside the palette window and
press the arrow keys pointing right and down to expand
the windows width and hieght respectivly. The arrow keys
pointing left and up will shrink the windows width and
hieght respectivly.
To pick a tile from a palette use the LEFT mouse
button. If you use the RIGHT mouse button you might alter
the palette if you don't have the Lock palette window
command activated.
----------------------NOTE---------------------------
If you shrink a palette window, any tiles contained in
the prior area of the palette window will be lost. That
is why there is a Lock palette window command to
protect against accidential alteration of palettes.
---------------------NOTE----------------------------
You must save each time, after you add a new palette you
want to keep in the game by using the :
Save palettes
command from the FILE menu selection. Saving a level DOES
NOT save the palette information as well.
Palettes are very powerful tools to a level
designer. They will allow you to do complex fills and make
repetive strucures easily, as well as being custom libiaries
for tiles. Palettes are your friends.
Toggle Delays
will allow the game to run at the fastest speed capable
for your machine. There should be a message telling you
whether delays are being turned on or off after you choose
this command. The keyboard short-cut is <shift> <d>.
God mode
In this mode you have all the weapons, unlimited
ammo and cannot be killed. The SHAREWARE version has
only four weapons as opposed to the COMMERCIAL versions
full eight weapon types. The keyboard short-cut is
<shift> <z>.
Clear weapons (z)
When level desiging and debuging, since the abuse engine
does not clear your weapons status when you reset the
levels, it is nessecary to manually reset your weapons.
This command will reset your weapon status, leaving you
with only one weapon the laser rifle, and all wepaons
ammo will be reset to zero. The keyboard short-cut is
<z>.
Mouse scroll
An optional feature is the ability to use the mouse as
scrolling device. If this command is active (as indicated
by an asterick), you can push the screen around the level
by pushing the mouse cursor against the four boundaries of
the screen. You can also use the arrow keys to scroll around
the level, but be careful not to be in any unlocked palette
windows when using the arrow keys as they could alter them.
Lock palette windows
this command prevents any accidential alteration to
palettes. When this command is active (as indicated by an
asterick) none of the palette windows can be resized nor
the tiles in them changed. To deactivate this command
select the it again.
Raise all foreground
command will, when active as indicated by the asterick,
will make all the foreground that is laied down in the
level, be of the raised type. Raised foregrounds are
drawn in front of the character, that is the main character
is obscured by them. When in edit mode all raised foregrounds
will have an 'X' drawn over them. To deactivate this command
select this command again. To unraise a raised foreground
tile, go over the tile (positiing the mouse cursor over it)
and press the <r> key. If this is successful the 'X' should
not be drawn over the foreground tile anymore, pressing the
<r> key again will raise the tile once more. The <r> key can
be used to raise and lower tiles.
Toggle object names
will when active display the name of all object on screen
in green underneath the offending object.
Toggle map (m)
when active will display the map onscreen. The map is a
global repsentaion of the level, with area boxes shown.
Area boxes are areas when a player enters, a preset
ambient and screen displacement will occur. The map can
be scrolled left right up and down using the arrow keys or
mouse cursor if mouse scroll is activated.
Ambient is the global level of lighting. A player
can only have one ambient at a time. However with the uses
of these area boxes multiple ambiences can be achived.
Once a player leaves an area box the screen displacement
and ambient does not return the their previous values. The
values of the screen displacement and ambient can only
change when the player enters another area box, until that
time the ambient and screen displacement is set as from the
last area box the player entered. Screen displacement shift
the center of the screen relative to the player center.
These parameters and others can be accessed using the
toolbar window. The toolbar window can be activated either
using the menu command under the WINDOWS menu selection
or the keyboard short-cut key <a>. When the tool bar menu
is active, you will see three icons. The first is a pencil,
icon, when this icon is selected (single clicking on it
with your mouse cursor) you can lay down tiles from you
have currently chossen from either the forground window,
palette window, or even the current level itself! To lay
down a tile in the game just press the right mouse button
over an area in the map. This mode is useful for using the
fill option. To fill an area in a map with one type
foreground tile use this apporach:
--select a tile from any of three soruces
-- current level
-- foreground window
-- palette window
--find the desired area, composed of the same tile
in continous array.
--move mouse pointer over this area
--press <t> key to do a flood fill of said area
To select a tile which is presently in the game,
position your mouse cursor over the tile and press
the <`> key. If your foreground window is open at the
same time, it will jump to that tile which is now selected.
This selection mechanism will work in map mode as well.
The next icon in the toolbar window is the
arrow icon. This icon allows you to modify an area boxes
parameters. However first you must lay one down. To lay
down area boxes it is nesseary to use the last icon a
box drawn with broken lines. To draw area boxes follow
this procedure:
--select the broken line box icon (positon your
mouse cursor over it and press once with the
left mouse button)
--go to the map
--click once with the left mouse button and while
keeping it is still depres, drag out the area of
the box.
(Note that when you put an area box on the map
it is the upper left hand corner of the box
which is laid first and you can only drag the box
area down and outward from there.)
Now to modify an area boxs default settings you have to
select the arrow icon. Follow these procedures to modify
an areas boxs parameters.
--select the arrow icon
--go to one of the area boxes yellow enpoints
(there are two endpoints per area box, one at
the upper left and lower right)
--DOUBLE click on one of the end points.
(you will know when you have selected an area box
after you double click on it, as it would have
flashed color into that of a yellow box.)
--this will bring up a window with several
parameters:
Ambient
Ambient speed
View x off
View y off
View x speed
View y speed
A brief description of each as follows:
Ambient -- is the global lighting level
it ranges from 0 - 63.
Ambient speed -- is the increment at which
the ambient changes from one ambient to
the preset, if when the player enters
the area the ambient is different from the
presets. (note that is an ambient of a
negative one is given then it instruct the
computer to use the current ambient the
player posses as the preset)
View x off -- tell how many pixels to which
to offset the player centers to that of the
screen in the x axis. If the value is negative
it will shift the screen left and a postive value
will shift the screen right
View y off -- tell how many pixels to which
to offset the player centers to that of the
screen in the y axis. If the value is negative
it will shift the screen upwards and a postive value
will shift the screen downwards.
(note that the defualt values set the screen center
close to that of the players. Unlike the ambient,
which a -1 value will egual no change. If the value
of the previous screen offsets were not -1, when
a player enters an area with a -1 value for the
offset, the screen will shift.)
View y speed -- is the speed at which the screen
shifts in terms of pixels.
View x speed -- is the speed at which the screen
shifts in terms of pixels.
Click on the <ok> (check) button to close the area box
extended option window, or the <delete> (big red x) to
delete the area box.
The keyboard short-cut key is <m>. To get out of map mode
press <m> once more.
Mastering the map, will allow you to gain the big picture
in level design.
Shrink to 320x200 (F10)
is a command to show a full screen size at 300x200
resoultion. This is useful if your working in hires and
want to get an idea of what the player will see in low
resolution.
Disable view shifts
if this command is activated (asterick next to it in the
menu selection) it will not shift the view when the
player is in an area box. This is very useful when
developing a level in that the accidental entering of
an area box while working in the level can cause annoying
unwanted view shifts. To deactivate this, just reselect
it under the EDIT menu.
Ultra Smooth draw (U)
this will draw the characters as smoothly as possible.
This command currently is under development and should
not be used.
Disable Autolight (A)
this will disable the autolight feature. The autolight
feature will turn off the lighting if the frame rate drops
below 9 frames per second. Disable this if your working on
a slow machine and want to see the lighting no matter
the speed. Double selection will deactive this as with
all the others. The keyboard short cut is the <shift>
<A> key.
Show FPS/Obj count
this command will print the number of frame per second
and the number of objects being processed currently at the
upper left hand corner of the screen.
Record demo
this will begin a recording, of the character while the
game is running which can be viewed later using the
Play demo
command.
Play demo
this will play the demo which you have recorded.
The EDIT menu is very important to designing levels. Most of the
important functions have keyboards equavilents and can greatly speed up
level desiging. Mastering this will allow you to make many levels. Now
let's take a look at the WINDOWS menu.
WINDOWS->
Foreground (f)
Background (b)
Draw layers (L)
Lighting (l)
Palettes (p)
Objects (o)
Console (/)
Tool Bar (a)
Search (s)
Profile (P)
Save positions
Foreground (f)
this selection will bring up the foreground window
where you can select the tiles from which the main
character interacts with (walk on, blocked by, etc)
To expand the foreground window place your mouse cursor
inside the foreground window and press <shift> <f>.
Multiple presses of <shift> <f> will continuely expand
the foreground window, until to a certain point and then
it will return to a single tile wide window. If the
forground tiles are shruken then use the <+> key to
expand them and <-> to shrink them, with the mouse cursor
inside the foreground window. Note that not all foreground
tile can interact with the player. The keyboard short-cut
is the <f> key, it will toggle the foreground window. The
color black (0 color) is drawn as a beige color in the
foreground tiles, for indentification purposes.
Background (b)
this selection will bring up the background window.
The abuse engine has the capability for 2 layers of
parallaxing. The top layer is called the foreground layer
and the bottom called the background layer. These tiles are
laided on the second layer. It is drawn behind the foreground
layer, and will show through only in areas where there was
the color black (0 color) in foreground tiles. To lay down
a background tile use this approach.
--select a background tile from the background window
by moving your mouse over the background tile and
pressing either mouse button.
(note you cannot use the <`> key to select already
laied down background tiles, like that of the
foreground tiles.)
--move over to the place where you want to place
the background tile
--press the RIGHT mouse button to lay down a
background tile. Only the right mouse button will
work. (note that because of the grid method of
the Abuse engine you can only lay down background
tiles in a 60x30 pixel grid, however in more
advance options the size of the background tiles
can be changed.)
The keyboard short-cut key is <b>, it can be toggled to
turn off and on the background window.
It is almost impossible to lay down background tiles
correctly when it is covered by foreground tiles. There
is an option to turn off selective layers, the lighting,
bounding areas, and links. This is achived using the
Layers window.
Draw layers (L)
the Layers window can be opened using this selection.
It is useful in clearing up the clutter when developing
levels. For example, when laying down background tiles
it is sometime nessecary to turn off the foreground
layer. This is done by pressing on the button labeled
FORE. The foreground should be not visible once the button
is depressed. To turn the foreground back on depress the
button FORE once more. What follows is a description
of the function of each button:
FORE-turns on/off the foreground layer
BACK-turns on/off the background layer
BOUND-turns on/off the bounding boxes of the
foreground tiles. Bounding boxes blocks the player,
so the player can walk on floors and is stopped
by walls and such. This mode is useful for
determing whether the junctions of the foreground
tiles bounding boxes line up correctly.
LIGHT-turns on/off the lighting.
Lighting is a unique feature of the ABUSE engine,
allowing the level designer to create new and
intresting scenes simply by moving around the light
sources. This mode is useful when you want speed,
as the lightting slows down the machine when on.
Also it is useful in that, when you are developing
the levels with the lighting on, it can be
distracting. It is advisable to disable the
lighting until the very end of the level design
process.
LINKS-turns on/off the links between objects. Links
are the grey lines drawn from one object to another.
They act as visual cues, indicating that those
objects are referencing each other for particualar
purposes as will be disscussed later. The links can
be so dense as to obscure the foreground, then it
is a good idea to turn them off. (note , when
the links are off the light icon will not be drawn.)
The keyboard short-cut is the <shift> <l> keys. This is also
toggleable.
Lighting (l)
this selection will bring up the lighting window. Contained
within this window are the various light sources which can
be placed in a level, and an ambient button. Lights are
repsented by a white , circular or semi-circular icon,
depending upon it shape refelcted by the icons shape.
To drop a light in the game follow this procedure:
--move your mouse cursor over to one of the
light icons in the light window.
--click on using either mouse button
-move your mouse cursor over onto the screen
(note the light icon draged with your cursor)
-positon the light icon where you want it and
press the mouse button to drop it in place.
Sometimes you may want to modify the lights defualt
size, and shape. There are several ways to modfiy lights
sizes and shapes. These are the procedures:
--The first method involves the use of just the
keyboard to change the lights shape
--position the mouse cursor over the
light in question (or follow the above
procedure and acuqire a light, note
do not drop it.)
--once your mouse cursor is over the light
press the <spacebar> key to pick it up
(note if you do not have to do this if you
just created the light and it is already
picked up.)
It is worth mentiong that it is possible to
pick up any object in the game using the
<spacebar> key when your cursor is over the object.
--now using the arrow key you change
the lights shape
--The second method for changing the lights shape
involves the use of the extended option window
--position the mouse cursor over the
light in question
-press the mouse button (either), this
will pop up an extended option window.
-modify the W and H fields for the lights,
which corresponds to the width and height
of the light.(note these feilds accpet
small numbers.)
--The first method for modifying the lights size
involves the keyboard
--position the mouse cursor over the
light in question (or follow the above
procedure and acuqire a light, note
do not drop it.)
--use the <+> and <-> keys to increase
and decrease the size.
--The second method invovles the use of the
extended options window
--position the mouse cursor over the
light in question
-press the mouse button (either), this
will pop up an extended option window.
-modify the L2 field to change the size
of the light. (note the L2 can accept very
large numbers.)
The keyboard short-cut is <l>. Lighting is an intergral
tool, in creating mood in the levels. Learn how to
use the lighting well, but do not over use it.
Palettes (p)
This window gives you a listing of your palettes. See
Add palette command under EDIT for a more complete
understanding of the palettes. The keyboard short-cut
is <p>
Objects (o)
Objects are the core of the game. They are all the characters
which you interact with. Each one is unique, as defined by
its AI. This window gives you a listing of all the objects
in the game. See Object Listings and Descriptions for a
complete overview of all the objects in the game. Some
basic object utility commands are as follows:
<spacebar> picks up character, when cursor is
over character
<x> filps character in x axis
<d> delete character
<shift> <c> clone characters
<ctrl> position character to a grid
(character must be picked up)
<alt> positon character in the middle of a grid,
(character must be picked up)
<shift> <k> kills last link
<k> kills first link
The keyboard short-cut key is <o>
Console (/)
This will bring up the console window. The console window
can accept command lines inputs. It can also be used to
modify the game and receive information about the games state.
The keybaord short-cut is </> key.
Tool Bar (a)
This will bring up the toolbar window. It is used in
conjunction with the map view, to add, modify area boxes
and place tiles in the map view. See the Toggle map command
from the EDIT menu.
Search (s)
This is currently under development, it will search for
characters within a level. do not use
Profile (P)
The profile window will display the current characters and
rank their CPU time. The higer up on th list the greater
the CPU time taken up by that character or groups of
characters.
Save positions
This command will save all the window positons which are open
to their current location. Thus when repopened will repappear
at these locations.
You have now entered the next level, good bye and good luck.
4D)
Level Designing Hints and Praticalities
-----------------------------------------
------------------------------------------------------------------------
Level Designing Hints and Praticalities
------------------------------------------------------------------------
If anyone has read this far, they either have to be crazy, or
very determined. You make the call.
In level desiging I ususally do some preplaning, as to what
kinda of challenges i want in the level and a general pacing of the level.
I feel that the only way to learn it is to get in there and start laying down
tiles. But, if you don't want to draw your own tiles, you need to famalirze
yourself with the tile set. To do that take a look at the current levels,
like level00.spe, the training level. Using the <`> key, with the
foreground window open select the tiles which you have an intrest in
and learn how they look like and what they do. Use the layers window ,
with the bounding option turned on, to see the bounds of each tile.
It is advisable to create your own palettes so you don't have to memorize
the location of your favorite tiles in the foreground window listings.
Also try out the objects, to see how they react with the player. It is very
recommendiable when makeing a level to save often. When testing out the level,
you may make a mess of all the characters, killing them and such. Use the
restore key, it will load up the level again , but will keep you at your
current location and weapon status. The restore key is <shift> <r>. The
restore key will reset the level to what level was loaded. If you saved the
game at a RESTART_POISTION then it will restart the game using the
savegame not the original level, you need to check to make sure this is not
the case, becareful not to save a messed up level. Making a level is an
incremental process, building block by block as you go. Try not to be too
myopic in level desiging, keep in mind the global goals and paceing of
the levels. That is keep the action steady and gradually building
up to the end point. This is usually done with proper sequences of
challenges, and increasing difficulty levels. Making levels draws
a great deal from experience. Keep it up and you will eventually
find a rhythme from which good levels come.
With all that said, level desiging is a rewarding process filled
with little twist and turns that will keep people enthralled, and entertained
for hours on end. Use it wisely grasshopper.
You have now entered the next level, good bye and good luck, this ain't no
spectactor sport, play it at a high voulme, and i am a donut.
------------------place standard disclaimer here --------------------