title: mupen64plus(6)

summary: console front\(hyend for the Mupen64Plus N64 emulator

text:
# mupen64plus(6)

## NAME
mupen64plus — console front‐end for the Mupen64Plus N64 emulator

## SYNOPSIS
mupen64plus

[parameters] romfile

## DESCRIPTION
mupen64plus is a plugin‐based N64 emulator for Linux/Unix, OSX, and Windows which is capable of accurately playing many games. Included are four MIPS R4300 CPU emulators, with dynamic recompilers for 32‐bit x86 and 64‐bit amd64 systems, and necessary plugins for audio, graphical rendering (RDP), signal co‐processor (RSP), and input. There are several OpenGL video plugins available:

- Rice, included with the distribution

- Glide64Mk2, included with the distribution

- Arachnoid

- Glide64 (old)

- Z64 (must be used with the rsp-z64 plugin)

The most current documentation can be found at the project’s homepage.

The options are as follows:

-h, --help

Print help message.

--noosd

Disable onscreen display.

--osd

Enable onscreen display.

--fullscreen

Run emulator in fullscreen display mode.

--windowed

Run emulator in windowed display mode.

--resolution res

Display resolution (640×480, 800×600, 1024×768, etc)

--nospeedlimit

Disable core speed limiter. This should be used with the dummy audio plugin.

--cheats cheat‐spec

Enable or list cheat codes for the given rom file.

--corelib filepath

Specifies a filename (optionally with a preceding directory path) to load a specific mupen64plus core library.

--configdir directory

Specifies a directory to look for the mupen64plus.cfg file. Default is ~/.config/mupen64plus/.

--datadir directory

Specifies a directory to search for shared data files (fonts, cheat codes, .ini files). Default is ${PREFIX}/share/mupen64plus/.

--plugindir directory

Specifies a directory to search for plugin files. Default is ${PREFIX}/lib/mupen64plus/.

--sshotdir directory

Specifies a directory to save screenshots captured during gameplay. Default is ~/.local/share/mupen64plus/screenshot/.

--gfx plugin‐spec

Specifies a plugin‐spec to select a graphics plugin for use during emulation.

--audio plugin‐spec

Specifies a plugin‐spec to select an audio plugin for use during emulation.

--input plugin‐spec

Specifies a plugin‐spec to select an input plugin for use during emulation.

--rsp plugin‐spec

Specifies a plugin‐spec to select an RSP plugin for use during emulation.

--emumode mode

Specifies which mode the emulator core should run in. mode should be set to one of the following numbers: 0

Pure Interpreter

1

Cached Interpreter

2

Dynamic Recompiler (DynaRec)

--testshots list

Take screenshots at frames given in the comma‐separated list, then quit.

--core-compare-send

Use the core comparison debugging feature, in data sending mode. If the core was not compiled with support for the Core Comparison feature, then the emulator will exit with an error.

--core-compare-recv

Use the core comparison debugging feature, in data receiving mode. If the core was not compiled with support for the Core Comparison feature, then the emulator will exit with an error.

--set param‐spec

Set the value of a mupen64plus configuration parameter. This option may be used multiple times. The format of param‐spec is Section‐Name[Param‐Name]=Value

--nosaveoptions

Do not save the given command‐line options into the mupen64plus configuration file to use as defaults in the future.

--verbose

Print lots of information. Useful for debugging but unnecessary for normal use.

## plugin‐spec
(plugin‐name)

Filename (without path) of plugin to use. Application will search through several directories to look for a matching plugin name.

(plugin‐path)

Full directory path and filename of plugin.

‘dummy’

Use the dummy plugin.

## cheat‐spec
‘list’

Show all of the available cheat codes.

‘all’

Enable all of the available cheat codes.

(codelist)

A comma separated list of cheat code numbers to enable.

## KEY COMMANDS
The following shortcut keys can be used during emulation. These are the default key values; nearly all of them may be set to different keys by editing the mupen64plus configuration file.

Escape

Quit the emulator.

0–9

Select virtual ‘slot’ for save/load state.

F5

Save emulator state to current slot.

F7

Load emulator state from current slot.

F9

Reset emulator.

F10

Slow down emulator speed by 5 percent.

F11

Speed up emulator speed by 5 percent.

F12

Take screenshot.

Alt‐Enter

Toggle fullscreen mode. This is not supported on Windows.

p or P

Pause/continue emulation.

m or M

Mute/unmute sound.

f or F

Fast Forward (playback at 250% normal speed as long as key is pressed).

g or G

Press GameShark button (if cheats are enabled).

/ or ?

Advance one frame if paused.

[

Decrease volume.

]

Increase volume.

## FILES
The default location for the mupen64plus configuration file is ~/.config/mupen64plus/. The default location of the saved screenshots is ~/.local/share/mupen64plus/screenshot/. The default location of the save states is ~/.local/share/mupen64plus/save/.

## AUTHORS
mupen64plus was originally started by Richard42 and nmn, and is based on Mupen64 (originally written by Hacktarux).

This man page was written by ebenblues, and updated by Richard42 and Anthony J. Bentley.

## COPYRIGHT
Mupen64plus is © 2008–2013 The Mupen64plus Team

License GPLv2+, GNU GPL version 2 or later

This is free software: you are free to change and redistribute it. There is no warranty, to the extent permitted by law.

## BUGS
To report bugs or make feature requests, use the issue tracker


title: mupen64plus-qt(6)

summary: a customizable launcher for Mupen64Plus

text:
# mupen64plus-qt(6)

## NAME
Mupen64Plus-Qt - a customizable launcher for Mupen64Plus

## SYNOPSIS
mupen64plus-qt

## DESCRIPTION
Mupen64Plus-Qt is a customizable launcher for the mupen64plus-ui-console frontend. It was adapted from CEN64-Qt to work with Mupen64Plus.

See the README at https://www.github.com/dh4/mupen64plus-qt for a detailed description of its features and usage.


nbbattleship

package: nbsdgames

title: nbbattleship(6)

text:
# nbbattleship(6)

## NAME
battleship, nbbattleship

## CONTROLS
RETURN/ENTER : Shoot

R : Rotate

hjkl/ARROW KEYS : Move cursor

q : Quit

F1 & F2 : Help on controls & gameplay

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
Guess the location of your opponent´s

ships and sink them! The player

who sinks all the opponent´s ships wins.


nbcheckers

title: nbcheckers(6)

text:
# nbcheckers(6)

## NAME
checkers, nbcheckers

## CONTROLS
RETURN/ENTER : Select or move the piece

hjkl/ARROW KEYS : Move cursor

q : quit

F1 & F2 : Help on controls & gameplay

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
1) The game starts with each player having 12 men;

men can only diagonally move forwards

(toward the opponet´s side).

2) Men can become kings by reaching the opponet´s

first rank; kings can diagonally move both forwards

and backwards.

3) Pieces can capture opponet´s pieces by jumping over them

also they can capture several pieces at once by doing a

chain of jumps.

4) You have to do a jump if you can.

5) A player wins when the opponet can´t do a move e. g.

all of their pieces are captured.


nbdarrt

title: nbdarrt(6)

text:
# nbdarrt(6)

## NAME
darrt, nbdarrt

## GAMEPLAY
If you hit a letter on keyboard, the letter on the

screen will soon stop. You have to aim for the

center of the target using the moving letters.


nbfifteen

title: nbfifteen(6)

text:
# nbfifteen(6)

## NAME
fifteen, nbfifteen

## CONTROLS
RETURN/ENTER : Slide

hjkl/ARROW KEYS : Move cursor

q : Quit

F1 & F2 : Help on controls & gameplay

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
Slide the tiles until the numbers and characters are

in the right order.


nbfisher

title: nbfisher(6)

text:
# nbfisher(6)

## NAME
fisher, nbfisher

## CONTROLS
UP & DOWN: Control the hook

q: Quit

This is a port of "Deep Sea Fisher", a MikeOS game.

## GAMEPLAY
Catch a fish and reel it in for points

The deeper the fish, the more points it is worth.

If a fish hits your line, you lose a hook.

When you run out of hooks, the game is over!

This is a port of "Deep Sea Fisher", a MikeOS game.


nbjewels

title: nbjewels(6)

summary: Move k\-Rotate p\-Pause q\-Quit

text:
# nbjewels(6)

## NAME
jewels, nbjewels

j,l-Move k-Rotate p-Pause q-Quit


nbmemoblocks

title: nbmemoblocks(6)

text:
# nbmemoblocks(6)

## NAME
memoblocks, nbmemoblocks

## CONTROLS
RETURN/ENTER : Reveal

hjkl/ARROW KEYS : Move cursor

q : Quit

F1 & F2 : Help on controls & gameplay

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
Click on a tile to see the glyph it contains,

then try to find a matching glyph the same way.

They form a pair only when you click a tile

directly after the match. The game ends when

you have found all the matching pairs.


nbmiketron

title: nbmiketron(6)

text:
# nbmiketron(6)

## NAME
miketron, nbmiketron

## CONTROLS
hjkl/ARROW KEYS : Change direction

q : Quit

F1 & F2: Help on controls & gameplay

## GAMEPLAY
You are controlling a strange vechile which can

survive explosions but cannot cross the trail it has

left behind. Keep it running as much as you can.

Plagiarized from MikeOS


nbmines

title: nbmines(6)

text:
# nbmines(6)

## NAME
mines, nbmines

## CONTROLS
RETURN/ENTER : Examine for bombs

SPACE : Flag/Unflag

hjkl/ARROW KEYS : Move cursor

q : Quit

F1 & F2 : Help on controls & gameplay

PgDn,PgUp,, : Scroll

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
Try to find the landmines in the field

with logical reasoning: When you click

on a tile ( a ´.´ here), numbers may show

up that indicate the number of landmines

in adjacent tiles; you should find and

avoid the landmines based on them; and

clicking on a landmine would make you

lose the game.


nbmuncher

title: nbmuncher(6)

text:
# nbmuncher(6)

## NAME
muncher, nbmuncher

## CONTROLS
hjkl/ARROW KEYS : Change direction

q : Quit

F1 & F2: Help on controls & gameplay

## GAMEPLAY
Eat the food and avoid the traps.


nbpipes

title: nbpipes(6)

text:
# nbpipes(6)

## NAME
pipes, nbpipes

## CONTROLS
RETURN/ENTER : Place/Replace a pipe

hjkl/ARROW KEYS : Move cursor

p : Pause

q : Quit

f : Toggle fast flow

F1 & F2 : Help on controls & gameplay

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
Keep maintaining the pipeline and

don´t let the sewage leak.


nbrabbithole

title: nbrabbithole(6)

text:
# nbrabbithole(6)

## NAME
rabbithole, nbrabbithole

## CONTROLS
hjkl/ARROW KEYS : Move cursor

q : Quit

