Documente online.
Zona de administrare documente. Fisierele tale
Am uitat parola x Creaza cont nou
 HomeExploreaza
upload
Upload




Westbang

movie


Description of the data files of the Westbang.

==============================================

IMPORTANT: DON'T FORGET TO MAKE BACKUP COPY OF THE GAME BEFORE YOU DO

ANY CHANGE TO ANY PART OF IT.

By modigfying of the data files you can change these parts of the game:



1) Comics 828c24i

2) Levels (number and parametres of the levels).

3) Decorations (destroyable things in the level).

4) Objects (peacefull citizens and gunmen).

5) Sprites (definitions of the used graphics).

Comics 828c24i

======

Files: DATA/COMIX/*.CMX

Comics 828c24i are simple animations with given images made by a script file.

Comics 828c24i are used for intro and outro animation and for interlevel shots.

There are these reserved comics:

intro.cmx played after the start of the program

gameover.cmx played, when a player loose his last life

goodbye.cmx played after the quit

You can modify these files as you wish, but you have to keep these names,

because they are called directly from the program. Other comics, their

names or number, is random.

Any of the *.cmx file can contain these commands:

delay <ticks>

Specifies the time the computer will wait before he does the next

command.

image <index> <name>

Image loads the specified bitmap and gives it an index number. In the

<name> can be just the name of the bitmap (the *.bmp file) or the path

and the name. The path starts in ../WESTBANG/DATA/COMIX, so all your

bitmaps and dirs have to be in the COMIX directory.

Note: The color 255,0,255 is transparent.

destroy <index>

Removes the image from the memory. Don't forget to destroy images,

or you can glut the memory.

virtual <v_index> <index> <pos_X> <pos_Y> <width> <height>

Virtual is the quad shaped object taken out of the image you can work

with by the commands of the comics. You can define more than one virtual

in one image.

<v_index> is the index given to the new virtual.

<index> is the index of the source bitmap.

<pox_X> <pos_Y> are the coords of the upper left corner of the virtual

in the image.

<width> <height> set the size of the virtual.

anime <v_index> <frames> <delay>

Makes the specified virtual the animated one. <Frames> is the number of

the frames and <delay> sets the pause between the two frames (speed of

animation).

Animated virtuals are made of bitmaps with all the frames placed in the

row. So the height of the bitmap is the same as the frames height and

width equals to <frames> times width of the frame.

anime_type <v_index> <type>

Sets the type of the animation of the specified virtual.

1: from first to last (1->2->3->...)

2: zig zag (1->2->3->2->1->...)

3: random

Example: These three commands make a short animated virtual.

virtual 3 1 0 0 10 10 //defines the first frame (size 10x10)

//taken from the image 1 (size 40x10)

anime 3 4 18 //makes 4-frames animation

anime_type 3 1 //sets the type of the animation to normal

setxy <v_index> <x> <y>

Puts the specified virtual on the given coords.

vis_on <v_index>

Shows the specified virtual. New created virtuals are hiden. You have to

use vis_on, if you want to see them on the screen.

vis_off <v_index>

Hides the specified virtual.

move <v_index> <tx> <ty> <sx> <sy> <tempo>

Sets the virtual as "the moving" one. Moving virtual goes automaticaly

from actual coords to target coords <tx>,<ty>. The speed of the motion

can be controled by the length of the single step (<sx>: step along the

x-axis, <sy>: step along the y-axis in pixels), or by the <tempo> - the

delay between the two steps.

resize <v_index> <sw> <sh> <speed_x> <speed_y>

Sets the virtual as "the resizing" one. <Sw> and <sh> are starting

height and witdth. Resizing can go by the very small steps, thats why

you have to set sw=100000 and sh=100000 if you want the starting size

of the virtual to be 100% x 100%.

sound <index> <name>

This is the same as the image command for the bitmaps.

play_sound <index> <volume> <panning>

Plays the sound once.

repeat_sound <index> <volume> <panning>

Repeats the sound, until you stop it by the command:

stop_sound <index>

destroy_sound <index>

Removes the sound from the memory.

pause

Waits for input. The script won't continue, until the user presses

any key.

include <file_name>

Plays the <file_name> comics file. You can make the hierarchy in the

files by this command. It's usefull for the good control of the long

comics to create one "main" cmx file, that calls the single scenes as

you can see in the "intro.cmx".

If you want to learn more, how to create the script look in our *.cmx files.

Note: Max number of images is 50.

Max number of virtuals is 50.

Max number of samples is 20.

Levels

======

File: DATA/LEVELS/LEVELS.TXT

By this file you can modify the game itself. In the file there is a

description of all levels in the game, order is unimportant. For each level

there is a short paragraph:

LEVEL 1

MODE 0

BACK bankbck/bank00.bmp

REFRESH_DOOR 40

CREATURE gm01.obj 70

CREATURE gm02.obj 50

CREATURE c01.obj 20

CREATURE c03.obj 30

CREATURE c05.obj 40

DECORATION clock1.dec

DECORATION pic1.dec

MAX_DOORS_OPEN 3

TIME 0

MAX_BANDIT 20

NEXT 2

KOMIX_START l01.cmx

BULLETS 6

AMMO 1000

END_OF_LEVEL 1

LEVEL sets the level index.

MODE sets the mode to 0 (normal) or 1 (duel).

BACK sets the level background.

REFRESH_DOOR sets the frequency of entries of the people.

CREATURE sets who can be met in the level. Number sets the probability.

You can have up to 24 creatures per level.

DECORATION puts the destroyable thing in the level.

MAX_DOOR_OPEN is clear (isn't it :)

TIME is not implemented yet. Set it to 0.

MAX_BANDIT sets how many bad boys you have to kill if you want to go to

the next level.

NEXT sets the index of the next level.

KOMIX_START sets the *.cmx file that will be played before the start of the

level.

KOMIX_FINISHED sets the *.cmx file that will be played after the finishing

of the level.

BULLETS sets the starting number of the bullets.

AMMO sets the ammo limit per level (if you want to force the players to

shoot carefully).

END_OF_LEVEL ends the paragraph.

Decorations

===========

Files: DATA/DECOR/*.DEC

You can create a decoration by this script:

ANIMATION clock1.txt

TYPE 1

X 288

Y 13

S_NORMAL NULL

S_DESTROY glass.wav

ANIMATION gives where a description of the sprite can be found.

TYPE is 1 for normal deco and 2 for deco, that can be shoot repetitionary.

(See the dogie in the game.)

X,Y puts the decoration in the right place on the screen.

S_NORMAL NULL: Hell knows what's that. Ask the programer :)

S_DESTROY sets the sound of the thing's destruction.

Objects

=======

Files: DATA/OBJECT/*.OBJ

Objects are simply the creatures you can meet in the game.

Make them by the script like this one:

ANIMATION d08.txt

TYPE 1

DELAY 18

MAX_SHOW 100

SCORE 500

SOUND_DEAD ugh03.wav

SOUND_SHOT colt.wav

SOUND_CRY reload2.wav

CHILD 0

TICKS 12

0 0

1 0

2 0

3 1

4 1

5 1

6 1

7 2

8 1

9 1

10 1

11 0

END

ANIMATION sets where the description of the sprites can be found.

TYPE 0 for peaceful people and 1 for bandits. TYPE 2 is for special

kind of the bandits, that revives after the shot. Watch the mexican

bandit, for example (gm07.obj).

DELAY is the time between two ticks. Man can do one action in one tick.

MAX_SHOW limits the number of entries of this man in the level.

SCORE sets the gain for leaving the bank alive (civilians) or dead (bandits).

SOUNDS are clear. SOUND_CRY is not implemented yet.

CHILD gives the index of the CREATURE in the CREATURE list

in the levels.txt. That man will appear after the killing of this one.

Relevant only for TYPE 2 men.

TICKS sets the number of the frames of the man. After the TICKS command,

there is a list of the frames - one frame per line. First number is the

tick, second one is the index of the frame (as you set it by the *.txt

file you call by the ANIMATION command).

Sprites

=======

Files: DATA/TEXT/*.TXT

*.txt files contain the info about the frames used by the *.obj file.

Frames (or sprites) are described like this:

1

gunmen\gm12.bmp

5

0 115 216 0 0 -8 0

0 115 216 115 0 -8 0

0 115 216 230 0 -8 0

0 115 216 345 0 -8 0

0 115 216 460 0 -8 0

5

0 1

0 10 0

1 1

1 10 1

2 1

2 10 2

3 1

3 10 3

4 1

4 10 4

This is the description of a gunmen. Other sprites in the game can have

different number of frames/animations, but the idea is the same. Look in

the pre-defined TXTs and experimentate.

First number is the number of the bitmaps. You don't have to use just

one as we do.

Then there is path and bitmap name. Program starts in DATA/GFX, so put your

graphics in there.

Second number if the number of frames.

Each frame is described on one line:

<index_of_source_bitmap> <width> <height> <x> <y> <x_offset> <y_offset>

X,Y are coords of the upper left corner of the frame in the bitmap.

Offset helps to place the sprite more preciselly. Try and see.

Third standalone number is the number of the animations. Anims are not

implemented yet, so you have to just make the one-frame anims, that are

called in the *.obj file.

Each animation is described on two lines.

1st line: <index_of_animation> <number_of_frames>

2nd line: <frame> <delay> <loop_frame>

<number_of_frames> set to 1. <delay> is unimportant, <loop_frame> set

the same as <frame>.

You have to make 5 anims for a man. They have this meaning:

anim 0: staying and waiting

anim 1: guns out! (now you can kill the bandit)

anim 2: shooting

anim 3: falling after the hit

anim 4: lying dead

You have to keep the meaning of the anims (to put the right frame in the

right animation) if you want your man to act properly.

-------- ----- ------ -------- ----- ------ -----------

That's all you have to know to create your own comics, gunmen or levels.

More you can learn from your data file. Don't forget to make a backup copy

of the game before the modifying of anything in it. Have fun.


Document Info


Accesari: 1114
Apreciat: hand-up

Comenteaza documentul:

Nu esti inregistrat
Trebuie sa fii utilizator inregistrat pentru a putea comenta


Creaza cont nou

A fost util?

Daca documentul a fost util si crezi ca merita
sa adaugi un link catre el la tine in site


in pagina web a site-ului tau.




eCoduri.com - coduri postale, contabile, CAEN sau bancare

Politica de confidentialitate | Termenii si conditii de utilizare




Copyright © Contact (SCRIGROUP Int. 2024 )