Skip to content

Commit

Permalink
first commit
Browse files Browse the repository at this point in the history
  • Loading branch information
asiekierka committed Mar 15, 2020
0 parents commit c687c8d
Show file tree
Hide file tree
Showing 32 changed files with 10,320 additions and 0 deletions.
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
BIN
DIST
39 changes: 39 additions & 0 deletions BUILD.BAT
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
@echo off
if not exist BIN mkdir BIN
del BIN\*.*

if not exist DIST mkdir DIST
del DIST\*.*

echo.
echo [ Building DATPACK.EXE ]
echo.
TPC /B /EBIN TOOLS\DATPACK.PAS
echo.
echo [ Building ZZT.DAT ]
echo.
cd DOC
..\BIN\DATPACK.EXE /C ..\BIN\ZZT.DAT *.*
cd ..

echo.
echo [ Building ZZT.EXE ]
echo.
TPC /B /EBIN /GD /ISRC /USRC SRC\ZZT.PAS
echo.
echo [ Compressing ZZT.EXE ]
echo.
cd BIN
..\TOOLS\LZEXE.EXE ZZT.EXE
cd ..

echo.
echo [ Creating DIST/ ]
echo.

copy BIN\ZZT.EXE DIST\ZZT.EXE
copy BIN\ZZT.DAT DIST\ZZT.DAT
copy RES\ZZT.CFG DIST\ZZT.CFG
copy RES\DEMO.ZZT DIST\DEMO.ZZT
copy LICENSE.TXT DIST\LICENSE.TXT

5 changes: 5 additions & 0 deletions DOC/ABOUT.HLP
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
$- - - - -
$The Reconstruction of ZZT
$- - - - -

!-license;License information
148 changes: 148 additions & 0 deletions DOC/CREATURE.HLP
Original file line number Diff line number Diff line change
@@ -0,0 +1,148 @@
$Creatures

From the world editor, press F2 to
bring up the menu of creatures. A wide
variety are available, each with different
characteristics.

!bears;Bears
!centis;Centipedes
!lions;Lions
!objects;Objects
!pushers;Pushers
!ruffians;Ruffians
!sharks;Sharks
!slime;Slime
!guns;Spinning guns

Attributes:

Many types of creatures have
attributes, such as intelligence,
sensitivity, and direction, that can be
customized. These attributes affect
different aspects of a creature's
movement.

Some creatures have an Intelligence
setting. This affects how well the
creature will find the player. One with a
low intelligence moves largely at random,
while an intelligent creature actively
follows the player.

Note:

There is not space to describe each
creature in much detail. You must learn
by experimenting and watching the behavior
of all of the creatures.


:bears;Bears:

Bears are attracted to the player
when the two are close together. Their
goal is to attack the player.

When a bear comes into contact with
a Breakable Wall, both disappear.


:ruffians;Ruffians:

Ruffians move sporadically,
alternately moving and resting. They
will try to catch the player.


:objects;Objects:

Objects are a versatile kind of
creature and can be customized using the
ZZT-OOP programming language.

When placing an Object on the
board, you may pick any character to
represent it. Then, you enter commands
to control the creature during game play.

If you want to modify the program of
an already-existing Object, position the
cursor above it and press [ENTER].

!-lang;Programming instructions.


:slime;Slime:

A single Slime will spread out by
replicating itself until an entire region
is filled. Slime only oozes through empty
space, so it is blocked by walls.

As slime spreads out, it leaves a
trail of breakable walls. The player can
stop the slime by touching it; the only
threat it poses is in trapping the player.


:sharks;Sharks:

Sharks travel through water only, and
hurt the player upon contact. They are
not harmed by bullets.


:guns;Spinning guns:

Spinning guns rotate and shoot in
random directions. By placing walls on
various sides of a gun, it can be aimed
in any desired direction.


:pushers;Pushers:

Pushers move slowly in a given
direction, pushing Boulders and Sliders
ahead of them. They can move the
player, but do not pose a direct threat.


:lions;Lions:

Lions move quickly about the board,
attracted to the player according to their
intelligence. Lions can not shoot.


:tigers;Tigers:

Tigers move toward the player and
shoot bullets.

These bullets are harmful only
to the player. In fact, no creatures will
directly harm other creatures.


:centis;Centipedes:

These are the most interesting type
of creature, because they can contain
many different parts linked together.

