XBL(1)
NAME
xbl - X Window block dropping game in 3 Dimension
SYNOPSIS
xbl [-display display:0.0] [-geometry geometrystring]
[-scoregeometry geometrystring] [-zoogeometry geometrys-
tring] [-menugeometry geometrystring] [-help] [-verbose]
[-colormap] [-visual] [-bw] [-buffer 0...5] [-font font]
[-bigfont font] [-buttonheight -1...16] [-color 0...6]
[-speedtest] [-clearline 0...1] [-linewidth 0...16]
[-time_to_demo 1...999] [-sync] [-stat] [-keytable String]
[-keyboard 0...4] [-zoo] [-score] [-draw 0 or 2]
[-x 3...8] [-y 3...8] [-z 6...18] [-smooth] [-training]
[-shownext] [-level 0...10] [-bloctype 0...2]
[-land 0...2] [-volume 0...10]
DESCRIPTION
Xbl is a game involving dropping blocks like Xtetris but
in 3 dimensions. As they drop you can move them with
numeric key pad (if you have), cursor key or rotate other
3 axis in 2 directions (6 other keys). Space key for
dropping quickly and 'p' key for pause. All the possible
keys are displayed in menu window.
Points are scored for each block that comes to rest on the
gradually building up pile of blocks. When the pile
reaches the top of the screen and no further blocks can be
dropped the game ends. When a stage of blocks across the
3D matrix is completely filled, that stage is removed and
all the blocks above are dropped down. As more stages are
deleted the blocks fall faster.
There is one high score table by size of matrix and pieces
types.
For your information, another 3D tetris exists, its name
is spatial. A sphere packing game also exists; its name
is spheral. For these two games, contact Andrew Plotkin (
ap1i@andrew.cmu.edu ) or you can retrieve the file three-
dee.tar.Z somewhere in the world...
An enhanced HTML version of this manual is in our computer
(in the same directory than scores). If you can't find
it, use the networked version: http://www710.univ-
lyon1.fr/ftp/xbl/xbl-man.html
OPTIONS
The next options can only be set when the game starts.
-display hostname:0.0
Gives the display name.
-geometry geometry_string
-scoregeometry geometry_string
-zoogeometry geometry_string
-menugeometry geometry_string
Gives the geometry of the play, score, zoo and menu
window.
-help Displays the options, possible values and current
values.
-verbose
Displays various things for debugging.
-colormap
Creates its own colormap even if unnecessary.
-visual
On screen with multiple visual, it search the best
one to use. In this case it does not use the
default visual.
-bw Displays in black and white even on color display.
-buffer 0...5
Chooses the buffering method for animation. Each
method uses resources. Speed of buffering method
is hardware dependent. Perfect methods are 2,1 and
3, choose the fast one.
-font font_name
Chooses font for menus, score window...
-bigfont font_name
Chooses a big font for menu (the score and high
score)
-buttonheight -1...16
The height of 3D buttons. If your display is slow
use small button. The -1 choice is half the height
of the font.
-color 0...6
Background color for menu window.
0:Black
1:Red
2:Green
3:Yellow
4:Blue
5:Magenta
6:Cyan
-sync Uses X Synchronise. Only for debugging.
-clearline 0...1
If 0, clears line with rectangle filling; otherwise
with a black line. It's useful with some X servers
that don't draw the same segment with the same pix-
els. Another method to avoid this problem is to use
a linewidth equal to 1, though in this case drawing
is slower.
-linewidth 0...16
Thickness of the moving block lines .
-time_to_demo 1...999
Number of seconds between automatic demonstration
(show).
-speedtest
This option helps you to find the fastest buffering
mode.
-stat Statistics on launched blocks, they are displayed
at the end of the game.
-keytable keys_list
A 18 characters list in the order (D=Down L=Left
R=Right U=Up) :
Translations:DL,L,UL,U,UR,R,DR,D
Rotations: RX+,RX-,RY+,RY-,RZ+,RZ-
Others: LaunchBloc CancelGame SuspendGame
QuitGame
Don't forgot ' if there are special characters.
Next options can be changed while game is running.
-keyboard 0...4
This switch chooses keyboard type :
0:Use key table, given by -keytable
1:AZERTY|
2:QWERTY|
3:AZERTY-
4:QWERTY-
5:SPATIAL
SPATIAL is the set of keys of the other 3D tetris :
spatial
-zoo Displays the zoo (all possible pieces) when game
starts.
-score Displays the score table when game starts.
-draw 0 or 2
Draw mode. 0 for wire frame piece and 2 for trans-
parent pieces. On slow host, 0 is necessary.
-x 3...8 -y 3...8 -z 6...18"
World size : width, height, depth.
-smooth
Starts game with smooth drawing.
-training
In this mode, pieces don't fall. By the way scores
are not saved.
-shownext
Next piece is shown. By the way score are multi-
plied by 0.7
-level 0...10
Level 0 is slow, 10 is unplayable. This option
chooses the starting game level. Level game
increases during game.
-bloctype 0...2
0 : Only flat pieces.
1 : Some 3D pieces.
2 : All possible pieces with less or equal than 5
cubes.
-land 0...2
0 : Small land (3x3x15)
1 : Big land (5x5x10)
2 : User land (as defined by options)
FILES
/usr/local/lib/xbl
Directory which contains the score tables and COPY-
ING file (FSF GPL)
/usr/lib/X11/app-defaults/Xbl
Defaults for Xbl, this file only contains a data:
the option line for Xbl.
xbl*args: -x 5 -y 5 -z 10 -level 0 \
-bloctype 2 -land 0 \
-draw 2 -smooth -buffer -1 \
-keyboard 4 \
-keytable '14789632azqswx ^[p^C'
ENVIRONMENT VARIABLES
XBLOPTIONS
Xbl will search his options in this variable, you
can put :
XBLOPTIONS='-smooth -draw 0' export XBLOPTIONS
in your .profile or .login file.
BUGS
SOUND isn't correct on some X server, no possible correc-
tion.
FLICKING DISPLAY on some X server that doesn't handle
XSync correctly. You can turn around using : -buffer 2
DIRTY POINT on screen because some X servers don't draw
the same pixels for the same segment. You can turn around
using : -clearline 0 or -linewidth 1
FOCUS WINDOW doesn't work with OpenWin, so put the cursor
in the game window.
DEMO mode seems to cheat (blocs going through other blocs)
but it is because the visualization show a direct way (it
sums all the transformations up). In fact, the real way
could use very complex and tortuous indirect path.
SEE ALSO
X(1) xrdb(1)
AUTHORS
Thierry.EXCOFFIER@ligia.univ-lyon1.fr and I thank all the
people who gave me ideas, help, bugs :
tchaboud@lip.ens-lyon.fr (Thomas Chaboud)
jwz@lucid.com (Jamie Zawinski)
mqh@mqh.cit.cornell.edu (Mike Hojnowski)
g1berand@cdf.toronto.edu (Leung Chung Shing Anderson)
lemke@lupine.uucp (Dave Lemke)
And many others.