F1 & F2: Help on controls & gameplay (viewing these pages doesn´t pause the timer!)

PgDn,PgUp,, : Scroll

## GAMEPLAY
Try to gather all the carrots in the maze

in the given time. The determining factors

are your choice of paths and the speed of

your fingers.


nbredsquare

title: nbredsquare(6)

text:
# nbredsquare(6)

## NAME
redsquare, nbredsquare

## CONTROLS
hjkl/ARROW KEYS : Move square

q : Quit

F1 & F2 : Help on controls & gameplay

## GAMEPLAY
Move the square and catch the X or outnumber the

white cells with those of your own,

in the environment of Conway´s game of life.


nbreversi

title: nbreversi(6)

text:
# nbreversi(6)

## NAME
reversi, nbreversi

## CONTROLS
RETURN/ENTER : Put the piece

hjkl/ARROW KEYS : Move cursor

q : Quit

F1 & F2 : Help on controls & gameplay

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
Players take turns placing disks on the board:

1) Any pieces of the opponet´s color that is bounded

in a straight line between the piece just placed and

another piece of the current player´s color would turn

to the current player´s color.

2) You can only put pieces if at least one of your

opponet´s pieces turns into your color.

3) The game ends when neither side can do a move and

the player with more pieces wins.


nbsnakeduel

title: nbsnakeduel(6)

text:
# nbsnakeduel(6)

## NAME
snakeduel, nbsnakeduel

## CONTROLS
hjkl/ARROW KEYS : Change direction

q : Quit

F1 & F2: Help on controls & gameplay


nbsos

title: nbsos(6)

text:
# nbsos(6)

## NAME
sos, nbsos

## CONTROLS
hjkl/ARROW KEYS : Move cursor

S & O : Write S or O

q : Quit

F1 & F2: Help on controls & gameplay

PgDn,PgUp,, : Scroll

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
The game is similar to Tic Tac Toe:

The players write S and O in the squares

and making the straight connected sequence

S-O-S makes you a score; obviously, the

player with a higher score wins.


nbsudoku

title: nbsudoku(6)

text:
# nbsudoku(6)

## NAME
sudoku, nbsudoku

## CONTROLS
1 - g : Enter number/character

SPACE : Clear tile

ARROW KEYS : Move cursor

q : Quit

n : New board

r : Restart

? : Hint (not like in other games)

F1 & F2: Help on controls & gameplay

PgDn,PgUp,, : Scroll

YOU CAN ALSO USE THE MOUSE!

## GAMEPLAY
Fill the table with digits (and characters)

so that all the rows, columns and smaller subregions

contain all of the digits from 1 to 9 and all

the alphabet letters from ´a´ to ´g´.

## BUGS
Doesn´t guarantee a unique solution. Attempts to fix that are welcome.


package: nethack

title: dgn_comp(6)

summary: NetHack dungeon compiler

text:
# dgn_comp(6)

## NAME
dgn_comp - NetHack dungeon compiler

## SYNOPSIS
dgn_comp [ file ]

If no arguments are given, it reads standard input.

## DESCRIPTION
Dgn_comp is a dungeon compiler for NetHack version 3.2 and higher. It takes a description file as an argument and produces a dungeon "script" that is to be loaded by NetHack at runtime.

The purpose of this tool is to provide NetHack administrators and implementors with a convenient way to create a custom dungeon for the game, without having to recompile the entire world.

## GRAMMAR
DUNGEON: name bonesmarker ( base , rand ) [ %age ]

where name is the dungeon name, bonesmarker is a letter for marking bones files, ( base , rand ) is the number of levels, and %age is its percentage chance of being generated (if absent, 100% chance).

DESCRIPTION: tag

where tag is currently one of HELLISH, MAZELIKE, or ROGUELIKE.

ALIGNMENT | LEVALIGN: [ lawful | neutral | chaotic | unaligned ]

gives the alignment of the dungeon/level (default is unaligned).

ENTRY: level

the dungeon entry point. The dungeon connection attaches at this level of the given dungeon. If the value of level is negative, the entry level is calculated from the bottom of the dungeon, with -1 being the last level. If this line is not present in a dungeon description, the entry level defaults to 1.

PROTOFILE: name

the prototypical name for dungeon level files in this dungeon. For example, the PROTOFILE name for the dungeon Vlad's Tower is tower.

LEVEL: name bonesmarker @ ( base , rand ) [ %age ]

where name is the level name, bonesmarker is a letter for marking bones files, ( base , rand ) is the location and %age is the generation percentage, as above.

RNDLEVEL: name bonesmarker @ ( base , rand ) [ %age ] rndlevs

where name is the level name, bonesmarker is a letter for marking bones files, ( base , rand ) is the location, %age is the generation percentage, as above, and rndlevs is the number of similar levels available to choose from.

CHAINLEVEL: name bonesmarker prev_name + ( base , rand ) [ %age ]

where name is the level name, bonesmarker is a letter for marking bones files, prev_name is the name of a level defined previously, ( base , rand ) is the offset from the level being chained from, and %age is the generation percentage.

RNDCHAINLEVEL: name bonesmarker prev_name + ( base , rand ) [ %age ] rndlevs

where name is the level name, bonesmarker is a letter for marking bones files, prev_name is the name of a level defined previously, ( base , rand ) is the offset from the level being chained from, %age is the generation percentage, and rndlevs is the number of similar levels available to choose from.

LEVELDESC: type

where type is the level type, (see DESCRIPTION, above). The type is used to override any pre-set value used to describe the entire dungeon, for this level only.

BRANCH: name @ ( base , rand ) [ stair | no_up | no_down | portal ] [ up | down ]

where name is the name of the dungeon to branch to, and ( base , rand ) is the location of the branch. The last two optional arguments are the branch type and branch direction. The type of a branch can be a two-way stair connection, a one-way stair connection, or a magic portal. A one-way stair is described by the types no_up and no_down which specify which stair direction is missing. The default branch type is stair. The direction for a stair can be either up or down; direction is not applicable to portals. The default direction is down.

CHAINBRANCH: name prev_name + ( base , rand ) [ stair | no_up | no_down | portal ] [ up | down ]

where name is the name of the dungeon to branch to, prev_name is the name of a previously defined level and ( base , rand ) is the offset from the level being chained from. The optional branch type and direction are the same as described above.

## GENERIC RULES
Each dungeon must have a unique bonesmarker , and each special level must have a bonesmarker unique within its dungeon (letters may be reused in different dungeons). If the bonesmarker has the special value "none", no bones files will be created for that level or dungeon.

The value base may be in the range of 1 to MAXLEVEL (as defined in global.h ).

The value rand may be in the range of -1 to MAXLEVEL.

If rand is -1 it will be replaced with the value (num_dunlevs(dungeon) - base) during the load process (ie. from here to the end of the dungeon).

If rand is 0 the level is located absolutely at base.

Branches don't have a probability. Dungeons do. If a dungeon fails to be generated during load, all its levels and branches are skipped.

No level or branch may be chained from a level with a percentage generation probability. This is to prevent non-resolution during the load. In addition, no branch may be made from a dungeon with a percentage generation probability for the same reason.

As a general rule using the dungeon compiler:

If a dungeon has a protofile name associated with it (eg. tower) that file will be used.

If a special level is present, it will override the above rule and the appropriate file will be loaded.

If neither of the above are present, the standard generator will take over and make a "normal" level.

A level alignment, if present, will override the alignment of the dungeon that it exists within.

## EXAMPLE
Here is the current syntax of the dungeon compiler's "language":

```
#
#	The dungeon description file for the "standard" original
#	3.0 NetHack.
#
DUNGEON:	"The Dungeons of Doom" "D" (25, 5)
LEVEL:		"rogue" "none" @ (15, 4)
LEVEL:		"oracle" "none" @ (5, 7)
LEVEL:		"bigroom" "B" @ (12, 3) 15
LEVEL:		"medusa" "none" @ (20, 5)
CHAINLEVEL:	"castle" "medusa" + (1, 4)
CHAINBRANCH:	"Hell" "castle" + (0, 0) no_down
BRANCH:		"The Astral Plane" @ (1, 0) no_down up
DUNGEON:	"Hell" "H" (25, 5)
DESCRIPTION:	mazelike
DESCRIPTION:	hellish
BRANCH:		"Vlad's Tower" @ (13, 5) up
LEVEL:		"wizard" "none" @ (15, 10)
LEVEL:		"fakewiz" "A" @ (5, 5)
LEVEL:		"fakewiz" "B" @ (10, 5)
LEVEL:		"fakewiz" "C" @ (15, 5)
LEVEL:		"fakewiz" "D" @ (20, 5)
LEVEL:		"fakewiz" "E" @ (25, 5)
DUNGEON:	"Vlad's Tower" "T" (3, 0)
PROTOFILE:	"tower"
DESCRIPTION:	mazelike
ENTRY:		-1
DUNGEON:	"The Astral Plane" "A" (1, 0)
DESCRIPTION:	mazelike
PROTOFILE:	"endgame"
```

NOTES:

Lines beginning with '#' are considered comments.

A special level must be explicitly aligned. The alignment of the dungeon it is in only applies to non-special levels within that dungeon.

## AUTHOR
M. Stephenson (from the level compiler by Jean-Christophe Collet).

## SEE ALSO
lev_comp(6), nethack(6)

## BUGS
Probably infinite.


dlb

title: dlb(6)

summary: NetHack data librarian

text:
# dlb(6)

## NAME
dlb - NetHack data librarian

## SYNOPSIS
dlb { xct } [ vfIC ] arguments... [ files... ]

## DESCRIPTION
Dlb is a file archiving tool in the spirit (and tradition) of tar for NetHack version 3.1 and higher. It is used to maintain the archive files from which NetHack reads special level files and other read-only information. Note that like tar the command and option specifiers are specified as a continuous string and are followed by any arguments required in the same order as the option specifiers.

This facility is optional and may be excluded during NetHack configuration.

## COMMANDS
The x command causes dlb to extract the contents of the archive into the current directory.

The c command causes dlb to create a new archive from files in the current directory.

The t command lists the files in the archive.

## OPTIONS AND ARGUMENTS
v verbose output

f archive specify the archive. Default if f not specified is LIBFILE (usually the nhdat file in the playground).

I lfile specify the file containing the list of files to put in to or extract from the archive if no files are listed on the command line. Default for archive creation if no files are listed is LIBLISTFILE.

C dir change directory. Changes directory before trying to read any files (including the archive and the lfile).

## EXAMPLES
Create the default archive from the default file list:

dlb c

List the contents of the archive 'foo':

dlb tf foo

## AUTHOR
Kenneth Lorber

## SEE ALSO
nethack(6), tar(1)

## BUGS
Not a good tar emulation; - does not mean stdin or stdout. Should include an optional compression facility. Not all read-only files for NetHack can be read out of an archive; examining the source is the only way to know which files can be.


