Tower Toppler
Documentation
This file is also available as a pure text file in the archive of toppler
Goal
The goal of the game is to reach the target door of each of the 8
towers in currently 2 missions with this little green animal. This door
is usually at the very top of the tower.
But finding the way by using elevators and walking trough a maze of
doors and platforms is not the only problem you have to solve. There
are a bunch of other creatures living on the tower that will hinder you
to reach your target by pushing you over the edge of the platforms.
The only weapon of defense you have is to throw a little snowball. But
most of the other creatures just don't care about this. So you must
avoid them.
A little submarine brings you from one tower to the next. On this way
you have the chance to get some bonus points by catching fish. All you
have to do is to catch a fish in a bubble with your torpedo and then
collect the fish.
Commandline Parameters
parameters: |
-f | starts the game in fullscreen mode. But be careful! If the game crashes it doesn't restore the original resolution, it stays in 660x480 pixel mode. |
-s | makes the game silent. If you don't have a soundcard or for another reason get an "can't open audio" error try this option. |
Controls
In the menu you can select the mission you want to play next with the
left and right cursor keys. Press space or return on the start menu
item to start the game.
The animal is controlled by the cursor keys and space (or return). Left
and Right make the animal walk. Up and down make the elevators move if
you are on one. (The elevator platforms are a little bit smaller than
the normal platforms.) If you are in front of a door press up to enter
it. Pressing the space key will either throw a snowball if you are
standing still or make the animal jump if you are walking.
For the Leveldesigner
The game finally has a leveleditor. Because I've been too lazy to make
new graphics for special objects all tower objects are drawn using the
existing graphics.
Because The only thing you can rely on on a keyboard are the numbers
and the letter keys I have used only these. The layout is chosen so
that keys with a similar task are next to each other and not that the
letters mean something.
Otherwise the editor is relatively simple:
cursor movement: |
cursor keys | |
pg up/down | 5 rows up and down |
y | half turn of the tower (for doors) |
HOME | go to starting position |
actions: |
p | play, to test the level you are just editing |
ESC | leave the editor |
l | load tower |
o | save tower |
z | check consistency of tower |
the consistency check checks, if all doors are exactly 3 layers high, if
there isn't a undefined symbol in there and if there is always the
opposite platform for the elevators (without unremovable obstacles
inbetween). If there is something wrong with the tower, the cursor
moves to the position of the problem.
editing: |
ins | inserts a row below the current position |
del | deletes the current row |
with this actions you must be careful because they can destroy doors.
objects: |
space | clear field |
q | normal stick |
a | flashing box |
w | normal step |
s | vanishing step shown as flashing step |
x | sliding step shown as sideways moving step |
e | elevator top station |
d | elevator middle station |
c | elevator top station |
the elevator stations are shown by a moving platform. The platform is
moving into the direction the elevator can move. So for the bottom
stations the platform is repeatingly moving up and jumping down.
1-7 | the different kinds of robots |
for the eye robot the movement is shown by the movement of the robot in
the editor. the slow moving version moves half as far as the fast
moving one.
The two jumping balls can be identified by ball movement: one is
standing still. This is the one that jumps on its place until the
toppler gets near. The ball that has a sideway movement from it's
beginning on is moving in the editor too.
i | normal door |
k | target door shown as flashing door |
This action always places a whole door (in 3 layers) and tries to place
a door on the opposite side, if it's empty. Doors should never be
higher then 3 layers. The clear command (' ') will always remove the
whole door but not the one on the opposite side of the tower.
The target door command doesn't place a door on the opposite side
the parameter are always in a range of values. To allow fast
alertations of the values the difference between the old and the
changed value increases every time you go into the same direction. So
if you increase the time for the tower by pressing 'h' the first time
the value increases by one the second time by two the third time by
three and so on. This size is reset to one as soon as you change the
direction of your changes. This sounds complicated the best thing is to
try it.
parameter of the tower: |
h | increase time |
n | decrease time |
r | less red |
t | more red |
f | less green |
g | more green |
v | less blue |
b | more blue |
Tower File Format
Just in case you are interested in the format of the tower file:
First line is the name. The second line does contain the color of the
tower as 3 valued between 0 ... 255 separated by comma. Third line is
the time that the player has to reach the target door. Last line before
the tower bitmap is the height in rows of the tower.
The following table explains the characters used for the tower bitmap
and their meaning.
character meanings: |
SPACE | empty |
v | top elevator station |
+ | middle elevator station |
^ | bottom elevator station |
1 | freeze ball |
2 | jumping ball moving from the start |
3 | jumping ball standing and then moving to you |
4 | robot, up down |
5 | robot, up down fast |
6 | robot left right |
7 | robot left right fast |
! | stick |
- | platform |
b | flashing box |
# | normal door |
. | vanishing platform |
> | slippery platform |
T | target door |
I can not promise that the program will be able to load the files if
you are changing them manually, so better leave your fingers away from
these.
Mission Creation
With the key m in the leveleditor you start creating a new mission. Be
aware that mission do contain your towers in a compressed format and I
will not provide a method to extract the original tower from this to
prevent player from cheating. So keep your original tower files in case
there are bugs in your towers and you need to change things.
What follows now are a pile of questions you have to answer by keyboard
input.
First the name of the mission. The mission creator will write a file to
your disk with the same name as the name of the mission, but you are
welcome to rename the file because the mission name is saves inside the
file too. The only thing you have to take care of is that the file has
".ttm" (tower toppler mission) as extension.
Now input all the filenames of the towers you want to add to this
mission. The limit to the number of towers is 255 but I'd suggest to
not use this many because it would take a lot of time to play through
the complete mission.
If all towers have been input enter an empty name to finish this list.
Now the file will be written and you should be able to select your new
mission in the main menu.
IMPORTANT: please check your towers, before you create a mission, for
inconsistencies, because this is not done in the created mission file.
Helpful Hints
Finally some details about the inner workings of the game that might
help design levels.
- There are never more than 4 robots on screen (including the
horizontal spinning object)
- robots that go below the screen vanish
- robots that fall into water vanish
- the spinning object has a timeout, if this time passed it will come as soo
n as there are less then 4 robots on screen
- other the robots appear as soon as they are inside the screen and there are
less then 4 robots on screen
- the behavior of the robots is completely deterministic
- the cross throws you 4 layers down, the other robots much more
- the starting place on the base is always the same, it's on top of the 2nd row on
angle 0 (where the cursor is at the start HOME moves the cursor to this position)
Filetypes
- datafiles (graphics, sounds), readonly
first in local directory,
then global (per compiler switch /usr/local/share/toppler)
- global configuration, readonly
- local configuration file, read/write/create
- leveleditor, new missions, towers read/write/create
in home directory (/home/user/.toppler/...)
- highscore file, read/write/create
in global directory, home,
|