Provided by: xsok_1.02-21_amd64 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).