XPILOTS(6)

NAME
xpilots - XPilot/UX Multiplayer gravity war game server

SYNOPSIS
xpilots [-map map-file] [-robots number] [-rawmode] [-noquit] [-help] [-version]

DESCRIPTION
This manual explains the following topics:

    - Setting up a server.

    - Owner-only commands.

    - Creating new maps.

Complete coverage of the game basics and how to connect to a server are given in the manual pages for xpilot(6).

  Options

-map map-name
    This option allows you to select the map you will use for this server. If it is omitted, you will have to manage with a computer generated random map. For instructions on how to create a map, see below. For example if -map blackhole or the equivalent -map blackhole.map is passed as command line arguments, the server will try to locate a file called blackhole.map in the current directory, or in a predefined directory (default is /usr/local/games/lib/xpilot/maps/).

-help
    Prints a short help, including the supported commandline options.

-version
    Prints the current version.

-noquit
    If this option is specified, xpilots won't quit when the last human player exits.

-rawmode
    If this option is specified, xpilots doesn't go to sleep when there are no human players logged into the game. The noquit option must be specified for this to have any effect after the first player joins the game.

-robots number
    Tells the server that you want number robots instead of the default - number-of-bases/2. A value of -1 will fill the entire server with robots. Note however that there will always be room for one new player, the robots will be kicked out of the game to accomodate for new players, they will also enter the game when there is space for them.

  Prompt options (owner only)
If you are the owner of a server you have successfully connected to (with xpilot(6)), you have several special commands available, all of which applies to the current server only:

m   Send a message to the players.

k   Kick a player out of the game. Currently, this command does not stop the player from re-joining the game. Hopefully, however, he or she would have learned their lesson.

l   Lock/unlock the game. This prevents other users from joining the game.

d   Shutdown/cancel shutdown. This command will ask for a reason and a shutdown delay (in ticks) and transmit these to the server. A timer will appear showing how much time is left before the game goes down. If you don't specify a delay, you will be canceling an already initiated shutdown.

MAPS
Maps are currently implemented as plain ASCII-text files with the letters having special meanings. The required .map suffix is not allowed to exist in any other part of the name.

  Format
The format of the map file is as follows:

    x-widthxy-width		(dimensions)
    rule-number
    map-name
    author-name
    map-data

  Contents
The dimensions are in blocks, with each character in the map-data corresponding to one block. If the x-dimension specification is smaller than the actual map size, the map is cut off at that x-coordinate. If it is larger, the map is padded with blanks. A similar rule applies in the y-direction. The following rule numbers are available:

    0   Custom. Player killings, shield and limited visibility all enabled.

    1, 2
        Reserved for future expansion.

    3   Race. No player killings.

    4   Dogfight. As custom but not with limited visibility.

    5   Dogfight (limited). As for normal dogfight, but with limited lives. When a player gets game over, he or she will not (re)enter the game until the game declares and honors a winner. The default mode for new players is game over.

        The map name should be no longer than 60-80 characters and may
            consist of spaces. Though, a short and concise name is preferred.

        The author name shouldn't need any explanation.  Please use real
            name, nothing more, nothing less.

        Map data contains the geography of the world.  Each character
            represents a block in the world, and unknown characters are interpreted as space. Avoid the use of TAB as the program will interpret it as one character, while the normal editor will usually do an expansion.

        NB! This implementation will not handle auto-wraparound, a player
            that leaves the play-field will be destroyed. The best way to handle this is to implement a frame of filled blocks around the playing area. Also note that you will have to comply with the maximum settings of the server, so have a look at the map.h file in the distribution.

  Character descriptions
The following characters (case sensitive) have special interpretations:

    x   A filled square/block.

    q w s a
        Filled triangles. They are filled in these corners (same order as above): down-right, down-left, up-left and up-right.

    *   Starting position. The number of starting positions determine how many players the world can take.

    F   Fuel station. Obviously, this is a place where you can refuel.

    + - < >
        Positive, negative, curl anti-clockwise and curl clock-wise 'grav' (gravitational source). These will push or pull your fighter, depending on the sign of the grav (positive/negative), or in the case of the curl gravs - push your fighter around as if it were in a whirlpool (try it or ask some physicist).

    @   Blasters. Mark points in the map, where star dust is created. Star dust consists of little stones, flying through the map. Collisions with it have no effect, if the shield is active. Otherwise fuel is reduced. This points are not visible.

    W I O
        Wormholes. These work much like the famous SciFi term 'teleporting'. Note that it is not possible to have only one wormhole on a map, you must have none or more than one. 'W's are bi-directional, 'I's (in) are enter-only. 'O's (out) are exit-only. Note that exit-only wormholes are invisible.

    d r f c
        Cannons. They are pointing in the following directions (same order as above): left, up, right and down. These tend to make life difficult for a novice player, go easy on them, will ya?

    0..9
        Control posts. These are only applicable in the race mode. The track starts at 0, and the final posts are 9 and 0, thereby completing a lap.

    space (and every other characters)
        Blanks.

EXAMPLE
This is is an example of a small map: (The dots may be substituted by spaces)

    6x6
    0
    Micro cosmos
    A. N. Other Jr.
    xxxxxx
    xF..dx
    x....x
    xw.*.x
    xxxxxx

If this is saved to a file with a .map suffix, you may try it with the command:

    xpilots -map <filename>

NOTES
There are even special fonts which make editing maps even simpler. They are called map-5, map-7 and map-9.

To use them, you will probably have to add their directory to your
    font-path. This is usually done with the xset(1) command, i.e.:

    xset fp+ /usr/local/lib/X11/fonts

    xset fp rehash

To use it with for example the emacs(1) editor, you will have to use a command like:

    emacs -fn map-9 mapfile.map

Remember though, that editing text with this font is virtually impossible.

WARNINGS AND BUGS
See xpilot(6).

AUTHORS
The xpilot product was developed by Bjoern Stabell and Ken Ronny Schouten at the University of Tromsoe, Norway.

CREDITS
See the provided CREDITS file.

FILES
/usr/local/games/lib/xpilot/maps/*.map
    Miscellaneous maps.
/usr/local/games/lib/xpilot/log
    Log file.
/usr/local/lib/X11/fonts/map-?.scf
    Fonts to ease map making.

SEE ALSO
xpilot(6), xset(1), emacs(1)