title: lev_comp(6)

summary: NetHack special levels compiler

text:
# lev_comp(6)

## NAME
lev_comp - NetHack special levels compiler

## SYNOPSIS
lev_comp [ -w ] [ files ]

If no arguments are given, it reads standard input.

## DESCRIPTION
Lev_comp is a special level compiler for NetHack version 3.2 and higher. It takes description files as arguments and produces level files that can be loaded by NetHack at runtime.

The purpose of this tool is to provide NetHack administrators and implementors with a convenient way for adding special levels to the game, or modifying existing ones, without having to recompile the entire world.

The -w option causes lev_comp to perform extra checks on the level and display extra warnings, however these warnings are sometimes superfluous, so they are not normally displayed.

## GRAMMAR

```
file		: /* nothing */
		| levels
		;
levels		: level
		| level levels
		;
level		: maze_level
		| room_level
		;
maze_level	: maze_def flags lev_init messages regions
		;
room_level	: level_def flags lev_init messages rreg_init rooms corridors_def
		;
level_def	: LEVEL_ID ':' string
		;
lev_init	: /* nothing */
		| LEV_INIT_ID ':' CHAR ',' CHAR ',' BOOLEAN ',' BOOLEAN ',' light_state ',' walled
		;
walled		: BOOLEAN
		| RANDOM_TYPE
		;
flags		: /* nothing */
		| FLAGS_ID ':' flag_list
		;
flag_list	: FLAG_TYPE ',' flag_list
		| FLAG_TYPE
		;
messages	: /* nothing */
		| message messages
		;
message		: MESSAGE_ID ':' STRING
		;
rreg_init	: /* nothing */
		| rreg_init init_rreg
		;
init_rreg	: RANDOM_OBJECTS_ID ':' object_list
		| RANDOM_MONSTERS_ID ':' monster_list
		;
rooms		: /* Nothing  -  dummy room for use with INIT_MAP */
		| roomlist
		;
roomlist	: aroom
		| aroom roomlist
		;
corridors_def	: random_corridors
		| corridors
		;
random_corridors: RAND_CORRIDOR_ID
		;
corridors	: /* nothing */
		| corridors corridor
		;
corridor	: CORRIDOR_ID ':' corr_spec ',' corr_spec
		| CORRIDOR_ID ':' corr_spec ',' INTEGER
		;
corr_spec	: '(' INTEGER ',' DIRECTION ',' door_pos ')'
		;
aroom		: room_def room_details
		| subroom_def room_details
		;
subroom_def	: SUBROOM_ID ':' room_type ',' light_state ',' subroom_pos ',' room_size ',' string roomfill
		;
room_def	: ROOM_ID ':' room_type ',' light_state ',' room_pos ',' room_align ',' room_size roomfill
		;
roomfill	: /* nothing */
		| ',' BOOLEAN
		;
room_pos	: '(' INTEGER ',' INTEGER ')'
		| RANDOM_TYPE
		;
subroom_pos	: '(' INTEGER ',' INTEGER ')'
		| RANDOM_TYPE
		;
room_align	: '(' h_justif ',' v_justif ')'
		| RANDOM_TYPE
		;
room_size	: '(' INTEGER ',' INTEGER ')'
		| RANDOM_TYPE
		;
room_details	: /* nothing */
		| room_details room_detail
		;
room_detail	: room_name
		| room_chance
		| room_door
		| monster_detail
		| object_detail
		| trap_detail
		| altar_detail
		| fountain_detail
		| sink_detail
		| pool_detail
		| gold_detail
		| engraving_detail
		| stair_detail
		;
room_name	: NAME_ID ':' string
		;
room_chance	: CHANCE_ID ':' INTEGER
		;
room_door	: DOOR_ID ':' secret ',' door_state ',' door_wall ',' door_pos
		;
secret		: BOOLEAN
		| RANDOM_TYPE
		;
door_wall	: DIRECTION
		| RANDOM_TYPE
		;
door_pos	: INTEGER
		| RANDOM_TYPE
		;
maze_def	: MAZE_ID ':' string ',' filling
		;
filling		: CHAR
		| RANDOM_TYPE
		;
regions		: aregion
		| aregion regions
		;
aregion		: map_definition reg_init map_details
		;
map_definition	: NOMAP_ID
		| map_geometry MAP_ID
		;
map_geometry	: GEOMETRY_ID ':' h_justif ',' v_justif
		;
h_justif	: LEFT_OR_RIGHT
		| CENTER
		;
v_justif	: TOP_OR_BOT
		| CENTER
		;
reg_init	: /* nothing */
		| reg_init init_reg
		;
init_reg	: RANDOM_OBJECTS_ID ':' object_list
		| RANDOM_PLACES_ID ':' place_list
		| RANDOM_MONSTERS_ID ':' monster_list
		;
object_list	: object
		| object ',' object_list
		;
monster_list	: monster
		| monster ',' monster_list
		;
place_list	: place
		| place ',' place_list
		;
map_details	: /* nothing */
		| map_details map_detail
		;
map_detail	: monster_detail
		| object_detail
		| door_detail
		| trap_detail
		| drawbridge_detail
		| region_detail
		| stair_region
		| portal_region
		| teleprt_region
		| branch_region
		| altar_detail
		| fountain_detail
		| mazewalk_detail
		| wallify_detail
		| ladder_detail
		| stair_detail
		| gold_detail
		| engraving_detail
		| diggable_detail
		| passwall_detail
		;
monster_detail	: MONSTER_ID chance ':' monster_c ',' m_name ',' coordinate
		 monster_infos
		;
monster_infos	: /* nothing */
		| monster_infos monster_info
		;
monster_info	: ',' string
		| ',' MON_ATTITUDE
		| ',' MON_ALERTNESS
		| ',' alignment
		| ',' MON_APPEARANCE string
		;
object_detail	: OBJECT_ID object_desc
		| COBJECT_ID object_desc
		;
object_desc	: chance ':' object_c ',' o_name ',' object_where object_infos
		;
object_where	: coordinate
		| CONTAINED
		;
object_infos	: /* nothing */
		| ',' curse_state ',' monster_id ',' enchantment optional_name
		| ',' curse_state ',' enchantment optional_name
		| ',' monster_id ',' enchantment optional_name
		;
curse_state	: RANDOM_TYPE
		| CURSE_TYPE
		;
monster_id	: STRING
		;
enchantment	: RANDOM_TYPE
		| INTEGER
		;
optional_name	: /* nothing */
		| ',' NONE
		| ',' STRING
		;
door_detail	: DOOR_ID ':' door_state ',' coordinate
		;
trap_detail	: TRAP_ID chance ':' trap_name ',' coordinate
		;
drawbridge_detail: DRAWBRIDGE_ID ':' coordinate ',' DIRECTION ',' door_state
		;
mazewalk_detail : MAZEWALK_ID ':' coordinate ',' DIRECTION
		;
wallify_detail	: WALLIFY_ID
		;
ladder_detail	: LADDER_ID ':' coordinate ',' UP_OR_DOWN
		;
stair_detail	: STAIR_ID ':' coordinate ',' UP_OR_DOWN
		;
stair_region	: STAIR_ID ':' lev_region ',' lev_region ',' UP_OR_DOWN
		;
portal_region	: PORTAL_ID ':' lev_region ',' lev_region ',' string
		;
teleprt_region	: TELEPRT_ID ':' lev_region ',' lev_region teleprt_detail
		;
branch_region	: BRANCH_ID ':' lev_region ',' lev_region
		;
teleprt_detail	: /* empty */
		| ',' UP_OR_DOWN
		;
lev_region	: region
		| LEV '(' INTEGER ',' INTEGER ',' INTEGER ',' INTEGER ')'
		;
fountain_detail : FOUNTAIN_ID ':' coordinate
		;
sink_detail : SINK_ID ':' coordinate
		;
pool_detail : POOL_ID ':' coordinate
		;
diggable_detail : NON_DIGGABLE_ID ':' region
		;
passwall_detail : NON_PASSWALL_ID ':' region
		;
region_detail	: REGION_ID ':' region ',' light_state ',' room_type prefilled
		;
altar_detail	: ALTAR_ID ':' coordinate ',' alignment ',' altar_type
		;
gold_detail	: GOLD_ID ':' amount ',' coordinate
		;
engraving_detail: ENGRAVING_ID ':' coordinate ',' engraving_type ',' string
		;
monster_c	: monster
		| RANDOM_TYPE
		| m_register
		;
object_c	: object
		| RANDOM_TYPE
		| o_register
		;
m_name		: string
		| RANDOM_TYPE
		;
o_name		: string
		| RANDOM_TYPE
		;
trap_name	: string
		| RANDOM_TYPE
		;
room_type	: string
		| RANDOM_TYPE
		;
prefilled	: /* empty */
		| ',' FILLING
		| ',' FILLING ',' BOOLEAN
		;
coordinate	: coord
		| p_register
		| RANDOM_TYPE
		;
door_state	: DOOR_STATE
		| RANDOM_TYPE
		;
light_state	: LIGHT_STATE
		| RANDOM_TYPE
		;
alignment	: ALIGNMENT
		| a_register
		| RANDOM_TYPE
		;
altar_type	: ALTAR_TYPE
		| RANDOM_TYPE
		;
p_register	: P_REGISTER '[' INTEGER ']'
		;
o_register	: O_REGISTER '[' INTEGER ']'
		;
m_register	: M_REGISTER '[' INTEGER ']'
		;
a_register	: A_REGISTER '[' INTEGER ']'
		;
place		: coord
		;
monster		: CHAR
		;
object		: CHAR
		;
string		: STRING
		;
amount		: INTEGER
		| RANDOM_TYPE
		;
chance		: /* empty */
		| PERCENT
		;
engraving_type	: ENGRAVING_TYPE
		| RANDOM_TYPE
		;
coord		: '(' INTEGER ',' INTEGER ')'
		;
region		: '(' INTEGER ',' INTEGER ',' INTEGER ',' INTEGER ')'
		;
```

NOTE:

Lines beginning with '#' are considered comments.

The contents of a "MAP" description of a maze is a rectangle showing the exact level map that should be used for the given part of a maze. Each character in the map corresponds to a location on the screen. Different location types are denoted using different ASCII characters. The following characters are recognized. To give an idea of how these are used, see the EXAMPLE, below. The maximum size of a map is normally 76 columns by 21 rows.

```
'-'	horizontal wall
'|'	vertical wall
'+'	a doorway (state is specified in a DOOR declaration)
'A'	open air
'B'	boundary room location (for bounding unwalled irregular regions)
'C'	cloudy air
'I'	ice
'S'	a secret door
'H'	a secret corridor
'{'	a fountain
'\'	a throne
'K'	a sink (if SINKS is defined, else a room location)
'}'	a part of a moat or other deep water
'P'	a pool
'L'	lava
'W'	water (yes, different from a pool)
'T'	a tree
'F'	iron bars
'#'	a corridor
'.'	a normal room location (unlit unless lit in a REGION declaration)
' '	stone
```

