Provided by: xsok_1.02-15_i386 bug

NAME

       xsok - generic Sokoban game for X11, Version 1.02

SYNOPSIS

       xsok [ options ]

DESCRIPTION

       xsok  is  a  single player strategic game, a superset of the well known
       Sokoban game.  This manpage describes only the user interface of  xsok.
       If  you  want  to create own levels, you should consult the xsok manual
       for more information.

       The target of Sokoban is to push all the objects into the score area of
       each  level  using  the  mouse  or  the arrow keys. For the other level
       subsets, there are different  kinds  of  objects,  and  special  effect
       squares.

       xsok  can  be  played  using  only  the  mouse,  or  only the keyboard.
       Keyboard and mouse bindings are defined through a textfile. This manual
       page describes the default bindings.

OPTIONS

       All  standard  X  toolkit  parameters  may  be  given, such as -display
       display etc.  Additional options are

       -rules level subset
           This option specifies the initial level  subset  for  xsok.   Valid
           built-in  rule  names  are Sokoban, Cyberbox, and Xsok, but you may
           implement new level subsets without recompiling  the  game.   Level
           subsets share common characteristics of the board.  In Sokoban, for
           example, all boxes have the same weight.  In Xsok, the first  level
           is a demo level, where you can experiment with the new objects.

       -level startlevel
           Set the starting level.

       -username username
           In  a  save-game file, your name, as found in the /etc/passwd file,
           and the hostname of your computer, will be stored in the file.  The
           default  format is realname (username@hostname.domain), for example
           Michael Bischoff (mbi@flawless.ts.rz.tu-bs.de).  You  can  override
           this  default  string  with the argument to the username option and
           provide a different e-mail address, for example
           xsok -username "Michael Bischoff (m.bischoff@tu-bs.de)".

           If you break the scores for one level, your solution will be  saved
           automatically.

       -xsokdir xsokdir
           This  option  sets the root of the xsok data file tree. The default
           is /usr/share/games/xsok.

       -xpmdir xpmdir
           This gives the directory from where to load the graphic data.

       -savedir savedir
           This option sets the directory for save game  files  and  the  xsok
           highscore files. The default is /var/games/xsok.

       -messageFile messagefile
           This  option sets the name of an alternative message file for xsok.
           The pathname is relative to xsokdir. The default is  messages,  and
           does not exist, which means to use the internal messages.

       -keyboardFile keyboardfile
           This  option  sets  the  name  of  the  file  defining the keyboard
           bindings.  The pathname is relative  to  xsokdir.  The  default  is
           keys.  The bindings in the default file are described below.

           All  command  line  options  may  be abbreviated, or set by the X11
           resource manager. The resource name for option -xyz is  Tableau.xyz
           and its class name Tableau.Xyz.

KEYBOARD BINDINGS

       The arrow keys will move the man. The default binding is similar to the
       binding in xsokoban. Some commands  accept  a  numerical  prefix  (i.e.
       typing some digits before the command key), which usually is used as an
       operation count.

       a       Display the author of a level (if known).

       b       Drops the bookmark.

       g       Goto bookmark.

       i       Displays the level comment (if any).

       s       Saves the current position.

       L       Reloads a saved game.

       R       Restart this level. With numerical  prefix  n,  jumps  to  move
               number n.

       N       Proceed  to  the  next level. With numerical prefix n, jumps to
               level n.

       H       Reread the highscore table.

       P       Return to the previous level.

       U       Proceeds to the next unsolved level.

       q       Quits the game.

       v       Shows the version of xsok.

       ?       Shows the current score.

       b       Shows the best score for this level.

       c       Drops the bookmark at the current position.

       u       Undoes the last elementary move. Accepts numerical prefix.

       r       Redoes last move (undoes an undo). Accepts numerical prefix.

       (       Starts recording a macro (sequence of moves)

       )       End a macro.

       <ENTER> Replays a macro.

KEYBOARD BINDINGS

       With the default button assignment, button 1 is bound to  the  function
       MouseMove.  If  pressed  on  a  clear square, the man will move to that
       location via the optimal path if such a path exists. If pressed  on  an
       object that is adjacent to the player, the object will be pushed.

       Button  2  is  bound to MouseDrag. This command requires that you press
       the mouse button on a location where a box resides, drag the mouse, and
       release  the  button on an empty square. The man will then move the box
       from the first square onto  the  second  with  the  minimal  number  of
       pushes,  if  it  is possible at all.  Please note that the man will not
       move any other object and will only use squares without effects.

       Button 3 is bound  to  MouseUndo.  This  function  undoes  one  of  the
       previous  commands,  which would possibly require a lot of calls to the
       atomic undo function.

NATIONAL LANGUAGE SUPPORT

       xsok has simple support for different  languages.  All  messages  which
       appear in the X11 window may be overloaded by files, as well as the key
       bindings.  The typical  support  consists  of  an  application-defaults
       file,  a message file, and a keyboard file. Possibly translated online-
       help files are also there.  To select a different language,  call  xsok
       after  setting  the  environment  variable  LANG  to the desired value.
       Currently, no translated version is available.

FILES

       (Directories may differ on your system.)

        /usr/games/xsok
        /var/games/xsok/type.score
        /var/games/xsok/type.nn.{sv,bs,mp,mm}
        /usr/share/doc/xsok/copyright
        /usr/share/doc/xsok/xsok.tex.gz
        /usr/share/doc/xsok/cyberbox.doc
        /usr/share/games/xsok/floor.xpm.gz
        /usr/share/games/xsok/objects.xpm.gz
        /usr/share/games/xsok/keys
        /usr/share/games/xsok/keys.help
        /usr/share/games/xsok/type.def.gz
        /usr/share/games/xsok/type.help

       Where type is one of Sokoban, Xsok, Cyberbox, and possibly others.

CREDITS

       Inspiration for xsok came from xsokoban, a previous  implementation  of
       the  Sokoban game by Joseph L. Traub. From this game, the wall graphics
       were taken, and the mouse button assignment.   xsokoban’s  level  files
       can  be used without change, but by default, all level files of a level
       subset are combined into a single file.  Of course, credits also go  to
       the unknown author of the curses based game.

       The  Cyberbox levels (and a MSDOS game of the same name) are written by
       Doug Beeferman.

BUGS

       The undo function is too slow.  Highscore file handling  uses  no  file
       locking.

       Cyberbox  zappers  are  implemented  as  one-way passages, which causes
       worse scores and easier levels.

       Please  mail  bug  reports  to  mbi@mo.math.nat.tu-bs.de.   Fixes   are
       especially welcome.

SEE ALSO

       xsokoban(6x), sokoban(6)

AUTHOR

       Michael Bischoff

COPYRIGHT

       Copyright (c) 1994 by Michael Bischoff (mbi@mo.math.nat.tu-bs.de)

       Permission  to  use, copy, modify, and distribute this software and its
       documentation for any  purpose  and  without  fee  is  hereby  granted,
       provided  that the above copyright notice appear in all copies and that
       both that  copyright  notice  and  this  permission  notice  appear  in
       supporting documentation.

       xsok  was  developed  under  Linux,  the  free  UNIX for the IBM-PC and
       compatibles. xsok is distributed by terms of  the  GNU  General  public
       license (GNU Copyleft).