A Centipede consists of a Head and
several body Segments. The Head decides
where to move, and the body follows
behind.

To place a Centipede on the board,
first place the Head, then put Body
segments along side, in a line. All parts
must be in contact.

When a Centipede is shot, it will
break up into two smaller centipedes,
which move independently.
85 changes: 85 additions & 0 deletions DOC/EDITOR.HLP
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
$The ZZT Editor

Help is available on the following topics:
!start;Getting Started
!cmds;Editor Commands
!-creature;Creatures
!-terrain;Terrains
!-item;Items
!-lang;ZZT-OOP Programming Language
!-info;Board information menu

:start;Getting started:

The ZZT Editor is a tool for
creating silly ZZT game worlds.

By using the editor, you can create
individual game boards and then link them
together into a larger entity called a
"world".

The editor functions the same as many
drawing programs: Starting with a blank
screen, objects are added and arranged
until an interesting picture emerges.
Once a board has been created, it can be
saved to disk and then played, just like
a ready-made game.

The editor is somewhat complex, so it
takes time to master. Begin by creating
a few simple boards, then work you way
up to more complex scenarios at your own
pace. The results will be well worth the
effort.


:cmds;Editing commands:

[L] Load a world from disk.
[S] Save a world to disk.
[Q] Quit the ZZT Editor.
[B] Switch boards. Also use this command
to create a new board.
[I] Board Information: Change the
characteristics of the particular
board being edited.
!-info;More about Board Information.
[f1] Place an item on the board.
[f2] Place a creature on the board.
[f3] Place terrain on the board.
[f4] Enter text onto the board. Use this
to spruce up your boards with
entertaining messages. During
gameplay, text acts like walls.
[Space] Place the selected pattern on the
board. The pattern is indicated on
the bottom right of the screen.
[Tab] Toggle drawing mode. When drawing
mode is on, the current pattern will
automatically be placed wherever the
cursor is moved.
[P] Select pattern.
[C] Select color.

Some useful commands are not listed on
the screen. These are:

[Z] Clear board.
[X] Fill in bounded region with
current pattern - just draw the
outline of a shape and use this
command to fill it in.
[Enter] Modify object under cursor:
Allows you to change the
properties of an object
that has already been
placed.
[N] New: Create a new world.
[T] Transfer: Import or Export boards.
Allows individual boards to be
brought in or out of worlds.
A board from one world can be
written to a file, then read back
into a different world.
83 changes: 83 additions & 0 deletions DOC/GAME.HLP
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
$Getting Started.

If you can't quite figure out what to
do in this game, remember the following:

* If you see something unusual, try
touching it. The worst that can
happen is... Death!

* Don't forget that you can usually
leave the room you are in by walking
off the edge of the screen.

* Save the game often. Then, if you
get stuck or you die, you can just
go back and restore it where you
left off.

* Keep an open mind. This is ZZT,
The Object-Oriented Game, and just
about anything can (and probably
will) happen.

$Health points

When you begin a new game, you start
with 100 health points. Every time you
get shot or touched by a creature, you
lose 10. When your health reaches zero,
the game is over.

You can regain health by picking up
gems - each gem gives you 1 health point.

$Using the Keyboard

To move around, use the four cursor
keys or the numeric keypad.

To shoot, hold down the [Shift] key
and press the cursor key in the direction
you wish to shoot.


$Using a Joystick

ZZT fully supports joystick operation.
To move, just point the joystick in the
desired direction. To shoot, hold down
the button then move the stick in the
direction you wish to shoot.

To use a joystick, you must say so when
you first run ZZT and you are prompted
"Keyboard, Joystick, Mouse?". If you
have not done this, leave the program
and start over.

At times, you may prefer to use the
keyboard for more accurate maneuvers.


$Using a Mouse

To move, just drag the mouse in the
desired direction. You will have to
keep dragging the mouse as long as
you want to move.

To move continually in a certain
direction, first hold down the right-hand
button on the mouse. Next, push the
mouse slightly in the direction you wish
to move. You will continue moving in that
direction, without any effort, until
the button is released.

To fire, just hold down the left-hand
mouse button and push the mouse gently
in the direction you wish to shoot.

At times, you may prefer to use the
keyboard for more accurate maneuvers.
Loading

0 comments on commit c687c8d

Please sign in to comment.