## EXAMPLE
Here is an example of a description file (a very simple one):

```
MAZE : "fortress", random
GEOMETRY : center , center
MAP
}}}}}}}}}
}}}|-|}}}
}}|-.-|}}
}|-...-|}
}|.....|}
}|-...-|}
}}|-.-|}}
}}}|-|}}}
}}}}}}}}}
ENDMAP
MONSTER: '@', "Wizard of Yendor", (4,4)
OBJECT: '"', "Amulet of Yendor", (4,4)
# a hell hound flanking the Wiz on a random side
RANDOM_PLACES: (4,3), (4,5), (3,4), (5,4)
MONSTER: 'd', "hell hound", place[0]
# a chest on another random side
OBJECT: '(', "chest", place[1]
# a sack on a random side, with a diamond and maybe a ruby in it
CONTAINER: '(', "sack", place[2]
OBJECT: '*', "diamond", contained
OBJECT[50%]: '*', "ruby", contained
# a random dragon somewhere
MONSTER: 'D', random, random
# 3 out of 4 chance for a random trap in the EAST end
TRAP[75%]: random, (6,4)
# an electric eel below the SOUTH end
MONSTER: ';', "electric eel", (4,8)
# make the walls non-diggable
NON_DIGGABLE: (0,0,8,8)
TELEPORT_REGION: levregion(0,0,79,20), (0,0,8,8)
```

This example will produce a file named "fortress" that can be integrated into one of the numerous mazes of the game.

Note especially the final, TELEPORT_REGION specification. This says that level teleports or other non-stairway arrivals on this level can land anywhere on the level except the area of the map. This shows the use of the ``levregion'' prefix allowed in certain region specifications. Normally, regions apply only to the most recent MAP specification, but when prefixed with ``levregion'', one can refer to any area of the level, regardless of the placement of the current MAP in the level.

## AUTHOR
Jean-Christophe Collet, David Cohrs.

## SEE ALSO
dgn_comp(6), nethack(6)

## BUGS
Probably infinite. Most importantly, still needs additional bounds checking.


nethack

title: nethack(6)

summary: Exploring The Mazes of Menace

text:
# nethack(6)

## NAME
nethack - Exploring The Mazes of Menace

## SYNOPSIS
nethack [ -d directory ] [ -n ] [ -p profession (role) ] [ -r race ] [ -[DX] ] [ -u playername ] [ -dec ] [ -ibm ]

nethack [ -d directory ] -s [ -v ] [ -p profession (role) ] [ -r race ] [ playernames ]

## DESCRIPTION
NetHack is a display oriented Dungeons & Dragons(tm) - like game. The standard tty display and command structure resemble rogue.

Other, more graphical display options exist if you are using either a PC, or an X11 interface.

To get started you really only need to know two commands. The command ? will give you a list of the available commands (as well as other information) and the command / will identify the things you see on the screen.

To win the game (as opposed to merely playing to beat other people's high scores) you must locate the Amulet of Yendor which is somewhere below the 20th level of the dungeon and get it out. Nobody has achieved this yet; anybody who does will probably go down in history as a hero among heros.

When the game ends, whether by your dying, quitting, or escaping from the caves, NetHack will give you (a fragment of) the list of top scorers. The scoring is based on many aspects of your behavior, but a rough estimate is obtained by taking the amount of gold you've found in the cave plus four times your (real) experience. Precious stones may be worth a lot of gold when brought to the exit. There is a 10% penalty for getting yourself killed.

The environment variable NETHACKOPTIONS can be used to initialize many run-time options. The ? command provides a description of these options and syntax. (The -dec and -ibm command line options are equivalent to the decgraphics and ibmgraphics run-time options described there, and are provided purely for convenience on systems supporting multiple types of terminals.)

Because the option list can be very long (particularly when specifying graphics characters), options may also be included in a configuration file. The default is located in your home directory and named .nethackrc on Unix systems. On other systems, the default may be different, usually NetHack.cnf. On DOS or Windows, the name is defaults.nh, while on the Macintosh or BeOS, it is NetHack Defaults. The configuration file's location may be specified by setting NETHACKOPTIONS to a string consisting of an @ character followed by the filename.

The -u playername option supplies the answer to the question "Who are you?". It overrides any name from the options or configuration file, USER, LOGNAME, or getlogin(), which will otherwise be tried in order. If none of these provides a useful name, the player will be asked for one. Player names (in conjunction with uids) are used to identify save files, so you can have several saved games under different names. Conversely, you must use the appropriate player name to restore a saved game.

A playername suffix can be used to specify the profession, race, alignment and/or gender of the character. The full syntax of the playername that includes a suffix is "name-ppp-rrr-aaa-ggg". "ppp" are at least the first three letters of the profession (this can also be specified using a separate -p profession option). "rrr" are at least the first three letters of the character's race (this can also be specified using a separate -r race option). "aaa" are at last the first three letters of the character's alignment, and "ggg" are at least the first three letters of the character's gender. Any of the parts of the suffix may be left out.

-p profession can be used to determine the character role. You can specify either the male or female name for the character role, or the first three characters of the role as an abbreviation. -p @ has been retained to explicitly request that a random role be chosen. It may need to be quoted with a backslash (\@) if @ is the "kill" character (see "stty") for the terminal, in order to prevent the current input line from being cleared.

Likewise, -r race can be used to explicitly request that a race be chosen.

Leaving out any of these characteristics will result in you being prompted during the game startup for the information.

The -s option alone will print out the list of your scores on the current version. An immediately following -v reports on all versions present in the score file. The -s may also be followed by arguments -p and -r to print the scores of particular roles and races only. It may also be followed by one or more player names to print the scores of the players mentioned, by 'all' to print out all scores, or by a number to print that many top scores.

The -n option suppresses printing of any news from the game administrator.

The -D or -X option will start the game in a special non-scoring discovery mode. -D will, if the player is the game administrator, start in debugging (wizard) mode instead.

The -d option, which must be the first argument if it appears, supplies a directory which is to serve as the playground. It overrides the value from NETHACKDIR, HACKDIR, or the directory specified by the game administrator during compilation (usually /usr/share/games/nethack). This option is usually only useful to the game administrator. The playground must contain several auxiliary files such as help files, the list of top scorers, and a subdirectory save where games are saved.

## AUTHORS
Jay Fenlason (+ Kenny Woodland, Mike Thome and Jon Payne) wrote the original hack, very much like rogue (but full of bugs).

Andries Brouwer continuously deformed their sources into an entirely different game.

Mike Stephenson has continued the perversion of sources, adding various warped character classes and sadistic traps with the help of many strange people who reside in that place between the worlds, the Usenet Zone. A number of these miscreants are immortalized in the historical roll of dishonor and various other places.

The resulting mess is now called NetHack, to denote its development by the Usenet. Andries Brouwer has made this request for the distinction, as he may eventually release a new version of his own.

## FILES
All files are in the playground, normally /usr/games/lib/nethackdir. If DLB was defined during the compile, the data files and special levels will be inside a larger file, normally nhdat, instead of being separate files.

nethack The program itself.

data, oracles, rumors Data files used by NetHack.

options, quest.dat More data files.

help, hh Help data files.

cmdhelp, opthelp, wizhelp More help data files.

*.lev Predefined special levels.

dungeon Control file for special levels.

history A short history of NetHack.

license Rules governing redistribution.

record The list of top scorers.

logfile An extended list of games

played.

xlock.nnn Description of a dungeon level.

perm Lock file for xlock.dd.

bonesDD.nn Descriptions of the ghost and

belongings of a deceased

adventurer.

save A subdirectory containing the

saved games.

## ENVIRONMENT
USER or LOGNAME Your login name.

HOME Your home directory.

SHELL Your shell.

TERM The type of your terminal.

HACKPAGER or PAGER Replacement for default pager.

MAIL Mailbox file.

MAILREADER Replacement for default reader

(probably /usr/bin/mail).

NETHACKDIR Playground.

NETHACKOPTIONS String predefining several NetHack

options.

In addition, SHOPTYPE is used in debugging (wizard) mode.

## SEE ALSO
dgn_comp(6), lev_comp(6), recover(6)

## BUGS
Probably infinite.

Dungeons & Dragons is a Trademark of Wizards of the Coast, Inc.


recover

title: recover(6)

text:
# recover(6)

## NAME
recover - recover a NetHack game interrupted by disaster

## SYNOPSIS
recover [ -d directory ] base1 base2 ...

## DESCRIPTION
Occasionally, a NetHack game will be interrupted by disaster when the game or the system crashes. Prior to NetHack v3.1, these games were lost because various information like the player's inventory was kept only in memory. Now, all pertinent information can be written out to disk, so such games can be recovered at the point of the last level change.

The base options tell recover which files to process. Each base option specifies recovery of a separate game.

The -d option, which must be the first argument if it appears, supplies a directory which is the NetHack playground. It overrides the value from NETHACKDIR, HACKDIR, or the directory specified by the game administrator during compilation (usually /usr/games/lib/nethackdir).

For recovery to be possible, nethack must have been compiled with the INSURANCE option, and the run-time option checkpoint must also have been on. NetHack normally writes out files for levels as the player leaves them, so they will be ready for return visits. When checkpointing, NetHack also writes out the level entered and the current game state on every level change. This naturally slows level changes down somewhat.

The level file names are of the form base.nn, where nn is an internal bookkeeping number for the level. The file base.0 is used for game identity, locking, and, when checkpointing, for the game state. Various OSes use different strategies for constructing the base name. Microcomputers use the character name, possibly truncated and modified to be a legal filename on that system. Multi-user systems use the (modified) character name prefixed by a user number to avoid conflicts, or "xlock" if the number of concurrent players is being limited. It may be necessary to look in the playground to find the correct base name of the interrupted game. recover will transform these level files into a save file of the same name as nethack would have used.

Since recover must be able to read and delete files from the playground and create files in the save directory, it has interesting interactions with game security. Giving ordinary players access to recover through setuid or setgid is tantamount to leaving the playground world-writable, with respect to both cheating and messing up other players. For a single-user system, this of course does not change anything, so some of the microcomputer ports install recover by default.

For a multi-user system, the game administrator may want to arrange for all .0 files in the playground to be fed to recover when the host machine boots, and handle game crashes individually. If the user population is sufficiently trustworthy, recover can be installed with the same permissions the nethack executable has. In either case, recover is easily compiled from the distribution utility directory.

## NOTES
Like nethack itself, recover will overwrite existing savefiles of the same name. Savefiles created by recover are uncompressed; they may be compressed afterwards if desired, but even a compression-using nethack will find them in the uncompressed form.

## SEE ALSO
nethack(6)

## BUGS
recover makes no attempt to find out if a base name specifies a game in progress. If multiple machines share a playground, this would be impossible to determine.

recover should be taught to use the nethack playground locking mechanism to avoid conflicts.


netris

package: netris

title: netris(6)

text:
# netris(6)

## NAME
netris - a network version of t*tris

## SYNOPSIS
netris [-DHRSh] [-w] [-c host] [-p port] [-k keys]

## DESCRIPTION
Netris is a networked version of t*tris. It allows either single player or head to head play via a network. To play it single user, start netris with no flags. To play head to head, you can either host or connect. To be the host, start netris with the -w flag. To connect to a host, use the -c <hostname> flag with the hostname of the computer you wish to connect to.

Unlike standard T*tris, Netris gives you a little extra time after dropping a piece before it solidifies. This allows you to slide the piece into a notch without waiting for it to fall the whole way down. In fact, if you can even slide it off a cliff and it'll start falling again. If you think it should automatically drop again in this case, use the -D option.

The keys are:

j

left

k

rotate

l

right

Space

drop

m

down faster

s

toggle spying on the other player

p

pause

f

make game faster (irreversable)

Ctrl-L

redraw the screen

To see usage information, type " netris -h ". To see distribution/warranty information, type " netris -H ". To see the rules, type " netris -R ". To use a port number other than the default, use the -p option.

You can remap the keys with " -k <keys> ", where <keys> is a string containing the keys in the order listed above.

The default is: netris -k jkl mspf^l

You needn't specify all of the keys, for example -k asd will only change the main three keys. ^x notation can be used for control characters.

The m key moves the falling piece down one block, in addition to the usual step-down timer. Use this in repetition when "drop" would go too far but you don't want to wait for the piece of fall.

## AUTHOR
Mark H. Weaver <mhw@netris.org>

## BUGS
One-player mode is a tad boring at the moment, because it never gets any faster, and there's no scoring. This will be rectified at some point. For now, use the

f key (by default) to make the game go faster. Speedups cannot be reversed for the remainder of the game.

## COPYRIGHT
Copyright (C) 1994,1995,1996 Mark H. Weaver <mhw@netris.org>

netris is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.


nsnake

package: nsnake

title: nsnake(6)

summary: Classic snake game on the terminal

text:
# nsnake(6)

## NAME
nsnake - Classic snake game on the terminal

## SYNOPSIS
nsnake [-h] [-v]

## DESCRIPTION
nsnake is the classic snake game with textual interface. You can play it at command-line and uses the nCurses library for graphics. The rules are the same of any snake game:

You control a hungry snake and the objective is to eat as many fruits you can. Each fruit eaten increases your size. The game ends when the snake collides with the walls or itself.

The challenge is to earn the biggest score possible by eating as many fruits as you can.

Controls and game settings can be changed through the in-game menus or by directly editing the settings file.

Default controls:

Arrow Keys Moves the snake q Quits the game at any time

p Pauses/Unpauses the game

h Show help during the game

## OPTIONS
-h, --help

Displays the quick help text.

-v, --version

Displays the version and general information.

## FILES
$(HOME)/.local/share/nsnake/ Per-user content; game settings and scores

## SEE ALSO
snake4(6) ktron(6) yetris(6)

## BUGS
Probably. If you find any, please report it at the issue tracker (https://github.com/alexdantas/nsnake/issue) or email me at <eu@alexdantas.net>.

## AUTHOR
This manual page and nsnake were both written by Alexandre Dantas <eu@alexdantas.net>.

## WWW
* http://nsnake.alexdantas.net/

* https://github.com/alexdantas/nsnake/


nudoku

package: nudoku

title: nudoku(6)

summary: ncurses based sudoku game

text:
# nudoku(6)

## NAME
nudoku - ncurses based sudoku game

## SYNOPSIS
nudoku [OPTIONS]

## DESCRIPTION
nudoku is a ncurses based sudoku game. Perfect to relax a little or just waste some time when you are on the console.

## Keybindings
For navigation use vi-keybindings (hjkl) or arrow keys. Pressing a number will put it in a field. Pressing delete, backspace or x will delete it.

Some keys need to be typed uppercase to prevent pressing them accidentally.

c Gives feedback whether your solution is right. If you think you finished your sudoku press this key to make sure it is. You can also use this during the game to check if you have made any mistakes.

H The computer will fill in one number for you. If you are pretty close to finishing he might not want to help you. And if you did something wrong so far, he will not say anything.

m Toggle marks. If enabled, the number in the currently selected cell will be highlighted in all other cells they occur in. Only works when colors are enabled.

N Create a new puzzle.

Q Quit nudoku.

r Redraw screen. In case you resized your terminal this will come handy.

S Let the computer solve the puzzle.

x Delete number from field.

u Undo previous action.

## OPTIONS
-h Print help.

-v Display version information.

-c Do not use colors. Black and white mode. Some terminals don't support colors, use this option in this case.

-d Choose difficulty. Available options are: easy, normal, hard

-s User provided stream. The user can provide a sudoku himself. Nudoku won't generate it in this case. Notation is in stream format, meaning everthing in one line. Use dots (.) for empy fields. Example: nudoku -s 4.....8.5.3..........7......2.....6.....8.4......1.......6.3.7.5..2.....1.4......

-p Output PDF. Prints a sudoku into a PDF file. File name needs to follow. This can be combined with -n to define how many sudokus the PDF should contain. Example: -p riddle.pdf

-n Number of sudokuks to put in PDF. This can only be used with -p Example: -p riddle.pdf -n 8

-i Output PNG image. Puts a single sudoku into an PNG image file. File name needs to follow. Example: -i sudoku.png

## BUGS
No known bugs.

## AUTHOR
Michael Vetter (jubalh@iodoru.org)


openttd

package: openttd

title: openttd(6)

summary: open source clone of the Microprose game \(lqTransport Tycoon Deluxe\(rq

text:
# openttd(6)

## NAME
openttd — open source clone of the Microprose game “Transport Tycoon Deluxe”

## SYNOPSIS
openttd

[-efhQxX] [-b blitter] [-c config_file] [-d [level | cat=lvl[,...]]] [-D [host][:port]] [-g [file]] [-G seed] [-I graphicsset] [-m driver] [-M musicset] [-n host[:port][#company]] [-p password] [-q savegame] [-r widthxheight] [-s driver] [-S soundset] [-t year] [-v driver]

## OPTIONS
-b blitter

Select the blitter blitter; see -h for a full list.

-c config_file

Use config_file instead of openttd.cfg.

-d [level]

Set debug verbosity for all categories to level, or 1 if omitted.

-d cat=lvl[,...]

Set debug verbosity to lvl for a specific category cat.

-D [host][:port]

Start a dedicated server. Network debug level will be set to 6. If you want to change this, set -d after setting -D.

-e

Start in world editor mode.

-f

Fork into background (dedicated server only, see -D).

-g [file]

Load file (can be either a savegame, scenario, or heightmap) at start or start a new game if omitted. file must be either an absolute path or one relative to the current path or one of the search paths.

-G seed

Seed the pseudo random number generator with seed.

-h

Display a summary of all options and list all the available AIs, blitters, sound, music and video drivers, graphics sets and sound sets.

-I graphicsset

Select the graphics set graphicsset; see -h for a full list.

-m driver

Select the music driver driver; see -h for a full list.

-M musicset

Select the music set musicset; see -h for a full list.

-n host[:port][#company]

Join a network game, optionally specifying a port to connect to and company to play as.

-p password

Password used to join server. Only useful with -n.

-q savegame

Write some information about the specified savegame and exit.

-Q

Don't scan for/load NewGRF files on startup. Passing -Q twice (so, -QQ ) will disable NewGRF scanning/loading entirely.

-r widthxheight

Set the resolution to width × height pixels.

-s driver

Select the sound driver driver; see -h for a full list.

-S soundset

Select the sound set soundset; see -h for a full list.

-t year

Set the starting year to year.

-v driver

Select the video driver driver; see -h for a full list.

-x

Do not automatically save to config file on exit.

-X

Do not use global folders to search for files.

## SEE ALSO
Wiki (includes community maintained manual), Forum, News

## HISTORY
Transport Tycoon Deluxe was written by Chris Sawyer and published by Microprose. openttd is a free reimplementation.


opentyrian

package: opentyrian

title: opentyrian(6)

text:
# opentyrian(6)

## NAME
opentyrian - an open-source port of the DOS game Tyrian

## SYNOPSIS
opentyrian [OPTIONS]

## DESCRIPTION
Tyrian is an arcade-style vertical scrolling shooter. The story is set in 20,031 where you play as Trent Hawkins, a skilled fighter-pilot employed to fight MicroSol and save the galaxy.

Tyrian features a story mode, one- and two-player arcade modes, and networked multiplayer.

## OPTIONS
A summary of options is included below.

-h, --help

Display help and exit.

-s, --no-sound

Disable audio.

-j, --no-joystick

Disable joystick/gamepad input.

-t, --data directory

Set alternative Tyrian data directory.

-n, --net host[:port]

Start a networked game; host is the IP address of your opponent. Use this option together with --net-player-name and --net-player-number to join game. OpenTyrian uses UDP port 1333 for multiplayer, but in most cases players will not need to open any ports because OpenTyrian makes use of UDP hole punching.

--net-player-name name

Set name as your alias for multiplayer game.

--net-player-number number

Select ship; number is either 1 or 2 depending on which ship you intend to pilot.

-p, --net-port port

Set local port to bind.

-d, --net-delay frames

Set lag-compensation delay.

-x, --no-xmas

Disable Christmas mode.

## COPYRIGHT
This program comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the file COPYING for details.

Data files bundled with this package come from Tyrian 2.1 data files which have been released as freeware.

Daniel Cook released graphic files under very liberal license ("use and abuse them as desired").

## AUTHOR
This manual page was written by Patryk Obara <patryk.obara@gmail.com> basing on AshTR's README file.


openxcom

package: openxcom

title: openxcom(6)

text:
# openxcom(6)

## NAME
openxcom — An open-source reimplementation of the original “UFO: Enemy Unknown” game

## SYNOPSIS
openxcom

[-? | -help] [-data path] [-user path] [-cfg path] [-master mod] [-KEY VALUE]

## DESCRIPTION
openxcom is an open-source reimplementation of the popular “UFO: Enemy Unknown” game also known as “X-COM: UFO Defense” in North America, and its sequel “X-COM: Terror from the Deep” by publisher MicroProse. It is licensed under the GPL and written in C++ / SDL.

The options are as follows:

-?, -help

show command-line help

-data path

use path as the default Data Folder instead of auto-detecting

-user path

use path as the default User Folder instead of auto-detecting

-cfg path

use path as the default Config Folder instead of auto-detecting

-master mod

set mod the current master mod (eg. -master xcom2)

-KEY VALUE

set option KEY to VALUE instead of default/loaded value (eg. -displayWidth 640 ). See src/Engine/Options.cpp for a list of all potential options.

## INSTALLATION
OpenXcom requires a vanilla copy of the X-COM resources — from either or both of the original games. Please refer to the README.md for the default search paths and the exact directory layout, as well as information on the Mod support.

## SEE ALSO
https://openxcom.org, https://ufopaedia.org/index.php?title=OpenXcom

## HISTORY
MicroProse releases “UFO: Enemy Unknown” in 1994, followed by “X-COM: Terror from the Deep” in 1995 with various sequels following. The OpenXcom project sees the light of day in 2010.

## COPYRIGHT
Copyright © 2020 OpenXcom Developers

## AUTHORS
OpenXcom Developers


openxcom-extended

package: openxcom-extended

title: openxcom-extended(6)

text:
# openxcom-extended(6)

## NAME
openxcom — An open-source reimplementation of the original “UFO: Enemy Unknown” game

## SYNOPSIS
openxcom

[-? | -help] [-data path] [-user path] [-cfg path] [-master mod] [-KEY VALUE]

## DESCRIPTION
openxcom is an open-source reimplementation of the popular “UFO: Enemy Unknown” game also known as “X-COM: UFO Defense” in North America, and its sequel “X-COM: Terror from the Deep” by publisher MicroProse. It is licensed under the GPL and written in C++ / SDL.

The options are as follows:

-?, -help

show command-line help

-data path

use path as the default Data Folder instead of auto-detecting

-user path

use path as the default User Folder instead of auto-detecting

-cfg path

use path as the default Config Folder instead of auto-detecting

-master mod

set mod the current master mod (eg. -master xcom2)

-KEY VALUE

set option KEY to VALUE instead of default/loaded value (eg. -displayWidth 640 ). See src/Engine/Options.cpp for a list of all potential options.

## INSTALLATION
OpenXcom requires a vanilla copy of the X-COM resources — from either or both of the original games. Please refer to the README.md for the default search paths and the exact directory layout, as well as information on the Mod support.

## SEE ALSO
https://openxcom.org, https://ufopaedia.org/index.php?title=OpenXcom

## HISTORY
MicroProse releases “UFO: Enemy Unknown” in 1994, followed by “X-COM: Terror from the Deep” in 1995 with various sequels following. The OpenXcom project sees the light of day in 2010.

## COPYRIGHT
Copyright © 2020 OpenXcom Developers

## AUTHORS
OpenXcom Developers


pentobi

package: pentobi

title: pentobi(6)

text:
# pentobi(6)

## NAME
pentobi - computer opponent for the board game Blokus

## SYNOPSIS
pentobi [--maxlevel n] [--mobile] [--nobook] [--nodelay] [--seed n] [--threads n] [--verbose] [file.blksgf]

pentobi -h | --help

pentobi -v | --version

## DESCRIPTION
pentobi is the command to invoke the program Pentobi, which is a graphical user interface and computer opponent for the board game Blokus.

The command can take the name of a game file to open at startup as an optional argument. The game file is expected to be in Pentobi's SGF format as documented in Pentobi-SGF.md in the Pentobi source package.

## OPTIONS
-h, --help

Display help and exit.

--maxlevel n

Set the maximum playing level. Reducing this value reduces the amount of memory used by the search, which can be useful to run Pentobi on systems that have low memory or are too slow to use the highest levels. By default, Pentobi currently allocates up to 2 GB (but not more than a quarter of the physical memory available on the system). Reducing the maximum level to 8 currently reduces this amount by a factor of 3 to 4 and lower maximum levels even more.

--mobile

Use a window layout optimized for smartphones and apply some user interface changes that assume that a touchscreen is the main input device. If this option is not used, the default layout depends on the platform. Using this option also changes the default style for GUI elements of QQuickControls 2 to Default if the style is not explicitly set with option -style.

--nobook

Do not use opening books.

--nodelay

Do not delay fast computer moves. By default, the computer player adds a small delay if the move generation took less than a second to make it easier for the human to follow the game if the computer plays several moves in a row.

--seed n

Set the seed for the random generator. Using a fixed seed makes the move generation deterministic if no multi-threading is used (see option --threads).

--threads n

The number of threads to use in the search. By default, up to 8 threads are used in the search depending on the number of hardware threads supported by the current system. Using more threads will speed up the move generation but using a very high number of threads (e.g. more than 8) can degrade the playing strength in higher playing levels.

--verbose

Print internal information about the move generation and other debugging information to standard error.

-v, --version

Display version and exit.

## STANDARD QT OPTIONS
Additionally, any options supported by Qt applications can be used, such as:

-display d

Switches displays on X11.

-geometry g

Window geometry using the X11 syntax.

-style s

Set the style for the GUI elements of QQuickControls.

## SEE ALSO
pentobi-thumbnailer


pentobi-thumbnailer

title: pentobi-thumbnailer(6)

text:
# pentobi-thumbnailer(6)

## NAME
pentobi-thumbnailer - thumbnailer for game records for the board game Blokus as used by the program Pentobi

## SYNOPSIS
pentobi-thumbnailer [-s | --size n] inputfile outputfile

pentobi-thumbnailer -h | --help

pentobi-thumbnailer -v | --version

## DESCRIPTION
pentobi-thumbnailer is part of the program Pentobi and intended to be used as a thumbnailer for the Gnome desktop environment to generate previews of game files written by Pentobi.

The input file is a game file in Pentobi's SGF format as documented in Pentobi-SGF.md in the Pentobi source package. The output file is a thumbnail image in PNG format.

## OPTIONS
-h, --help

Display help and exit.

-s n, --size n

The size of the thumbnail. The default is 128.

-v, --version

Display version and exit.

## EXIT STATUS
0 if the thumbnail generation succeeds, 1 on error.

## SEE ALSO
pentobi


pianobooster

package: pianobooster

title: pianobooster(6)

summary: learn the piano just by playing a game

text:
# pianobooster(6)

## NAME
pianobooster - learn the piano just by playing a game

## DESCRIPTION
Piano Booster is piano teaching software that can provide piano lessons for beginners as well as for advanced players. It can be used for teaching music theory and is useful for piano practice and learning piano technique.

## SYNOPSIS
pianobooster [flags] [midifile]

## OPTIONS
-d, --debug

Increase the debug level

-h, --help

Display a help message

--lights

Turn on the keyboard lights

-l, --log

Write debug info to the "pb.log" log file

--midi-input-dump

Display the midi input in hex

-q, --quick-start

Quick start

-v, --version

Display the version number and exit

--Xnote-length (EXPERIMENTAL)

Display the note length

--Xtick-rate=RATE (EXPERIMENTAL)

Adjust the tick rate in mSec, the default being 4 (12 windows)

## USAGE
Piano Booster is a fun way of playing along with a musical accompaniment and at the same time learning the basics of reading musical notation. The difference between playing along to a CD or a standard midi file is that Piano Booster listens and follows what you are playing on a midi piano keyboard.

The program has been designed to allow you to play along on a midi piano keyboard with the scrolling notes shown on the screen. The notes you press on the keyboard appear as colored lines on the musical stave, the color of which depends whether you have pressed the right or wrong note.

A different musical instrument sound is used for your playing depending whether you are playing the right or wrong notes. This feature also allows Piano Booster to be used with printed sheet music so you can hear if you are playing the right notes while at the same time keeping your eyes on the printed score. The music accompaniment will automatically wait for you to find and play the correct notes in the piece.

Timing markers show whether you are playing ahead or behind of the beat. They appear as white crosses that are drawn over the note.

## FEATURES
- Piano Booster follows you when playing along to a musical accompaniment. If you stop, then so does the music.

- Play a single hand and Piano Booster will play the other hand, as well as the rest of instruments, in time with you.

- Change the speed of playback to match your playing ability.

- Transpose +/- 12 semitones without stopping the play back.

- Change the Key Signature of the piece.

- Plays any standard midi or kar file.

- Play along to any instrument in the midi file.

- Adjust the volume of the current part or the volume your piano part.

- See how accurate you're playing.

- Change the start bar to start playing from any bar in the music. The repeat bars allows you to practice just a few difficult bars continuously.

- Timing markers are white crosses that are drawn over each note and show if you are playing ahead or behind the beat.

- A different instrument sound is used for the right and wrong notes that you play.

## SEE ALSO
You can find more about the game on its homepage: https://www.pianobooster.org

## AUTHOR
The game was originally written by Louis James Barman <louisjb@users.sourceforge.net>, <louisjbarman@gmail.com>. This manual page was written by Miriam Ruiz <miriam@debian.org> for the Debian project, but can be used by others.


pingus

package: pingus

title: pingus(6)

text:
# pingus(6)

## NAME
pingus - A puzzle game where you have to save penguins

## SYNOPSIS

pingus

[OPTION]... [FILE]

## DESCRIPTION
Pingus is a side-scrolling puzzle game where the player has to guide a group of penguins from the entrance of a level to the exit, in between the path is blocked by numerous obstacles and dangers that the player has to overcome by assigning actions to the penguins.

## OPTIONS

### GENERAL OPTIONS
-h, --help

Displays this help

-V, --version

Print version number and exit

-v, --verbose

Enable info level log output

-D, --debug

Enable debug level log output

-Q, --quiet

Disable all log output

### DISPLAY OPTIONS
-w, --window

Start in Window Mode

-f, --fullscreen

Start in Fullscreen

-r, --renderer=RENDERER

Use the given renderer, defaults to sdl. Available renderers are:

sdl

A simple software renderer based on SDL, this is the default and the safest options.

opengl

The OpenGL renderer will use hardware acceleration to render the graphics, it is much faster then the SDL renderer and recommended when the hardware supports OpenGL.

delta

The delta renderer uses SDL for rendering and doesn't use hardware acceleration, it will however try to increase rendering performance by only re rendering screen elements that have changed. Using the delta renderer will disable some effects such as scrolling background to allow maximum benefits.

-g, --geometry=WIDTHxHEIGHT

Set the window resolution for pingus (default: 800x600). Note that --geometry only applies to the window resolution, for the fullscreen resolution use --fullscreen-resolution

-R, --fullscreen-resolution=WIDTHxHEIGHT

Set the resolution used in fullscreen mode (default: 800x600)

--software-cursor

Enable software cursor

### GAME OPTIONS
--no-auto-scrolling

Disable automatic scrolling. Automatic scrolling will cause the screen to scroll whenever the mouse reaches the border of the screen. Automatic scrolling will only be active in fullscreen mode or when mouse-grab is enabled.

--drag-drop-scrolling

Enable drag'n drop scrolling. By default Pingus will use a rubber-band scrolling where the scroll speed depends on how far away the cursor is from the position when the mouse button has been clicked. In drag&drop mode scrolling will behave more like in traditional GUI applications such as Gimp, where clicking the scroll button will 'pick up' the playfield and allow to move it around till it is released again.

### SOUND OPTIONS
-s, --disable-sound

Disable sound

-m, --disable-music

Disable music

### LANGUAGE OPTIONS
-l, --language=LANG

Select language to use with Pingus

--list-languages

List all available languages

### EDITOR OPTIONS
-e, --editor

Loads the level editor

### DIRECTORY OPTIONS
-d, --datadir=DIR

Load game datafiles from DIR

-u, --userdir=DIR

Load config files and store savegames in DIR

-a, --addon=DIR

Load game modifications from DIR. Files in DIR will be used instead of the files in found in the main datadir of Pingus, thus allowing to modifications, such as sprites replacements, additional levels, etc. to the game, without changing the main data files.

--no-cfg-file

Don't read ~/.pingus/config

-c, --config=FILE

Read config from FILE

--controller=FILE

Uses the controller given in FILE

### DEBUG OPTIONS
--developer-mode

Enables some special features for developers

-t, --speed=SPEED

Set the game speed (0=fastest, >0=slower)

-k, --fps=FPS

Set the desired game framerate (frames per second)

--tile-size=INT

Set the size of the map tiles (default: 32)

## KEYBOARD SHORTCUTS

### GAMEPLAY
All gameplay related keyboard shortcuts are configurable via a controller config file, see --controller and controller/default.scm.

W, A, S, D

Scroll in the level

Space

Hold to ast-forward

P, R

Pause the game.

S, F

Advance the game by a single frame.

Backspace

Activate armageddon.

Escape

Leave the current screen/level.

### ENGINE
F10

Show/hide the FPS counter.

AltReturn, F11

Switch to fullscreen/window mode.

Ctrlg

Toggle mouse grab, when active, the mouse can not leave the window.

Ctrlo, F5

Show the option menu.

F12

Make a screenshot. Screenshots are stored in ~/.pingus/screenshots/.

Ctrlm

Toggle the developer mode, see --developer-mode

c (only in developer-mode)

Show the collision map overlayed over the regular groundmap.

k (only in developer-mode)

Clear the screen for delta mode debugging.

## ACTIONS
Basher

The Basher will to a horizontal dig, leaving behind it a tunnel. It is not able to dig through metal.

Blocker

The Blocker will stop and stay in position, directing other penguins to turn around when they reach him.

Bomber

The Bomber will blow up on the spot and take a bit of surrounding ground with it.

Bridger

The Bridger will build a small bridge, useful for crossing small chasm.

Climber

The Climber actions allows a Pingu to travel upwards a vertical wall. Unlike other actions the climber action is a permanent addition to the Pingus ability.

Digger

The Digger will dig a hole into the ground. It can't dig through metal.

Floater

The Floater action will give a penguin a small propeller that lets him gently glide down from great heights that would otherwise be deadly.

Jumper

The Jumper will let the Pingu do a big leap forward, allowing him to cross chasm and small vertical obstacles.

Miner

The Miner will dig a diagonal hole into the ground.

Slider

The Slider will make a tiny leap forward, gliding on its belly for a short while, allowing the Pingu to make it through narrow tunnels.

## LEVEL EDITOR
Pingus comes with a build in level editor. The level editor can currently be used to edit level files (*.pingus) as well as prefabricated objects (*.prefabs). Worldmaps (*.worldmap) can currently not be edited with the editor.

All Pingus data files, except the sound and images, are raw text files and can be edited in a text editor if the editor isn't sufficient.

If you want to submit a level to be included in the next release follow the following naming convention:

{theme}{number}-{nickname}.pingus

Do not use space or uppercase in the levelname and keep the levelname simple (i.e. snow1-grumbel.pingus not pingus-go-on-a-long-journey-in-snowland-grumbel.pingus). The filename should not reflect the actual level title, it simply should be unique and not conflict with other peoples levels. If you plan on building a whole levelset, name the levels after the levelset.

To submit a level send it to <pingus-devel@nongnu.org>.

### PREFABS
A prefab, short for prefabricated object, is a group of objects that have been combined into a new single object. A classic case of a prefab would for example be a snowman, it is build out of multiple smaller snowball objects and then saved as prefab to allow easy reuse in multiple levels. Unlike simple object groups, prefab are saved as reference in the level, thus if the prefab is updated, all levels will see the change. Like object groups prefabs can be ungrouped to break them back down to individual objects if individual editing is needed, they are seizing to be prefabs at that point and changes to the .prefab file will no longer be reflected in the level.

Prefabs behave pretty much like regular levels, to create a prefab simply start a new level and insert the objects as usual, unlike regular levels the level size is ignored and thus you have to place your object around the center of the levels, marked by a cross, to have the prefab function properly. To save a prefab as prefab instead of level you have to append .prefab suffix to the filename.

Thumbnail generation for prefabs is currently done offline with the script ./tools/generate-prefab-images.sh available from the Pingus source tree.

### UI QUIRCKS
The Pingus level editor is best used with a combination of mouse and keyboard, all essential functions have keyboard shortcuts.

Unlike more traditional GUIs, the Pingus editor lacks scrollbars, so to move around the level or the object list on the right simply use the middle or right mouse button and drag&drop the list around.

Objects from the object list can be inserted into the level by drag&dropping them over to the level.

### KEYBOARD SHORTCUTS
Delete, Backspace

Delete all currently selected objects

A

Select or unselect all objects

D

Duplicate the currently selected objects

I, K, J, L

Move the current selection by one pixel, if Shift is held, move it by 32 pixel.

PageUp, PageDown

Raise or lower an object

ShiftPageUp, ShiftPageDown

Raise or lower an object to the top or bottom

R, ShiftR

Rotate an objects 90 degrees, if Shift is held rotate it the other way around

F, ShiftV

Flip an object horizontally

V, ShiftF

Flip an object vertically

B, ShiftB

Toggle the background color to make it easier to see small pixel errors. If shift is hold the color will be toggled in the opposite direction.

+, =, -

Increase/decrease the repeat value of selected objects, this will only have an effect on objects having an repeat value (switchdoors, liquids, ...).

## COPYRIGHT
Copyright (C) 1998-2011 Ingo Ruhnke <grumbel@gmail.com> See the file AUTHORS for a complete list of contributors. Pingus comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions; see the file COPYING for details.

## SEE ALSO
http://pingus.seul.org


pioneers

package: pioneers

title: pioneers(6)

text:
# pioneers(6)

## NAME
pioneers - Turnbased board strategy game (colonize an island)

## SYNOPSIS
pioneers [ --server server ] [ --port port ] [ --name name ]

## DESCRIPTION
This manual page documents briefly the pioneers command.

Pioneers is a computerized version of a well known strategy board game. The goal of the game is to colonize an island. The players play the first colonists hence the name pioneers. It uses a client/server model for networked play of between two and eight players. You will need to connect to a machine running either pioneers-server-gtk or pioneers-server-console to play. An AI client, pioneersai, is also available.

## OPTIONS
Pioneers accepts the standard GTK+/GNOME commandline options, and the following options:

-s, --server server

Hostname of the server

-p, --port port

Portname of the server

-n, --name name

Use this name for the player instead of the name in the settings file

-v, --spectator

Connect as spectator instead of as a player

-m, --metaserver metaserver

Connect to this metaserver instead of the metaserver in the settings file

--debug

Turn on debugging mode

--version

Show the version and quit

When the server and port are both provided, the client automatically quits when the connection is broken.

## ENVIRONMENT
The default settings can be influenced with the following environment variable:

PIONEERS_METASERVER

The hostname of the metaserver. If it is not set, the default metaserver will be used.

## FILES
/usr/share/games/pioneers/themes/*

Themes for display of the map. Each theme goes in a separate subdirectory.

/usr/share/pixmaps/pioneers/* Icons

/usr/share/pixmaps/pioneers.png Main icon

$XDG_CONFIG_HOME/pioneers Saved settings

$XDG_DATA_HOME/pioneers/themes Personal themes

## AUTHOR
This manual page was written by Steve Langasek <vorlon@debian.org>, and updated by Roland Clobus <rclobus@rclobus.nl>. Pioneers was written by Dave Cole <dave@dccs.com.au>, Andy Heroff <aheroff@mediaone.net>, and Roman Hodek <roman@hodek.net>, with contributions from many other developers on the Internet; see the AUTHORS file in the pioneers distribution for a complete list of contributing authors.

## SEE ALSO
More detailed user documentation is available in the online help.

pioneers-server-gtk(6), pioneers-server-console(6), pioneersai(6)


pioneers-editor

title: pioneers-editor(6)

summary: Editor for the Pioneers boardgame

text:
# pioneers-editor(6)

## NAME
pioneers-editor - Editor for the Pioneers boardgame

## SYNOPSIS
pioneers-editor [filename]

## DESCRIPTION
This manual page documents briefly the pioneers-editor command.

Pioneers is an implementation of the popular, award-winning "Settlers of Catan" board game for the GNOME desktop environment. It uses a client/server model for networked play of between two and eight players. You will need to connect to a machine running either pioneers-server-gtk or pioneers-server-console to play. An AI client, pioneersai, is also available.

Pioneers-editor can be used to create new board layouts. Clicking on the plus and minus signs on the side of the board will increase and decrease the board size respectively. Left clicking on a tile allows one to select the terrain type; Middle or right clicking allows one to set the chit number or port type and orientation. The chit number can also be set by pressing the number key(s) while the pointer is hovering over the tile.

In the settings tab, several game settings can be adjusted.

## PLAYING
Games created with pioneers-editor can be played with pioneers-server-gtk and pioneers-server-console, if they are installed in the global game directory. Alternatively, they can be played with pioneers-server-console, by using the --file option.

## OPTIONS
Pioneers-editor accepts the standard GTK+/GNOME commandline options. See pioneers-editor --help for details.

## FILES
/usr/share/games/pioneers/*.game

Global game files. Games which are installed here can be selected by title, and played from pioneers-server-gtk.

## AUTHOR
This manual page was written by Bas Wijnen <shevek@fmf.nl>. Pioneers was written by Dave Cole <dave@dccs.com.au>, Andy Heroff <aheroff@mediaone.net>, and Roman Hodek <roman@hodek.net>, with contributions from many other developers on the Internet; see the AUTHORS file in the pioneers distribution for a complete list of contributing authors.

## SEE ALSO
pioneers(6), pioneers-server-gtk(6), pioneers-server-console(6), pioneersai(6)


pioneers-metaserver

title: pioneers-metaserver(6)

summary: metaserver for Pioneers

text:
# pioneers-metaserver(6)

## NAME
pioneers-metaserver - metaserver for Pioneers

## SYNOPSIS
pioneers-metaserver [options]

## DESCRIPTION
Pioneers is a computerized version of a well known strategy board game. The goal of the game is to colonize an island. The players play the first colonists hence the name pioneers. It uses a client/server model for networked play. This program provides a piece of network infrastructure that helps match pioneers clients to pioneers servers. Casual players of pioneers probably do not need to run this program.

## OPTIONS
-?, --help

Print a short help text and exit.

-d, --daemon

Run in daemon mode.

-P, --pidfile pidfile

Write the pid to pidfile (implies -d)

-r, --redirect location

Redirect to another metaserver running at location.

-s, --servername hostname

Use hostname as hostname when creating servers.

-p, --port-range from-to

Use ports in the range from-to (inclusive) to start servers. When this range is not specified, the metaserver will not be able to create new games.

--debug

Enable debug messages.

--syslog-debug

Duplicate the messages of the syslog to the console.

--version

Show version information.

## ENVIRONMENT
The default settings of the metaserver can be influenced with the following three environment variables:

PIONEERS_METASERVER

The hostname the metaserver will use when creating new games. This should be a hostname that can be resolved by all clients that will connect.

PIONEERS_SERVER_CONSOLE

The path (including the filename) to pioneers-server-console. If it contains only a filename and no path or if it is not set, the PATH variable in the environment is used to locate the program.

PIONEERS_DIR

The path to the game definition files. If it is not set, the default installation path will be used.

## FILES
/usr/share/games/pioneers/*.game

Game definitions

## SIGNALS
SIGINT

Shutdown the metaserver gracefully (can also be used to check for memory leaks)

## AUTHOR
This manual page was written by Jeff Breidenbach <jab@debian.org>, and updated by Roland Clobus <rclobus@rclobus.nl> and Bas Wijnen <shevek@fmf.nl>. Pioneers was written by Dave Cole <dave@dccs.com.au>, Andy Heroff <aheroff@mediaone.net>, and Roman Hodek <roman@hodek.net>, with contributions from many other developers on the Internet; see the AUTHORS file in the pioneers distribution or the help->about dialog in one of the graphical programs for a complete list of contributing authors.

## SEE ALSO
pioneers(6), pioneers-server-gtk(6), pioneers-server-console(6)


pioneers-server-console

title: pioneers-server-console(6)

summary: command-line game server for Pioneers

text:
# pioneers-server-console(6)

## NAME
pioneers-server-console - command-line game server for Pioneers

## SYNOPSIS
pioneers-server-console [ OPTIONS ]

## DESCRIPTION
This manual page documents briefly the pioneers-server-console command.

Pioneers is a computerized version of a well known strategy board game. The goal of the game is to colonize an island. The players play the first colonists hence the name pioneers. It uses a client/server model for networked play of between two and eight players. This program provides a console-only server that pioneers clients can connect to.

## OPTIONS

### Application options
-g,--game-title game title Load the ruleset specified by game title. The title can be found in the *.game files. You need quotes for titles with spaces.

--filefilename

Load the ruleset in the file filename.

-p,--port port

Use port port for player connections.

-P,--players num

Start a game for num total players (including computer players).

-v,--points points

Specify the number of "victory points" required to win the game.

-R,--seven-rule[0|1|2]

"Sevens rule": Specify gameplay behavior when a player rolls a seven. A value of 0 (the default) means that rolling a seven always moves the robber. A value of 1 requires the player to re-roll if a seven is rolled on the first two turns. A value of 2 means the player always re-rolls.

-T,--terrain[0|1]

Choose a terrain type: 0 for the default, or 1 for random terrain.

-c,--computer-players num

Start up num computer players.

--version

Show version information.

### Metaserver options
-r,--register

Register with a metaserver. The metaserver to use can be overridden with the -m option. Default metaserver: pioneers.debian.net

-m,--metaserver metaserver

Register this server with the metaserver at the specified address.

-n, --hostname hostname

Use this hostname instead of the hostname reported by hostname(1).

### Miscellaneous options
-x,--auto-quit Automatically exit after a player has won.

-k,--empty-timeout secs

Automatically stop the server if no one has connected after secs seconds.

-t,--tournament mins

Tournament mode: add AI players after mins minutes.

-a,--admin-port port

Listen for administrative commands on port port.

-s,--admin-wait

Don't start the game immediately; wait for a command on the admin port (-a) instead.

--fixed-seating-order

Give players numbers according to the order they enter the game.

--debug

Enable debug messages.

## ENVIRONMENT
The default settings of the server can be influenced with the following three environment variables:

PIONEERS_METASERVER

The hostname of the metaserver when no metaserver is specified on the command-line.

PIONEERS_SERVER_NAME

The hostname of the server. If it is not set, the hostname is determined by hostname(1).

PIONEERS_DIR

The path to the game definition files. If it is not set, the default installation path will be used.

## FILES
/usr/share/games/pioneers/*.game and $XDG_DATA_HOME/pioneers/*.game

Game definitions

/usr/share/games/pioneers/computer_names A list of names the computer player can use

## AUTHOR
This manual page was written by Steve Langasek <vorlon@debian.org>, and updated by Roland Clobus <rclobus@rclobus.nl>. Pioneers was written by Dave Cole <dave@dccs.com.au>, Andy Heroff <aheroff@mediaone.net>, and Roman Hodek <roman@hodek.net>, with contributions from many other developers on the Internet; see the AUTHORS file in the pioneers distribution for a complete list of contributing authors.

## SEE ALSO
pioneers(6), pioneers-server-gtk(6), pioneersai(6), hostname(1)


pioneers-server-gtk

title: pioneers-server-gtk(6)

summary: graphical game server for Pioneers

text:
# pioneers-server-gtk(6)

## NAME
pioneers-server-gtk - graphical game server for Pioneers

## SYNOPSIS
pioneers-server-gtk [options]

## DESCRIPTION
This manual page documents briefly the pioneers-server-gtk command.

Pioneers is a computerized version of a well known strategy board game. The goal of the game is to colonize an island. The players play the first colonists hence the name pioneers. It uses a client/server model for networked play of between two and eight players. This program provides a GUI-configurable stand-alone server which you connect to from pioneers itself.

## OPTIONS
Pioneers accepts the standard GTK+ commandline options.

## ENVIRONMENT
The default settings of the server can be influenced with the following three environment variables:

PIONEERS_METASERVER

The hostname of the metaserver when no metaserver is specified in the user interface. (The settings file takes precedence)

PIONEERS_SERVER_NAME

The hostname of the server. If it is not set, the hostname is determined by hostname(1). (The settings file takes precedence)

PIONEERS_DIR

The path to the game definition files. If it is not set, the default installation path will be used.

## FILES
/usr/share/games/pioneers/*.game and $XDG_DATA_HOME/pioneers/*.game

Game definitions

/usr/share/pixmaps/pioneers-server.png Game icon

$XDG_CONFIG_HOME/pioneers-server Saved settings

/usr/share/games/pioneers/computer_names A list of names the computer player can use

## AUTHOR
This manual page was written by Steve Langasek <vorlon@debian.org>, and updated by Roland Clobus <rclobus@bigfoot.com>. Pioneers was written by Dave Cole <dave@dccs.com.au>, Andy Heroff <aheroff@mediaone.net>, and Roman Hodek <roman@hodek.net>, with contributions from many other developers on the Internet; see the AUTHORS file in the pioneers distribution for a complete list of contributing authors.

## SEE ALSO
pioneers(6), pioneers-server-console(6), pioneersai(6)


pioneersai

title: pioneersai(6)

summary: Computer player for Pioneers

text:
# pioneersai(6)

## NAME
pioneersai - Computer player for Pioneers

## SYNOPSIS
pioneersai [ -s server ] [ -p port ] -n name [ -a algorithm ] [ -t milliseconds ] [ -c ]

## DESCRIPTION
This manual page documents briefly the pioneersai command.

Pioneers is a computerized version of a well known strategy board game. The goal of the game is to colonize an island. The players play the first colonists hence the name pioneers. This is an AI player implementation that can take part in Pioneers games.

## OPTIONS
-s,--server server

Connect to a pioneers game running on server.

-p,--port port

Connect to a pioneers game running on port.

-n,--name name

Specify name of the computer player.

-a,--algorithm algorithm

Specify algorithm of the computer player. The algorithms for active partipants in a game are "greedy" and "genetic". The default algorithm is "greedy". Other allowed values are: lobbybot, logbot.

--chromosome-file filename

The filename for the file that contains the chromosome for the "genetic" algorithm. When not specified, the default chromosome is used.

-t,--time milliseconds

Time to wait between turns, in milliseconds. Default is 1000.

-c,--chat-free

Do not chat with other players.

--debug

Enable debug messages.

--version

Show version information.

## AUTHOR
This manual page was written by Jeff Breidenbach <jab@debian.org>, and updated by Roland Clobus <rclobus@rclobus.nl>. Pioneers was written by Dave Cole <dave@dccs.com.au>, Andy Heroff <aheroff@mediaone.net>, and Roman Hodek <roman@hodek.net>, with contributions from many other developers on the Internet; see the AUTHORS file in the pioneers distribution for a complete list of contributing authors.

## SEE ALSO
pioneers(6), pioneers-server-gtk(6), pioneers-server-console(6)


pipenightdreams

package: pipenightdreams

title: pipenightdreams(6)

text:
# pipenightdreams(6)

## NAME
pipenightdreams - Just another pipe trip (PipeDream clon).

## SYNOPSIS
pipenightdreams [--datadir <DATADIR>] [--fullscreen]

## DESCRIPTION
pipenightdreams is a puzzle-game where the objective is to carry liquid from some point to the exit using different kinds of pipes. On each level there is a minimum number of required pipes that should be at least reached for it to be completed.

The score is increased by using as many pipes as possible an by collecting various bonus tokens making the liquid pass through their pipes. There are also life bonus and, hopefully soon, "freeze tokens".

### KEYS
The game is entirely played using the keyboard and the key layout is as follows:

SPACE

Puts the next pipe where the pointer is.

CURSOR KEYS

Move the pointer.

ENTER

Speeds up the liquid (Avoids skillful players to get bored).

ESC

Goes back to the main screen or exits.

### BONUS TYPES
The various types of bonus tokens are the following:

LIFE BONUS

The purple one with a "L" on it.

SUPER BONUS

The red one with a "B" on it.

ULTRA BONUS

The blue one.

HYPER BONUS

The green one.

## OPTIONS
--datadir <CUSTOM DATA DIR> is used when the data directory is not the default one (/usr/share/pipenightdreams).

--fullscreen switchs to fullscreen mode.

## BUGS
Not known.

## SEE ALSO
Pipenightdreams home page at

http://www.libsdl.org/projects/pipenightdreams

## AUTHORS
Waldemar A. Baraldi <baraldi@lacasilla.com.ar>